Saltar al contenido

Su código llevó a los seres humanos a la Luna y también inventó el software

julio 2, 2021


Para Hamilton, la programación significaba hacer agujeros en pilas de tarjetas perforadas, que se procesarían durante la noche en lotes en una computadora central Honeywell gigante que simulaba el trabajo del módulo de aterrizaje Apollo. “Tuvimos que simular todo antes de que volara”, recuerda Hamilton. Una vez que el código fuera sólido, se enviaría a una instalación cercana de Raytheon donde un grupo de mujeres, costureras expertas conocidas en el programa Apolo como las «viejitas», ensartaban cables de cobre a través de anillos magnéticos era un 1; un cable que rodeaba el núcleo era un 0). Olvídese de la RAM o las unidades de disco; en Apolo, la memoria estaba literalmente cableada y era casi indestructible.

Los vuelos de Apolo llevaban dos máquinas casi idénticas: una utilizada en el módulo lunar, la Águila que aterrizó en la luna y el otro para el módulo de comando que transportaba a los astronautas hacia y desde la Tierra. Estas computadoras Apollo de 70 libras eran computadoras portátiles como ninguna otra. Concebida por ingenieros del MIT como Hal Laning y el jefe de Hamilton, Dick Batton, fue una de las primeras computadoras importantes en utilizar circuitos integrados en lugar de transistores. Como cuenta Mindell, fue el primer sistema de navegación a bordo computarizado diseñado para ser operado por humanos pero con tecnología de piloto automático «fly-by-wire», un precursor de los sistemas de navegación computarizados que ahora son estándar en los aviones de pasajeros.

El sistema almacenó más de 12.000 «palabras» en su memoria permanente, las “cuerdas” de cobre enhebradas por los trabajadores de Raytheon, y tenía 1.024 palabras en su memoria temporal y borrable. “Era la primera vez que una computadora importante había estado en una nave espacial y se le había dado mucha responsabilidad por la misión”, dice Don Eyles, quien trabajó en el código del módulo lunar mientras estaba en el IL del MIT. “Demostramos que eso se podía hacer. Lo hicimos en lo que hoy parece una cantidad de memoria increíblemente pequeña y una velocidad de cálculo muy lenta «. Sin él, Neil Armstrong no habría llegado a la luna. Y sin el software escrito por Hamilton, Eyles y el equipo de ingenieros del MIT, la computadora habría sido un fracaso.

Esto quedó claro el 20 de julio de 1969, pocos minutos antes de que el Apolo 11 aterrizara en el Mar de la Tranquilidad. Debido a lo que el ingeniero de software de Apollo, Don Eyles ha denominado un «Error de documentación» la computadora Apollo comenzó a escupir preocupantes mensajes de error durante esta fase crítica de la misión. Pero aquí es donde los argumentos técnicos ganados por Hamilton y otros salvaron el día. Los mensajes de error aparecían porque la computadora estaba abrumada, encargada de hacer una serie de cálculos innecesarios cuando, de hecho, era más necesario colocar el módulo en la superficie de la luna. De vuelta en Houston, los ingenieros sabían que debido al procesamiento asincrónico único de Apollo, la computadora se concentraría en la tarea en cuestión: aterrizar el Águila en el Mar de la Tranquilidad. Cuando el software se dio cuenta de que no tenía suficiente espacio para realizar todas las funciones que se suponía que debía hacer, pasó por su proceso de detección de errores y se centró en el trabajo de mayor prioridad, dice Hamilton.

‘Eso nunca sucedería’

Un día, Lauren estaba jugando con la unidad de pantalla y teclado del simulador del módulo de comando del MIT, apodada DSKY (dis-key). Mientras jugaba con el teclado, apareció un mensaje de error. Lauren había bloqueado el simulador al iniciar de alguna manera un programa de prelanzamiento llamado P01 mientras el simulador estaba en pleno vuelo. No había ninguna razón por la que un astronauta hiciera esto, pero no obstante, Hamilton quería agregar código para evitar el accidente. Esa idea fue rechazada por la NASA. “Nos habían dicho muchas veces que los astronautas no cometerían ningún error”, dice. «Fueron entrenados para ser perfectos». Entonces, en cambio, Hamilton creó una nota de programa, un complemento a la documentación del programa que estaría disponible para los ingenieros de la NASA y los astronautas: “No seleccione P01 durante el vuelo”, decía. Hamilton quería agregar un código de verificación de errores al sistema Apollo que evitaría que esto estropeara los sistemas. Pero eso parecía excesivo para sus superiores. “Todos decían, ‘Eso nunca sucedería’”, recuerda Hamilton.

Pero lo hizo. Justo alrededor de la Navidad de 1968, cinco días después del histórico vuelo del Apolo 8, que llevó a los astronautas a la luna para la primera órbita tripulada, el astronauta Jim Lovell seleccionó inadvertidamente P01 durante el vuelo. Hamilton estaba en la sala de conferencias del segundo piso del Laboratorio de Instrumentación cuando llegó la llamada desde Houston. El lanzamiento del programa P01 había borrado todos los datos de navegación que Lovell había estado recopilando. Eso fue un problema. Sin esos datos, la computadora Apollo no podría averiguar cómo llevar a los astronautas a casa. Hamilton y los codificadores del MIT necesitaban encontrar una solución; y tenía que ser perfecto. Después de pasar nueve horas estudiando detenidamente el programa de 20 cm de grosor que estaba en la mesa frente a ellos, tenían un plan. Houston cargaría nuevos datos de navegación. Todo iba a estar bien. Gracias a Hamilton, ya Lauren, los astronautas del Apolo regresaron a casa.

También gracias a Hamilton y el trabajo que ella dirigió, las nociones de lo que la humanidad podía hacer, y ser, cambiaron no solo más allá de la estratosfera sino también aquí en el terreno. La ingeniería de software, un concepto en el que Hamilton fue pionero, ha encontrado su camino desde el alunizaje hasta casi todos los esfuerzos humanos. En la década de 1970, Hamilton había dejado la NASA y el programa Apollo. Luego fundó y dirigió varias empresas de software. Hoy en día, su empresa, Hamilton Technologies, está a solo unas cuadras del MIT, donde comenzó su carrera: un centro de la revolución del código que todavía mira hacia las estrellas.

También te puede interesar:



Source link

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *