Publicidade
Economize: canal oficial do CT Ofertas no WhatsApp Entrar

Mulheres Históricas: Margaret Hamilton criou o programa de voo da Apollo 11

Por| 02 de Setembro de 2016 às 01h04

Link copiado!

NASA
NASA

O programa Apollo foi um conjunto de missões espaciais da NASA realizadas entre 1961 e 1972, cujo objetivo era levar o homem à Lua e, consequentemente, vencer a corrida espacial contra a então União Soviética. Apesar dos soviéticos terem levado o primeiro homem ao espaço, foram os norteamericanos que conseguiram levar o homem à Lua pela primeira vez. E isso somente foi possível graças ao trabalho de uma mulher chamada Margaret Hamilton, que criou o programa de voo da Apollo 11.

A Apollo 11 foi a missão que permitiu aos astronautas pisar, pela primeira vez, no solo lunar. Isso aconteceu em 20 de julho de 1969, e a missão eternizou os nomes de Neil Armstrong, Buzz Aldrin e Michael Collins – os astronautas que se tornaram celebridades após retornar à Terra. Contudo, por muito pouco o pouso no nosso satélite natural não chegou a ser abortado, mas foi justamente graças ao software desenvolvido por Hamilton e sua equipe que a missão obteve tal sucesso.

Mulher de exatas

A cientista da computação, engenheira de software e empresária Margaret Heafield Hamilton nasceu nos Estados Unidos em 1936. Formada na escola em 1954, estudou matemática na Universidade de Michigan, formando-se em 1958. Já a pós graduação foi feita em Meteorologia no Instituto de Tecnologia de Massachusetts (MIT) e, depois, Hamilton lecionou matemática e francês. Decidida a fazer uma nova pós graduação, dessa vez em matemática pura, escolheu a Universidade Brandeis para essa conquista, assumindo uma posição interina no MIT na sequência, onde foi chamada para desenvolver programas de predição climatológica em computadores pitorescos.

Continua após a publicidade

Nessa época, os primeiros programadores aprendiam a atividade botando a mão na massa, uma vez que cursos como ciência da computação e engenharia de software ainda não existiam como disciplinas. Então, entre 1961 e 1963, Hamilton desenvolveu softwares para um computador de intercepção do projeto SAGE, do MIT, com o objetivo de procurar por aeronaves “não amigáveis”. Nessa mesma época ela também escreveu um software para o Air Force Cambridge Research Laboratories (“Laboratórios de Pesquisa da Força Aérea de Cambridge”) – e essa experiência abriu as portas da NASA para a desenvolvedora.

Foi aí que Hamilton se juntou ao Laboratório Charles Stark Draper, no MIT, tornando-se diretora e supervisora de programação de software para os projetos Apollo e Skylap, da agência espacial dos EUA. Sua equipe ficou responsável pela criação e manutenção do software de orientação de bordo da Apollo – necessário para que a nave não somente viajasse ao redor da Lua, como também pousasse em sua superfície. O programa foi tão bem executado que suas variações puderam ser aproveitadas em várias outras missões, incluindo a Skylab, que foi a primeira estação espacial norteamericana, lançada em 1973.

Homem na lua graças a uma mulher

Continua após a publicidade

Sendo assim, podemos dizer que o homem somente conseguiu chegar à Lua graças a uma mulher. Isso porque quando faltavam apenas três minutos para o pouso no satélite natural da Terra, vários alarmes do módulo lunar começaram a tocar, e o computador ficou sobrecarregado com atividades do radar de aproximação. No entanto, a arquitetura robusta do software desenvolvido por Hamilton permitiu que o sistema continuasse funcionando ao priorizar as atividades essenciais, interrompendo as menos importantes, pois a desenvolvedora, que tinha escrito o código, sabia exatamente como ele seria capaz de ser manipulado emergencialmente para que a nave da Apollo 11 realizasse o pouso. E essa falha não foi da equipe de desenvolvimento: posteriormente, uma investigação mostrou que o problema aconteceu devido a um erro humano na lista de comandos a serem executados pelos astronautas.

O que aconteceu, com mais detalhes, foi o seguinte: o computador de navegação acionou esse alarme reportando o erro quando um módulo do programa acabou consumindo 20% da CPU, quando o sistema estaria rodando a 85% de sua capacidade. Então o oficial de orientação e o especialista de computação do controle da missão Apollo comandaram um reset do alarme, pensando que poderia ser algo aleatório, mas quando Armstrong e Aldrin obedeceram à ordem, outro alarme surgiu na sequência. Nesse momento, o grupo que comandava a missão tentou diversas alternativas para contornar o problema, até que decidiram enviar uma atualização para o radar do Módulo de Comando para que ele não fosse acionado. O problema foi que eles esqueceram de enviar a alteração nos procedimentos, e o botão que deveria ficar no modo manual acabou sendo deixado no automático.

Nesse contexto, o software tentou repetidamente ler os dados do radar e calcular a posição do módulo, mas, como os dados não batiam (pelo fato do radar estar desligado), ele repetia a operação, consumindo cada vez mais processamento e sobrecarregando os sistemas. Sem poder controlar a orientação, propulsão, consumo de combustível e outros fatores críticos, a Águia ficaria sem controle e o computador, travado em um “loop”, seria danificado. O resultado seria uma inevitável colisão, destruindo a nave Apollo 11 e seus integrantes. Foi nesse momento que Margaret e sua equipe conseguiram contornar o problema, garantindo a segurança dos astronautas e o sucesso da missão.

Continua após a publicidade

À época, Margaret Hamilton soltou uma declaração explicando exatamente o ocorrido:

“Devido a um erro na lista de comandos, o interruptor do radar de aproximação ficou na posição errada. Isso fez com que ele mandasse sinais errados para o computador. O resultado foi que o computador estava sendo requisitado a executar todas as suas funções normais para o pouso ao mesmo tempo que recebia uma carga extra de dados espúrios que usavam 15% do seu tempo. O computador (ou melhor, o software) foi inteligente o suficiente para reconhecer que estava sendo requisitado a executar mais tarefas do que devia. Então ele mandou um alarme, que queria dizer ao astronauta "Eu estou sobrecarregado com mais tarefas do que devia estar fazendo agora e vou manter só as tarefas mais importantes"... Na verdade, o computador foi programado para mais do que reconhecer condições de erro. Um conjunto completo de programas de recuperação estava incorporado no software. A ação do software, neste caso, foi eliminar tarefas de baixa prioridade e restabelecer as mais importantes ... Se o computador não tivesse reconhecido esse problema e se recuperado, duvido que a Apolo 11 tivesse pousado na lua com sucesso.”

Curiosidades sobre o código de Margaret

Além de absolutamete bem planejado e desenvolvido, o programa desenvolvido por Hamilton contava com um código-fonte recheado de piadas (algumas delas que só têm sentido ou graça para quem também é programador). E isso só foi difundido recentemente, quando o pesquisador de tecnologia Ron Burkey transcreveu cada uma das linhas do código a partir do material original, fornecendo o conteúdo a um ex-estagiário da NASA, que publicou tudo no GitHub como open source.

Continua após a publicidade

Por exemplo, nesse trecho do código vemos a linha “N_BABY_BURN-MASTER-IGNITION_ROUTINE.s”, fazendo referência ao bordão do DJ Magnificent Montague que, quando tocava os maiores hits do momento, soltava um “Burn, baby! Burn!” em alto e bom som. A frase acabou se tornando icônica durante os protestos de 1965 em Los Angeles, contra a morte de um jovem negro pela polícia local.

Depois do encerramento do Programa Apollo, em 1972, quando os estadunidenes e o restante do mundo já não estavam mais dando lá muita bola para a exploração lunar, Margaret co-fundou uma empresa chamada Higher Order Software, assumindo a função de CEO entre 1976 e 1984. Depois, acabou abrindo sua própria empresa, a Hamilton Technologies Inc., onde o princípio básico a ser seguido é: “não conserte, faça certo da primeira vez”.

Legado de respeito

Continua após a publicidade

Além de ter executado um papel crucial para que a NASA conseguisse levar o ser humano pela primeira vez à Lua (tendo sido também a estreia do homem em qualquer corpo celeste que não fosse a Terra), acredita-se que Margaret Hamilton tenha inventado o termo “engenharia de software” para definir sua área de atuação. Ela também foi uma das desenvolvedoras dos conceitos de computação paralela, priority scheduling, teste de sistema e capacidade de decisão com integração humana, tais como mostradores de prioridade – que se tornariam o fundamento do design de software utraconfiável.

Hamilton, que hoje tem 80 anos de idade, publicou ao longo de sua carreira mais de 130 artigos, atas e relatórios relacionados aos sessenta projetos e seis programas científicos dos quais participou. Pela importância de seu trabalho com a NASA, a agência espacial realizou um gesto inédito em 2003, quando deu à Hamilton o NASA Exceptional Space Act Award for Scientific and Technical Contribuitions – uma premiação concedida apenas a cientistas de alto gabarito –, juntamente com um prêmio de mais de 37 mil dólares. Essa foi a primeira (e única!) vez que a agência espacial dos EUA deu um prêmio em dinheiro para alguém.

Margaret Hamilton é uma mulher que conseguiu não somente trabalhar em um campo dominado por homens, como ainda se destacou nessa área. E nessa época, o software era considerado uma parte menos importante da computação do que o hardware e, talvez por isso, mulheres como ela foram aceitas na programação. Quando Neil Armstrong deu o primeiro passo na superfície da Lua, o astronauta soltou a famosa declaração de que aquele era “um pequeno passo para o homem; um salto gigantesco para a humanidade”. Mas o trabalho da engenheira de software acabou sendo, além de tudo, um gigantesco passo para as mulheres na computação.

Continua após a publicidade

Conheça também a história de outras mulheres históricas: