Tecnología

Un joven de 21 años reconstruyó el sistema contable que creó su abuelo hace 40 años

Lorenzo Méndez, estudiante de ingeniería, modernizó el programa en COBOL de la empresa familiar y encontró los rastros de tres generaciones en el código.

Redacción4 min de lectura
Tiene 21 años, encontró el programa que hace 40 años creó su abuelo y mejoró su padre, y lo reconstruyó para que siga en uso

Lorenzo Méndez, de 21 años, aceptó el desafío de reconstruir el sistema contable que usa su tía a diario para manejar la empresa familiar. El programa, creado por su abuelo hace más de cuatro décadas y modificado por su padre, funcionaba solo en una computadora vieja. Al reescribirlo, Lorenzo descubrió que el código guardaba la historia de tres generaciones.

La empresa de la familia Méndez vende software a bancos, principalmente sistemas para cumplir con las regulaciones del Banco Central. El abuelo de Lorenzo fundó la compañía tras desarrollar ese proceso para una entidad bancaria, y luego otros bancos comenzaron a pedírselo. En ese entonces se programaba en COBOL, un lenguaje que tuvo su auge en las décadas del 60 y 70 y que todavía sostiene gran parte de los sistemas bancarios del mundo. El padre de Lorenzo, que también sabía COBOL, se sumó a la empresa años después.

La primera impresión de Lorenzo con el programa fue dura: “vi un montón de archivos difíciles de leer”, dice. Por eso decidió tratarlo como una caja negra: “le doy un archivo de entrada, anoto qué salida genera el sistema viejo y así me aseguro de que el programa nuevo devuelve exactamente lo mismo, probando con múltiples casos. Este método me resulta más sencillo que entender el programa a fondo”, explica.

Para reescribirlo, eligió una combinación estándar: HTML para el frontend y, en el backend, el lenguaje Go junto con SQLite. “Es algo más aburrido, pero no necesita mantenimiento y puede sobrevivir unos cuantos años, así como el COBOL”, dice.

Al abrir los archivos COBOL originales, Lorenzo descubrió que cada uno comenzaba con un encabezado: un campo “AUTHOR” con el nombre completo de quien lo había escrito, otro llamado “DATE-WRITTEN” con la fecha de creación, y el registro de la última modificación. También había comentarios que su padre y su abuelo habían dejado a lo largo de los años.

Con esos datos, autoría y fechas, reconstruyó todo el historial en Git, el sistema que hoy usan la mayoría de los programadores del mundo para registrar cambios en un código, pero que en 1983, cuando se escribió el primer archivo de la familia, todavía no existía. De hecho, llegó recién 22 años después. El primer commit es ocho meses anterior a la presentación de la primera computadora Macintosh.

El resultado fue un repositorio con más de 150 commits atribuidos a sus autores: su abuelo, su padre y él. “Fue muy lindo, la verdad. Uno siempre escuchó cómo lo hizo mi viejo, o mi abuelo, pero después de poder verlo fue muy emocionante”, cuenta Lorenzo.

En el camino encontró comentarios que le causaron gracia, como uno que había dejado su padre en un programa que administra contraseñas: “¿Cómo funcionaba este programa? Solo Dios sabe. Igual sigue siendo una porquería para mi gusto”. Se lo mandó al grupo familiar y provocó risas entre todos.

La historia traspasó las fronteras de la familia cuando Lorenzo le contó a un compañero de la facultad, quien le sugirió publicarla en redes sociales. Siguiendo el consejo, armó un hilo en X y lo subió sin demasiadas expectativas. La repercusión fue enorme: 109 mil visualizaciones, más de 2800 me gusta y 132 republicaciones en menos de una semana. En otro tuit, mostró cómo funciona el sistema en la práctica: corre dentro de una máquina virtual de MS-DOS, alojada en una notebook con Windows 7 que se apaga si se desconecta de la corriente. En versiones más nuevas de Windows directamente no arranca.

Lorenzo, su padre y su abuelo están contentos con la historia. Ninguno de los mayores se resistió a las intervenciones de Lorenzo, así que él está motivado para modernizar el programa que tanto trabajo le da a su tía. Sobre el lenguaje, no guarda nostalgia: “Tuvo su época de esplendor, pero es medio raro de leer, está todo en mayúscula”, dice, y agrega que el estilo del código tampoco ayuda, porque hay saltos de línea desordenados.

“Creo que después de terminar este desafío, no quiero ver más COBOL en mi vida”, dice entre risas. Mientras tanto, disfruta del ejercicio de reconstruir el historial: “tener esto por escrito, tener el historial, es hermoso. Me lo quedo para toda la vida”, dice, mientras piensa en que más temprano que tarde se sume la cuarta generación.

¿Te gustó esta nota?

Recibí lo más importante del día en tu correo. Sin spam, con opción de baja siempre.

Más en Tecnología