javisantana.com

Odio los framework

Los odio, y no porque me parezcan malos, los he usado, los uso y los usaré por el resto de mis días como programador. Un framework no deja de ser una forma más o menos cerrada de resolver un problema donde la mayoría de los casos de uso más o menos comunes han sido simplificados. Nada tienen de malo y mucho de bueno.

El gran problema viene cuando el framework es el foco.

El framework es el cebo

Cuando la gente piensa que su carencia de conocimiento la puede paliar con un framework, cuando da igual el negocio que modeles, el framework es el santo grial, crees que cualquier problema complejo lo vas a solucionar con el framework. Uso react y redux y con esto todas mis condiciones de carrera se irán.

Y parece que sí porque te da un modelo con el que trabajar, cuando comienzas cualquier proyecto lo básico suele ser muy parecido y los retos son más bien sencillos. El framework te da ese subidón de “lo estoy partiendo”, “voy a toda leche”, te enamoras de él.

Pero pronto se acaba la alegría cuando empiezas a modelar el negocio de verdad y ves que el framework es una pequeña ayuda, entonces intentas apalancarte en el framework como forma de solucionar todo, y termina por ser el que marca todo: tu arquitectura, tus herramientas y hasta el cómo contratas.

Cuando ya no puedes salir de la trampa

El CTO o lead developer se ve acorralado porque sus desarrolladores dicen que XXX es mejor que lo que estamos usando ahora. “Si usasemos XXX todo irá mucho más rápido”. Todo vale si el desarrollador está feliz, de otro modo se irá a la empresa que sí usa XXX. No te preocupes, no tardará en salir la voz que no entienda que la cultura de empresa pasa por no hablar de frameworks y sí de problemas y soluciones.

No irá más rápido, no será mejor, lo que pasa que volverás al primer paso donde los problemas sencillos se adaptan bien a lo que el framework te da.

De mientras todas tus ofertas de trabajo ya tienen “empresa YYYY busca personas para desarrollar en XXX”. Ya todas tus conversaciones son sobre el último plugin o el fork del framework. Toda tu tecnología está basada en XXX, Todos tus desarrolladores quieren ir a “XXX Con” en SF, donde todos los mayores expertos se reúnen para enseñar las maravillas de XXX (ellos sí son listos, sí tienen una ventaja al crear la tecnología). Las voces que comentan lo complicado que es hacer algo con el framework son rápidamente acalladas, todas las bondades que hemos vendido se irían al traste.

Toda tu estrategia tecnológica, de adquisición y mantenimiento de talento se ha basado en usar un framework. Toda tu estrategia se ha basado en usar algo que todas las empresas tienen disponible.

Huye de los desarrolladores de framework

Los que se vienen por un framework se irán por otro.

Un buen desarrollador no mira al framework, mira a la forma de resolver los problemas con el framework, lo entiende, sabe cuando y como usarlo, entiende que la tecnología avanza y que su código funcionando en producción de forma robusta, resolviendo problemas dejará de usar algo novedoso (cosa, por otro lado normal en absolutamente todas las industrias. Debemos ser los únicos que no nos sentimos orgullosos de nuestro pasado)

El buen desarrollador usa un framework porque sabe lo que hay debajo, no para evitarlo.

Una buena empresa es buena porque se enfoca en resolver el problema por el que le pagan y eso incluye desde el CEO hasta el desarrollador.