No necesitamos front-end frameworks
Tengo un problema con los front-end frameworks... entre mejor conozco Javascript más difícil es justificar su uso
Los frameworks de Javascript se crearon bajo una filosofía principal: Los lenguajes de servidor no aprovechan las tecnologías del browser pero Javascript sí, por lo tanto, traslademos la lógica de negocio de las aplicaciones al cliente y aprovechemos ese poder
Empezó por ahí de 2010, bajo la influencia del boom en el mercado de smartphones, introduciendo conceptos como JSON web tokens y state management a Javascript, resultando en un paradigma que trataba al browser como una plataforma en sí misma; El nacimiento del anti-monolito
En teoría ésto es un concepto interesante, pero en la práctica, se volvió una verdadera crisis de identidad: ¿Qué es Javascript y para qué sirve?
Alejar conceptualmente al browser del servidor introdujo una nueva moda en el desarrollo web: Las APIs RESTful son obligatorias y todo es un componente de Javascript ...y ahora hasta simples páginas de imágenes y texto utilizan indicadores de carga para renderizar su contenido
Sitios basados en tecnologías básicas como html, css y js se convierten en proyectos que requiren gestor de paquetes, bundling, transpilación (Eso sí, cada semana sale un nuevo framework con una opinión distinta de cómo hacerlo). Es overkill
No digo que no existan casos que requieran de éstas soluciones complejas, pero sí creo que en la mayoría de los casos, optar por un front-end framework viene de no tener clara la naturaleza de Javascript, yo también cometí este pecado alguna vez
Javascript fue creado para agregar dinamísmo a un sitio estático; Agregar interactividad a la experiencia del usuario actualizando fragmentos del dom al vuelo; ventanas flotantes, elementos animados, mensajes de chat... El propósito original de Javascript no era convertir el browser en un sistema operativo
Es difícil justificar la implementción de un front-end framework cuando su selling point es que el proyecto tendrá características similares a una aplicación móvil, ¿porqué queremos que un sitio web se comporte como una aplicación móvil? ¿porqué no construir una app móvil, entonces? no se siente como una solución honesta...
En los últimos años, del código que he escrito quizá un 20% ha sido Javascript, pero ése código ha resuelto problemas que sólo Javascript puede resolver; Javascript es escencial y extremadamente útil para aspectos muy específicos de la web, y existen librerías excelentes que abrazan esta idea (jquery, alpine, lit)
Y quizá, si nos preguntamos realmente qué es Javascript y para qué sirve, llegaremos juntos a la conclusión de que en la mayoría de los casos, no necesitamos front-end frameworks
Mi opinión profesional es, que los front-end frameworks más bien pertenecen a una categoría de tecnología experimental; Atraen talento a la industria e invitan a desarrolladores veteranos a conocer tecnologías emergentes, pero no han superado la prueba del tiempo y mantienen a la comunidad de Javascript dividida en tribus
En la última década, los front-end frameworks crearon una burbuja tecnológica en la que existen <FrameworksCounter></FrameworksCounter>
maneras complejas de resolver los problemas más sencillos de la web, y una cantidad preocupante de desarrolladores no saben programar sin un framework. En la vida real, optaría por un stack aburrido y honesto, no más que la herramienta indicada para hacer el trabajo, y evitaría cualquier tecnología "interesante" que agregue complejidad innecesaria al proyecto
Tuve que recorrer un camino largo con Javascript antes de comprender cómo brilla más cuando es utilizado de manera quirúrgica, en el momento y situación que es realmente necesario: Este es uno de los plot-twists más trascendentales de mi carrera