Ein Innovator auf dem Gebiet der Informatik spricht darüber, wie er die Entwicklung von Software für die Landung der Apollo 11-Mission auf dem Mond leitete
Barack Obama überreicht Margaret Hamilton 2016 die Presidential Medal of FreedomDie Informatikpionierin
Margaret Hamilton spielte eine Schlüsselrolle bei der Landung der Astronauten auf dem Mond, die vor 50 Jahren am 20. Juli 1969 erstmals stattfand, und bei der sicheren Rückkehr nach Hause einige Tage später. Eine junge Programmiererin vom MIT mit einem kleinen Kind leitete das Team, das die Bordflug-Software für Apollo-Missionen, einschließlich
Apollo 11, erstellte . Dieses Computersystem war eines der schwierigsten seiner Zeit. Ihr rigoroser Programmieransatz war so erfolgreich, dass während der bemannten Apollo-Missionen kein Softwarefehler aufgetreten ist. "Es symbolisiert die Generation unbesungener Frauen, die dazu beigetragen haben, die Menschheit in den Weltraum zu schicken", sagte Präsident Barack Obama 2016, als er Hamilton die
Presidential Freedom Medal verlieh, die höchste zivile Auszeichnung in den Vereinigten Staaten. 2017 wurde sie eine der wenigen Frauen, die für die NASA arbeiteten, verewigt in Form von LEGO-Figuren. Anlässlich des 50. Jahrestages der ersten Mondlandung erinnert sich die 82-jährige Hamilton an ihre Pionierarbeit mit Computertechnologie.
Warum bist du zur Programmierung gekommen? Als Sie anfingen, gab es keine Abschlüsse in Informatik ...Ich habe 1958 geheiratet, gleich nachdem ich ein Diplom in Mathematik und einen zusätzlichen Abschluss in Philosophie am Earlham College erhalten hatte. Wir könnten beide zur Graduiertenschule gehen - ich bin in abstrakter Mathematik und mein Mann in Chemie -, aber ich habe ein Jahr als Lehrer an der High School gearbeitet, wir hatten eine Tochter und mein Mann entschied, dass er einen Abschluss in Rechtswissenschaften in Harvard machen wollte. Ich fand einen Job, um meine Familie im nahe gelegenen MIT zu versorgen. Die Arbeit befand sich im Labor von Professor Edward Lorenz, dem Vater der Chaostheorie, und sollte ein System entwickeln, das das Wetter vorhersagt. Er brauchte Absolventen mit einer mathematischen Ausbildung. Wir haben ein Kindermädchen engagiert, das sich um ihre Tochter kümmert. Dort habe ich gelernt, was ein Computer ist und wie man Software schreibt. Informatik und Programmierung existierten noch nicht als getrennte Disziplinen; Programmierer lernten direkt bei der Arbeit. Lorentz 'Liebe zum Experimentieren mit Software erwies sich als ansteckend und ich wurde infiziert.
Wie sind Sie 1964 zum Apollo-Projekt gekommen?Vom Schreiben von Programmen ging ich dazu über, feindliche Flugzeuge im Lincoln-Labor am MIT zu finden. Ich hatte vor, zur Graduiertenschule zurückzukehren, als mein Mann eine Anzeige in einer Zeitung sah. Das MIT-Messinstrumentenlabor suchte nach Menschen, die Software entwickeln konnten, um „einen Mann zum Mond zu schicken“. Das Labor erhielt von der NASA den Auftrag, Flugsoftware für das Apollo-Projekt an Bord zu entwickeln, da sie auch dafür Computerausrüstung entwickelte. Ich war sowohl von der Idee selbst als auch von der Tatsache angezogen, dass dies noch niemand zuvor getan hatte. Ich war der erste Programmierer und die erste Frau, die sie anstellten. Männliche Ingenieure arbeiteten bereits an dem Projekt, aber sie waren in der Elektronik tätig, und dies war nicht ihr Bereich. Und ich hatte schon so eine Erfahrung. Ich denke, dass sie im Labor beschlossen haben, mit etwas Neuem fertig zu werden.
Sie haben zuerst an der unbemannten Missionssoftware Apollo gearbeitet. Aber dann wurden Sie schrittweise zum Leiter des Teams ernannt, das Software für bemannte Raumfahrzeuge entwickelt, einschließlich Apollo 11. Was war deine Verantwortung?Es gab zwei Bordcomputer - einen auf dem Columbia-Kommandomodul und einen auf dem Mondadler. Unsere Aufgabe war es, Software zu entwickeln, die auf jedem Modul für sich arbeiten sollte, sowie deren gemeinsame Software. Zuerst dachte niemand, dass Software ein so wichtiges Thema sein würde. Allmählich begannen alle zu verstehen, wie sehr alles von ihm abhing. Unsere Gruppe ist so stark gewachsen, dass infolgedessen etwa 100 Programmierer im Team arbeiteten. Auf dem Spiel stand das Leben der Astronauten. Unsere Software musste äußerst zuverlässig sein und jederzeit während der Mission Fehler erkennen und beheben können. Und das alles hätte dem Eisen entsprechen sollen.
Margaret Hamilton listete 1969 den von ihrem Team für Apollo-Missionen entwickelten Software-Code aufHaben Sie Probleme gehabt, Arbeit als Programmierer und Mutterschaft zu verbinden?Oft nahm ich abends oder am Wochenende meine kleine Tochter Lauren mit zur Arbeit. Einmal waren wir zusammen und ich war mit einer Simulation der Mission beschäftigt, zum Mond zu fliegen. Sie ahmte mich gern nach und spielte Astronautin. Sie begann die Tasten zu drücken und startete plötzlich eine Simulation. Dann drückte sie weitere Tasten und die Simulation fiel. Sie wählte ein Programm, das vor dem Start ausgeführt werden sollte - aber gleichzeitig "flog" die Simulation bereits zum Mond. Der Computer hatte so wenig Speicher, dass er alle Navigationsdaten löschte, die zum Fliegen benötigt wurden. Ich dachte: Meine Güte, das könnte zufällig während einer echten Mission passieren. Ich schlug vor, das Programm zu ändern, um zu verhindern, dass das Prelaunch-Segment während des Fluges gestartet wird.
Die Behörden des MIT und der NASA entschieden jedoch, dass die Astronauten zu gut ausgebildet waren, um einen solchen Fehler zu machen. Und während des Fluges, in der nächsten Mission, Apollo 8, tat einer der Astronauten an Bord versehentlich genau das, was Lauren tat. Fehler Lauren! Ich hob den Butch und bestand darauf, dass die Mission neu konfiguriert wurde. Danach durften sie natürlich schon Änderungen am Programm vornehmen.
Astronauten nahmen den größten Teil des Ruhms für den Mond. Dies geschah jedoch mit dem von Ihnen erstellten System, das vor Notsituationen im Flug warnte. Wie Obama sagte: "Unsere Astronauten hatten nicht viel Zeit, aber zum Glück hatten sie Margaret Hamilton."Kurz vor der Landung wurden auf der Prioritätsanzeige des Computers Notfallwarnungen angezeigt, und der Computer war überlastet. Ich habe gesehen, wie das alles passiert ist, als ich im Kontrollzentrum am MIT stand. Danach haben wir die Situation neu erstellt - der Radarschalter befand sich in der falschen Position und nahm Prozessorleistung auf. Es wurde schnell klar, dass die Software die Menschen nicht nur über ein Hardwareproblem informierte, sondern diese auch kompensierte - neu geladene und neu zugewiesene Aufgaben mit höchster Priorität. Fehlererkennungs- und Wiederherstellungsmechanismen kamen zur Rettung. Alle waren erleichtert, als sie sich hinsetzten - und dass es den Astronauten gut ging und dass die Software perfekt funktionierte.
Soweit ich weiß, gab es in den frühen Tagen des Programmierens von Frauen ziemlich viele. Es wurde angenommen, dass dies Frauenarbeit war . War dies Ihrer Erfahrung nach der Fall?Das Programmieren wurde nie als weibliche Arbeit angesehen, zumindest nicht in einem der vielen Projekte, an denen ich gearbeitet habe. Die Leute mit manuellen Computern waren überwiegend Frauen, und viele Frauen verwendeten mechanische Taschenrechner wie
Marchant - aber sie waren keine Programmierer. Sie haben keinen Code geschrieben. Als ich anfing, an dem Apollo-Projekt zu arbeiten, schrieben keine Frauen mehr Code. Dann, nach ein paar Jahren, erschienen nur wenige Frauen - von denen einige für mich arbeiteten. Es gab immer viel mehr Männer.
Haben die Männer dich geärgert, dass du sie geführt hast?Als ich die Kontrolle übernahm, sagte einer der Top-Chefs, er habe keinen Zweifel an meiner Kompetenz, sei aber besorgt, dass einige Männer aus meiner Gruppe einen Aufruhr auslösen könnten. Dies ist jedoch nicht geschehen. Vor allem konzentrierten wir uns auf Missionen und arbeiteten Schulter an Schulter, um komplexe Probleme zu lösen, und versuchten, in kritischen Zeitrahmen pünktlich zu sein. Ich hatte auch das Glück, einen sehr modernen Ehemann zu haben, besonders für diese Zeit. Einige Männer verstanden Gleichheit.
Sie haben den Begriff Software Engineering [Softwareentwicklung, Softwaretechnologie] erfunden oder zumindest populär gemacht. Warum musste er sich einen neuen Namen einfallen lassen?In den Anfangsjahren von Apollo wurden Programme nicht so ernst genommen wie andere Ingenieurdisziplinen. Obwohl wir ein ziemlich komplexes System mit vielen Komponenten hatten, erhielten wir keine Anerkennung für die Arbeit in einem wirklich ernsten Bereich. Aus Verzweiflung prägte ich den Begriff, als würde ich erklären: "Hey, wir sind tatsächlich auch Ingenieure." Lange Zeit wurde es als Witz empfunden. Und dann erklärte eines Tages bei einem Treffen einer der angesehensten Eisengurus allen, dass er mir zustimmte. Der Prozess der Softwareerstellung muss ebenso wie die Hardware als technische Disziplin betrachtet werden. Es war ein unvergesslicher Moment.
Margaret Hamilton wird in Form von Figuren für Lego aus der NASA Women-Serie verewigtNach Apollo wurden Teile Ihres Codes in Skylab, der ersten Raumstation, und dann im Space-Shuttle-Programm verwendet. Sie haben Ihr eigenes Unternehmen gegründet und Ihre Erfahrung genutzt, um kostengünstigere und zuverlässigere Software zu entwickeln. Welche Lehren können Programmierer heute aus dem Apollo-Projekt ziehen?Kürzlich stießen wir auf Systeme,
die zum Absturz des Flugzeugs führten , und der Pilot verstand nicht, was geschah. Außerdem wurde aus dem Apollo-Projekt deutlich, dass es besser ist, Systeme im Voraus zu definieren, um die Anzahl der Fehler zu minimieren, als sofort eine Reihe von Codes auszugeben, die dann mit Patches behoben werden müssen, die später ebenfalls gepatcht werden müssen . Anscheinend ist diese Lektion verlernt geblieben - in dieser Hinsicht wird Software heute genauso entwickelt wie vor 50 Jahren.
Es gibt ein berühmtes Foto aus dem Jahr 1969, auf dem Sie neben einem Stapel gedruckten Apollo-Missionscodes stehen, der fast so groß ist wie Sie. Kürzlich wurde dieses Bild mit einem Foto von Katie Bowman verglichen, einer Wissenschaftlerin, die bei der Entwicklung eines Algorithmus half, der das allererste Bild eines Schwarzen Lochs erzeugte. Sie posiert mit einem Stapel Festplatten ihres Projekts, und diese Fotomontage ist viral geworden. Erinnerst du dich, wie du dieses Foto gemacht hast und was du aus diesem Vergleich für dich selbst gelernt hast?Das Foto wurde während der Apollo 11-Mission von einem Fotografen des MIT speziell für Zeitungen aufgenommen. Wir wurden mitgerissen, schnappten uns alle Angebote von Apollo in meinem Büro und bauten diesen Turm. Ich versuchte einen Weg zu finden, sie aufrecht zu halten. Es schien mir nicht, dass ein solcher Vergleich schlecht war. Zumindest haben sie uns nicht versteckt. Obwohl ich Bowman nicht beneide, musste sie all den Sarkasmus bekämpfen, der sich im Internet ausbreiten kann. In gewisser Weise hat sich die Situation für Frauen heute verschlechtert.
Welchen Rat würden Sie jungen Frauen geben, die eine Karriere im Programmieren aufbauen möchten?Lassen Sie sich nicht von der Angst ergreifen und haben Sie keine Angst zu sagen: „Ich weiß nicht“ oder „Ich verstehe nicht“ - es gibt keine dummen Fragen. Und glauben Sie nicht zu 100% den sogenannten Experten!