La madre del espacio
Cuando Neil Armstrong, Michael Collins y Buzz Aldrin estaban a punto a aterrizar en la Luna, los ordenadores del módulo lunar Eagle empezaron a emitir señales de advertencia con los errores 1201 y 1202.
Cuando Neil Armstrong, Michael Collins y Buzz Aldrin estaban a punto a aterrizar en la Luna, los ordenadores del módulo lunar Eagle empezaron a emitir señales de advertencia con los errores 1201 y 1202. ¿Qué demonios significaba aquello? Los astronautas no tenían ni tiempo ni combustible para dudas. Necesitaban una respuesta inmediata del centro de operaciones situado a más de 380 000 kilómetros de distancia. ¿Seguían adelante o abortaban la misión? Desde Houston la respuesta fue clara y llena de confianza: “go”. Los errores solo eran avisos acerca de una saturación del ordenador por la captación de datos de radar. Estos datos eran innecesarios para aterrizar, así que el software del vehículo espacial estaba programado para descartar tareas de prioridad baja y dedicarse a las tareas importantes. Sin esta discriminación de qué recursos emplear, posiblemente el Apolo 11 habría abortado el alunizaje y la historia de la llegada del hombre a la Luna sería otra. Desde que conocemos este suceso, los héroes de este hito científico han pasado a ser cuatro: los astronautas y Margaret Hamilton, la joven que desarrolló el software de navegación del Programa Espacial Apolo.
¿Qué estudió Margaret Hamilton?
Margaret Elaine Heafield nació en Paoli, en el estado norteamericano de Indiana, el 17 de agosto de 1936. Le faltaba apenas un mes para cumplir los 33 años cuando Armstrong dejó la primera huella humana en la Luna. Para ello, fue clave el trabajo pionero de Margaret por más que hayamos tardado tanto en reconocérselo.
Inició su formación en matemáticas en la Universidad de Michigan, aunque la continuó en el Earlham College. De allí salió con pareja, James Cox Hamilton, (quien acabaría convertido en su marido) y licenciada en 1958. Sus estudios continuaron en la Universidad de Brandeis, en Boston, donde se dedicó a las matemáticas abstractas y a sus 24 años empezó a trabajar en el Instituto Tecnológico de Massachusetts, conocido por sus siglas en inglés: MIT. Aquí iniciaría su despegue profesional que acabaría llevando al hombre a la Luna y, de paso, revolucionando el ámbito de la tecnología mundial.
Trabajó en el diseño de un software dedicado a la predicción del tiempo. Formó parte del proyecto SAGE entre 1961 y 1063 que, dada su efectividad, acabó teniendo un uso militar para detectar aviones enemigos. El éxito en sus trabajos no pasó desapercibido y le sirvió para unirse al Laboratorio Charles Stark Draper del MIT, que por entonces trabajaba en el Programa Apolo.
Pionera de la ingeniería de software
Se puede decir que Margaret Hamilton convivió e impulsó el nacimiento de la programación como ciencia. Con determinación y de manera irremediablemente autodidacta, sentó las bases de la “ingeniería de software”, un término cuya invención se le atribuye a la propia Margaret. Ella misma contó en una entrevista que:
“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”.
Su trabajo para la NASA
El primero de sus proyectos más trascendentes para la NASA fue el desarrollo de un programa de emergencia para abortar una misión espacial. Fue el preludio de sus grandes logros, pues muchas veces un gran éxito se consigue impidiendo pequeños fracasos. Margaret fue especialista en anticipar los errores que pudieron acabar con el objetivo de llegar a la Luna.
Acabó como directora del equipo encargado de programar el ordenador de vuelo de la misión Apolo. El proyecto le requería un esfuerzo ingente y las horas de dedicación no eran muy compatibles con la conciliación familiar. Margaret se llevaba a su hija al trabajo para pasar más tiempo con ella, aunque de la situación no se salvó su matrimonio y se divorció en 1967.
Dos años después, el hombre llegó a la Luna gracias al software que diseñó para la NASA, capaz de distinguir entre las prioridades de cada tarea, una revolución que marcó un hito en la historia de la informática. La detección de errores fue clave para que los astronautas pudieran buscar soluciones de manera anticipada y el 20 de julio de 1969 se logró el alunizaje.
No ha sido hasta tiempos recientes cuando el trabajo de Margaret se ha visto reconocido. Una foto viral en redes sociales de nuestra protagonista al lado de las 400 000 líneas de código impresas que fueron necesarias para el software empezó a remover el interés por los personajes detrás de los primeros hombres en pisar la Luna. En 2003 recibió el premio “NASA Exceptional Space Act” y, entre otros, fue condecorada con la Medalla Presidencial de la Libertad en 2016, la mayor concesión civil de los Estados Unidos. Su legado también incluye la inspiración que despierta su historia y sus palabras siempre son un bálsamo para reflotar cualquier propósito:
“Uno no debería tener miedo a decir «no lo sé» o «no lo entiendo», o incluso de hacer «preguntas tontas». Ninguna pregunta es tonta. Aunque las cosas puedan parecer imposibles, aunque los expertos digan que algo es imposible, aunque haya que seguir el camino sola, no hay que tener miedo a estar equivocada, a admitir errores; aquellos que sepan fallar de forma estrepitosa son los que pueden conseguir cosas grandiosas” •