Margaret Hamilton

Door meedogenloos fouten uit te roeien, hielp de oorspronkelijke software-ingenieur astronauten naar de maan te sturen. 16 augustus 2019 Margaret Hamilton

Margaret Hamilton TOAN TRINH; STYLING DOOR LAURA DILLON





Toen Margaret Hamilton nog een kind was, nam haar vader haar vaak mee op lange ritten door het Upper Peninsula van Michigan. Ze praatten de hele tijd over filosofie-gerelateerde dingen, herinnert de software-engineer, die nu 83 is, zich. Zoals 'wat als' en 'waarom' en 'waarom niet'.

Ongeveer twee decennia later hield Hamilton haar adem in in de missiebewakingsruimte van het MIT Instrumentation Lab als een van de grootste wat als in de geschiedenis tot wasdom kwam. Op 20 juli 1969, om 15:17 uur. Boston-tijd, de maanmodule Eagle landde op de maan. Tegen die tijd was Hamilton het hoofd van software-engineering voor het Apollo-programma. Zoals ze graag zegt, was de bemanning van de Eagle de eerste mensen die op het maanoppervlak liepen - en de software van haar team was de eerste die erop draaide.

In meer dan een decennium dat hij met de Apollo-missies werkte, hielp Hamilton ruimteschepen veilig in en uit de baan te brengen. Ze leidde een groep van bijna 100 ontwikkelaars en bracht strengheid en respect voor wat toen het gloednieuwe gebied van software-engineering was. (Ze bedacht in feite de term software-engineer en drong aan op het gebruik ervan.) En ze deed het allemaal met creativiteit en zelfvertrouwen, geleid door een herhaaldelijk bevestigde overtuiging: dat het nooit zal gebeuren kan gebeuren .



Hamilton verliet de universiteit met de gedachte dat ze wiskundige zou worden, en was van plan een baan te zoeken terwijl haar man naar Harvard Law School ging en daarna zelf naar de grad school ging. In 1959 begon ze te werken voor de beroemde MIT-meteoroloog Edward Lorenz, die haar belastte met het programmeren van een 800-pond-computer genaamd de LGP-30.

Hamilton had nog nooit een computer gezien. Maar ze ging er meteen mee aan de slag en vond onorthodoxe manieren om het logge ding sneller te laten werken. Ik zou stappen ondernemen die tegenwoordig ‘lastig’ programmeren zouden worden genoemd, zegt ze. Zo hield debuggen volgens het boekje in dat de lange papierrol met een onjuist programma langzaam door de machine werd gevoerd. Hamilton, die hier geen geduld voor had, leerde binaire code en begon zelf de vellen te bewerken - met een scherp potlood een gat in het papier prikkend om een 0 naar een een en gebruik een klein stukje tape voor de achterkant. (Het werk van Hamilton en anderen heeft uiteindelijk geleid tot Lorenz' baanbrekende werk over chaostheorie.)

In 1961 bracht Hamilton deze out-of-the-box-aanpak naar haar volgende functie en bedacht een nieuw foutenprotocol voor het enorme, weerbarstige SAGE-luchtverdedigingssysteem van MIT. Deze computer nam een ​​heel magazijn in beslag en maakte misthoorn- en brandweergeluiden toen hij crashte, zegt ze. Elke keer dat dat gebeurde, liet ze de schuldige programmeur poseren voor een polaroid, samen met documentatie over waar [de fout] vandaan kwam, zegt ze. Als dezelfde fout zich opnieuw voordoet, kunnen ze die persoon inschakelen om het te repareren.



Hamilton met Apollo-code, 1969.

Hamilton met Apollo-code, 1969. MIT Museum

De gedachten aan dat wiskundedoctoraat vervaagden. Na jaren van dingen ontdekken en uitvinden, realiseerde ze zich dat ze verslaafd was aan dit vreemde nieuwe veld dat ze hielp creëren in een sfeer die ze heeft vergeleken met het Wilde Westen. Vooral fouten bleven haar fascineren: ze niet alleen vinden en corrigeren, maar ook de patronen opsporen die ze volgen om ze te voorspellen en te voorkomen. Ik zag ze als de vijand, zegt ze.

Dus toen ze in 1964 een advertentie zag van het MIT Instrumentation Lab waarin programmeurs werden geworven om aan software te werken voor wat het Apollo-programma zou worden, greep Hamilton die kans. Aanvankelijk kreeg ze een project toegewezen waarvan werd aangenomen dat het een weinig impact had, waarbij ze de code schreef die zou optreden als een onbemande missie zou worden afgebroken. De hogere mensen waren er zo zeker van dat dit niet zou gebeuren, zegt ze, dat ze haar programma Forget It noemde. (Toen een van deze missies afbrak, merkte ze dat er veel vraag naar haar was.)



Ze werd al snel gepromoveerd tot door de mens beoordeelde software, waar een fout het leven van een astronaut in gevaar zou kunnen brengen. Hier moest goede code correct werken, maar hij moest ook hardwarestoringen of fouten van de astronauten zelf detecteren en compenseren. Hamilton tikte terug in die geest van wat-als: wat als iemand deze schakelaar op het verkeerde moment omdraait? Wat als er zich een calamiteit voordoet terwijl iedereen bezig is? Rekening houdend met deze mogelijkheden hield haar 's nachts wakker. Dat is alles waar ik aan dacht, zegt ze.

Soms kwam inspiratie uit onverwachte plaatsen. Hamilton nam haar dochter, Lauren, vaak 's avonds en in het weekend mee naar het lab. Lauren, toen vier jaar oud, speelde graag astronaut in de simulators van het team, en op een dag veroorzaakte ze, terwijl ze willekeurig op knoppen drukte, een spectaculaire softwarecrash. Hamilton onderzocht en ontdekte dat Lauren het programma in de war had gebracht door een pre-lanceringsreeks in te toetsen, P01 genaamd, in het midden van de missie, zegt ze.

Margaret Hamilton

TOAN Trinh



Ze vroeg de bevoegdheden van NASA om haar een beveiliging te laten toevoegen om die fout in een echte vlucht te voorkomen, en ze lachten het weg als te onwaarschijnlijk. Maar ze lieten het haar noteren. Toen een astronaut die blooper maakte tijdens de Apollo 8-missie - de eerste bemande vlucht in een baan om de maan - zorgde dit ervoor dat de noodzakelijke navigatiegegevens verdwenen en ze belden Hamilton om het terug te krijgen. Ik herinner me dat ik tegen een paar jongens daar zei: 'Het is de Lauren-bug!', zegt ze lachend.

Het was Apollo 11 die het team de grootste angst bezorgde. Net toen de Eagle op het punt stond de maan aan te raken, werden de astronauten onderbroken door vijf foutmeldingen die waarschuwden dat de rekenkracht laag was. Maar omdat de software zo goed ontworpen was, vertrouwde Houston erop dat het prioriteit zou geven aan de belangrijkste aspecten van de landing, en liet de missie doorgaan. Het team had de software geprogrammeerd om fouten op te sporen en te herstellen, maar het zien doen tijdens de afdaling van Eagle wekte pure angst op, zegt ze.

De rol van Hamilton in de computergeschiedenis krijgt steeds meer publieke erkenning. In 2016 ontving ze de Presidential Medal of Freedom uit handen van Barack Obama, die haar Amerikaanse ontdekkingsdrang prees. In 2017 werd een iconische foto van haar - bebrild, grijnzend en in de schaduw van een stapel code van haar team - veranderd in een Lego-figuurtje.

Tussen haar Apollo-werk en haar reis naar het Witte Huis, concentreerde Hamilton zich op het toepassen van wat ze van het Apollo-programma had geleerd toen ze een nieuw paradigma uitvond voor systeemontwerp en softwareontwikkeling. Haar huidige bedrijf, Hamilton Technologies, heeft een taal ontwikkeld op basis van dit paradigma, de Universal Systems Language. Het is bedoeld om de meest voorkomende soorten fouten te voorkomen, in plaats van ze achteraf te verantwoorden. Ze hoopt dat het uiteindelijk breed wordt aangenomen.

Het is een hele opgave voor wat nu een industrie van meerdere biljoenen dollars is - en niet langer zo wild. Maar zoals haar jeugdige zelf zou hebben gezegd: waarom niet?

zich verstoppen