Helden der IT

Konteradmiral Grace Hopper: Mathematikerin, Kommunikationstalent und Programmiererin der ersten Stunde.

gepostet von am

Im letzten Jahrhundert begann das Computerzeitalter. Während die frühen Rechenmaschinen zunehmend leistungsfähiger wurden, war es an den Pionieren des Programmierens, sie für die (Rechen-)Probleme dieser Welt nutzbar zu machen. Und damit an Menschen wie Konteradmiral Grace Hopper, die gern als erste moderne Programmiererin bezeichnet wird.

Grace Hopper wird von Präsident Reagan befördert.
Grace Hopper bei ihrer Beförderung zum Commodore 1983. Quelle: Wikimedia.

Geboren wurde die IT-Pionierin 1906 in New York als Grace Brewster Murray. Als Spross einer wohlhabenden Familie, in der Bildung groß geschrieben wurde, schrieb sie sich 1924 am renommierten Frauen-College Vassar ein. Ihre Hauptfächer waren Mathematik und Physik, aber sie besuchte auch Kurse aus Fächern, wie Elektronik, Geologie und Botanik. Nach ihrem Bachelor ging sie 1928 nach Yale, wo sie 1930 auch ihren Master in Mathematik machte. Im selben Jahr heiratete sie dort den Literaturprofessor Vincent Hopper.

Grace Dampf in allen akademischen Gassen

1931 kehrte Grace Hopper zurück nach Vassar, um dort eine Lehrtätigkeit in Mathematik aufzunehmen, 1934 reichte sie ihre Doktorarbeit an der mathematischen Fakultät in Yale ein und erhielt ihren Ph.D. Nicht zuletzt wegen ihrer Fähigkeit, komplexe Probleme zu veranschaulichen, war sie bei ihren Studenten als Lehrkraft beliebt. Und das, obwohl sie als einzige Dozentin in Mathekursen Essays schreiben ließ und diese sogar nach Stil bewertete. Ihrer Ansicht nach war es “sinnlos zu versuchen, Mathe zu lernen, solange man mit anderen Menschen nicht darüber kommunizieren [könne]”. Nebenher lernte sie mehrere Sprachen und besuchte weiter Kurse verschiedener Fachgebiete. So eignete sie sich ein breites Wissen in unterschiedlichen Disziplinen und die dazugehörigen “Fachsprachen” an.

In den Folgejahren baute Hopper ihr wissenschaftliches Engagement sogar noch aus. 1941 hatte sie neben ihrer Lehrtätigkeit in Vassar noch eine Teilzeitstelle als Gastdozentin am Barnard-College und ein Fellowship an der New York University inne. Die einfache Lehrtätigkeit in Vassar begann sie zu langweilen. Als sie gerade an der New York University war, um an Differentialgleichungen zu arbeiten, bombardierten japanische Kampfflugzeuge den amerikanischen Marinestützpunkt Pearl Harbour.

Das linke Segment des Mark I.
Linkes Segment des Mark I. Quelle: Wikimedia

Eine Uni-Dozentin zieht in den Krieg

Diese weltpolitische Umwälzung nimmt Hopper zum Anlass für persönliche Veränderungen und entscheidet sich, Ihrem Land zu dienen. Sie meldet sich mit 42 Jahren freiwillig zum Militärdienst. Obwohl sie zunächst als zu alt und leichtgewichtig abgelehnt wird, ändert sich ihr Leben in dieser Zeit vollständig. Sie verlässt Vassar, trennt sich von ihrem Mann und wird 1943 doch für die Navy-Reserve akzeptiert. Als Mathematikerin geht sie davon aus, nach der Offiziersausbildung in der Kryptographie eingesetzt zu werden, wo einer ihrer ehemaligen Professoren eine führende Rolle einnimmt. Zu ihrer Überraschung muss sie sich stattdessen 1944 an der Harvard University melden, und zwar am “Bureau of Ordnance Computation Project”. Hier betreibt Howard Aiken für IBM sein geistiges Kind, genannt Mark I: Eine riesige, laute elektromechanische Rechenmaschine, bestehend aus ratternden Relais. Sie wurde unter anderem nach Konzepten gebaut, die Charles Babbage für seine Differenzmaschine hundert Jahre zuvor entwickelt hatte. Seit Kriegsbeginn stehen Aiken und sein Rechner unter der Ägide der US-Navy.

Leutnant Hoppers Talente fügen sich ideal in das Team um den Mark I ein. Auch wenn ihr Empfang durch den als schwierig geltenden Aiken wohl etwas schroff gewesen sein soll – zur Begrüßung gibt es eine Ausgabe von Charles Babbages Memoiren, einen Blick auf den Mark I und die Anweisung, Koeffizienten für ballistische Feuertabellen zu berechnen. Natürlich lässt Hopper sich nicht einschüchtern und studierte nachts die Baupläne des Mark I. Sie weiß, dass sie das Monstrum vollständig verstehen muss, um ihm sinnvolle Rechenergebnisse entlocken zu können.

Im Informationszeitalter geht es um… Kommunikation!

Ihre Fähigkeiten, sich die Fachsprachen unterschiedlicher Disziplinen anzueignen und mit Experten und Laien zu Problemstellungen verschiedenster Gebiete zu kommunizieren, soll hier voll zum Tragen kommen. Hopper hilft damit, den Computer-Technikern die Problemstellungen der Navy-Fachbereiche (etwa aus Ozeanographie, Ballistik oder Ingenieurswesen) verständlich zu machen. Sie kann detaillierte technische Diskussionen führen, um danach mit einem anderen Vokabular das gleiche Thema mit der Führungsebene zu besprechen. Und natürlich versteht es die promovierte Mathematikerin, reale Probleme scharfsinnig in mathematische Gleichungen zu übersetzen, die sie dann wiederum mit ihrem Verständnis für den Mark I in konkrete Maschinenbefehle umsetzt.

Das rechte Segment des Mark I mit der Ausgabe für Lochstreifen
Rechtes Segment des Mark I mit der Ausgabe für Lochstreifen. Quelle: Wikimedia

In the Navy…

Aufgrund dieser kommunikativen Fähigkeiten bekommen Hopper und ihr Team von Aiken dann auch einen überraschenden Befehl: “Sie werden ein Buch schreiben.” Aiken möchte eine Anleitung, wie der Mark I zu programmieren ist. Ihre anfänglichen Bedenken, sie habe damit keinerlei Erfahrung, werden strikt zurückgewiesen mit dem Hinweis darauf, dass sie jetzt “in der Navy” sei. Das Resultat sind über 500 Seiten, die gleichzeitig einen Abriss der Geschichte der Rechenmaschinen allgemein und des Mark I im Speziellen sowie ein Handbuch zu dessen Programmierung darstellen. Damit verfasst Hopper das erste Computer-Handbuch der Geschichte. Sie liest Aiken die Fortschritte jeden Tag vor und erhält so umgehendes Feedback. Dadurch entwickelt sie einen klaren, präzisen und vor allem verständlichen Schreibstil.

Ebenso klar und präzise funktioniert dank ihres Einflusses die Programmierung des Mark I und seines Nachfolgers, dem Mark II. Hopper versteht es, komplexe Probleme in arithmetische Einheiten herunterzubrechen und das Monster aus Relaise und Kabeln damit schrittweise zu füttern. Dafür legt sie auch eine reichhaltige Bibliothek mit Subroutinen an. Subroutinen sind abgespeicherte Unterprogramme, die häufig benötigte Funktionalitäten ausführen und auf die ein Hauptprogramm bei Bedarf an verschiedenen Punkten mittels definierter Befehle zurückgreifen kann. Hopper schreibt solche Routinen etwa für Logarithmus- und Sinusfunktionen und perfektioniert diese Technik im Laufe ihrer Arbeit für Aiken.

Obwohl Aiken als autoritär und eigenbrötlerisch gilt, ist seine Zusammenarbeit mit Hopper fruchtbar. Hopper versteht es, den Tüftler zu nehmen, wie er ist, und fügt sich auch allgemein bestens in die Navy ein. Zwar gilt die sarkastische und schlagfertige Lt. Hopper als vorlaut und respektlos, allerdings verfügt sie auch über eine hohe soziale Kompetenz und einen ausgeprägten Sinn für Kameradschaft. Diese Mischung aus rebellischem und kollaborativem Geist verschafft ihr und ihrem Team den Freiraum, neue Wege zu beschreiten. Eine Kostprobe ihres Charmes kann man in einem Interview in der “Late Show with David Letterman” bestaunen (hier erklärt sie auch, warum sie immer “Nanosekunden” bei sich trägt).

Motte im Logbuch des Mark I.
Auszug aus dem Logbuch des Mark I mit der berühmten Motte. Quelle: Wikimedia

Kein Computer ohne Programm, kein Programm ohne Bug

Hopper und ihr Team aus Technikern und Ingenieuren sollen bei ihrer Arbeit auch die in der Softwareentwicklung geläufigen Begriffe “bug” und “debugging” geprägt haben. Ob das auch mit dem Fund einer Motte (bug = kleines Insekt) im Mark II am 09. September 1947 zusammenhängt, die die Arbeit der Rechenmaschine empfindlich störte, ist die Grundlage einer nicht belegten Theorie. Das Insekt wurde jedenfalls in das Logbuch geklebt mit der Notiz: “Erster tatsächlicher Fund eines Bugs”. Der Eintrag zeugt in jedem Fall vom Humor des Teams, der Begriff findet sich als Wort für einen Fehler in einer Maschine allerdings schon deutlich früher.

Ein Lochstreifen für den Mark I.
Programm auf einem Lochstreifen für den Mark I. Quelle: Wikimedia

Letztlich sind solche Randnotizen natürlich nur von anekdotischem Interesse. Fest steht aber, dass der Mark I 1945 dank der Arbeit des Teams die wohl am leichtesten programmierbare Rechenmaschine der Welt ist. Wie bei anderen Großrechnern seiner Zeit auch, erfolgen In- und Output über gelochtes Papier. Beim Mark I können neue Aufgaben ausschließlich über Lochstreifen programmiert werden, was ihn von anderen Großrechnern der Zeit unterscheidet, bei denen für unterschiedliche Berechnungen die Schaltungen physisch verändert werden müssen. Nichtsdestotrotz werden der Mark I und sein Nachfolger Mark II gegen Ende der 1940er-Jahre nach und nach obsolet. Die junge Welt der Informationstechnologie setzt auf Elektronik. Klackernde Relais werden durch wesentlich schnellere Elektronenröhren ersetzt. Aiken verpasst es, sich dieser Entwicklung anzupassen – Hopper steht ein weiterer Teil ihrer langen, umtriebigen Karriere dagegen erst noch bevor.

Bei einem Besuch des ENIAC erkennt Hopper schnell die Vorteile des Mark I. Der ENIAC ist der erste vollelektronische Großrechner und berechnet in Diensten der US-Army ballistische Tabellen. Zwar ist er dadurch im Prinzip wesentlich schneller als der Mark I, dieser Vorteil wird nach Hoppers Ansicht aber durch seine schlechte Programmierbarkeit zunichte gemacht. Der ENIAC muss für jedes Programm neu verkabelt werden, was einen ganzen Tag in Anspruch nehmen kann. (Sie muss damals allerdings erfreut gewesen sein, dass diese Aufgabe hauptsächlich von Mathematikerinnen ausgeführt wurde.) Hopper gewinnt dadurch die Einsicht, dass das neue Computerzeitalter nicht ohne exzellente Computerprogramme und vor allem fähige Programmierer fortschreiten kann.

Die Fünfziger Jahre: Erster Compiler und Open-Source-Mentalität

Mit der gesammelten Erfahrung in der Grundlagenarbeit mit Aikens Rechnern stößt Hopper 1947 zur Eckert-Mauchly Computer Corporation, die später in einer Abteilung der Rand Corporation aufgeht. Hier ist sie an der Entwicklung des Universal Automatic Calculator beteiligt, kurz UNIVAC I, dem ersten in den USA produzierten, kommerziellen Computer. Damit halten Großrechner und Hoppers Arbeit Einzug in die Privatwirtschaft. Hopper verbleibt dabei zunächst als Reservistin in der Navy.

Hier nutze sie ihr Wissen und ihre Erfahrung und schreibt für den UNIVAC den ersten Compiler der Geschichte, den sie “A-0” nennt. Sie greift dabei ihre frühere Idee auf, dass grundlegende Operationen im Computer gespeichert sein sollten, statt für jede neue Aufgabe detaillierte Instruktionen einzugeben. Dafür nutzt sie die Kunst der Subroutinen, die sie an Mark I und II geschärft hat. Den Begriff “Compiler” wählte sie, da der Computer sich das nötige Wissen so aus einem Archiv von Subroutinen zusammen stellt, ähnlich wie ein Mensch, der Informationen in einer Bibliothek zusammenträgt (von Englisch “to compile”).

Grace Hopper und Kollegen am UNIVAC I (1960)
Hopper und Kollegen am UNIVAC I (1960). Quelle: Wikimedia

Dadurch verringert sich der zeitliche Aufwand der Programmierung immens und Programmierer müssen nicht mehr die abstrakte und komplizierte Sprache der jeweiligen Maschine lernen: Der A-0 übersetzt vorher definierte mathematische Befehle in Maschinenbefehle und verringert die intellektuelle Einstiegshürde für die Computerprogrammierung so immens. 1952 hat Hopper damit den ersten funktionierenden Compiler entwickelt, aber zunächst scheint die junge IT-Welt damit nichts anfangen zu können. “Ich hatte einen funktionierenden Compiler und niemand wollte etwas damit zu tun haben”, so Hopper, “Sie sagten mir, Computer könnten nur Arithmetik.”

Zum Glück erkennen die Verantwortlichen des UNIVACS die Bedeutung und die Möglichkeiten von Hoppers Entwicklung, so dass sie diesen Weg weiter beschreiten kann. Mit Hoppers B-0, auch FLOW-MATIC genannt, lernen Computer dann sozusagen menschliche Sprache, da Befehle in Form von natürlichen englischen Wörtern eingegeben werden können.

Bei ihrer Arbeit verfolgt sie dabei stets einen offenen Ansatz, der an die moderne Open-Source-Mentalität erinnert. Sie schickt ihre ersten Entwürfe an Freunde und Kollegen, mit der Bitte um Ideen und Verbesserungen. Den gleichen Ansatz verfolgt sie auch, als sie Ende der 1950er eine Führungsrolle bei der Entwicklung der Programmiersprache COBOL einnimmt, einer am natürlichen Ausdruck angelehnten Programmiersprache primär für betriebswirtschaftliche Problemstellungen. Sie ist damit von vornherein darauf ausgelegt, möglichst simpel und zugänglich zu sein. Gerade bei Banken und Versicherungen ist sie noch heute im Einsatz und wird erst nach und nach abgelöst.

Grace Hopper in ihrem Büro in Washington DC (1978).
Hopper in ihrem Büro in Washington DC (1978). Quelle Wikimedia

Ein IT-Genie kennt keinen Ruhestand

1966 wird Hopper, mittlerweile 60 Jahre alt, aus Altersgründen von der Navy in den Ruhestand geschickt, 1967 aber direkt in den aktiven Dienst zurückgeholt. Per Kongress-Beschluss wird es möglich gemacht, dass sie über das vorgeschriebene Rentenalter hinaus im Dienst bleiben kann. Nicht zuletzt durch den Vietnam-Krieg braucht die Navy kluge Köpfe in der IT.

Sie arbeitet bei der Marine danach zunächst an der flächendeckenden Implementierung von COBOL. In den 1970er Jahren ist sie innerhalb des Militärs eine Verfechterin der Idee, auf verteilte, lokale Netzwerke aus kleineren Rechnern zu setzen, statt wie bisher auf wenige zentrale Großrechner. Ihre Idee ist dabei, dass alle Nutzer von jedem Knotenpunkt aus auf eine gemeinsame Datenbasis zugreifen können. Auch diese Idee setzt sich mit der Zeit durch und hält Einzug in die Wirtschaft.

1983 wird sie von Präsident Reagan zum Commodore befördert, ein Rang der kurz darauf in Rear Admiral (Konteradmiral) umbenannt wird. Dadurch ist sie eine der wenigen Frauen, die es in der US-Navy zum Admiral gebracht haben. Endgültig scheidet Rear Admiral Hopper 1986 mit 79 Jahren aus der Navy aus – nur um direkt einen Beraterjob bei der Digital Equipment Corporation anzunehmen. Dort arbeitete sie bis zu ihrem Tod. 1992 verstirbt Grace Brewster Murray Hopper im Schlaf in ihrem Haus nahe Washington D.C.

Sie wird mit allen militärischen Ehren auf dem Nationalfriedhof in Arlington beigesetzt. Ihr zu Ehren werden in den Jahrzehnten nach ihrem Tod unter anderem ein Park, technische Militäreinrichtungen und der Zerstörer USS Hopper benannt. “The Grace Hopper Celebration of Women in Computing” ist heute die weltweit größte Konferenz für Frauen in den Computerwissenschaften. Nicht mehr erleben kann Hopper auch die Hysterie um das “Jahr-2000-Problem”. Sie wäre sicherlich amüsiert gewesen, zumal sie für COBOL an der Entscheidung beteiligt gewesen ist, nur zwei Stellen für die Speicherung von Jahreszahlen zu benutzen, um Speicherplatz zu sparen – in den 1960-er Jahren hatte sich eben niemand vorgestellt, dass die gleichen Systeme noch 40 Jahre später im Einsatz sein könnten.

Porträt von Rear Admiral Grace Murray Hopper (1984).
Rear Admiral Grace Murray Hopper (1984). Quelle Wikimedia

Ein großes Vermächtnis

Hopper stellte ihr Leben in den Dienst der Informationstechnik, des Fortschritts und natürlich auch ihres Landes. Sie hinterließ dabei mächtige Spuren: Sie war an wichtigen technologischen Weichenstellungen beteiligt und trat stets als zukunftsgewandte Advokatin des Informationszeitalters auf. Wie ihr Idol Ada Lovelace begriff sie früh, dass Computer für universelle Aufgaben nutzbar sein konnten, solange sie mit den richtigen Instruktionen gefüttert wurden. In einem Interview 1983 war sie überzeugt, die Menschheit stehe erst am Anfang des Computerzeitalters.

Sie selbst bezeichnete aber als eine ihrer größten Leistungen “all die jungen Menschen, die ich ausgebildet habe”. Denn auch von der Lehre hatte Hopper nie lassen können. Sie hielt während ihrer gesamten Karriere Vorträge, Reden und Seminare an Colleges und in Kasernen und auch beruflich nahm sie junge Leute unter ihre Fittiche. Den neuen Generationen gab sie gerne einen Rat mit auf den Weg:

A ship in port is safe, but that is not what ships are for. Be good ships. Sail out to sea and do new things. (Grace Hopper)