¿Qué tienen en común el IRS, los bancos, las aerolíneas y la infraestructura gubernamental de todo el mundo? Todos funcionan con sistemas respaldados por códigos informáticos antiguos que nadie se atreve a tocar, para que todo no se derrumbe.
OpenAI cree que puede tener una solución. El 19 de octubre, la empresa promocionado «mejoras sustanciales» en la capacidad de sus últimos modelos de IA para migrar software antiguo escrito en lenguajes de programación más antiguos a código moderno, lo que, según afirma, podría ayudar a las organizaciones a «mantener y modernizar sistemas más antiguos».
Se trata de un acuerdo potencialmente enorme. COBOL, uno de los lenguajes destacados por OpenAI, sigue obstinadamente integrado en grandes porciones de la infraestructura crítica del mundo. Y a pesar de décadas de esfuerzos por desterrarla a la historia, la lengua ha seguido cojeando, negándose simplemente a morir.
«Nadie en su sano juicio usaría COBOL para un nuevo proyecto de desarrollo».
Es difícil exagerar la ubicuidad de COBOL. COBOL, abreviatura de “lenguaje común orientado a los negocios”, nació en 1959. Casi siete décadas después, todavía está en todas partes. Según IBMCOBOL es la base de más del 40 por ciento de los sistemas bancarios en línea, admite el 80 por ciento de las transacciones con tarjeta de crédito en persona y maneja el 95 por ciento de las transacciones en cajeros automáticos. También sustenta muchos sistemas gubernamentales, desde Seguridad social hacia IRS a servicios contener la mayoría de los estados. Una estimación aproximada sitúa el coste anual de las ineficiencias de COBOL para el PIB de EE.UU. en alrededor de 105.000 millones de dólares.
Pero reemplazando COBOL es diabólicamente difícil. Lo mismo ocurre con otros lenguajes de programación heredados, como Fortran, todavía en uso hoy para todo, desde informática científica y previsión meteorológica hasta estudios atmosféricos y oceánicos y Códigos críticos para la seguridad nuclear.. Estos sistemas son a menudo demasiado importantes como para correr el riesgo de romperse, y muchos de los programadores que los entienden hace tiempo que se jubilaron o murieron.
Por todo su impresionante insinuaciones en moderno software desarrollolas herramientas de codificación de IA han tenido dificultades para avanzar mucho con estos sistemas heredados. Pero los acontecimientos recientes sugieren que eso puede estar cambiando.
En su última publicación de blog, OpenAI informó resultados prometedores al migrar código COBOL a lenguajes de programación más modernos, incluidos C++, Java, Kotlin, Python y Rust, sin cambiar lo que hace el software original. Esto último es crucial para las organizaciones que buscan deshacerse de códigos como COBOL, y OpenAI reconoce que «una migración se considera exitosa sólo si pasan todas las pruebas».
En las propias pruebas de OpenAI, GPT-6.1 Sol logró una precisión de preservación del comportamiento del 87 por ciento con un esfuerzo de razonamiento bajo (cuántos pasos computacionales dedica el modelo a analizar un problema antes de dar una respuesta), aumentando al 98 por ciento con un razonamiento más alto. En comparación, con un esfuerzo de razonamiento bajo, el GPT-6 Astra obtuvo alrededor del 86 por ciento, el GPT-6 Sol solo el 21 por ciento y el GPT-5.6 Sol apenas el 5 por ciento.
«Reescribir código no es lo mismo que reemplazar un sistema».
«Los resultados de esta evaluación demuestran el progreso hacia una migración de código más precisa y asequible para los equipos que modernizan el software del que dependen sus empresas», escribió OpenAI.
La compañía también informó mejoras en la capacidad de sus modelos para crear software de bases de datos en varios lenguajes de programación, incluido COBOL.
Anthropic también ve una oportunidad en los sistemas heredados. En febrero, publicado un “guía de modernización de código” paso a paso y inclinado su agente codificador, Claude Code, como una forma de emigrar Código COBOL en lenguajes modernos como Java o Python. No ofrecía puntos de referencia de rendimiento que mostraran qué tan bien Claude Code podía realizar tales migraciones, pero declarado que «la economía de la modernización de COBOL ha cambiado». Las acciones de IBM, que obtiene parte de sus ingresos ayudando a las empresas a mantener sistemas heredados, cayó en picada tras el anuncio de Anthropic.
Expertos que hablaron con El borde Estuvo de acuerdo en que las herramientas de inteligencia artificial han avanzado mucho en la lucha contra el código heredado en los últimos años. Pero advirtieron que los avances anunciados por OpenAI esta semana están muy lejos de hacer posible reemplazar de manera segura los sistemas heredados críticos construidos a su alrededor.
El portavoz de OpenAI, Oscar Haines, reconoció en un correo electrónico a El borde ese código heredado «aún está lejos de ser un problema resuelto» y dijo que la compañía está escuchando los comentarios de los desarrolladores y las empresas y explorando formas de crear mejores pruebas y continuar mejorando la comprensión de los lenguajes de codificación de sus modelos. Anthropic no hizo comentarios a tiempo para su publicación.
«Las evaluaciones mostradas por OpenAI no abordan la dificultad clave: dividir un sistema heredado complejo en unidades más pequeñas que pueden reemplazarse individualmente».
«Reescribir un código no es lo mismo que reemplazar un sistema», afirmó Vadim Zaytsev, profesor asociado de evolución del software en la Universidad de Twente, en los Países Bajos. Los sistemas tienen mucho código (Zaytsev dijo que el sistema más grande que había visto tenía 250 millones de líneas de COBOL, «definitivamente no es el más grande del mundo»), pero eso es sólo una parte del problema. El código puede escribirse en varios idiomas y hay que considerar datos, potencialmente almacenados en varios formatos, dijo. También hay que tener en cuenta las integraciones técnicas con otros sistemas y las expectativas de las personas y organizaciones.
Toda esa complejidad significa que «la IA no está desempeñando un papel importante en este momento a la hora de reemplazar o migrar los sistemas COBOL heredados», dijo Zaytsev.
Las evaluaciones de OpenAI tampoco capturan esta compleja realidad, dijo Arie van Deursen, profesor de ingeniería de software en la Universidad Tecnológica de Delft en los Países Bajos. El borde. Describió el blog de la compañía como “superficial” y señaló que ofrecía pocos detalles sobre la tarea de migración, mientras que su punto de referencia de lenguaje probaba modelos en una tarea relativamente simple y bien definida que involucraba sistemas similares a los que habrían encontrado en la capacitación. También destacó la enorme brecha entre mantener un sistema obsoleto y modernizarlo. «Por supuesto, mantener es mucho más fácil que modernizar», dijo van Deursen, calificando las tareas que OpenAI utilizó para evaluar sus modelos «a años luz» de la modernización real. «Las evaluaciones mostradas por OpenAI no abordan la dificultad clave: dividir un sistema heredado complejo en unidades más pequeñas que pueden reemplazarse individualmente».
El mayor desafío no es necesariamente reescribir el código. “De hecho, el principal desafío es no entender cómo funciona el sistema”, afirmó Alastair Donaldson, profesor de lenguajes de programación en el Imperial College de Londres. Tal falta de comprensión es un problema «muy común» para los sistemas heredados que utilizan lenguajes como COBOL, dijo, y agregó que ya muy pocas personas saben cómo programar en ellos. Y aunque está en todas partes, Donaldson dijo que «nadie en su sano juicio usaría COBOL para un nuevo proyecto de desarrollo».
«En muchos casos, incluso las diferencias más pequeñas en el comportamiento del sistema antes y después de la migración son inaceptables».
Eso hace que las pruebas sólidas sean cruciales, dijo Donaldson. Un enfoque podría ser ejecutar los mismos flujos de trabajo en los sistemas nuevos y antiguos para comprobar que se comportan de manera idéntica. La IA también podría documentar la traducción de su código, lo que idealmente permitiría a humanos familiarizados con el lenguaje heredado revisar el trabajo. La verificación formal, que utiliza técnicas matemáticas para verificar computacionalmente que el código se comporta correctamente, es otra opción, dijo Jacopo Mauro, profesor de matemáticas e informática en la Universidad del Sur de Dinamarca.
Estos métodos ya se utilizan para verificar los resultados matemáticos generados por IApero aplicarlos al código heredado requeriría una «enorme cantidad de trabajo», dijo Mauro. Usar esos métodos significaría que el código podría verificarse automáticamente, dijo Mauro, y agregó que «tener esto será mejor que tener un control humano de que la traducción es correcta». Hasta entonces, afirmó, “la verificación humana sigue siendo esencial”.
Y cuando los sistemas involucrados son tan críticos como los que se ejecutan en COBOL, los expertos dicen que es necesario estar absolutamente seguro de que el reemplazo funciona. «En muchos casos, incluso las diferencias más pequeñas en el comportamiento del sistema antes y después de la migración son inaceptables», afirmó Zaytsev. Si bien la IA definitivamente puede generar ahorros y acelerar las cosas, la complejidad de los sistemas heredados significa que la automatización parcial no es suficiente.
«Supongamos que tienes una varita mágica de IA que maneja el 99 por ciento de tu código», dijo Zaytsev. «¿Qué se hace con el 1 por ciento restante? Ese 1 por ciento puede ser un millón de líneas de código, repartidas por todas partes y fallando sutilmente en más formas que puedas imaginar durante tu vida».
