Opinión O442Opinion Manuel personas 4900 caracteres ( T ) Los grandes en informática son .... personas: Grace Murray Hopper la creadora de COBOL ( C) Manuel Dávila Sguerra [email protected] Recordar la historia de vez en cuando no hace daño. Aún no conozco estudios formales sobre la participación de la mujer en el mundo de la informática, pero se dicen muchas cosas, especialmente por la disminución del número de mujeres estudiando esta carrera en las universidades. Este artículo no se va a centrar en este tema propiamente. pero inicio con este comentario porque vamos a hablar de una mujer cuya intervención marcó toda una época de la computación: Grace Murray, la creadora de COBOL. Este lenguaje, cuya sigla significa Common Business Oriented Language, fue el primer lenguaje creado para ser compatible con todos los computadores que existían en los años 60. La responsable de la grandeza de este desarrollo de software fue la matemática y física Grace Murray (1906 – 1992) graduada en la Universidad de Yale en 1930 , que más adelante ingresaría a las fuerzas armadas en la segunda guerra mundial llegando al grado de teniente. Estuvo además vinculada en el desarrollo del MARK I, un computador que tenía unas características físicas que para la tecnología de hoy suenan extrañas: medía unos 15,5 metros de largo, 2,40 metros de alto, unos 60 centímetros de ancho y pesaba aproximadamente unas cinco toneladas. Para su funcionamiento mecánico tenía 760.000 ruedas y 800 kilómetros de cable basado en la la máquina analítica de Charles Babbage. Se dice que tomaba de 3 a 5 segundos por cálculo y se programaba con interruptores. El lenguaje COBOL nació de FLOW-MATIC, que fue el primer lenguaje de alto nivel, también creado por Grace Murray Hopper en 1955, en un trabajo hecho para UNIVAC, la empresa que unida a Burroughs creó lo que hoy es Unisys. Sin embargo, se dice también que otra mujer, Ada Lovelace (1815-1852), una analista del motor de análisis de Charles Babbage, es reconocida como la "primera programadora de computadoras" en 1842. En la época de Grace Murray no existía en realidad el concepto de un lenguaje de programación que fuera capaz de que expresar los algoritmos en forma de texto y de palabras que emularan el lenguaje natural para que fuera entendido por la máquina, lo cual fue el motivo para construir el primer compilador cuya tarea es convertir las instrucciones del lenguaje fuente a lenguaje binario de máquina. Poder expresar las instrucciones en un lenguaje de frases en inglés fue novedoso, aunque la ilusión de que los programas fueran leído por los directivos de las empresas nunca se cumplió. Miremos una muestra de las instrucciones de COBOL que dejan ver claras estas intenciones: OPEN INPUT NOMINA, OUTPUT RESULTADOS. READ INFORMACION—DE-NOMINA AT END GO TO FINAL. ADD DEDUCCION-DE-IMPUESTOS, DEDUCCION-DE-HOSPITALIZACION GIVING TOTAL-DE-DEDUCCIONES. SUBTRACT TOTAL-DE-DEDUCCINES FROM SALARIO GIVING PAGOTOTAL Las variables DEDUCCION-DE-IMPUESTOS, DEDUCCION-DEHOSPITALIZACION,TOTAL-DE-DEDUCCIONES son parte de unas estructuras de datos que se expresan en unas secciones del programa llamadas FILESECTION. En los años 60, las grandes empresas crearon sus sistemas de información usando este lenguaje, de tal manera que, aún hoy en día, son muchas las empresas que trabajan en COBOL, debido a que los cambios de lenguajes en grandes sistemas es un tema complejo y más vale la seguridad que los riesgos en estas migraciones. El famoso Y2K, que creó tanta angustia empresarial en el año 2000, se debió a que los programadores crearon las estructuras de los datos de fechas con solo dos dígitos para el año y por lo tanto en el cambio de siglo los algoritmos que involucraban fechas iban a crear serio problemas en los resultados. Hay muchas historias alrededor de las viejas épocas de la programación. Una de ellas la viví siendo director del centro de cómputo de las empresas de Energía Eléctrica y de Acueducto de Bogotá, por allá en 1977, en la que teníamos un gran computador de la serie IBM 360 que ocupaba unos 90 metros cuadrados de área, 15 operadores y usábamos tarjetas perforadas. En una ocasión en que se hizo un cambio de zonificación de Bogotá se trasladaron las direcciones del formato alfanumérico de origen a la nueva dirección. La inclusión de una instrucción de COBOL que pasaba los campos en blanco de los datos numéricos a ceros se incluyó, equivocadamente, en los datos de las nuevas direcciones de tal manera que después de días y noches de procesamiento de miles de datos nos dimos cuenta de que estaban saliendo direcciones como Calle 100000 Número 23-4000000. Pero no le echemos la culpa al COBOL , pues estos son errores que, como el del Y2K, son fallas humanas en la programación de computadores que hace tan peligrosa a la ingeniería de software por su dependencia humana. Más bien agradecerle a Grace Murray Hopper su innovación porque de ahí se desprendió toda una carrera de los lenguajes de programación.