La Tierra asomando sobre el horizonte de la Luna, fotografiada desde el Apollo 11

No había más remedio que ser pioneros. No había tiempo para ser principiantes.

17 de agosto de 1936 – 30 de septiembre de 2026

Margaret Hamilton

Retrato en blanco y negro de Margaret Hamilton en 1995, con el pelo suelto, sobre fondo oscuro

Margaret Hamilton, 2009“There was no choice but to be pioneers; no time to be beginners.”

  1. 1936

    Nace en Paoli, Indiana.

  2. 1958

    Se licencia en Matemáticas.

  3. 1959

    Entra en el MIT para programar predicciones del tiempo con Edward Lorenz, el del efecto mariposa.

  4. 1961

    En SAGE, el sistema de defensa aérea, le dan un programa que nadie lograba hacer funcionar, comentado en griego y latín. Ella lo consigue.

  5. 1965

    Primera programadora contratada para el proyecto Apollo.

  6. 1968

    Dirige el equipo que programa el módulo de mando.

Margaret Hamilton, sonriente, tumbada en el asiento del simulador del módulo de mando del Apollo, con la mano en el panel de interruptores

En el MIT, Margaret probaba el software en el simulador del módulo de mando.

A veces se llevaba a su hija Lauren, aún pequeña, al laboratorio.

Jugando, Lauren lanzó el programa P01, el de antes del despegue, en mitad de un vuelo simulado. Todo se colgó.

Margaret quiso proteger el software contra ese error. Se lo denegaron: los astronautas estaban entrenados para no cometerlo.

Diciembre de 1968. Apollo 8, rumbo a la Luna. Jim Lovell lanza P01 por error. Se borran los datos de navegación.

Desde tierra los recuperaron. Y su protección entró en el software.Hoy lo llamamos programación defensiva.

Margaret Hamilton en 1969, sonriente, junto a una pila de listados de código impresos casi tan alta como ella

Antes de GitHub, el código se imprimía.

MIT, 1969.

Son los listados del software de vuelo del módulo lunar y del de mando. Los escribieron los equipos que ella dirigía.

Impreso en papel continuo y apilado, casi tan alto como ella.

Una minifigura de LEGO de Margaret Hamilton, en blanco y negro, junto a una torre de libros de LEGO y una pizarra, recreando la foto de 1969

En 2017, esta foto se convirtió en una figura de LEGO.

Maqueta y foto: Maia Weinstock, autora del set Women of NASA
El cohete Saturn V del Apollo 11 despegando entre llamas
El módulo lunar Eagle, dorado y con las patas desplegadas, en órbita sobre el negro del espacio
La sala de control de misión en Houston, con consolas y pantallas, durante el Apollo 11

16 de julio de 1969. Despega el Apollo 11.

Cuatro días después, el Eagle desciende hacia la Luna.

102:38:26Program alarm.Neil Armstrong
102:38:30It’s a 1202.Neil Armstrong

El ordenador estaba recibiendo más trabajo del que podía hacer.

No se colgó. El software de Margaret sabía qué era importante: soltó lo secundario y siguió guiando el descenso.

102:38:53We’re Go on that alarm.Charlie Duke, desde Houston. Confiaron en el software.

Una cámara de 16 mm lo filmaba todo desde la ventana de Buzz Aldrin.

102:45:40Contact light.Buzz Aldrin
102:45:58The Eagle has landed.Neil Armstrong
Un módulo de memoria de cuerda del ordenador del Apollo: cientos de núcleos de ferrita atravesados por hilos de cobre
El ordenador de guiado del Apollo, una caja metálica cerrada, junto a su teclado DSKY

El software no se instalaba.

Se tejía.

Un hilo que atraviesa un núcleo es un 1. Uno que lo esquiva, un 0.

Este hilo escribe 1202, el número de la alarma, en binario.

Lo tejían a mano, sobre todo mujeres, en una fábrica de Raytheon.

Una vez tejido, no se podía cambiar. Tenía que estar bien a la primera.

El código del Apollo 11 está en GitHub. Y tiene sentido del humor.

LUMINARY 099THE_LUNAR_LANDING.agc

239P63SPOT3 CA BIT6 # IS THE LR ANTENNA IN POSITION 1 YET240 EXTEND241 RAND CHAN33242 EXTEND243 BZF P63SPOT4 # BRANCH IF ANTENNA ALREADY IN POSITION 1244 245 CAF CODE500 # ASTRONAUT: PLEASE CRANK THE246 TC BANKCALL # SILLY THING AROUND247 CADR GOPERF1248 TCF GOTOPOOH # TERMINATE249 TCF P63SPOT3 # PROCEED SEE IF HE'S LYING250 251P63SPOT4 TC BANKCALL # ENTER INITIALIZE LANDING RADAR252 CADR SETPOS1253 254 TC POSTJUMP # OFF TO SEE THE WIZARD...255 CADR BURNBABY

LUMINARY 099BURN_BABY_BURN--MASTER_IGNITION_ROUTINE.agc

45# BURN, BABY, BURN -- MASTER IGNITION ROUTINE46 47 BANK 3648 SETLOC P40S49 BANK50 EBANK= WHICH51 COUNT* $$/P4064# THE MASTER IGNITION ROUTINE WAS CONCEIVED AND EXECUTED, AND (NOTA BENE) IS MAINTAINED BY ADLER AND EYLES.65#66# HONI SOIT QUI MAL Y PENSE

LUMINARY 099LUNAR_LANDING_GUIDANCE_EQUATIONS.agc

174VRTSTART TS WCHVERT176 CAF TWO # WCHPHASE = 2 ---> VERTICAL: P65,P66,P67177 TS WCHPHOLD178 TS WCHPHASE179 TC BANKCALL # TEMPORARY, I HOPE HOPE HOPE180 CADR STOPRATE # TEMPORARY, I HOPE HOPE HOPE181 TC DOWNFLAG # PERMIT X-AXIS OVERRIDE

LUMINARY 099PINBALL_GAME_BUTTONS_AND_LIGHTS.agc

216# THE FOLLOWING QUOTATION IS PROVIDED THROUGH THE COURTESY OF THE AUTHORS.217#218# ::IT WILL BE PROVED TO THY FACE THAT THOU HAST MEN ABOUT THEE THAT219# USUALLY TALK OF A NOUN AND A VERB, AND SUCH ABOMINABLE WORDS AS NO221# CHRISTIAN EAR CAN ENDURE TO HEAR.::222# HENRY 6, ACT 2, SCENE 4

LUMINARY 099BURN_BABY_BURN--MASTER_IGNITION_ROUTINE.agc

904P40AUTO TC MAKECADR # HELLO THERE.905 TS TEMPR60 # FOR GENERALIZED RETURN TO OTHER BANKS.906P40A/P TC BANKCALL # SUBROUTINE TO CHECK PGNCS CONTROL924GOBACK CA TEMPR60925 TC BANKJUMP # GOODBYE. COME AGAIN SOON.
  1. Si la antena del radar de aterrizaje no está en su sitio, el ordenador le pide al astronauta que gire «el chisme ese».

    Ver en GitHub
  2. Luego vuelve a comprobarlo. Por si le ha mentido.

    Ver en GitHub
  3. Si todo está bien, «se va a ver al mago»: salta a la rutina que enciende el motor.

    Ver en GitHub
  4. Esa rutina se llama «Burn, baby, burn», como el grito con el que un DJ de los 60 pinchaba sus discos.

    Ver en GitHub
  5. La firman sus autores, Adler y Eyles. Con un lema en francés: «que se avergüence quien piense mal».

    Ver en GitHub
  6. «Temporal, espero, espero, espero». Este apaño aterrizó en la Luna.

    Ver en GitHub
  7. El programa del teclado, el de los VERB y NOUN del DSKY, se llama «juego de pinball». Y empieza citando a Shakespeare.

    Ver en GitHub
  8. Educado hasta el final: «hola» al entrar, «adiós, vuelve pronto» al salir.

    Ver en GitHub

Lo escribieron para dos ordenadores, el del módulo de mando y el del lunar. Hoy cualquiera puede leerlo.

Y en el README, su firma: «Submitted by Margaret H. Hamilton, Colossus Programming Leader». 28 de marzo de 1969.

72.633 personas le han dado una estrella.

Leer el código en GitHub
El repositorio chrislgarry/Apollo-11 en GitHub: las carpetas Comanche055 y Luminary099 y, en el README, la tabla de aprobaciones con Margaret H. Hamilton como responsableMódulo de mandoMódulo lunar
LUMINARY 099WAITLIST.agcLa especificación y el código de WAITLIST, el planificador de tareas del módulo lunar del Apollo 11.

Ingeniería de software

Margaret empezó a llamar así a su trabajo. Durante mucho tiempo, fue una broma.

Hasta que dejó de serlo.

Hoy es el nombre de nuestra profesión.

«El software acabó ganándose, por necesidad, el mismo respeto que cualquier otra disciplina».

Margaret Hamilton, en El País, 2018
Margaret Hamilton en 1969Margaret Hamilton en 1989

Margaret Hamilton Ella

Directora de Ingeniería de Software en el MIT · ApolloCofundadora y CEO en Higher Order SoftwareFundadora y CEO en Hamilton Technologies · Creadora del Universal Systems Language

Cambridge, Massachusetts, Estados Unidos · Información de contacto

Experiencia

  • Fundadora y CEO

    Hamilton Technologies, Inc.

    mar. 1986 – actualidad

    Cambridge, Massachusetts

    Creé el Universal Systems Language y la suite 001: prevenir los errores antes de que existan.

  • Cofundadora y CEO

    Higher Order Software

    1976 – actualidad1976 – 1984

    Cambridge, Massachusetts

    Con Saydean Zeldin, para llevar a otros proyectos lo que aprendimos en el Apollo: prevenir errores y tolerar fallos.

  • Directora de la División de Ingeniería de Software

    MIT Instrumentation Laboratory

    1965 – actualidad1965 – 1976

    Cambridge, Massachusetts

    Software de vuelo del Apollo y del Skylab, con un equipo de más de 400 personas. Llevamos a la humanidad a la Luna.

  • Programadora · Proyecto SAGE

    MIT Lincoln Laboratory

    1961 – 1963

    Lexington, Massachusetts

    Me dieron el programa que nadie conseguía hacer funcionar, con los comentarios en griego y latín. Funcionó.

  • Programadora

    MIT · Departamento de Meteorología

    1959 – 1961

    Cambridge, Massachusetts

    Software de predicción del tiempo para Edward Lorenz. Sí, el del efecto mariposa.

  • Profesora de Matemáticas y Francés

    Instituto público

    1958

    Boston, Indiana

    Boston, Indiana. El otro Boston llegaría después.

Educación

Earlham College

Licenciatura en Matemáticas · Especialidad secundaria en Filosofía

1958

Aptitudes

  • Ingeniería de software

    Le puso nombre ella

  • Programación defensiva

    Lauren Hamilton y Jim Lovell han validado esta aptitud

  • Gestión de prioridades en tiempo real

    Neil Armstrong y Buzz Aldrin han validado esta aptitud, a 10 km de la Luna

Reconocimientos y premios

  • Medalla Presidencial de la Libertad

    Otorgado por el presidente Barack Obama · nov. 2016

    La mayor distinción civil de Estados Unidos.

  • NASA Exceptional Space Act Award

    Otorgado por la NASA · 2003

    37.200 dólares, el premio más alto que la NASA había dado nunca a una persona.

  • Augusta Ada Lovelace Award

    Otorgado por la Association for Women in Computing · 1986

    Lleva el nombre de la primera programadora de la historia.

Idiomas

  • Inglés

    Competencia bilingüe o nativa

  • Francés

    Competencia profesional completa

  • Ensamblador del AGC

    Competencia bilingüe o nativa

Barack Obama coloca la Medalla Presidencial de la Libertad a Margaret Hamilton, entre aplausos

Si LinkedIn hubiera existido en 1976, su perfil no habría parado de cambiar.

Deja el MIT y funda, con Saydean Zeldin, su propia empresa: Higher Order Software.

Después funda Hamilton Technologies y crea el Universal Systems Language.

Sus aptitudes, validadas por quienes mejor las conocían.

La NASA le concede el Exceptional Space Act Award.

Barack Obama le entrega la Medalla Presidencial de la Libertad.

«Definió nuevas formas de ingeniería de software y ayudó a lanzar una industria que cambiaría para siempre la historia de la humanidad».

Mención de la Medalla Presidencial de la Libertad
La Tierra asomando sobre el horizonte de la Luna, fotografiada desde el Apollo 11

Gracias, Margaret.

17 de agosto de 1936 – 30 de septiembre de 2026