At roughly 4pm on July 20, 1969, mankind was just minutes away from landing on the surface of the moon. But before the astronauts began their final descent, an emergency alarm lit up. Something was overloading the computer, and threatened to abort the landing.
Por volta das quatro da tarde, no dia 20 de julho de 1969, a humanidade estava a minutos de aterrar na superfície da Lua. Mas, antes de os astronautas começarem a descida final, acendeu-se um alarme de emergência. Qualquer coisa estava a sobrecarregar o computador e ameaçava abortar a aterragem.
Back on Earth, Margaret Hamilton held her breath. She'd led the team developing the pioneering in-flight software, so she knew this mission had no room for error. But the nature of this last-second emergency would soon prove her software was working exactly as planned.
Na Terra, Margaret Hamilton susteve a respiração. Tinha liderado a equipa que desenvolvera o pioneiro "software" de voo e sabia que naquela missão não podia haver nenhum erro. Mas a natureza desta emergência da última hora, em breve provaria que o "software" dela funcionava exatamente como planeado.
Born 33 years earlier in Paoli, Indiana, Hamilton had always been inquisitive. In college, she studied mathematics and philosophy, before taking a research position at the Massachusetts Institute of Technology to pay for grad school. Here, she encountered her first computer while developing software to support research into the new field of chaos theory.
Nascida 33 anos antes em Paoli, Indiana, Hamilton tinha sido sempre curiosa. No liceu, tinha estudado matemática e filosofia, antes de assumir uma posição de investigação no Instituto de Tecnologia de Massachusetts para pagar os estudos superiores. Aí conheceu o primeiro computador ao desenvolver um "software" para apoio à investigação na nova área da teoria do caos.
Next at MIT's Lincoln Laboratory, Hamilton developed software for America’s first air defense system to search for enemy aircraft. But when she heard that renowned engineer Charles Draper was looking for help sending mankind to the moon, she immediately joined his team.
Depois do Laboratório Lincoln no MIT, Hamilton desenvolveu um "software" para o primeiro sistema de defesa aérea dos EUA, para a pesquisa de aviação inimiga. Mas, quando ouviu dizer que o conhecido engenheiro Charles Draper estava a procurar ajuda para enviar homens para a Lua,
NASA looked to Draper and his group of over 400 engineers to invent the first compact digital flight computer, the Apollo Guidance Computer. Using input from astronauts, this device would be responsible for guiding, navigating and controlling the spacecraft. At a time when unreliable computers filled entire rooms, the AGC needed to operate without any errors, and fit in one cubic foot of space.
ela imediatamente juntou-se à equipa dele. A NASA queria que Draper e o seu grupo de mais de 400 engenheiros inventassem o primeiro computador compacto de voo digital, o Apollo Guidance Computer (AGC) Usando o "input" dos astronautas, este aparelho seria responsável por orientar a navegação e controlar a nave espacial. Numa época em que computadores pouco fiáveis enchiam uma sala inteira, o AGC tinha de funcionar sem erros e caber num espaço de 28 dm3.
Draper divided the lab into two teams, one for designing hardware and one for developing software. Hamilton led the team that built the on-board flight software for both the Command and Lunar Modules. This work, for which she coined the term “software engineering," was incredibly high stakes. Human lives were on the line, so every program had to be perfect. Margaret’s software needed to quickly detect unexpected errors and recover from them in real time.
Draper dividiu o laboratório em duas equipas, uma para conceber o "hardware" e outra para desenvolver o "software". Hamilton chefiou a equipa que criou o "software" de voo de bordo tanto para o módulo de comando como para o módulo lunar. Este trabalho que ela designou por "engenharia de 'software' " era de importância vital. Estavam em jogo vidas humanas, por isso o programa tinha de ser perfeito. O "software" de Margaret tinha de detetar rapidamente erros inesperados e resolver o problema em tempo real.
But this kind of adaptable program was difficult to build, since early software could only process jobs in a predetermined order. To solve this problem, Margaret designed her program to be “asynchronous,” meaning the software's more important jobs would interrupt less important ones. Her team assigned every task a unique priority to ensure that each job occurred in the correct order and at the right time— regardless of any surprises.
Mas este tipo de programa flexível era difícil de criar, porque os primeiros "softwares" só podiam processar tarefas por uma ordem pré-determinada. Para resolver este problema, Margaret concebeu o seu programa de forma "assíncrona", ou seja, as tarefas mais importantes do "software" interromperiam as menos importantes. A equipa dela atribuiu a cada tarefa uma única ordem de prioridade para garantir que cada tarefa ocorresse pela ordem correta e na altura certa, independentemente de qualquer imprevisto.
After this breakthrough, Margaret realized her software could help the astronauts work in an asynchronous environment as well. She designed Priority Displays that would interrupt astronaut’s regularly scheduled tasks to warn them of emergencies. The astronaut could then communicate with Mission Control to determine the best path forward. This marked the first time flight software communicated directly— and asynchronously— with a pilot.
Depois desta descoberta, Margaret percebeu que o seu "software" também podia ajudar os astronautas a trabalhar num ambiente assíncrono. Concebeu o Priority Display que interromperia as tarefas programadas dos astronautas para os avisar de emergências. Os astronautas podiam assim comunicar com a sala de controlo para determinar o melhor caminho a tomar. Isso marcou a primeira vez que um "software" de voo comunicou diretamente — e assincronamente — com um piloto.
It was these fail safes that triggered the alarms just before the lunar landing. Buzz Aldrin quickly realized his mistake— he’d inadvertently flipped the rendezvous radar switch. This radar would be essential on their journey home, but here it was using up vital computational resources. Fortunately, the Apollo Guidance Computer was well equipped to manage this. During the overload, the software restart programs allowed only the highest priority jobs to be processed— including the programs necessary for landing. The Priority Displays gave the astronauts a choice— to land or not to land. With minutes to spare, Mission Control gave the order.
Foi esta segurança que acionou os alarmes antes da aterragem na Lua. Buzz Aldrin depressa percebeu o seu erro: tinha inadvertidamente acionado o interruptor do radar de "rendez-vous". Este radar era essencial para o regresso à Terra, mas estava a usar uma parte vital dos recursos do computador. Felizmente, o Apollo Guidance Computer estava bem equipado para gerir isso. Durante a sobrecarga, o "software" reinicia os programas em que só são processadas as tarefas de mais alta prioridade, incluindo os programas necessários para a aterragem. O Priority Display dá aos astronautas uma opção: aterrar ou não aterrar. Sem tempo a perder, a sala de controlo deu a ordem.
The Apollo 11 landing was about the astronauts, Mission Control, software and hardware all working together as an integrated system of systems. Hamilton’s contributions were essential to the work of engineers and scientists inspired by President John F. Kennedy’s goal to reach the Moon. And her life-saving work went far beyond Apollo 11— no bugs were ever found in the in-flight software for any crewed Apollo missions.
A aterragem do Apollo 11 dependia do "software" e dos equipamentos, a trabalhar em conjunto, como um sistema de sistemas integrado. As contribuições de Hamilton foram essenciais para o trabalho dos engenheiros e cientistas inspirados pelo objetivo de John F. Kennedy de chegar à Lua. E o seu trabalho, que salvou vidas, foi muito além do Apolo 11. Nunca se encontraram erros no "software" de voo em nenhuma das missões Apollo, com tripulação.
After her work on Apollo, Hamilton founded a company that uses its unique universal systems language to create breakthroughs for systems and software. In 2003, NASA honored her achievements with the largest financial award they’d ever given to an individual. And 47 years after her software first guided astronauts to the moon, Hamilton was awarded the Presidential Medal of Freedom for changing the way we think about technology.
Depois do seu trabalho no Apollo, Hamilton fundou uma empresa que usa a sua linguagem universal para sistemas, para criar sistemas e "software" revolucionários. Em 2003, a NASA premiou os seus êxitos com a maior recompensa financeira que já deram a um indivíduo. E 47 anos depois de o seu "software" ter guiado os astronautas até à Lua, Hamilton foi condecorada com a medalha presidencial da Liberdade por ter alterado a forma como pensamos sobre a tecnologia.