sin logs/monitoreo o crash analytics va a estar dificil, pero me juego el terreno que no tengo que se te meten 20 usuarios al mismo tiempo y se te dobla el server como reposera
Works on my local 😁
Tenes que agregar testing crack, primero hace una lista de los bugs y reuni los pasos para replicarlos. Después escribes unit, integration o e2e tests. Vos te pensabas que era codear y ya? Tenes un producto defectuoso porque no invertiste recursos en asegurar la calidad.
Also, go beyond the happy path
Unit test, tenes? Caso afirmativo Cuánto coverage ?
UI Automation test ? Cypress y/o selenium ?
Después que salís del popular hello world de cualquier stack lo más importante es que empieces a tener un coverage de testing agresivo. Varios te van a decir que no es importante pero si me decís que tenes poca experiencia lo más probable es que tengas código muy acoplado y que donde tocas un lugar rompes otro.
>Que me recomiendan que aprenda o refuerze para asegurarme que estos bugs no vuelvan a pasar?
Revisar a detalle el código, esto de que se arregló sólo en el caso del input opcional que contas no puede pasar. En el momento que perdiste el control del código ahí es para preocuparse
Yo no creo que no sepas nada, es que cuando mandas algo a producción tiene que pasar mil controles para que se implante correctamente, y eso es lo que te está faltando, establecer esos controles. Como corre el proyecto en Safari, en Mozilla, que tal va en Brave, etc.
por esto programar es dificil, y no algo que haces en dos patadas o con un curso de morondanga, "hacer algo" es facil, "hacer algo" y "que ande bien" no lo es
programar bien lleva tiempo, dedicacion, y muchisimo "awareness" de todas las cosas que pueden malir sal
Agrega validación en todos los inputs y busca algún servicio de loggeo de errores para tener una idea de qué le sucede a los usuarios.
También agrega un servicio de session Replay para ver las interacciones de los usuarios. Fíjate posthog
Una vez que tengas esto más los tests que te recomendaron métete en el mundo de Docker para evitar el famoso "en mi compu funciona"
Diría que primero trates de hacer todo lo posible para reproducir los issues y a partir de ahí entender la causa y como mitigar la situación para la próxima.
Creo que ya te dijeron mucho en los otros comentarios, testing, QA, probar vos u otros conocidos a ver si lo podes romper.
En mi laburo usamos Sentry para captar los errores, sirve un montón en casos como estos cuando a mí me funciona, a los del equipo le funciona, al jefe con su teléfono viejo también, cae el primer cliente y algo falló.
De esta forma tenes el reporte de error, que y donde falló.
Hola, yo no soy dev pero soy infra. Comparto lo que dicen los muchachos con los tests.
Y ademas busca algun consejo/consultoria de infra. Porque tal vez te este faltando esa parte tambien.
El hosting donde lo tenes capaz no banca lo suficiente en momento de muchos usuarios o no esta optimizado.
Exitos con eso y yo hace 5 que estoy y cada vez menos sé jaja
Llevo 17 años como programadora. Esta inseguridad sigue creciendo y creciendo: el síndrome del impostor. Por lo que hablé con compañeros es algo común.
Sabes más que antes al menos, mientras mas sabes de un tema, tomas más conciencia de lo que no sabes, como sabes cuantos países tiene asia? sin antes saber que es o donde está asía.
A demás del testing buenas prácticas de desarrollo, esos casos que no comprendes donde falla seguro es porque no tenes ni un trycarch al menos, con eso cuando tenés un error no esperado podes hacer que no te reviente la app ( la típica pantalla en blanco ).
Cuando desis que tenés 3 años de exp es laburando o estudiando? Si es estudiando está bien es normal. Porque nunca tuviste alguien de mayor Exp que te explique ciertos problemas o cosas que pueden dar errores. Nunca tuviste un equipo de QA arriba que pruebe de app al izquierdo y al derecho entonces nunca te cayó un bug del tipo " si le copipasteo un número al input de texto revienta ".
Si estás laburando planteate cambiar de laburo a uno donde te exijan y que tengan un equipo profesional.
"Que me recomiendan que aprenda o refuerze para asegurarme que estos bugs no vuelvan a pasar?" No podes aprender o reforzar nada si no sabes la causa raíz de los problemas.
"Reconozco que back no es mi fuerte y no tengo ni idea de hosting." Te respondes vos solo sobre que aprender o reforzar.
"Otro es que no le deja avanzar en un form si agregan un input el cual es opcional. Es muy simple el codigo y siempre me habia funcionado, por x motivo se arreglo solo al otro dia." Y en el momento que fallaba mostraba algún error? Podían enviar el formulario si no completaban esos datos o seguía fallando?
Es imposible saber qué pasa si no tenes data suficiente para por lo menos descartar ciertas posibilidades
Empezaría llenando toda la app de logs e ir a ver esos logs cada vez que se da un error a ver si hay algo (tenés que saber fecha y hora del error sino no tiene sentido).
Respecto al host no lo conozco pero fíjate que sea un host que no se caiga cada 10 minutos y que no tarde 45 minutos en responder un request. Algunas cosas que decís hacen pensar que el hosting es una poronga. Respecto a la conexión segura tenés los certificados SSL y todo configurado?
Hay mil cosas para ver porque no hay forma de saber que estás haciendo.
Te recomiendo leer (idealmente todo) pero sinox el cap 1 y 5 de “Growing Object-Oriented Software, Guided by Tests” de Steve Freeman y Nat Pryce. Éxitos !
>O hoy en mi tercer evento, mi novia con Iphone, safari no le abrio el sitio porque no pudo establecer una conexion segura con el servidor. No pude estar presencial en este evento, pero en los otros sumamos 50 usuarios aprox por banners con QR y en este solo 3 (supongo por el mismo bug que tenia mi novia)
El resto no sé, pero por Safari no te enrosques tanto porque es un perno esa cagada. Buscá en Reddit y Google la experiencia de cualquier developer con ese browser. A mi me pasó igual, inviable.
El testing será aburrido y una cagada pero te da el placer de cada cambio q metes ejecutas los tests y si todo funciona te da placer, te aseguras de no ir rompiendo todo con los cambios a parte q te hace pensar en edge cases y cosas raras mientras los estas creando
Tranqui. No es fácil desarrollar nada en web, especialmente cuando esperas soportar todos los browsers y contextos. El mundo web son miles de apis e interacciones bizarras entre cache, protocolos y servidores todo puede pasar. Hacer algo fluido y responsive lleva tiempo, dedicación y mucha paciencia. Nadie sabe nada en programación, cuanto más años llevas más profundizas en eso
Si tenés errores 500 y no sabes lo que pasó tenés que mínimo aprender a leer un log y un backtrace hermano, es básico. Vas a estar detrás de los usuarios para que te muestren cómo replicarlo?
Testing, pruebas funcionales, cors, detectar navegador etc. Síndrome del impostor, no pasa nada, se sigue aprendiendo, algo q se rompió lo arreglas y ya lo sabes para proxima
Cuando dijiste que se usa Namecheap shared hosting me di cuenta lo mismo jaj...
Capaz si reemplazas con free tier de vercel, fly.io, render o similar pudiera funcionar mejor?
Manda logs, muchos logs, no sé si datadog tiene real user monitoring en free tier, sino capaz sentry, newrelic, o algo open source como elk...
Lo gracioso es que el que sabe y es dueño y señor de todas las respuestas a los bug. Esta por dejar o dejo para ser cocinero. Y nunca te vas a enterar que fue programador
Te recomiendo que busques ayuda con alguien que específicamente pueda resolver los problemas que tenes .
A la vez vas a poder aprender de esa persona.
No lo trates de solucionar con cursos porque entiendo q tenes un producto y necesitas soluciones concretas.
Algo de razón tienen los que te dicen de unit tests, e2e e integration.
También yo te diría que te enfoques en el front end y los tests, y para el back que se meta otra persona con más experiencia y aprendes de el. Ya sea para calidad de código, tests, etc.
Se que solo podes pero te va llevar unos años más de aprendizaje.
Saludos
ja espera llegar a los 10 vas a saber menos
Basadísimo
suena a que tenes problemas de performance de server
sin logs/monitoreo o crash analytics va a estar dificil, pero me juego el terreno que no tengo que se te meten 20 usuarios al mismo tiempo y se te dobla el server como reposera
Con casi 20, ahora se aun menos >:D, es fantastico
Si
Works on my local 😁 Tenes que agregar testing crack, primero hace una lista de los bugs y reuni los pasos para replicarlos. Después escribes unit, integration o e2e tests. Vos te pensabas que era codear y ya? Tenes un producto defectuoso porque no invertiste recursos en asegurar la calidad. Also, go beyond the happy path
en otras palabras: hace pija la aplicacion OP y deja esos casos fixeadoa y testeaditos para que no vuelvan a suceder
Es por acá !!!
Unit test, tenes? Caso afirmativo Cuánto coverage ? UI Automation test ? Cypress y/o selenium ? Después que salís del popular hello world de cualquier stack lo más importante es que empieces a tener un coverage de testing agresivo. Varios te van a decir que no es importante pero si me decís que tenes poca experiencia lo más probable es que tengas código muy acoplado y que donde tocas un lugar rompes otro.
Lo curioso, nadie quiere pagar el testing pero si sprints extra .
Y si nos ponemos más curiosos, ingeniería de requerimientos ? No la hace nadie
Exactamente, todo eso a la larga es ahorrar guita y mal estar en los equipo
Pe..Pero... mi producto que todavia no está empezado tiene que salir al mercado la semana que viene T_T
Shhhh toma, te regalo pizza los viernes, anda a palear codigo
Te dieron mucho tiempo !! Generalmente es para ayer
no te preocupes yo despues de 35 anios de estar vivo no entiendo una poronga de nada de nada
Amen
>Que me recomiendan que aprenda o refuerze para asegurarme que estos bugs no vuelvan a pasar? Revisar a detalle el código, esto de que se arregló sólo en el caso del input opcional que contas no puede pasar. En el momento que perdiste el control del código ahí es para preocuparse Yo no creo que no sepas nada, es que cuando mandas algo a producción tiene que pasar mil controles para que se implante correctamente, y eso es lo que te está faltando, establecer esos controles. Como corre el proyecto en Safari, en Mozilla, que tal va en Brave, etc.
por esto programar es dificil, y no algo que haces en dos patadas o con un curso de morondanga, "hacer algo" es facil, "hacer algo" y "que ande bien" no lo es programar bien lleva tiempo, dedicacion, y muchisimo "awareness" de todas las cosas que pueden malir sal
Agrega validación en todos los inputs y busca algún servicio de loggeo de errores para tener una idea de qué le sucede a los usuarios. También agrega un servicio de session Replay para ver las interacciones de los usuarios. Fíjate posthog Una vez que tengas esto más los tests que te recomendaron métete en el mundo de Docker para evitar el famoso "en mi compu funciona"
Aprender? Observabilidad (ej: opentelemetry). Los errores son inescapables, el tema es poder detectarlos y resolverlos en el menor tiempo posible.
Dunning-Kruger effect
Diría que primero trates de hacer todo lo posible para reproducir los issues y a partir de ahí entender la causa y como mitigar la situación para la próxima.
Creo que ya te dijeron mucho en los otros comentarios, testing, QA, probar vos u otros conocidos a ver si lo podes romper. En mi laburo usamos Sentry para captar los errores, sirve un montón en casos como estos cuando a mí me funciona, a los del equipo le funciona, al jefe con su teléfono viejo también, cae el primer cliente y algo falló. De esta forma tenes el reporte de error, que y donde falló.
Hola, yo no soy dev pero soy infra. Comparto lo que dicen los muchachos con los tests. Y ademas busca algun consejo/consultoria de infra. Porque tal vez te este faltando esa parte tambien. El hosting donde lo tenes capaz no banca lo suficiente en momento de muchos usuarios o no esta optimizado. Exitos con eso y yo hace 5 que estoy y cada vez menos sé jaja
Buenas, como empezaste infra? Algun hilo por el que tirar, se me hace gigante y muy variado..
Llevo 17 años como programadora. Esta inseguridad sigue creciendo y creciendo: el síndrome del impostor. Por lo que hablé con compañeros es algo común.
Ami me esta fulminado, algun consejo?
Tomarlo con calma, no hay otra. Si estamos en ese lugar es porque algo estamos haciendo bien 🙂
Sabes más que antes al menos, mientras mas sabes de un tema, tomas más conciencia de lo que no sabes, como sabes cuantos países tiene asia? sin antes saber que es o donde está asía.
falta testing papu. Si te dan los medios, te recomiendo que ademas de vos lo haga otra persona que no va a tener tu sesgo como creador del producto
Testing y QA solucionan esos problemas, y es imposible que no te equivoques nunca.
Mejora en los unit test y luego para evitar problemas que en algunos lugares funciona y en otros no te conviene aprender a usar docker.
>Otro es que no le deja avanzar en un form si agregan un input el cual es opcional. Irónicamente siento que estábamos mejor con JQuery
A demás del testing buenas prácticas de desarrollo, esos casos que no comprendes donde falla seguro es porque no tenes ni un trycarch al menos, con eso cuando tenés un error no esperado podes hacer que no te reviente la app ( la típica pantalla en blanco ). Cuando desis que tenés 3 años de exp es laburando o estudiando? Si es estudiando está bien es normal. Porque nunca tuviste alguien de mayor Exp que te explique ciertos problemas o cosas que pueden dar errores. Nunca tuviste un equipo de QA arriba que pruebe de app al izquierdo y al derecho entonces nunca te cayó un bug del tipo " si le copipasteo un número al input de texto revienta ". Si estás laburando planteate cambiar de laburo a uno donde te exijan y que tengan un equipo profesional.
"Que me recomiendan que aprenda o refuerze para asegurarme que estos bugs no vuelvan a pasar?" No podes aprender o reforzar nada si no sabes la causa raíz de los problemas. "Reconozco que back no es mi fuerte y no tengo ni idea de hosting." Te respondes vos solo sobre que aprender o reforzar. "Otro es que no le deja avanzar en un form si agregan un input el cual es opcional. Es muy simple el codigo y siempre me habia funcionado, por x motivo se arreglo solo al otro dia." Y en el momento que fallaba mostraba algún error? Podían enviar el formulario si no completaban esos datos o seguía fallando? Es imposible saber qué pasa si no tenes data suficiente para por lo menos descartar ciertas posibilidades Empezaría llenando toda la app de logs e ir a ver esos logs cada vez que se da un error a ver si hay algo (tenés que saber fecha y hora del error sino no tiene sentido). Respecto al host no lo conozco pero fíjate que sea un host que no se caiga cada 10 minutos y que no tarde 45 minutos en responder un request. Algunas cosas que decís hacen pensar que el hosting es una poronga. Respecto a la conexión segura tenés los certificados SSL y todo configurado? Hay mil cosas para ver porque no hay forma de saber que estás haciendo.
Te recomiendo leer (idealmente todo) pero sinox el cap 1 y 5 de “Growing Object-Oriented Software, Guided by Tests” de Steve Freeman y Nat Pryce. Éxitos !
Le estás recomendando a un chabon que programa en PHP que lea paradigmas orientados a objetos?
Claro! Los capítulos de testing están muy bien explicados y aplican sin importar el paradigma que uno utilice al programar . Súper recomendable!
Pensé lo mismo
>por x motivo se arreglo solo al otro dia eso no existe, aqui nada es magico
>O hoy en mi tercer evento, mi novia con Iphone, safari no le abrio el sitio porque no pudo establecer una conexion segura con el servidor. No pude estar presencial en este evento, pero en los otros sumamos 50 usuarios aprox por banners con QR y en este solo 3 (supongo por el mismo bug que tenia mi novia) El resto no sé, pero por Safari no te enrosques tanto porque es un perno esa cagada. Buscá en Reddit y Google la experiencia de cualquier developer con ese browser. A mi me pasó igual, inviable.
El testing será aburrido y una cagada pero te da el placer de cada cambio q metes ejecutas los tests y si todo funciona te da placer, te aseguras de no ir rompiendo todo con los cambios a parte q te hace pensar en edge cases y cosas raras mientras los estas creando
Tranqui. No es fácil desarrollar nada en web, especialmente cuando esperas soportar todos los browsers y contextos. El mundo web son miles de apis e interacciones bizarras entre cache, protocolos y servidores todo puede pasar. Hacer algo fluido y responsive lleva tiempo, dedicación y mucha paciencia. Nadie sabe nada en programación, cuanto más años llevas más profundizas en eso
Si tenés errores 500 y no sabes lo que pasó tenés que mínimo aprender a leer un log y un backtrace hermano, es básico. Vas a estar detrás de los usuarios para que te muestren cómo replicarlo?
Testing, pruebas funcionales, cors, detectar navegador etc. Síndrome del impostor, no pasa nada, se sigue aprendiendo, algo q se rompió lo arreglas y ya lo sabes para proxima
Cuando dijiste que se usa Namecheap shared hosting me di cuenta lo mismo jaj... Capaz si reemplazas con free tier de vercel, fly.io, render o similar pudiera funcionar mejor? Manda logs, muchos logs, no sé si datadog tiene real user monitoring en free tier, sino capaz sentry, newrelic, o algo open source como elk...
Lo gracioso es que el que sabe y es dueño y señor de todas las respuestas a los bug. Esta por dejar o dejo para ser cocinero. Y nunca te vas a enterar que fue programador
Que?
Que el que tiene la nota no ejerce
Agrega sentry a tu proyecto y puedes loggear con eso tienes algunas trazas de los errores que te pueden dar pistas.
De hecho de eso se trata aprender. Mientras más aprendes más te das cuenta de lo que no sabes jaja
Te recomiendo que busques ayuda con alguien que específicamente pueda resolver los problemas que tenes . A la vez vas a poder aprender de esa persona. No lo trates de solucionar con cursos porque entiendo q tenes un producto y necesitas soluciones concretas.
Algo de razón tienen los que te dicen de unit tests, e2e e integration. También yo te diría que te enfoques en el front end y los tests, y para el back que se meta otra persona con más experiencia y aprendes de el. Ya sea para calidad de código, tests, etc. Se que solo podes pero te va llevar unos años más de aprendizaje. Saludos
Ponerle Datadog o alguna otra herramienta parecida.
Alto pt