miércoles, 12 de octubre de 2011

Por qué COBOL no ha muerto (ni morirá)

El otro día leí un tweet bastante interesante sobre programación: los lenguajes de programación altamente productivos no logran mejorar a los malos programadores, solo los hacen más peligrosos. Y me pareció tremendamente cierto, pues he visto demasiadas veces cómo un lenguaje que te permite hacer muchas más cosas en menos tiempo permite a un programador introducir muchos más bugs y gazapos por hora... algunos baten marcas, oigan.

La reflexión me llevó hacia los viejos lenguajes, los considerados no altamente productivos, y tal idea me llevó al lenguaje que lleva ya 20 años "muriéndose": COBOL. Al ser un lenguaje que carece de las múltiples ventajas de los lenguajes de tercera generación, como Java o .NET (.NET lo podemos llamar generación 3.5), solo los buenos programadores saben cómo utilizarlo correctamente; pero al ser precisamente los buenos programadores los únicos que lo utilizan el código que se genera es siempre bueno, lo que significa que los programas creados tendrán una vida media mucho mayor.

Paradójicamente, los nuevos lenguajes, que fueron creados para incrementar la calidad del software, tienen el contraefecto de permitir la creación rápida y barata de programas, lo cual justifica su mala calidad: a un programa que requiera seis meses de esfuerzo para ser creado se le exigirá una calidad y un tiempo de vida mucho mayor que otro que requiera solo un mes.