Una madre inspiradora: Margaret Hamilton, la pionera de la ingeniería de software

Programación y tecnología
12 de abr. de 2021

Margaret Hamilton es una persona extraordinaria y una madre inspiradora. De joven, Hamilton no sólo fue una pionera en la ingeniería de software y la exploración espacial, sino también una madre cariñosa. Mantuvo una relación estrecha y cariñosa con su hija, que encontró accidentalmente un fallo grave y posiblemente mortal en el programa espacial Apolo.

Margaret Heafield Hamilton (de soltera Margaret Elaine Heafield) nació en 1936. Estudió matemáticas en los años 50 y empezó a trabajar en programas informáticos de meteorología en el MIT. De ahí pasó a escribir programas informáticos para la red de defensa aérea de Estados Unidos. Su primera tarea, que se le encomendó como una forma de novatada, fue tratar de arreglar un programa que nadie podía descifrar, y mucho menos hacer funcionar. Parte de la dificultad era que el autor hacía todos sus comentarios para el programa en griego y latín. Margaret sorprendió a sus compañeros, no sólo ejecutando el programa con éxito, sino también haciendo que imprimiera sus resultados en las dos lenguas arcaicas.

Para entonces, la hija de Margaret, Lauren, ya había nacido. Puede ser difícil criar a un hijo mientras se tiene un trabajo exigente. Por suerte, Hamilton recibió mucha ayuda de su marido James. En sus propias palabras, tuvo "la suerte de tener un marido muy moderno que entendía la igualdad".

Margaret Hamilton junto a un montón de libros

En el MIT, se unió al equipo de ingenieros del programa Apolo (el esfuerzo de Estados Unidos por poner un hombre en la Luna), donde acabó convirtiéndose en la jefa de desarrollo de todo el software de vuelo. En su trabajo, fue pionera en muchos conceptos importantes de la escritura de software, quizás el más notable: la capacidad de un programa para detectar y recuperarse de sus propios errores.

Margaret tenía que trabajar a menudo por la noche o los fines de semana, y solía llevarse a Lauren con ella. Un día de 1968, estaba realizando una simulación por ordenador para preparar la misión Apolo 8 (la primera que llevó a un ser humano a la Luna y volvió sin aterrizar). Durante la simulación, Lauren empezó a "jugar al astronauta" y a pulsar teclas en el panel de control hasta que el programa se bloqueó de repente.

Tras el análisis, Margaret se dio cuenta de que Lauren ejecutó accidentalmente un programa destinado a ser utilizado antes del despegue, pero lo hizo cuando la nave espacial simulada ya estaba en marcha. Comprendió que el mismo error podía cometerse también durante la misión real, pero sus superiores no la dejaron corregirlo y se limitaron a declarar que los astronautas están entrenados para no cometer nunca errores. Por desgracia, uno de los astronautas del Apolo 8 acabó haciendo exactamente lo mismo durante el vuelo real, causando muchos estragos y obligando a reconfigurar la misión. Después de ese incidente, Margaret pudo cambiar el software para que anulara al piloto si intentaba ejecutar el programa en el momento equivocado. Si no hubiera sido porque Margaret llevó a su hija al trabajo, el error podría haber pillado a todos desprevenidos y haber provocado una tragedia.

Margaret es una de las tres personas a las que se atribuye la invención del término "ingeniería de software". Escribir programas era algo nuevo en aquella época, y los ingenieros tradicionales, que trabajaban con hardware, tendían a despreciar esta disciplina. Ella empezó a decir "oye, nosotros también somos ingeniería" y finalmente en una reunión de Apolo un experto en hardware de primera línea le dio la razón, dando legitimidad a todo el campo.

El mundo actual está mucho más conectado digitalmente que en la época de la primera ingeniería de software y la exploración espacial. Puede que la mayoría de nosotros, padres o no, no tratemos con naves espaciales en nuestro trabajo, pero aún así debemos sentirnos cómodos con la tecnología para disfrutar plenamente de sus ventajas. En Logiscool, creemos que la alfabetización digital segura comienza desde una edad temprana. Por ello, ofrecemos una variedad de cursos, campamentos y workshops en los que los niños de 6 a 18 años pueden familiarizarse con diversos aspectos de la programación, la robótica, la seguridad en Internet, los medios digitales, los juegos y el aprendizaje de habilidades tecnológicas que les ayudarán a tener más éxito en su vida como adultos. ¿Y quién sabe? Puede que alguno acabe escribiendo software para programas espaciales 😊.

Check out our fun-based and inspiring Logiscool courses, workshops and camps on our homepage at https://www.logiscool.com/mx