Matt Porter y Margaret Hamilton
331,110 views • 4:49

Aproximadamente a las 16:00 h del 20 de julio de 1969, la humanidad estaba a pocos minutos de aterrizar en la superficie de la Luna. Pero antes de que los astronautas comenzaran su descenso final, se encendió una alarma de emergencia. Algo estaba sobrecargando la computadora y amenazaba con impedir el aterrizaje.

En la Tierra, Margaret Hamilton contuvo la respiración. Ella había liderado al equipo que desarrolló el software de vuelo pionero, así que sabía que en esta misión no había margen de error. Pero la naturaleza de esta emergencia de último segundo pronto demostraría que su software estaba funcionando exactamente cómo se había planeado.

Nacida 33 años antes en Paoli, Indiana, Hamilton siempre había sido curiosa. En la facultad, estudió matemáticas y filosofía antes de tomar un puesto de investigación en el Instituto de Tecnología de Massachusetts para pagar su posgrado. Aquí se encontró con su primera computadora mientras desarrollaba software para respaldar las investigaciones en el nuevo campo de la teoría del caos.

Luego, en el Laboratorio Lincoln del MIT, Hamilton desarrolló software para el primer sistema de defensa antiaérea de EE. UU. de detección de aeronaves enemigas. Pero cuando escuchó que el famoso ingeniero Charles Draper estaba buscando ayuda para enviar a la humanidad a la Luna, inmediatamente se unió a su equipo.

NASA recurrió a Draper y su equipo de más de 400 ingenieros para inventar la primera computadora digital de vuelo compacta, la Computadora de Navegación del Apolo (AGC). Usando entradas de astronautas, este dispositivo sería responsable de guiar, navegar y controlar la nave espacial. En una época en la que las computadoras poco fiables llenaban habitaciones enteras, la AGC necesitaba operar sin ningún error y entrar en un espacio equivalente a un cubo de 30 cm de lado.

Draper dividió al laboratorio en dos equipos: uno para diseñar el hardware y otro para desarrollar el software. Hamilton lideró el equipo que construyó el software de vuelo de a bordo tanto para el Módulo Lunar como para el de Mando. Este trabajo, para el cual acuñó el término "ingeniería de software", era de crucial importancia. Había vidas humanas en riesgo, así que cada programa tenía que ser perfecto. El software de Margaret tenía que poder detectar errores inesperados rápidamente y recuperarse de ellos en tiempo real.

Pero un programa así de versátil era difícil de construir, ya que el software antiguo solo podía procesar trabajos en un orden predeterminado. Para resolver este problema, Margaret diseñó su programa para que fuera "asincrónico", lo que significa que los trabajos más importantes del software interrumpirían los menos importantes. Su equipo asignó a cada tarea una prioridad única para asegurarse de que cada trabajo ocurriera en el orden correcto y en el momento adecuado, incluso si sucedía algo inesperado.

Tras este avance, Margaret se dio cuenta de que su software también podría ayudar a los astronautas a trabajar en un ambiente asincrónico. Diseñó Avisos Prioritarios que interrumpirían las tareas programadas del astronauta para advertirle en caso de emergencia. Luego el astronauta se podría comunicar con el centro de control para determinar la mejor manera de proceder. Esta fue la primera vez que un software de vuelo se comunicó directa y asincrónicamente con un piloto.

Estos mecanismos de seguridad activaron las alarmas antes del alunizaje. Buzz Aldrin se dio cuenta de su error rápidamente: sin querer, había accionado el interruptor del radar de encuentro. Este radar resultaría esencial para su viaje de regreso, pero ahora estaba consumiendo recursos computacionales vitales. Por suerte, la Computadora de Navegación estaba preparada para resolver esto. Durante la sobrecarga, los programas de reinicio del software permitieron procesar solo los trabajos de mayor prioridad, incluyendo los programas necesarios para aterrizar. Los Avisos Prioritarios dieron una opción a los astronautas: aterrizar o no aterrizar. Contando con unos pocos minutos, el centro de control dio la orden.

En el alunizaje del Apolo 11, los astronautas, el centro de control, el software y el hardware trabajaron juntos como un sistema integrado. Las contribuciones de Hamilton fueron cruciales para ingenieros y científicos inspirados por el objetivo del presidente John F. Kennedy de llegar a la Luna. Y su trabajo fue más allá del Apolo 11: jamás se encontraron errores en el software de vuelo para las misiones Apolo tripuladas.

Después de su trabajo en Apolo, Hamilton fundó una empresa que usa su lenguaje exclusivo de sistemas universales para crear avances en sistemas y software. En 2003, NASA honró sus logros con el mayor premio financiero que le habían dado a una persona. Y 47 años después de que su software guiara astronautas a la Luna por primera vez, Hamilton recibió la Medalla Presidencial de la Libertad por cambiar la forma en que pensamos acerca de la tecnología.