Desarrollo

Descubre consejos y tutoriales sobre desarrollo web y sistemas. Aprende a mejorar tus habilidades en front-end, back-end y más.

Cuando una aplicación PHP empieza a crecer, uno de los primeros problemas de rendimiento suele aparecer en el peor lugar posible: la experiencia del usuario. Un registro que tarda demasiado.Una compra que demora varios segundos.Una API que parece «congelarse» antes de responder. En muchos casos, el problema no es PHP en sí. El problema es […]

Leer más


En nuestras publicaciones anteriores, establecimos las bases para escribir código elegante con LINQ y desglosamos cómo dominar los joins avanzados. Asimismo, pusimos sobre la mesa las alarmas de por qué las aplicaciones sufren cuando se enfrentan a millones de registros. Cuando tu dataset pasa de miles a millones de filas, ya no basta con escribir […]

Leer más


Si has seguido esta serie, ya sabes qué son las Blazor Web Apps, dominas los Render Modes y entiendes a la perfección cómo lidiar con el ciclo de vida y el prerendering (puedes repasar el último artículo aquí). Llegados a este punto, tu aplicación funciona… pero, ¿está realmente lista para producción? En cuanto intentas estructurar […]

Leer más


En los artículos anteriores vimos por qué el ORM consume tanta memoria y cómo mitigarlo con flush() por bloques, clear() y toIterable(). Si llegaste hasta aquí, ya estás convencido del problema. Este artículo es el siguiente paso: cómo salir del ORM conscientemente cuando no lo necesitas, sin abandonar el ecosistema Doctrine ni romper la arquitectura […]

Leer más


En el artículo anterior vimos cómo elegir y aplicar los diferentes Render Modes. Parecía bastante sencillo: pones @rendermode InteractiveAuto y listo. Pero en cuanto empiezas a construir componentes reales, con llamadas a bases de datos, APIs o JavaScript, aparece el primer susto: «Mi componente está ejecutando las peticiones dos veces… y no es un bug.» […]

Leer más


En el artículo anterior vimos cómo sobrevivir cuando tienes que procesar millones de registros con Doctrine: usando flush() por bloques, clear() y toIterable(). Pero ¿por qué funcionan realmente esas técnicas? La respuesta está en dos piezas internas de Doctrine que la mayoría de los desarrolladores subestiman o directamente desconocen: el UnitOfWork y el proceso de […]

Leer más


Si has trabajado con C# en el ecosistema .NET, seguramente has oído hablar de Go, el lenguaje que Google creó para resolver problemas de escalabilidad y concurrencia en entornos modernos de nube. Aunque ambos son lenguajes potentes y modernos, sus filosofías son muy distintas. C# apuesta por la flexibilidad, la orientación a objetos y un […]

Leer más


En el artículo anterior vimos cómo Blazor evolucionó de ser «o WebAssembly o Server» a un modelo unificado mucho más potente. Pero saber que existe no es lo mismo que saber usarlo bien. Hoy nos vamos a ensuciar las manos con la decisión más importante que tomarás al trabajar con Blazor Web Apps en .NET […]

Leer más