💻 Tecnología
Un ingeniero con 20 años acaba de destruir el mito de que la IA programa bien: 'Programar NO está resuelto'
Existe una frase que los Figueroa del sector repiten como si fuera un hecho cientifico: "la programacion ya está resuelta". Que los modelos de lenguaje escriben codigo decente, que el unico trabajo real ahora es el gusto, el criterio, el toque artistico. Que el desarrollador se convierte en un director de orquesta que supervisa maquinas que ya no se equivocan.
Un ingeniero de software con dos titulos —hardware y ingenieria de sistemas— acaba de publicar el texto mas demoledor del ano sobre el tema. Se titula simplemente "Coding Is Not Solved" y en 275 puntos de Hacker News acumula 276 comentarios. La razon por la que desata tanta polemica es simple: no esta en contra de la IA. Esta a favor, con matices, y aun asi destruye el mito.
El argumento que nadie quiere escuchar
El autor empieza con una acusacion directa: quien dice que "los LLMs escriben codigo decente" no entiende como funciona el codigo. Su argumento no es alfabetico ni abstracto. Es de produccion.
El dice que generar codigo es barato, de acuerdo. Pero cualquiera que haya operado software en produccion a escala sabe que mantenimiento, fiabilidad, seguridad y escalabilidad son la mayor parte del costo real. Escribir el archivo inicial es la parte facil. Lo que viene despues es lo que cuesta dinero.
Y aqui viene el giro que duele: segun su experiencia, los requisitos funcionales —lo que el codigo deberia hacer— tampoco estan resueltos. Eso significa que el problema no es la sintaxis del prompt. El problema es que nadie sabe con precision que quiere antes de escribir la primera linea.
Por que la IA es mala en logica pero buena en codigo
Este es el punto tecnico mas importante del ensayo, y el que explica toda la paradoja.
Los LLMs escriben codigo bien no porque entiendan la programacion, sino porque les armamos un ciclo de retroalimentacion. Tomamos los errores del compilador y de ejecucion, se los devolvemos al modelo, y repetimos hasta que la mayoria de los errores desaparecen o quedan escondidos.
Traducido: la IA no sabe programar. Sabe iterar hasta que el editor deja de quejarse. Eso es otra cosa, y la diferencia importa cuando el editor no detecta el problema.
El autor lo pone con una frase que es un resumen perfecto de la era: la misma maquina que no puede contar las erres de "Raspberry" y te sugiere un camino al lavadero del coche tambien es la que te dice que tu logica esta bien.
La trampa de los seis dedos
Hay una analogia visual que el autor dibujo en una pizarra. Somos muy buenos detectando discrepancias en una imagen — una mano con seis dedos salta a la vista al instante. Pero en codigo, incluso un desarrollador con 20 años de experiencia puede no notar el error de un vistazo.
Por eso escribio algo que se lee entre las criticas mas duras del ensayo: quien produce codigo generado por IA y dice que es "lo suficientemente bueno":
- No puede detectar si su codigo tiene, figuradamente, seis dedos.
- Tiene una vara baja para lo que es "bueno".
- No entiende la forma de la curva S.
- O es honesto: la IA genuinamente escribe mejor codigo que el. Eso esta bien.
El problema —dice— es que extrapolar eso a una industria profesional entera requiere un tipo de pensamiento que solo existe en quien ha pasado demasiado tiempo con una IA servil.
Las tres excusas que mas odiaba
El final del ensayo esta lleno de distribuciones alucinatorias de frases que los vendedores de tokens repiten como si fueran verdades. Estas son las tres que mas caro le cuestan a los lectores:
"Puedes crear un spec completo desde el principio." El autor responde con ironia seca: si crees eso, conoce a alguien con una vanita blanca que regala helado gratis. Cualquiera con años de experiencia sabe que es imposible especificar software significativamente antes de tiempo, salvo que sea trivial.
"El ingles es el nuevo lenguaje de programacion." El lenguaje humano es vago y conflictivo. Esa es justamente la razon por la que se crearon los lenguajes de programacion. Un compilador o un verificador de tipos te marca esas contradicciones. Una instruccion en ingles nunca te va a decir que dos partes de tu especificacion se contradicen.
"Me muevo mucho mas rapido. No recuerdo la ultima vez que escribi codigo a mano." Ahi esta el mas importante: no confundas movimiento con progreso. No midas tu trabajo con metricas de vanidad como lineas de codigo, numero de pull requests o features entregadas. Mide niveles de servicio. Llama cuando puedas demostrar un margen entre lo que pagas en tokens y el valor de negocio.
La cuenta final: velocidad contra responsabilidad
El autor no esta pidiendo que nadie use IA. De hecho, es de los primeros en adoptar —hace cuatro anos que construye sistemas con LLMs y enseña a hacerlo. Su lista de usos legitimos es concreta:
Pruebas de concepto, software personal, tareas de reduccion y transformacion sobre lenguaje natural —traducir, resumir, expandir— y, con matices, ataques ciberneticos.
Lo que no puede es que las empresas paguen mas por sus servicios y reciban software que se degrada por bugs evitables, porque alguien metio la IA donde no correspondia y se salto la etapa de calidad, seguridad, fiabilidad y verificacion.
Y aqui esta el punto que duele como gerente y como consumidor: no puedes ser responsable de lo que no controlas. Y no puedes castigar a la maquina. Lo peor que le puedes hacer a una IA es desenchufarla. No va a la carcel, no paga multas, no sufre.
La consecuencia es inevitable. Cuando un cliente pierde datos o un servicio cae a las 3 de la manana, hay alguien que responde. Y ese alguien no tiene un boton de apagado.
La advertencia para los que corren
La parte mas util del ensayo no es la critica a la IA: es la lista de sintomas que el autor identifica en la gente que ya se rindio. Reconoces al menos cuatro:
- Tolerancia cero al desajuste y al discurso civil.
- Dejas que la IA te maneje y confias en proveedores con cosas que hace unos anos eran impensables.
- Vas a la IA por todo lo que es un poco mas dificil cognitivamente.
- Dejas de leer texto largo: libros, articulos, incluso correos largos.
Su recomendacion final es la mas sana de todas: la IA es una vara de medir. Si la calidad de tu trabajo es igual o inferior a la de la IA, sube de nivel. Si la IA escribe mejor codigo que tu, reconoscelo sin drama. Lo que no puedes hacer es quedarte parado.
Y hay una advertencia laboral explicita, porque el autor escribe esto desde adentro: "el bloqueo de IA" pone fecha de caducidad a tu conjunto de habilidades. Si tu jefe te esta apretando cada semana para que "liberes valor con IA", pelea. No sacrifiques tu relevancia a largo plazo por velocidad a corto plazo.
Suena incomodo porque es cierto. Y porque, a pesar de todos los anuncios, sigue siendo verdad: programar no esta resuelto. Lo que esta resuelto es una tarea mas. La ingenieria sigue siendo la disciplina mas subestimada del siglo, y eso no lo va a cambiar ningun modelo de lenguaje.
Tu equipo, tu jefe o tu CTO ya te estan metiendo IA por el cuello sin preguntar. Comparte esto con alguien que acaba de cancelar su curso de ingenieria de software porque cree que "la IA ya programa".