El código invisible que aún mueve el mundo digital

0
15

Parte de la infraestructura digital actual sigue utilizando código de hace décadas (Imagen ilustrativa Infobae)

En una era dominada por la inteligencia artificial y la computación en la nube, es fácil suponer que los sistemas tecnológicos actuales operan exclusivamente con software moderno.

Sin embargo, una parte significativa de la infraestructura digital sigue dependiendo de código escrito hace décadas. Desde la banca hasta la industria aeroespacial, fragmentos de lenguajes de programación como COBOL o Fortran aún sostienen sectores clave de la economía y la ciencia.

Como menciona New Scientist, la contradicción es evidente: mientras algunos consideran estos programas reliquias obsoletas, otros confían en ellos por su probada fiabilidad.

El enigma del código más antiguo

El reciente redescubrimiento del código fuente de ELIZA, el primer chatbot de inteligencia artificial creado en los años 60, despertó el interés por rastrear otros fragmentos de código aún en uso.

A diferencia de otros avances tecnológicos, identificar el software más antiguo en funcionamiento es una tarea compleja. Aunque es fácil encontrar ejemplos de tecnología mecánica antigua en operación —como aviones históricos aún en vuelo o bombillas encendidas por más de un siglo—, el código informático no es tan visible ni fácil de rastrear.

Los primeros programas documentados, como los escritos por Ada Lovelace en el siglo XIX para la máquina analítica de Charles Babbage, nunca fueron ejecutados porque la computadora para la que fueron diseñados nunca se construyó.

Otros, como el software de la computadora EDSAC de la Universidad de Cambridge en los años 40 y 50, podrían considerarse antiguos, pero aún no han sido utilizados en tiempos modernos debido a la falta de hardware funcional.

Cuando lo viejo se oculta en lo nuevo

La integración de código antiguo en sistemas modernos desafía su sustitución completa (Imagen Ilustrativa Infobae)

A diferencia de los dispositivos físicos, el código antiguo no siempre es reemplazado; con frecuencia, se integra en sistemas modernos. Lenguajes de programación como Fortran (1957) y COBOL (1959), aunque rara vez se enseñan en la actualidad, siguen presentes en infraestructuras críticas.

Un ejemplo es el sistema Sabre, creado en 1960 para gestionar reservas aéreas y aún en uso en la actualidad. Es probable que algunas de sus líneas de código originales sigan operativas, pero confirmar esto es casi imposible, ya que las grandes compañías aéreas han evitado discutir el tema.

Empresas como Delta Airlines, American Airlines, Lufthansa y British Airways no han respondido a consultas sobre el uso de código antiguo en sus plataformas.

Este silencio también se ha repetido en el sector financiero y tecnológico. Empresas como Apple, Microsoft y PayPal, así como bancos de renombre como HSBC y Barclays, han preferido no hacer comentarios sobre la posible presencia de software obsoleto en sus sistemas.

Mantenimiento y conocimiento, un problema

¿Por qué esta renuencia a hablar del tema? Una posible explicación es que muchas empresas podrían desconocer el funcionamiento exacto del código heredado en sus sistemas. Mantener software escrito hace 40 o 50 años es un desafío, especialmente cuando los programadores que lo desarrollaron ya se han retirado.

Un caso ilustrativo ocurrió en un banco londinense en 1971, cuando el Reino Unido adoptó el sistema decimal para su moneda. La entidad bancaria tenía un programa informático diseñado para manejar cálculos en libras, chelines y peniques, pero había perdido el código fuente original, lo que impedía su actualización.

En lugar de reescribir el software, se optó por una solución improvisada: agregar fragmentos de código para convertir valores a la antigua moneda, procesarlos y luego reconvertirlos al nuevo sistema decimal.

El caso del lenguaje COBOL es aún más llamativo. A pesar de que muchos lo consideran obsoleto, se estima que existen alrededor de 800 mil millones de líneas de código COBOL aún en funcionamiento, especialmente en la banca y el sector asegurador.

El problema es que la mayoría de los programadores especializados en COBOL tienen más de 60 años, y las nuevas generaciones no muestran interés en aprenderlo. Aunque el código en sí no “se desgasta”, su integración con sistemas modernos puede generar incompatibilidades difíciles de resolver.

Muchas empresas desconocen el funcionamiento exacto del código heredado en sus sistemas (Imagen Ilustrativa Infobae)

Los riesgos de depender del pasado

Un ejemplo reciente de los peligros de depender de código antiguo ocurrió en julio de 2024, cuando una actualización defectuosa de la empresa de ciberseguridad CrowdStrike provocó la caída de millones de computadoras en bancos, aeropuertos y hospitales alrededor del mundo.

Aunque el problema fue solucionado en cuestión de horas, incidentes como este evidencian lo frágiles que pueden ser las infraestructuras digitales cuando se mezclan fragmentos de código de distintas generaciones.

Un antecedente similar ocurrió en el año 2000 con el temido “error del milenio” (Y2K), cuando los sistemas informáticos debieron ser actualizados masivamente para evitar fallos relacionados con el cambio de fecha al nuevo siglo. Aunque se logró prevenir una crisis global, el incidente demostró la gran cantidad de software antiguo que sigue en funcionamiento en sistemas modernos.

La paradoja del código antiguo en la industria espacial

La resistencia a cambiar código antiguo no solo ocurre en empresas privadas. En el sector aeroespacial, donde cada misión representa una inversión multimillonaria, se prefiere utilizar software probado en lugar de arriesgarse con desarrollos recientes.

La Agencia Espacial Europea (ESA) mantiene este enfoque, argumentando que la confiabilidad es más importante que la modernidad. “Cuando los satélites cuestan miles de millones de dólares, nadie quiere correr el riesgo de fallos por software nuevo e inestable”, explicó un ingeniero de la agencia.

Un ejemplo extremo es el caso de las sondas Voyager, lanzadas por la NASA en 1977. Aunque han viajado más de 20 mil millones de kilómetros desde la Tierra, siguen operando con el mismo software con el que fueron enviadas al espacio.

Para su mantenimiento, la NASA ha recurrido a programadores retirados que aún recuerdan cómo trabajar con estos sistemas.

La ESA sostiene que el costo de los satélites no permite riesgos con software inestable (Imagen Ilustrativa Infobae)

El futuro del código del pasado

El mundo digital actual se encuentra en una encrucijada: aunque el software antiguo ha demostrado ser confiable, su dependencia puede convertirse en un problema si no hay especialistas para mantenerlo. Mientras que algunos sectores buscan eliminarlo progresivamente, otros confían en su durabilidad y precisión.

Como señala el ingeniero Stuart Mackintosh, presidente de la Perl Foundation, organización que mantiene el lenguaje de programación Perl desde 1987:

“Lo viejo sigue en uso porque simplemente funciona”. Esta afirmación resume la paradoja del código antiguo: a medida que el mundo avanza hacia la inteligencia artificial y la computación cuántica, gran parte de su infraestructura sigue basada en software que se escribió antes de que internet existiera.

En este contexto, es posible que algunas líneas de código escritas hace más de 50 años sigan funcionando dentro de otros 500 años. Aunque la tecnología evolucione, su pasado digital seguirá presente en el futuro.