COBOL, acrónimo de Common Business-Oriented Language, es un lenguaje de programación creado en 1959 para simplificar el desarrollo de sistemas empresariales. A pesar de tener más de seis décadas, sigue siendo fundamental en infraestructuras críticas de gobiernos y bancos. Este artículo analiza su historia, su influencia en la economía y los desafíos actuales de modernización, incluyendo cifras concretas sobre su uso y rendimiento. Se abordarán los aspectos técnicos que lo hacen resistente a la obsolescencia, así como los intentos de actualizarlo mediante herramientas modernas y soluciones basadas en inteligencia artificial.
Historia y adopción de COBOL
COBOL fue diseñado con la intención de ser comprensible incluso para personas no programadoras, utilizando palabras en inglés como “is”, “then” o “to”. Su principal ventaja era la independencia de la máquina: programas escritos en COBOL podían ejecutarse en distintos mainframes sin necesidad de reescribirlos completamente. Para 2000, se estima que aproximadamente el 80% de los 300.000 millones de líneas de código escritas hasta entonces eran en COBOL. Este nivel de adopción lo convirtió en la columna vertebral de sistemas de seguros de desempleo, registros de vehículos y transacciones financieras por valor de hasta 3 billones de dólares diarios. La estructura de COBOL permite operaciones de aritmética de punto fijo, crucial para aplicaciones financieras donde la precisión decimal es esencial y los errores mínimos pueden costar millones.
Sin embargo, su diseño generó dificultades. La ausencia de parametrización provocaba que módulos independientes compartieran datos globales, aumentando el riesgo de errores catastróficos. Además, el uso del comando GO TO fomentó la creación de lo que los programadores denominan “código espagueti”, donde las instrucciones se enlazan de manera confusa, dificultando el mantenimiento y la legibilidad en programas extensos. Aunque teóricamente autodescriptivo, COBOL requiere programadores altamente cualificados para mantenerlo correctamente, como señaló Fred Gruenberger: en manos inexpertas, el lenguaje puede generar sistemas inestables y difíciles de actualizar.
COBOL en el contexto moderno
En plena pandemia de COVID-19, el estado de Nueva Jersey enfrentó un déficit crítico de desarrolladores de COBOL mientras gestionaba reclamaciones de desempleo masivas, evidenciando la dependencia persistente de este lenguaje. A pesar de que se modernizaron algunas interfaces, el backend permaneció basado en sistemas legados de COBOL. Según estudios de Brookings, las ineficiencias de COBOL podrían haber costado a la economía estadounidense alrededor de 105.000 millones de dólares en 2020. Empresas como IBM han desarrollado herramientas de conversión asistidas por inteligencia artificial, pero los resultados suelen producir un “JOBOL”, mezcla de COBOL y Java, que hereda la complejidad original sin mejorar la legibilidad ni la mantenibilidad.
A nivel técnico, COBOL destaca por permitir cientos de palabras clave, frente a las 68 de Java, y por su enfoque en modularidad aunque limitada. Su estructura de archivos secuenciales y aritmética de punto fijo sigue siendo más eficiente que muchas soluciones modernas para transacciones financieras masivas. Aún hoy, los sistemas basados en COBOL procesan millones de operaciones bancarias diarias con un tiempo de inactividad prácticamente nulo, lo que evidencia su robustez pese a su antigüedad. La dificultad de reemplazar COBOL es comparada frecuentemente con materiales persistentes como el asbesto: es omnipresente, crítico y extremadamente complicado de eliminar sin afectar operaciones esenciales.
Reflexiones adicionales
El caso de COBOL subraya la tensión entre tecnología heredada y modernización digital. A pesar de su antigüedad, proporciona estabilidad y eficiencia en entornos donde la precisión financiera es clave, demostrando que obsolescencia no siempre significa inutilidad. La adopción de herramientas de inteligencia artificial para migración de código plantea promesas pero también riesgos: la conversión automática puede generar sistemas híbridos difíciles de depurar, lo que refuerza la necesidad de contar con expertos en COBOL para garantizar la continuidad operativa. Investigaciones recientes destacan que, aunque el desarrollo de nuevos sistemas prefiera lenguajes modernos como Python o JavaScript, la economía global sigue dependiendo de estas bases legadas, confirmando la relevancia estratégica del lenguaje .
171
Al hilo de esta «noticia» tengo dos comentarios. Por un lado, fue el primer lenguaje de programación que «aprendí»… y nunca utilicé. Todavía recuerdo las tarjetas perforadas de 96 columnas de IBM, no las de 80 de Hollerit.
Por otro lado, pensando en elk «intento» de reconvertir todo el código escrito en COBOL en algo más moderno ocurre lo mismo que contaba yo a mis alumnos sobre la necesidad de aprende a programar en Fortran. Es tal la cantidad de código en este lenguaje que no hay tiempo material para reconvertirlo en otro lenguaje de moda por lo que tiene el fuutor asegurado.