El articulo cuestiona la afirmacion recurrente de que la programacion esta resuelta por los modelos de lenguaje. Distingue entre producir codigo ejecutable a partir de una especificacion clara y el trabajo completo de ingenieria de software, que en organizaciones maduras depende casi por completo del contexto: propiedad de los servicios, APIs existentes, requisitos de seguridad, patrones arquitectonicos, equipos responsables, impacto en sistemas downstream y restricciones de negocio. Frente a un proyecto personal en lienzo en blanco, extender un sistema en produccion durante una decada exige tomar decisiones dentro de un paisaje heredado que nadie ha documentado por completo. Los autores sostienen que el codigo siempre fue el medio, no el fin, y que los ingenieros se pagan para resolver problemas de negocio. Segun el texto, cada generacion de herramientas abarata una capa de la disciplina y traslada el cuello de botella a la siguiente: los compiladores sustituyeron al codigo maquina, los lenguajes de alto nivel a la programacion de bajo nivel, los frameworks a la infraestructura, y ahora los modelos de lenguaje automatizan la implementacion, lo que devuelve la atencion a las capas de objetivo de negocio, diseno de producto y diseno de solucion. La conclusion es que la ingenieria de software cubre toda la pila, y que hablar de programacion resuelta es confundir la capa automatizada con la disciplina entera.
Afirmar que programar esta resuelto es no entender la ingenieria de software
Fuentes:
Coding is solved misses the point
