I pionieri dell’informatica: Margaret Hamilton

CENNI BIOGRAFICI

Margaret Hamilton Heafield nasce il 17 agosto 1936 a Paoli, nello Stato dell’Indiana (Stati Uniti). Si è laureata in matematica e filosofia all’Earlham College di Richmond nel 1958.
Sempre durante il percorso universitario, incontra James Hamilton che diventerà suo futuro marito. Negli anni seguenti, accettò un lavoro al Massachusetts Institute of Technology (MIT) per aiutare la sua famiglia, dato che vi era la figlia Lauren appena nata e il marito che aveva intrapreso la facoltà di legge ad Harvard.
Curiosamente finì a lavorare nel laboratorio del Professor Edward Norton Lorenz, ideatore della teoria del caos e del neologismo “effetto farfalla”, e con lui imparò a scrivere software sui computer Librascope LGP-30 e PDP-1, sviluppando un programma riguardante le previsioni del tempo. All’epoca l’informatica e l’ingegneria del software non erano ancora discipline e i programmatori dovevano imparare lavorando e sperimentando.
Dal 1961 al 1963 lavorò al progetto Semi Automatic Ground Environment (SAGE) presso il Lincoln laboratory, sempre del MIT, per il quale scrisse il software per il prototipo di computer AN/FSQ-7 (l’XD-1) usato dall’aviazione militare degli Stati Uniti per il rilevamento di missili o aerei considerati ostili.
Il progetto SAGE era un’estensione del Project Whirlwind che aveva lo scopo di creare un sistema informatico in grado di prevedere i cambiamenti meteorologici.
Fu a metà degli anni ’60 che la Hamilton sentì che il MIT era lla ricerca di professionisti da inserire nel programma spaziale volto a mandare l’uomo sulla luna.
La Hamilton aveva programmato di iniziare la scuola di specializzazione alla Brandeis University per una laurea in matematica teorica, ma il programma spaziale statunitense la convinse a cambiare i propri piani.
Grazie al successo del suo lavoro in SAGE, fu la prima programmatrice assunta per il progetto Apollo al MIT.
Nel 1965, divenne capo del proprio team presso il MIT Instrumentation Laboratory (in seguito noto come Draper Laboratory), che era dedicato alla scrittura e al test del software per i due computer da 70 libbre dell’Apollo 11, uno a bordo del modulo di comando, Columbia, e uno a bordo del modulo lunare Eagle.

ALLA CONQUISTA DELLA LUNA

Il 20 luglio 1969, mentre il modulo lunare Eagle si stava avvicinando alla superficie lunare, sui computer di bordo iniziarono a lampeggiare messaggi di avviso.
Per un momento il Centro di Controllo si trovò nella difficile posizione di dover prendere una decisione sul “go/no-go”.
Solo grazie alla fiducia riposta nel software sviluppato da Margaret Hamilton e dal suo team che fu possibile dare il via libera agli astronauti all’allunaggio.
Il software, che consentiva al computer di riconoscere i messaggi di errore e ignorare le attività a bassa priorità, continuò infatti a guidare gli astronauti Neil Armstrong e Buzz Aldrin sulla crosta polverosa e butterata della luna fino al loro atterraggio.

“È diventato subito chiaro”, ha affermato in seguito la Hamilton, “che il software non solo informava tutti che c’era un problema relativo all’hardware, ma che il software stesso stava compensando quella mancanza”.
Un’indagine condotta in seguito, dopo il rientro della missione sulla Terra, avrebbe mostrato che la lista di controllo degli astronauti era in errore, dicendo loro di impostare l’interruttore hardware del radar di rendezvous in modo errato. “Fortunatamente, le persone del Centro di Controllo si sono fidate del nostro software. E con solo carburante sufficiente per altri 30 secondi di volo, Neil Armstrong ha potuto dire: “L’Aquila è atterrata”.

Tale risultato è stato possibile solo grazie a un lavoro monumentale in un momento in cui la tecnologia informatica era agli albori: gli astronauti avevano accesso a soli 72 kilobyte di memoria del computer (un telefono cellulare da 64 gigabyte oggi ha quasi un milione di volte più spazio di archiviazione). I programmatori dovevano utilizzare schede preforate di carta per inserire le informazioni in computer delle dimensioni di una stanza senza interfaccia a schermo.
Quando avvenne l’atterraggio, la Hamilton, allora 32enne, era collegata al Centro di Controllo dal MIT.
“Non mi stavo concentrando sulla missione, di per sé”, ha poi confessato la matematica. “Mi stavo concentrando sul software.”

Margaret Hamilton, che ha poi contribuito a rendere popolare il termine “ingegneria del software”, ebbe modo di ricevere qualche critica per questa sua impostazione mentale a un evento di simile portata.
I critici dell’epoca affermano che quello fu un modo per gonfiare l’importanza del suo lavoro al tempo ancora pionieristico, ma oggi, se gli ingegneri del software rappresentano un segmento molto ricercato nel panorama lavorativo, è anche grazie a Margaret Hamilton e alla sua dedizione alla programmazione.

“NON C’ERA ALTRA SCELTA CHE ESSERE PIONIERI”

Quando furono pianificate le missioni Apollo, il processo di scrittura del codice si svolgeva su grandi fogli di carta.
I buchi nella carta corrispondevano ai codici che la macchina doveva seguire, una volta inserite quelle che venivano chiamate “schede preforate”.
“Non molte persone sanno più cosa sono le schede preforate, ma è mediante esse che la Hamilton e il suo team ci ha mandati sulla Luna”, afferma Paul Ceruzzi, curatore emerito del National Air and Space Museum dello Smithsonian, che conosce e collabora con la scienziata da due decenni.
Il museo conserva nella sua collezione, l’Apollo Flight Guidance, il software completo di volo della missione spaziale creato dalla Hamilton.
Il materiale d’archivio include fogli di stampa, noti come “elenchi”, che mostrano i risultati dei calcoli delle equazioni di guida.

Una volta che il team del MIT terminò il proprio lavoro sugli “elenchi”, il codice venne inviato a una fabbrica, dove la maggior parte delle donne, molte delle quali ex dipendenti delle fabbriche tessili del New England, intrecciavano fili di rame e nuclei magnetici in una lunga “corda” di filo.
Con la codifica scritta in codice binario 1 e 0, il filo passava attraverso il minuscolo nucleo magnetico quando rappresentava 1, e girava attorno al nucleo quando rappresentava uno 0.
Questo ingegnoso processo permise di creare una “corda” che trasportava le istruzioni del software. Le donne che facevano il lavoro erano conosciute come LOL (Little Old Lady) mentre la Hamilton era denominata “mother rope”.
La corda compensava la memoria limitata dei computer Apollo.
Tale processo ha permesso di creare “un sistema molto robusto”, secondo Teasel Muir-Harmony, curatore anche dell’Air and Space Museum “Questo è stato uno dei motivi per cui l’Apollo Guidance Computer ha funzionato perfettamente in ogni singola missione”.

“Quando penso a Margaret Hamilton e alla sua frase ‘non c’era altra scelta che essere pionieri’, sono convinto che incarni davvero chi era e il suo significato in questo programma”, aggiunge Muir-Harmony. “Era una pioniera quando si trattava di sviluppo dell’ingegneria del software e pioniera come donna sul posto di lavoro contribuendo a questo tipo di programma, assumendo questo tipo di ruolo”.
Allora, come adesso, la maggior parte degli ingegneri del software erano uomini, ma lei non ha mai permesso che ciò la ostacolasse.
“Ha sempre avuto questa mentalità secondo cui dovrebbero esserci uguali diritti e parità di accesso. E non si trattava di una questione di uomini e donne. Si trattava di persone in grado di perseguire il tipo di lavoro per i quali erano stati scelti e di affrontare le sfide che li attendevano”, afferma Muir-Harmony.
“Era anche molto espansiva come programmatrice, trovando soluzioni ai problemi, pensando in modo molto innovativo e fuori dagli schemi. Questo si riflette nelle sue scelte di carriera e nel lavoro che ha svolto in laboratorio”.
Come madre lavoratrice, portava con sé la sua giovane figlia al MIT Instrumentation Laboratory di notte e nei fine settimana.
Un giorno, sua figlia decise di giocare “all’astronauta” premendo un pulsante del simulatore che causò un arresto anomalo del sistema sul quale stava lavorando.
La Hamilton si rese subito conto che l’errore poteva essere commesso da un astronauta, quindi raccomandò di regolare il software per risolverlo, ma le fu detto: “Gli astronauti sono addestrati a non commettere mai errori”.
Durante il volo in orbita attorno alla luna dell’Apollo 8, l’astronauta Jim Lovell commise lo stesso identico errore della figlia e, fortunatamente, il team della Hamilton fu in grado di correggere il problema in poche ore.
Tuttavia, per tutti i futuri voli Apollo, una protezione specifica fu integrata nel software per assicurarsi che non accadesse mai più.

LA SCIENZA COME CORAGGIO

Il lavoro della Hamilton ha guidato le restanti missioni Apollo che sono atterrate sulla luna così come ne ha beneficiato Skylab, la prima stazione spaziale degli Stati Uniti, negli anni ’70.
Nel 1972 lasciò il MIT e fondò la sua società, Higher Order Software.
Quattordici anni dopo, ha lanciato un’altra società, Hamilton Technologies, Inc. Nella sua nuova azienda ha creato lo Universal Systems Language, un altro passo per rendere più affidabile il processo di progettazione dei sistemi.
La NASA ha onorato Margaret Hamilton con il NASA Exceptional Space Act Award nel 2003, riconoscendo il suo contributo allo sviluppo del software e assegnandole il più grande premio finanziario che l’agenzia avesse mai assegnato a una persona fino a quel momento: 37.200 dollari. Nel 2016, il presidente Barack Obama le ha conferito la Medal of Freedom, osservando che “il suo esempio parla dello spirito di scoperta americano che esiste in ogni bambina e bambino, consapevoli che in qualche modo guardare oltre il cielo significa guardare nel profondo di noi stessi. “
Il lavoro della Hamilton potrebbe non essere ampiamente noto a coloro al di fuori della comunità scientifica, sebbene i suoi successi siano stati persino commemorati con l’introduzione nel 2017 di una action figure a lei dedicata dalla LEGO, parte della collezione Women of NASA.
Gli ingegneri del software non sono generalmente visti come figure d’azione, ma quella della Hamilton non è mai stata estranea al concetto di coraggio tipico dei pionieri.
Ricorda infatti “di essere stata senza paura, anche quando gli esperti dicevano: ‘No, questo non ha senso’.
Non volevano crederci, nessuno ci credeva. Eppure era qualcosa che sognavamo che accadesse ed è diventato realtà”.