Home »

Margaret Hamilton, la programadora que nos llevó a la luna

“La única opción era ser pioneros”: Margaret Hamilton fue una de las programadoras clave en el desarrollo del software que llevó (y trajo) a los primeros seres humanos a la luna. Es una de las pioneras en el campo de la ingeniería de software y su trabajo sentó las bases del diseño de software ultraconfiable. En apenas dos años pasó de programadora junior a programadora jefe del software de navegación de los cohetes de las misiones Apolo.

Margaret Hamilton no había pensado en dedicarse a la informática. Nacida en 1936, cuando llegó a la universidad ni siquiera existía esa carrera en Estados Unidos. De hecho por entonces solo había un sitio en todo el mundo, Cambridge, en el que se podía estudiar como tal. A Hamilton lo que le gustaba desde pequeña eran las matemáticas y fue en lo que se graduó. Su especialidad secundaria (“minor”) fue filosofía. El plan de Hamilton era hacer un doctorado en matemáticas abstractas, pero antes hizo una pausa para casarse, tener una niña y trabajar para mantener a su familia mientras su marido estudiaba derecho.

En 1959, a los 23 años, comenzó a trabajar en el Instituto Tecnológico de Massachussets (MIT), en el laboratorio de Edward Lorenz. Lorenz es el padre de la “teoría del caos” (¿os suena “el efecto mariposa”?) y estaba investigando un sistema de predicción metereológica. Lorenz era un apasionado del software y se lo pegó a Hamilton. Fue allí donde Hamilton aprendió a programar y hasta acabó diseñando un minisistema operativo. En aquella época era como uno se metía en la informática, empezando a trabajar y aprendiendo de otros. De la predicción del tiempo pasó a la detección de aviones enemigos, creando aplicaciones para rádar. Lo hacía en lenguaje ensamblador con una de las máquinas más grandes que se habían montado nunca (el primer AN/FSQ-7).

En 1963 vio una oferta de trabajo que cambiaría su vida: se buscaban programadores para… ¡diseñar el software para los cohetes que llevarían a los primeros seres humanos a la luna! No se lo pensó dos veces y en 24 horas Hamilton había conseguido el trabajo. Se convertía en la primera persona contratada para programar los ordenadores de la misiones Apolo.

Programando para la NASA

Con 27 años y unos 4 de experiencia con código, Hamilton era considerada aún una programadora junior. Como tal, le asignaron la parte del código que pensaban menos importante, la que se usaría solo en caso de tener que abortar una misión. Hamilton apodó al programa “olvídalo”. Sin embargo, después de que una misión (no tripulada) se tuviera que abortar, el conocimiento de Hamilton pasó a ser mucho más relevante de la noche a la mañana.

En una época en la que ni existía el concepto de conciliación familiar, Hamilton, que trabajaba muchas noches y fines de semana, se llevaba a su hija Lauren al laboratorio. Mientras ella trabajaba en la cápsula de simulación su hija jugaba a ser astronauta. En una ocasión su hija empezó a darle a varias teclas y de repente la simulación se colgó. Había seleccionado un programa que solo se debía de usar antes del despegue cuando ya estaban “de camino” a la luna. Hamilton avisó sobre este error e intentó corregir el software para que no puediera pasarle a los astronautas, pero la NASA no lo vio necesario. Los astronautas nunca se equivocan. ¿Adivinais qué pasó en la siguiente misión? Sí, los astronautas seleccionaron el programa que no debían. La NASA le dio la razón a Hamilton y ella pudo corregir “el bug Lauren”.

“Las vidas de los astronautas estaban en juego. Nuestro software tenía que ser ultrafiable y capaz de detectar un error y recuperarse de él en cualquier momento de la misión” - by Margaret Hamilton

Click To Tweet

Poco a poco en la NASA se dieron cuenta de que el software era mucho más importante de lo que habían pensado. También de que necesitaban a muchos más programadores. En 1968, el año que se llegó a la luna, había más de 300 personas dedicadas a ello. Programar para las misiones Apolo no era nada sencillo. No solo estaba el desafío de adaptarse a las limitaciones del hardware; también estaban los cambios constantes que se hacían respecto a los detalles de la misión.

El compromiso de Hamilton con la detección y prevención de errores llevó a que su código fuera muy robusto. La hizo destacar y fue escalando rápidamente en posiciones. En solo dos años pasó de programadora junior a programadora jefe del software de navegación del ordenador de a bordo de los Apolo.

Detalle de parte del código de la misión Apolo, con bromas entre los comentarios..

La “primera” ingeniera de software

Pese a todo, a finales de la década de los sesenta el software seguía siendo considerado “de segunda” respecto al hardaware. Margaret Hamilton luchó para que dejara de ser así y programar fuera considerado tan serio como trabajar con hardware. Fue por ello que empezó a usar el término “ingeniería de software”, que sus compañeros no habían oído nunca. De hecho, al principio se lo tomaban en broma, hasta que un gurú de hardware de la NASA la respaldó en una reunión. Poco a poco, el campo fue ganando el prestigio que se merecía.

Margaret Hamilton observando la llegada a la luna de la misión Apolo 17, la última misión tripulada a la luna.

Hoy en día se considera que su trabajo y el de su equipo fue crucial para el desarrollo de esta disciplina. En 2003 recibió un premio especial de la NASA por sus contribuciones. Una de las personas que la nominaron, Paul Curto, se sorprendía de que “nunca fuera reconocida por sus contribuciones pioneras. Sus conceptos de software asíncrono, testing end-to-end, priority scheduling… fueron las bases del diseño de software ultraconfiable.”

Cuando le preguntan por el sexismo en el sector en aquella época, Hamilton responde que algunas cosas estaban peor que ahora, pero curiosamente otras hasta mejor. En su caso, aunque un jefe le avisó de que podría tener problemas con los hombres que estaban a su cargo, Hamilton comenta que nunca fue así. “Nos centrábamos en las misiones, desafíos y fechas de entrega críticas”. Hamilton también comenta que fue afortunada por “tener un marido muy moderno, especialmente para la época. Había algunos hombres que entendían la igualdad.”

Llega el reconocimiento…

Hamilton seguiría trabajando en distintas misiones de la NASA, como la primera estación espacial estadounidense (Skylab) o el transbordador espacial, hasta 1976. Después decidió centrarse más en el desarrollo de tecnología de forma independiente y fue co-fundadora de una compañía. También fue autora de varias publicaciones científicas sobre computación. Desarrolló un nuevo lenguaje de programación, que Hamilton considera “una forma completamente distinta de pensar sobre software y sistemas”. En 1986 decidió tener aún mayor independicia y fundar su propia empresa: “Hamilton Technologies”.

Fue precisamente en 1986 cuando recibió su primer premio, el Augusta Ada Lovelace, concedido por la Asociación de Mujeres en Computación. Afortunadamente fue el primero de muchos, especialmente en los últimos años. En 2016 recibió la condecoración más prestigiosa de Estados Unidos, la Medalla Presidencial de la Libertad. Acercándonos más a casa, en 2018 visitó Barcelona para recibir un doctorado honorífico de la Universidad Politécnica de Cataluña.

Margaret Hamilton lleva sus 83 años muy bien, concediendo entrevistas y dando charlas. Poco a poco comienza a ser conocida también por el público no especializado. Hace unos años su foto posando con el código se hizo viral y empezaron a aparecer noticias sobre “la mujer que nos había llevado a la luna”. En 2017 LEGO la incluyó en un set dedicado a “mujeres de la NASA”. También se ha recuperado el código escrito por ella y su equipo y se ha subido a un repositorio github.


Justo hace solo unos meses de nuevo se hacía viral su foto. Esta vez era en un montaje en el que aparecía junto a Katie Bouman, una de las desarrolladoras del software que consiguió la primera imagen de un agujero negro. “Lo importante es que no nos oculten”, comenta Hamilton cuando le preguntan por este montaje en el que se compara su trabajo. Y es que por fin, 50 años después de que llegaramos a la luna, las mujeres que lo hicieron posible, como Margaret Hamilton, pero también Dorothy Vaughan o Katherine Johnson, empiezan a no estar ocultas.

Desde Kaleidos, nuestro pequeño homenaje es esta ilustración, por nuestro diseñador Juan de la Cruz, dentro de la serie de pioneras en tecnología.

Para saber más, os recomendamos ver esta charla de nuestra compañera Teresa de la Torre: “El hombre pisó la luna, pero gracias a la mujer”.