newsseite
24. November 2002 UC-Hauptseite Forum Impressum Nr. 37 / 47. Woche

Grace Hopper - die Mutter der Computersprachen und Mann des Jahres

IT-Geschichte von Susanne Fiedler

In Europa fast unbekannt ist sie in Amerika eine Heldin, sogar ein Kriegsschiff ist nach ihr "Amazing Grace" benannt. Sie studierte Mathematik, als Frauen noch nicht Mathematik zu studieren hatten, sie bekam als erste Frau den Doktortitel der Yale University in Mathematik und ging zur amerikanischen Kriegsmarine, als Frauen noch nicht zum Militär zu gehen hatten. Ein Motto von ihr war: "Wenn es eine gute Idee ist, dann mach es einfach. Es ist viel einfacher, sich nachher zu entschuldigen, als vorher die Genehmigung zu bekommen."
Ihr Name wird mit vielen Erfindungen in Verbindung gebracht, mit dem Jahr2000-Problem, dem Computerbug, COBOL und FLOW-MATIC. Wer ist die Frau, die zum Mann des Jahres gekürt wurde und für die Amerika ein Sondergesetz erließ?

Grace Brewster Murray Hopper wurde am 9. Dezember 1906 in New York City geboren. Ihr Vater war Versicherungskaufmann, ihrer Mutter war eine Ausbildung verwehrt worden. Ihre ersten Schuljahre verbrachte Grace Murray auf zwei privaten Mädchenschulen in New York City. Da ihrem Vater wegen einer schweren Erkrankung nur eine geringe Lebenserwartung vorhergesagt wurde, legte dieser großen Wert auf eine gute Ausbildung seiner drei Kinder. Grace zeigte schon früh eine Begabung und auch großes Interesse für Mathematik, dies scheint sie von ihrer Mutter geerbt zu haben, die damals auf Sonderbeschluss der Schule die Erlaubnis erhielt, den Geometrieunterricht durch ein Fenster zu verfolgen, da höhere Mathematik für Mädchen in dieser Zeit undenkbar war.

Mit derartigen Widrigkeiten hatte Grace nicht zu kämpfen, doch auch sie hatte Probleme. Bei ihrem High-School-Abschluss im Jahr 1923 fiel sie durch die Latein-Prüfung und konnte deshalb nicht direkt auf ein College wechseln. Daher besuchte sie im darauffolgenden Jahr die Hartridge School in Plainfield, New Jersey, zur weiteren College-Vorbereitung und ab 1924 das Vassar College, das älteste Women College der USA, in Poughkeepsie, New York. Grace schloss ihr College-Studium 1928 mit dem Bachelor of Arts in Mathematik und Physik mit Auszeichnung ab und erhielt ein Stipendium für Yale, wo sie 1930 ihren Master of Arts in den beiden Fächern erhielt. In gleichen Jahr heiratete sie Vincent Hopper, einen Princetonabsolventen. Da es in der damaligen Wirtschaftskrise auch für Hochqualifizierte kaum Jobs gab, arbeitete sie als Mathematiklehrerin am Vassar-College für $800 Jahresgehalt, während ihr Mann English unterrichtete. Beide promovierten nebenher und Grace Hopper erhielt 1934 als erste Frau den Doktortitel in Mathematik der Yale University.
Mit dem Eintritt der USA in den zweiten Weltkrieg, wollte Grace Hopper zur Navy - aus Familientradition wie sie betonte. So war bereits einer ihrer Urgroßväter Konteradmiral der Navy gewesen; sie hatte ihn noch gekannt und war stark von ihm beeindruckt. Doch die Behörden stellten fest, dass sie für eine militärische Grundausbildung zu alt sei und als Mathematik-Dozent im Zivilbereich tätig bleiben solle. Mit dieser Entscheidung gab sie sich jedoch nicht zufrieden und erreichte nach fast zwei Jahren, durch Sondergenehmigungen in die US-Naval Reserve aufgenommen zu werden. Neben dem Patriotismus der damaligen Zeit, war wohl auch das sich anbahnende Ende ihrer Ehe ein Motiv, die dann auch 1945 geschieden wurde.

Im Dezember 1943 begann sie schließlich eine 6-monatige Grundausbildung an der Midshipman's School for Women in Northampton, Massachusetts, die sie als "lieutenant (junior grade)" abschloss. Die Grundausbildung war für sie besonders schwer, nicht nur weil sich mit ihren 37 Jahren fast doppelt so alt war, wie die anderen Frauen, sondern weil sich darunter auch ehemalige Schülerinnen befanden. Anschliessend wurde sie sofort im Bureau of Ordnance Computation Projekt an der Harvard Universität eingesetzt, was gleichbedeutend war mit ihrem Einstieg in die Computerwelt. Sie war nach Richard Bloch und Robert Cambell die Dritte, die Mark I, den ersten amerikanischen Computer codierte, obwohl sie vorher noch nie einen Computer gesehen hatte. der Rechner konnte nur drei Additionen pro Sekunde durchführen und maximal 72 Worte speichern, aber Hopper sagte später: "Ich hatte schon immer was für schicke Maschinen übrig. Und der MARK 1 war die schickste Maschine, die ich bis dahin gesehen hatte. Ich wollte unbedingt wissen, wie er funktionierte." Und Hopper codierte nicht nur, sie erstellte u.a. den Teil des Maschinen-Handbuchs, der die elektronischen Schaltkreise beschreibt.

Das Codieren war damals noch sehr mühselig und erfolgte in Maschinensprache. Diese Sprache besteht aus Code-Nummern und jede Ziffernkombination hat eine bestimmte Bedeutung. Sie bezeichnete etwa eine bestimmte Stelle im Speicher oder veranlasste die Addition zweier Zahlen usw. Zum Codieren wurden also lange Zahlenkolonnen aufgeschrieben, diese auf Lochstreifen übertragen und in den Computer eingelesen, eine ständige Gefahr für Tipp- und Lesefehler. Als besonders gefahrträchtig erwies sich das Kopieren von Programmen ihrer Kollegen, wenn sie diese bei einer Berechung benötigte.
So entwickelte sie eine sog. "relative subroutine", eine simple Form eines Unterprogramms, der erste Schritt auf dem Weg zu einer Programmiersprache. Sie arbeitete in Havard auch noch an den Folgeprojekten Mark II und III, bevor sie zu ENLAC, einem weiteren vom Militär geförderten Programm, das für ballistische Berechnungen der Artillerie ins Leben gerufen wurde, wechselte. 1949 ging sie zur Eckert-Mauchly Corporation, um die Programmierung des UNIVAC I zu leiten. Hopper sah, dass die Programmierer für jedes Programm, das sie codierten, ständig wieder neu bestimmte Befehle eintippen mussten. Hopper ermutigte sie, die Befehle einmal zu schreiben und sie dann in eingeteilte Codebibliotheken zu platzieren. Dieses Verfahren verringerte die Fehlerzahl und machte den Programmierern das Leben leichter.
Im Herbst 1951 erhielt Hopper den Auftrag, eine Sammlung mathematischer Unterroutinen zusammenzustellen, die so standardisiert waren, dass alle UNIVAC-ProgrammiererInnen sie benutzen könnten. Hopper erkannte, dass das Problem beim Kopieren der Unterroutinen darin bestand, dass zu allen vorhandenen Adressen etwas hinzuaddiert werden musste - eine äußerst fehleranfällige Angelegenheit. So kam sie zu der Überzeugung, dass es möglich sein müsste, ein Programm zu schreiben, dass der Kopiervorgang vom Computer automatisch vorgenommen werden könnte. Zwischen Oktober 1951 und Mai 1952 schrieb sie an dem Programm und entwickelte so den ersten Compiler, der den schlichten Namen A-0 hatte.

Grace Hoppers nächste Idee war es, durch ein Programm die englische Sprache in Binärcode umwandeln zu lassen, um das Programmieren zu vereinfachen. Sie entwickelte daraufhin die Programmiersprache Flow-Matic, in der erstmals englische Ausdrücke vom Computer in Binärcode umgewandelt wurden. Zwar waren dies nur 20 Wörter, doch dies ermöglichte eine große Vereinfachung in der Gehaltsabrechnung, für Bestellungen und in der Rechnungsschreibung.

Die Grundlage für weitere Programmiersprachen war gelegt. Doch im Gegensatz zu der weit verbreiteten Meinung war Hopper nicht an der Entwicklung von COBOL direkt beteiligt. Sie beteiligte sich an ersten Treffen des Komitees, das eine detaillierte Beschreibung für eine allgemeingültige Unternehmersprache formulieren sollte. Danach war sie nur noch Beraterin. Einige Mitarbeiter aus ihren UNIVAC-Team arbeiteten allerdings in der Kommission mit. Und die Grundlage, der Ideengeber für COBOL war FLOW-MATIC. Insofern kann man heute rückblickend sagen, dass COBOL ohne Grace Hopper, die schon früh eine Standardisierung der Computerprogrammierung befürwortete, nie entstanden wäre.

1966 hatte sie mit 60 Jahren als Admiral sehr ungern den Reservedienst bei der Navy quittiert. Doch schon sieben Monate später wurde sie reaktiviert, um die Standardisierung aller Computereinrichtungen der Navy zu koordinieren und insbesondere um für die Navy COBOL zu standardisieren. Aus den geplanten sechs Monaten wurden 20 Jahre, in denen ihr Navy-Dienst in ihrem hohen Alter zuletzt nur noch per Sondergesetz ermöglicht werden konnte. 1983 wurde sie zum Konteradmiral befördert.

Neben der Standardisierung von COBOL arbeitete sie auch unermüdlich für die Wirtschaft, um diese vom Nutzen der Computersprachen zu überzeugen und war in der Ausbildung tätig. Mit ihrem Team entwickelte sie die ersten brauchbaren COBOL-Handbücher und Werkzeuge. Sie entwickelte außerdem standardisierte COBOL-Compiler.
Im Laufe ihres Lebens erhielt sie die höchsten Auszeichnungen, doch unter den gut 90 Auszeichungen, über 40 Ehrendoktorwürden und weiteren 10 militärischen Auszeichungen war ihr der "Computer Science Man-of-the-Year Anward" von der Data Processing Management Association der liebste. Die Ironie, als Frau zum Mann des Jahres gekürt zu werden, blieb ihr nicht verborgen und war so ganz nach ihrem Sinn für Humor. Und ihr wurde nachgesagt, eine sehr große Portion Humor zu haben.

Es ist schon seltsam, dass eine so verdiente Computerwissen-schaftlerin mit Fehlern in Verbindung gebracht wird.
So wird ihr die Erfindung des Bugs angedichtet. Fast jeder User, der mit Microsoftprogrammen arbeiten muss, wird der festen Überzeugung sein, dass die Redmonder den Bug erfunden haben müssen. Doch die Krabbeltiere in der Software waren schon nach dem zweiten Weltkrieg bekannt. Tatsache ist, dass am 9. September 1947 der Mark II-Rechner ausfiel. Nach längerer Fehlersuche des gesamten Teams fand Hopper eine Motte in einem Relais des Rechners, die zu einem Kurzschluss geführt hatte. Dank dem militärischen Ernst dieses amerikanischen Produktes des Kalten Kriegs ist die genaue Zeit protokolliert. Man findet die Motte als Zeugin ausgefallener Technik eingeklebt im Protokoll wieder. Doch schon der Zusatz Hoppers: "First actual case of bug being found." deutet darauf hin, dass der Ausdruck bug schon vorher existierte. Nebenher sei noch bemerkt, dass bug biologisch gesehen falsch ist, denn es handelte sich um eine Motte und keine Wanze, aber gerade deshalb ist bug ein würdiger Name für einen Fehler. Sicher ist aber, dass bug von Hopper erstmals im Zusammenhang mit einem Computerfehler verwendet wurde.

Hopper starb am 1. Januar 1992 und wurde mit allen militärischen Ehren beigesetzt. Acht Jahre später sorgte sie noch einmal für Aufsehen, denn sie war nicht ganz unschuldig an der Angst vor dem Jahr-2000-Problem. In den fünfziger Jahren, als Lochkarten das modernste Speichermedium waren und darauf gerade einmal maximal 80 Datenzeilen festgehalten werden konnten, entschied sich Hopper, das Datum nur sechsstellig darzustellen, also das Jahr auf die beiden Endziffern abzukürzen, um Platz zu sparen. Doch sie ist nicht die allein Schuldige, die COBOL-Programmierer übernahmen diese Schreibweise nur zu gerne. Auch IBM übernahm diese Schreibweise in dem Betriebssystem 360 und sorgte so für eine weltweite Verbreitung des späteren Y2k-Porblems, das sich glücklicherweise als weniger schwerwiegend herausstellte, als ursprünglich gedacht. Hoppers Lebensweisheit: "Vor dem Zweiten Weltkrieg war das Leben einfach. Danach gab es Computer." hat sich glücklicherweise auf diesem Gebiet nicht bewahrheitet.

zurück