Margaret Hamilton, la pionera de la programación que llevó el Apolo a la Luna

Entrevistamos a esta ingeniera después de que su foto con el código de la misión Apolo 11 conquistara Twitter

El tuitero JD (@nevesytrof) publicó esta foto de Margaret Hamilton hace un par de semanas, y no tardó en hacerse viral. En 1969, el código de esta matemática y pionera informática que entonces tenía 33 años fue fundamental para que Neil Armstrong y Buzz Aldrin se dieran un paseo por la Luna. En la foto la vemos sonriendo junto a una montaña de código que ella misma había tecleado y que sirvió para que el Apolo 11 pudiera cumplir con su objetivo.

Como explica en Medium Three-Fingered Fox, desde la época del Proyecto Manhattan, que desarrolló la primera bomba atómica, la “mera programación” estaba a cargo de mujeres, ya que al ser una tarea en apariencia mecánica y a base de tarjetas perforadas, prácticamente se equiparaba a la mecanografía. Sin embargo, en la época de Hamilton y en el caso del proyecto Apolo, el trabajo incluía también el desarrollo y el diseño del software.

“Esta fue una de las primeras ocasiones en las que se confió al software una tarea tan fundamental y en tiempo real”, apunta Wired en un artículo publicado el pasado mes de agosto, que añade que Hamilton había aprendido a programar por su cuenta hasta convertirse en la directora de la división de ingeniería de software de MIT. Por cierto, el término “ingeniería de software" también es suyo.

De hecho, el artículo de Medium añade que “muchas de las pioneras de la programación fueron mujeres”. Por ejemplo y además de Hamilton, Wired también menciona a Grace Hopper, inventora del lenguaje de programación Cobol y contraalmirante de la marina de Estados Unidos. Hopper es también recordada por haber acuñado el término “debug”, después de que unos compañeros suyos descubrieran que uno de los ordenadores del laboratorio no funcionaba por culpa de una polilla ("bug" significa bicho).

En 1986, Margaret Hamilton fundó Hamilton Technologies, empresa de la que es consejera delegada. Decidimos llamar. Y nos pusieron con ella, que se mostró muy sorprendida por el hecho de que un medio español la telefoneara porque una foto suya de hace 35 años estaba triunfando en Twitter. "¿Twitter?" Sí, la red social... Como Facebook... "Ah, es que los de mi generación no usamos eso" (tiene 78 años). A pesar de esta lógica sorpresa, Hamilton accedió a contestar unas preguntas por correo electrónico.

Debe ser extraño convertirse en alguien “famoso en internet” ahora, por esta foto y en redes sociales. ¿Le gusta esta sensación?

¡Siempre que la gente tenga cosas agradables que decir!

No usa redes sociales, ¿pero le gusta este interés por su trabajo?

Siempre es bueno que la gente se interese por lo que uno hace.

¿Quién tomó esta foto?

Aquí tengo una descripción de la foto extraída de un documento del Laboratorio Draper del MIT: "Tomada por el fotógrafo del Laboratorio Draper en 1969 (durante la misión del Apolo 11). Aquí vemos a Margaret de pie frente a los listados del software desarrollado por el equipo del que estaba al frente, el equipo del software de vuelo del módulo lunar y del módulo de mando".

¿Cómo fue trabajar en un proyecto como el primer aterrizaje en la Luna?

Trabajé en todas las misiones tripuladas y algunas sin tripulación de Apolo. Apolo 8 es la segunda en lo que se refiere a momentos excitantes y memorables, si no empatada con Apolo 11.

Hamilton trabajando en el Proyecto Apolo / NASA.

(Apolo 8 fue el primer viaje espacial tripulado que alcanzó una velocidad suficiente para salir de la órbita terrestre).

¿De qué se encargaba este software?

¿Te refieres, por ejemplo, a las alarmas 1201/1202 del aterrizaje del Apolo 11? Escribí una carta al director de Datamation, titulada “La computadora se llenó” y publicada el 1 de marzo de 1971, en la que describí el problema y la solución:

“Debido a un error en el manual de tareas, el interruptor del radar se encontraba en la posición errónea. Esto provocó que se enviaran señales erróneas a la computadora, con el resultado de que se le pedía que realizara sus funciones normales para el aterrizaje mientras recibía una carga extra de datos falsos que ocupaban el 15% de su tiempo. El ordenador (o mejor, su software) fue lo suficientemente inteligente para reconocer que se le estaba pidiendo que realizara más tareas de las que debía. Entonces lanzó una alarma, que quería significar para el astronauta: ‘Estoy saturado con más tareas de las que debería estar haciendo en este momento y me voy a ocupar sólo de las más más importantes, es decir, las necesarias para aterrizar’. (...) De hecho, el ordenador estaba programado para hacer más que reconocer condiciones erróneas. El software incorporaba un grupo completo de programas de recuperación. La acción del software, en este caso, fue la de eliminar tareas de prioridad baja y reestablecer las más importantes. (...) Si el ordenador no hubiera reconocido este problema y llevado a cabo la acción de recuperación, dudo que el Apolo 11 hubiera logrado su aterrizaje exitoso en la Luna”.

¿Cree que la importancia de su trabajo en este proyecto se ha reconocido lo suficiente?

El tiempo lo dirá. Confío en que las soluciones que resultaron de las lecciones aprendidas durante este proyecto se adoptarán a gran escala.

¿Fue entonces cuando acuñó el término “ingeniería de software”?

Durante los primeros días de este proyecto se trataba el software como un hijo adoptivo y no se tomaba en serio como otras disciplinas de ingeniería, como la ingeniería de hardware, y se pensaba en él como arte y magia, no ciencia. Siempre he creído que arte y ciencia estaban involucradas en su creación, pero en ese momento la mayoría pensaba de otra forma. Sabiendo esto, luché para legitimar el software, de modo que tanto esta ingeniería como los que la construían recibieran el respeto que merecían, por lo que empecé a usar el término “ingeniería de software” para diferenciarlo del hardware y de otras formas de ingeniería. Cuando empecé a usar estas palabras, se consideraban graciosas. Fue una broma recurrente durante mucho tiempo. Les gustaba bromear con mis ideas radicales. El software acabó ganándose el mismo respeto que cualquier otra disciplina.

¿Era difícil para una mujer dedicarse a la ingeniería y a la ciencia en los años 60? ¿La situación ha cambiado hoy en día?

Depende de quién fuera la mujer, para quién trabajara y cuál fuera la cultura en la organización concreta. En general, algunas cosas eran más difíciles entonces y otras lo son más ahora. En retrospectiva, algunas de las cosas que se aceptaban entonces porque nosotros (hombres y mujeres) no conocíamos una alternativa mejor, no se aceptan hoy en día, y a menudo parecen peculiares e incluso sorprendentes cuando las consideramos. Aún hacemos otras cosas por pura ignorancia hoy en día, como seguir pagando a las mujeres salarios más bajos que a los hombres.

¿Había más mujeres en informática que en otras ingenierías? ¿Cómo eran tratadas por sus colegas? ¿La situación es diferente a la actual?

Las mujeres que trabajaban en informática en esa época eran muy a menudo relegadas a posiciones inferiores. En el caso del proyecto Apolo mis colegas (en su mayor parte, hombres) y yo éramos amigos y trabajamos codo con codo para resolver problemas exigentes con fechas límite críticas. Nos concentramos en nuestro trabajo más que en sí alguien era hombre o mujer. Era más frecuente que nos refiriéramos a alguien como “una persona de la segunda planta”, “un tipo de hardware”, “alguien de DAP”, “un gurú de sistemas operativos” o un “rope mother” (pudiendo ser hombre o mujer). (Alguien encargado del cableado).

¿En qué otros proyectos de la NASA ha trabajado?

Además de en las misiones tripuladas de Apolo y un par de las no tripuladas, trabajé en el software de vuelo del Skylab y en los requisitos de software preliminares para la programación de vuelo del Transbordador Espacial, por nombrar algunos.

¿Qué es lo que más le gusta de su trabajo?

Los retos continuos y la gente creativa con la que trabajamos.

En 1986 fundó su propia compañía. ¿Por qué tomó esta decisión?

Para acelerar la evolución de nuestra tecnología y para introducirla a más usuarios.

¿En qué está trabajando ahora mismo?

En la continua evaluación de los Universal System Languages y su ciclo de vida automatizado (las herramientas 001), además de una infraestructura de despliegue más automatizada.

El artículo de Medium sobre Hamilton fue enlazado en Reddit, donde lleva más de 200 comentarios. El usuario Laioren resume bastante bien la labor de esta pionera de la informática: “Uh… So she invented or helped 'pioneer' like… everything? That’s pretty cool”. ("Así que inventó o ayudó a inventar como... ¿todo? Eso está guay"). A lo que Dneronique responde: “... And she did it all with punch cards”. "Y lo hizo todo con tarjetas perforadas".