Elige tecnología aburrida, revisitado (2025)
(brethorsting.com)- El principio de "Choose Boring Technology", que se enfoca en stacks tecnológicos comprobables, se vuelve aún más importante en la era de las herramientas de programación con IA
- Las empresas deben usar estratégicamente sus limitados "innovation tokens" en tecnologías con confiabilidad demostrada
- Las herramientas modernas de programación con IA generan código que parece convincente para casi cualquier stack tecnológico, pero si se combinan dos o más tecnologías que el usuario no conoce, se vuelve imposible validar los errores
- En un stack tecnológico que ya se conoce bien, las herramientas de programación con IA funcionan como un force multiplier (multiplicador de capacidades), pero en tecnologías desconocidas se degradan a una simple muleta de dependencia
- Cuanto mayor es la calidad del código generado por IA, más difícil es detectar los problemas, por lo que el valor de una comprensión profunda de la tecnología aumenta aún más
Reafirmación del principio Choose Boring Technology
- La opinión de haber coincidido con el texto de Dan McKinley, "Choose Boring Technology", hace 10 años no ha cambiado ni después de una década
- Al comenzar un proyecto nuevo, primero se plantea: "¿es una excusa para aprender algo nuevo o es para resolver un problema?"
- Si se va a aprender algo nuevo, se limita lo desconocido a una sola cosa; si se busca resolver un problema, se mantiene la tecnología que ya se conoce
- Con la aparición de los LLM y las herramientas de programación con agentic AI, este principio se vuelve todavía más critical
El argumento central de McKinley
- Las empresas tienen "innovation tokens" limitados, y deben usarlos estratégicamente en tecnologías establecidas y bien entendidas, no en tecnologías emocionantes pero no comprobadas
- La tecnología aburrida tiene modos de falla conocidos (failure modes), funcionalidades bien entendidas y confiabilidad operativa demostrada
- Cuando ocurre una falla a las 3 de la mañana, es mejor depurar una tecnología para la que existen respuestas en Stack Overflow que aventurarse en territorio desconocido
- Este principio era cierto en 2015 y sigue siéndolo hoy
Las herramientas de programación con IA como nueva variable
- Las herramientas modernas de programación con IA generan código con apariencia profesional para casi cualquier stack tecnológico imaginable
- Si se le pide a Claude o Copilot implementar microservices basados en Kubernetes, GraphQL federation o un framework moderno de JavaScript, devuelven código que sigue las reglas y hasta funciona
- Si una persona usa dos o más tecnologías que no conoce, no tiene forma de verificar si la IA está entregando resultados incorrectos
- A pesar de sus capacidades impresionantes, los LLM alucinan (hallucinate) en detalles técnicos
- Se han visto casos en que ingenieros aceptan sin más código problemático generado por IA
- Uso de API deprecated, implementación de antipatrones de seguridad, problemas sutiles de rendimiento que solo aparecen bajo carga de producción
- El código parecía correcto, seguía convenciones de nombres y tenía manejo de errores adecuado, pero estaba mal de una forma que solo alguien familiarizado con esa tecnología podía detectar
Tecnología desconocida + código con IA = multiplicación de incertidumbre
- Combinar una tecnología poco familiar con código generado por IA no suma incógnitas, sino que las multiplica
- No se puede saber si la elección del framework es adecuada
- No se puede saber si la implementación de la IA sigue las best practices
- No se puede saber qué parte del código generado es boilerplate y cuál es lógica central del negocio
- No se puede saber qué modos de falla hay que vigilar
- Esto va más allá del simple cargo-culting: es un problema del nivel de "cargo-culting times 2,356"
Donde la tecnología aburrida y la IA generan sinergia
- Cuando se entiende el stack base, las herramientas de programación con IA se vuelven muy poderosas
- Como se conoce bien Rails, es posible detectar cuando Claude hace una propuesta sospechosa (con ayuda de context7)
- Como se entienden las particularidades de JavaScript, se pueden verificar las sugerencias de Copilot
- La IA se convierte en un force multiplier en tecnologías que ya se entienden, pero en una muleta de dependencia en tecnologías desconocidas
Guía práctica para la era de la IA
- Al evaluar una tecnología nueva, primero hay que preguntarse: "si la IA genera el código de implementación de esta tecnología, ¿podré revisarlo adecuadamente?"
- Si la respuesta es "no", esa tecnología no debería usarse en algo mission-critical
- Si se decide aprender algo nuevo (y solo hay un innovation token), hay que dedicar tiempo real a entenderlo con la profundidad suficiente para verificar las sugerencias de la IA
- No se trata de copiar y pegar esperando que funcione
- Hay que resistir la tentación de asumir varias tecnologías nuevas al mismo tiempo usando las herramientas de IA como excusa
- La IA puede hacer sentir que es posible manejar a la vez un lenguaje nuevo, un framework nuevo y una infraestructura nueva, pero no permite validar correctamente ninguno de ellos
Riesgo aumentado y conclusión en la era de la IA
- El argumento original de "choose boring technology" era reducir la complejidad operativa y la carga cognitiva, y esa preocupación sigue vigente
- En la era de la IA existe un riesgo adicional: la false confidence (falsa confianza) que da una IA capaz de generar código con apariencia profesional para cualquier stack
- La calidad del código generado por IA hace que, paradójicamente, sea más difícil encontrar los problemas
- Antes el mal código se veía mal; ahora hay que entender bien el dominio para detectar problemas sutiles
- Al resolver problemas, usa lo que ya conoces; al aprender algo nuevo, concéntrate en aprenderlo; y no confundas código generado por IA con comprensión real
- La tecnología más aburrida de tu stack puede ser precisamente aquella que entiendes lo bastante bien como para darte cuenta cuando la IA se equivoca
- En un mundo donde la IA genera con confianza miles de líneas de código para tecnologías que nunca has usado, el valor de esa comprensión es mayor que nunca
¿Quieres seguir recibiendo temas de tecnología seleccionados?
Sigue el canal de Telegram. @GeekNewsES
Aún no hay comentarios.