Editor’s Note: Este artigo é parte de uma série que reflete sobre a missão Apollo 11, 50 anos depois.
Sem os computadores a bordo da nave espacial Apollo, não teria havido nenhuma aterrissagem na lua, nenhum primeiro passo triunfante, nenhuma marca de água alta para viagens espaciais humanas. Um piloto nunca poderia ter navegado pelo caminho da lua, como se uma nave espacial fosse simplesmente um avião mais poderoso. Os cálculos necessários para fazer ajustes em vôo e a complexidade dos controles de impulso superaram as capacidades humanas.
O computador de orientação Apollo, em ambos os seus disfarces – um a bordo da nave central, e o outro no módulo lunar – foi um triunfo da engenharia. Os computadores tinham sido do tamanho de salas e cheios de tubos de vácuo, e se o computador Apollo, com 70 libras, ainda não era exatamente miniatura, ele começou “a transição entre as pessoas gabando-se de quão grandes são seus computadores… e gabando-se de quão pequenos são seus computadores”, o historiador de computação e aeroespacial do MIT David Mindell uma vez brincou em uma palestra.
As tendências que este computador predisse continuaram girando, exponencialmente, por décadas: De grandes a pequenos, de tubos de vácuo a silício, de hardware a software. Agora, se você comparar o poder computacional que a NASA usava com qualquer dispositivo comum, de um relógio a um cartão de saudação a um microondas, ele induz vertigens tecnológicas. Michio Kaku, o físico e autor popular, coloca as coisas assim: “Hoje, o seu telemóvel tem mais poder de computador que toda a NASA em 1969, quando colocou dois astronautas na lua.”
Mas estes ditados obscurecem o verdadeiro poder do computador Apollo. É claro, qualquer dispositivo contemporâneo tem muito mais capacidade computacional bruta do que a máquina primitiva, mas o computador Apollo era notavelmente capaz, confiável, e à altura da tarefa que lhe foi dada. Você não poderia realmente guiar uma nave espacial até a lua com uma campainha inteligente.
Mais nesta série
Ler: O que significará a aterragem na lua para o futuro?
Para entender o quão significativo o sistema Apollo era, e porque a sua pequena quantidade de poder de processamento é irrelevante, basta ouvir o programador informático OG e historiador voluntário da NASA Frank O’Brien, que passou a sua vida a detalhar amorosamente as funções do Computador de Orientação Apollo. O pai do O’Brien era piloto, então Frank tornou-se um pirralho militar. Ele se interessou por computadores desde cedo, e quando um dos velhos amigos de seu pai subiu nas fileiras da NASA, ele ficou de posse dos manuais técnicos que governavam o funcionamento do computador.
“Aos 13 anos de idade, recebo uma caixa no Natal, com cerca de dois metros de lado, pesava um milhão de libras”, disse-me O’Brien. “Abro-a e tinha todos os manuais técnicos sobre o Apollo. Você tinha toneladas e toneladas de crianças olhando para a Playboys; eu estava lendo sobre computadores de orientação”
Desde então, ele passou incontáveis horas aprendendo exatamente como essas máquinas funcionavam. Mesmo quando era adolescente, ele podia pilotar o simulador Apollo da NASA. Como um adulto, depois de ganhar um diploma de ciências da computação e trabalhar um longo período como programador corporativo, ele escreveu o livro The Apollo Guidance Computer, uma ode à máquina.
O Apollo Guidance Computer, no módulo de comando, tinha dois trabalhos principais. Primeiro, calculou o curso necessário para a lua, calibrado por medidas astronômicas que os astronautas faziam em vôo, com um sextante não muito diferente daquele usado pelos navegadores oceânicos. Eles alinhavam a Lua, a Terra ou o Sol numa vista e fixavam a localização de uma estrela com a outra. O computador mediria precisamente esses ângulos e recalcularia a sua posição. Segundo, ele controlava os muitos componentes físicos da nave espacial. O AGC podia comunicar-se com 150 dispositivos diferentes dentro da nave – uma tarefa enormemente complicada. “Ela tem dezenas de propulsores e todo tipo de interfaces e uma plataforma de orientação e o sextante”, disse O’Brien. “Você começa a somar todas essas coisas e vai, Santo Cannoli. Isto é realmente capaz.”
Conceptualmente, o Laboratório de Instrumentação do MIT, que projetou o sistema, construiu-o no topo do trabalho que eles fizeram para o sistema de mísseis guiados Polaris, feito para lançar armas nucleares de submarinos americanos. O hardware do computador Apollo, como notou Mindell, foi bastante bem compreendido “no mundo da aviônica militar”
Construindo-o dominou o projeto no início – o laboratório subestimou fortemente a complexidade da tarefa de engenharia de software. Durante anos mais tarde, nos anos 70, os programadores ainda usavam cartões perfurados para codificar. Mas a necessidade de ter astronautas da Apollo e engenheiros da NASA “no loop”, tomando decisões, exigia um tipo diferente de software. Tinha que haver uma interface. Múltiplas operações tinham que ser executadas ao mesmo tempo.
Ler: O relógio que foi à lua
O foco inicial no hardware trancado no que O’Brien chamou de “arquitetura primitiva” enquanto abria espaço para Margaret Hamilton, uma mulher no programa Apollo, fortemente masculina, liderar o design do software. Quando ficou claro que o software era realmente onde a missão seria feita, a equipe de Hamilton se expandiu para 350 pessoas no seu auge. O sistema que eles construíram era notavelmente avançado.
Para maximizar a arquitetura embutida, Hamilton e seus colegas criaram o que chamaram de “O Intérprete” – agora o chamamos de esquema de virtualização. Permitia-lhes executar cinco a sete máquinas virtuais simultaneamente em dois kilobytes de memória. Era terrivelmente lento, mas “agora você tem todas as capacidades com que sempre sonhou, em software”, disse O’Brien.
Os astronautas se comunicavam com o computador através do DSKY, abreviação para “display e teclado”. Eles puncionavam em números e obtinham respostas. Não é fácil descrever o sistema de interface com o usuário, mas ele contava com uma série de códigos de programa, assim como códigos “verbos” e “substantivos”. Os verbos eram coisas que o computador podia fazer (“78 UPDATE PRELAUNCH AZIMUTH”). Os substantivos eram quantidades numéricas ou medidas (“33 TIME OF IGNITION”). Estava muito longe da simplicidade de apontar e clicar.
A maior parte da memória do sistema tinha sido tecida, literalmente, na memória de corda, mas algumas podiam ser escritas, tanto pelos astronautas como remotamente a partir do Controlo de Missão. Talvez o feito mais brilhante de engenharia de software tenha sido o software projetado por J. Halcombe Laning que priorizou as tarefas computacionais do sistema.
Isso acabou sendo um avanço de economia de missão para a Apollo 11. Quando o módulo lunar desceu, o ruído de um de seus radares começou a alimentar o sistema com dados ruins. O computador de orientação entendeu que tinha um problema, mas foi capaz de se manter funcional durante toda a descida, despejando as informações ruins e continuando suas operações mais importantes, salvando a missão.
A narrativa popular deste momento – na época e ainda hoje – sustenta que o computador tinha problemas e que Neil Armstrong, aproveitando o controle “manual”, pilotou a espaçonave até a superfície da lua. Os humanos fizeram-no! Os computadores não são iguais para nós!
Mas o módulo de aterragem lunar era um sistema “fly-by-wire”. Qualquer comando que Armstrong desse tinha de passar pelo computador. Por isso é provavelmente mais preciso dizer que quando Armstrong aterrou na lua, ele disse ao computador onde aterrar. Não havia controle manual utilizável; o verdadeiro triunfo foi a flexibilidade da interação homem-computador.
Historians como Mindell, que modelou a descida segundo a segundo, não colocam muito em evidência a necessidade das ações de Armstrong. Ele ainda precisava do computador para controlar o ofício. “Se tivesse sido colocado em aterrissagem automática, o teria descido de qualquer forma, com menos ballyhoo, embora talvez em meio a um campo de rochas”, concluiu Mindell. A história da proeza humana foi quase uma perfeita inversão da realidade.
Dado tudo isto, talvez não seja surpreendente que O’Brien tenha ficado com a ideia de que um microondas ou calculadora poderia ser considerado “tão poderoso” como o computador Apollo.
“Como você define potência?” pergunta O’Brien. “É óptimo dizer, ‘Esta máquina é tão poderosa’. O que quer dizer com isso? “
Para ele, não se trata do número bruto de transístores, mas da máquina que se enquadra na missão. Capacidade, não potência. “Tivemos de chegar à lua, descer e voltar, autonomamente. Eles atingiram seus alvos de ser precisos depois de um quarto de milhão de milhas, atingindo um alvo entre 500 a 600 pés e um décimo de um pé por segundo”, disse O’Brien. “E tu dizes: ‘O meu relógio é mais poderoso.’ Não, não é.”
A lição, talvez, seja simples: Se o teu telefone é muito mais poderoso que os computadores que colocam a humanidade na lua, então porque estás a olhar para a Instagram o dia todo? A computação é meio, não fim.