Margaret Hamilton: Nainen, joka kirjoitti koodia, joka muutti maailman
markdown-muotoinen blogisisältö
Kun puhumme nykyään legendaarisista kehittäjistä, ajattelemme usein Steve Jobsia, Bill Gatesia tai Mark Zuckerbergia. Mutta vuosikymmeniä ennen kuin kotitietokoneista tuli valtavirtaa, nainen nimeltä Margaret Hamilton teki työtä, joka saattaa edelleen olla historian merkittävin ohjelmistotekniikan saavutus – samalla kun ala ei ollut edes päättänyt, mitä hänen ammattiaan kutsuttaisiin.
Matemaatikosta kuun laskeutumisen insinööriksi
Margaret Heafield Hamilton syntyi vuonna 1936 Paolissa, Indianassa, ja hänen tiensä insinööriylpeyden huipulle alkoi Earlham Collegesta suoritetulla matematiikan tutkinnolla. Mutta nimenomaan hänen työnsä MIT:ssä sementoi hänen perintönsä tietotekniikan historiaan.
1960-luvulla, jolloin useimmat ihmiset eivät kyenneet edes kuvittelemaan, miltä tietokone näyttää (saati mitä "ohjelmisto" tarkoitti), Hamilton liittyi MIT:n Charles Stark Draper Laboratoryyn. Siellä hänestä tuli Apollo Guidance Computerin – digitaalisen aivojen, jotka ohjasivat astronautit avaruuden tyhjyyden halki Kuuhun ja takaisin kotiin – pääohjelmistosuunnittelija.
Tässä on se asia, joka minua todella kiehtoo: tuolloin "ohjelmistotekniikka" (software engineering) ei ollut edes vakiintunut termi. Hamilton kirjaimellisesti keksi termin, koska hän halusi ihmisten pitävän hänen työtään yhtä vakavasti kuin laitteistotekniikkaa. Voitko kuvitella joutuvasi keksivään oman ammattisi nimen? Se ei ole vain koodin edelläkävijyyttä – se on käsityötaidon kunnioituksen edelläkävijyyttä.
Koodi, joka pelasti Apollo 11:n
Apollo 11:n viimeisten minuuttien tarina on kuin elokuvallista draamaa. Kun Neil Armstrong ja Buzz Aldrin laskeutuivat kohti kuun pintaa, kriittinen hälytys soi – vain minuutteja ennen laskeutumista. Tietokone oli ylikuormittunut datalla.
Mutta Hamiltonin ohjelmisto oli rakennettu juuri tällaiseen skenaarioon. Sen sijaan, että järjestelmä olisi kaatunut, se priorisoi automaattisesti kriittisimmät laskeutumisfunktiot ja hylkäsi vähemmän välttämättömät tehtävät. Missio jatkui. Ihmiset kävelivät Kuussa.
Se ei ollut onnea. Se oli insinööritaitoa.
Ja tässä on se, mikä erottaa todella suuren ohjelmiston muista: Hamiltonin koodi oli niin vankka ja hyvin suunniteltu, että NASA käytti sitä uudelleen myöhemmissä Apollo-lennoissa. Siitä tuli Skylab-ohjelmiston perusta ja se vaikutti avaruussukkulan järjestelmiin. Kun kirjoitat ohjelmistoa, joka on tarpeeksi luja toimimaan avaruusaluksessa, joka kantaa ihmishenkiä, olet rakentanut jotain poikkeuksellista.
Kuva, joka muutti käsitykset
Olet varmasti nähnyt kuvan: Margaret Hamilton seisomassa valtavan tulostepinon vieressä – jokainen sivu sisältää käsin kirjoitettua koodia Apollo-missiota varten. Pinon korkeus on suurempi kuin hän itse.
Tämä ei ollut vain poseeraus kuvaan. Se oli kannanotto. Se näytti maailmalle ohjelmistokehityksen valtavan määrän ja monimutkaisuuden. Vielä tärkeämpää oli se, että se nosti esiin naisen ihmiskunnan suurimman teknologisen saavutuksen keskiössä – aikana, jolloin tietotekniikka nähtiin vielä pitkälti "naisten työnä" (ironista kyllä, vaikka miehet myöhemmin ottivat alan haltuunsa).
Perintö koodin takana
Hamilton sai vuonna 2016 vapauden mitalin (Presidential Medal of Freedom), Yhdysvaltojen korkeimman siviilipalkinnon. Hänet nimettiin Computer History Museumin Fellowiksi. Mutta hänen todellinen perintönsä on se malli, jonka hän antoi sille, mitä ohjelmistotekniikka voi olla: tarkkaa, missiolle kriittistä ja välttämätöntä.
Nykyään, kun me otamme koodia tuotantopalvelimille, konfiguroimme DNS-asetuksia tai teemme sovelluksillemme rasitustestejä, kuljemme Hamiltonin kaltaisten insinöörien jalanjäljissä. Kurinalaisuus kirjoittaa ohjelmistoa, jonka on toimittava – ilman poikkeuksia – juontaa suoraan takaisin niihin käytäntöihin, joita hän edisti NASA:ssa 1960-luvulla.
Hänen poismenonsa vuonna 2026 merkitsee aikakauden loppua, mutta hänen vaikutuksensa jatkuu niin kauan kuin insinöörit kirjoittavat koodia, jonka on toimittava. Koska lopulta, olitpa ohjaamassa astronautteja Kuuhun tai julkaisemassa verkkosovellusta tuhansille käyttäjille, periaate on sama: kirjoita koodia, josta voit olla ylpeä. Koodia, jolla on merkitystä.
Margaret Hamilton näytti meille, että se on aina ollut mahdollista.