Feda /dev/ - No Javascript allowed

Normas
spoiler
Personas non gratas
Memes feda dev




JuAn4k4

#9929 Depende, ¿ qué vas a hacer ? No te vas a olvidar del backend por usar firebase. (No lo he usado nunca, pero no te vas a olvidar)

1 respuesta
B

#9931 nada, algo muy simple, de la complejidad de un blog-foro.
Usuarios, entradas, mensajería, algo muy simple en cuanto a comunicaciones con base de datos.

Por eso me fastidia tener que dedicar un api por ello cunado en php hacia un par de mysqli con la sql que tocase y listo.

4 respuestas
HeXaN

#9932 ¿Y quién te impide seguir haciéndolo así? XD

1 respuesta
eondev

Me han asigando una aplicación. De rendimiento va como el culo, con queries REST a pelo sobre cada event listener de los botones y carga de los recursos conforme te vas moviendo por la UI (jpegs tochos) y con uso de animaciones que la hace lentísima, todo lo más ineficiente posible.

Yo he corregido los 4 bugs y metido los pocos requerimientos que le quedaban. Ahora bien, sé que en unos meses o incluso antes el cliente se va a quejar de que va como la mierda, y el refactor pasa por rehacerla casi de 0 xD. Como diríais vosotros que lo que tienes que hacer pasa por hacerla casi de nuevo? (excepto la UX/UI). Porque suena a lo tipico que le das algo a uno y como no lo ha hecho él le parece que es más facil hacerlo de 0 que continuarlo, pero es que es una chapuza XD. Porque tengo que moverlo todo fuera de la vista, gestionar los errores prque ahora todo son comerse los undefineds guapos y bonicos que te vienen del backend (otra perla xD), la caché porque conforme vuelves a atrás vuelve a descargarselo todo de nuevo y un largo etcétera.

Es que la aplicación es simple, pero está hecha mal mal mal, además está hecho en QML/JS y las animaciones son lentorrísimas y bloquean la aplicacion cada 10 segundos.

Es que macho, el 90% de las cosas que me pasan va todo mal y solo hago que quejarme de que se tendría que hacer de 0 XD. Y me da palo xdddd porq parezco eso el junior que no sabe medir bien lo que tiene entre manos (que también).

4 respuestas
_Rpv

#9934 ¿No puedes quitar las animaciones? o al menos, simplificarlas.
Si el cliente no os han dicho de mejorar el rendimiento ¿Para que lo vas a mejorar? Espérate a que lo diga y que os pague vuestro trabajo XD
¿o es una aplicación hecha de 0 por vuestra empresa?

1 respuesta
eXtreM3

#9934 parece el resumen de lo que le va a pasar a #9932 xd

eondev

#9935 yo no voy a mejorar nada ahora. Y si es un producto de 0 de l empresa nuestra que vende a un cliente. Solo pregunto porque lo sé y porque me veo en 1 mes en la situación que comento. XD

1 respuesta
_Rpv

#9937 Busca al patán que la hizo así.
Las mierdas de uno se las come ese uno.

desu
#9934eondev:

Como diríais vosotros que lo que tienes que hacer pasa por hacerla casi de nuevo?

A quien al cliente o a tu manager?

Al manager le dices la verdad, que es una autentica basura.

Para el cliente es facil, lo tipico es no hacer nada para empezar, se pragmático You Arent Gonna Need It. Ahora en un mes cuando se queje, analizas los modulos del codigo, identifica bien las dependencias, piensas en el minimo refactor posible para contentarle y le soltais al cliente que habeis detectado un problema en el modulo X y que lo vais a refactorizar entero. Mientras el cliente se queje repeat.

Aqui entraria el concepto de fast releases pequeñas vs pocas releases grandes. Si es un proyecto que manteneis y teneis abierto, lo 1 para dar sensacion de productividad y trabajo constante. Si es un proyecto que esta finito y quereis oblidaros haced lo 2, release por bug y adios, para dar sensacion de proyecto cerrado. esto es algo que he aprendido hace poco y lo tengo en negrita en la libreta.

El beneficio tiempo coste es obvio si piensas el caso de que el cliente te haga re hacer todo vs solo hacer una partes y se contenta. Se queja mucho? tienes tu refactor. se queja poco? invertiras el minimio tiempo y esfuerzo.

1 1 respuesta
B

#9933 No sé, la cosa es que nunca veo ese hacer por udemy ni youtube.. :man_shrugging::joy:

r2d2rigo

#9928 te has equivocado de nombre, lo que se esta empezando a usar con C# es Blazor.

Razor es el motor de templating que tiene, que lo ha reciclado de ASP .NET MVC.

B

#9932 Usa Flask y déjate de complicarte la vida... https://github.com/pallets/flask/tree/master/examples/tutorial/flaskr

isvidal

#9934 En que tipo de empresas trabajas que aun hacéis soluciones con javascript/jquery a pelo?

2
JuAn4k4

#9932 Para algo sencillo puedes usar lo que te de la gana. El mayor riesgo es que cualquiera pueda acceder a la bd directamente, al tener el código en JS de forma pública, y este pueda acceder a la bd y tener permisos de lectura/escritura.

1 respuesta
_Rpv

Duda de sql: Tengo una tabla con los campos usuario y día de registro (es un ejemplo)
¿Cómo puedo sacar los 10 primeros usuarios de cada día de un mes?
Igual es la mayor gilipollez del mundo, pero no se me ocurre xD

4 respuestas
B

#9944 Gracias, no había caído en ello.

desu

#9945 No tienes la tabla dias o alguna intermedia? Se me ocurren dos maneras, piensa que sql es declarativo, hazlo en java/python/php con streams y lo pasas ...

Fíjate que los días son únicos / hasheable.
Para determinar los 10 primeros necesitas si o si recorrer todos los usuarios de ese día.
Por lo tanto tienes que recorrer todos los usuarios de todos los días.
Es decir recorrer todos los usuarios. (Si tuvieses la tabla dia podrias iterar por ahi)

a) Itera todos los usuarios y ve agrupandolos por dia (es unico), despues ordena y coge el top 10.
b) Itera todos los usuarios y ve agrupandolos por dia (es unico), y metiendolos de manera ordenada y coge el top 10.

No se hacer lo segundo en sql, lo primero es una query de lo mas normal, select * from users, groupBy date, sort by date, limit/top 10. Algo asi era no?

1 respuesta
Grise

#9945 https://stackoverflow.com/questions/12113699/get-top-n-records-for-each-group-of-grouped-results

Ranthas

#9945 Agrupa por mes, ordena por fecha registro, limita (limit, row number o lo que sea) a 10 el nº de resultados.

1 1 respuesta
eXtreM3

#9947 qué perdido te veo xD

6 1 respuesta
MTX_Anubis

#9949 El limit funciona sobre el resultado final así que eso solo le valdrá en el primer mes que le salga.

#9945 Si trabajas en postgres y https://spin.atomicobject.com/2016/03/12/select-top-n-per-group-postgresql que te lo va a explicar mejor que yo.

Pero vamos que lo que preguntas es algo que se acaba haciendo siempre, al final lo que tienes que hacer es un join o subquery imitando al group by y así limitar el resultado de ese join o subquery.

1 1 respuesta
Ranthas

#9951 Sí tienes razón; hay que hacer una subconsulta con la agrupación del mes y limitar ahí.

desu

#9950
Edit: ya se porque lo decís xdd en funcional/declarativo las entradas son las salidas de lo anterior crack. Aprende FP. Agrupar por día devuelve un map.

En fin edito, un dia que estoy siendo serio xd no aprendo. Nunca más.

Kaledros

#9939 El problema de esto, que en otras circunstancias sería lo correcto, es que si no he entendido mal hay que rehacer la app de 0 cargándole el coste al cliente, que al final va a acabar pagando dos veces por el mismo producto sólo porque la primera vez se hizo con el culo. Y eso no es culpa suya, así que buena suerte explicándole a un cliente cabreado como una mona que como somos unos inútiles le vamos a hacer dos veces la aplicación y también se la cobraremos dos veces.

Mala solución le veo ahí, la verdad.

1 respuesta
aren-pulid0

#9954 La solución esta en el que el cliente no se entere e ir vendiendoselo por fascículos. Si le dices que tiene que pagar para tener su producto otra vez pero esta vez bien hecho dile adiós

JuAn4k4

La culpa es también del cliente, en el fondo, por no gestionar ls calidad del producto. Si exigía hacerla em X tiempo, se puede tirar de ahi, a que la calidad es mala, y los cambios no se llevan bien con según que exigencias. El código de calidad de la v2, se paga más caro y cuesta más tiempo.

Lo mejor para esa consulta es tirar de plsql y hacerlo con cursor. ¿ FP en sql ?

1 respuesta
isvidal

El problema real que tienes es que la empresa no confía en ti lo suficiente para darte estos proyectos de mierda desde un principio, yo intentaría pillar mas responsabilidad.

aren-pulid0

#9956 plsql hasta donde yo se solo hasta disponible en bases de datos oracle

Edit: Acabo de ver que postgres también implementa algo parecido, pero no se hasta que punto.

Si el OP de la duda tiene alguna de esas bases de datos puede tirar por ahi

1 respuesta
JuAn4k4

#9958 Todas tienen creo. Son stored peocedures. Igual plsql es el nombre de Oracle, siempre lo he llamado así.

Tras buscar en san google:
En postgres se llama PL/PgSQL pero vaya que son stored peocedures de toda la vida, cada uno con su sintaxis.

1
desu

On finally learning to program at the age of 40
Spoiler aprender Rust. A mis brazos hermano.

1 respuesta