# Mary Lee Woods

Mary Lee Woods (* 12. März 1924 in Birmingham, England; † 29. November 2017 in London) war eine britische Mathematikerin und Computerprogrammiererin, die in einem Team arbeitete, das Programme an der School of Computer Science an der University of Manchester für den Mark I, den Ferranti Mark I und den Mark 1 Star Computer entwickelte. Sie lernte Conway Berners-Lee während ihrer Arbeit bei Ferranti kennen. Sir Tim Berners-Lee ist eines ihrer Kinder.

## Frühes Leben und Ausbildung

Mary Lee Woods wurde 1924 in Birmingham geboren. Ihre Eltern waren Lehrer, sie hatte einen Bruder, der während des Zweiten Weltkriegs bei der Royal Air Force (RAF) diente und im Einsatz getötet wurde. Sie besuchte die Yardley Grammar School in Yardley, Birmingham, wo sie sich zunächst für Mathematik interessierte. Von 1942 bis 1944 absolvierte sie ein zweijähriges, aufgrund der Kriegszeit komprimiertes Studium in Mathematik an der Universität Birmingham. Danach arbeitete sie für das Telekommunikationsinstitut in Malvern, bis sie 1946 das dritte Jahr ihres Studiums abschloss. Nach ihrem Abschluss erhielt sie ein Stipendium von Richard van der Riet Woolley, um von 1947 bis 1951 am Mount Stromlo Observatory in Canberra, Australien und später als Computerprogrammiererin bei Ferranti in Manchester zu arbeiten.

## Ferranti-Softwareentwicklergruppe

Als sie zu Ferranti kam, arbeitete sie in einer Gruppe, welche von John Bennett geleitet wurde.
Sie arbeitete an den Computern Ferranti Mark I und Ferranti Mark I *. Programme wurden in Maschinencode geschrieben. Jedes Bit musste stimmen, es gab viel Raum für Fehler. Die Maschinen verwendeten eine serielle 40-Bit-Arithmetik (mit einem Akkumulator mit doppelter Länge). Dies bedeutete beträchtliche Schwierigkeiten bei der Skalierung der Variablen im Programm, um eine ausreichende arithmetische Genauigkeit aufrechtzuerhalten.
Mitglieder des Programmierteams fanden es nützlich, die folgende Zeichenfolge, die die Zahlen 0 bis 31 im Internationalen Fernschreibe-Code Nr. 1 (Baudot) 5-Bit-Binärcode des für die Ein- und Ausgabe verwendeten Papierbands darstellte, zu speichern:
Eine weitere der Schwierigkeiten bei der Programmierung betraf den zweistufigen Speicher der Maschinen. Es gab acht Seiten Williams-Kathodenstrahlröhren (CRT) als schnellen Primärspeicher und 512 Seiten Sekundärspeicher auf einer magnetischen Trommel. Jede Seite bestand aus 32 40-Bit-Wörtern, die als 64 20-Bit-Zeilen auf den CRTs erschienen. Der Programmierer musste alle Übertragungen zwischen elektronischer und magnetischer Speicherung kontrollieren, und die Übertragungen waren langsam und mussten auf ein Minimum reduziert werden. Bei Programmen, die sich mit großen Datenblöcken wie Matrizen befassen, konnte die Partitionierung in Seitenblöcke problematisch sein. Die Mark I-Maschine arbeitete in Ganzzahl-Arithmetik. Aufgrund ihres Radar-Hintergrunds hatten die Ingenieure die Maschine so gebaut, dass sie die Zeilen auf den CRTs mit dem höchstwertigen Bit auf der rechten Seite anzeigt. Dies konnte logisch sinnvoll sein, wurde aber für das eher konventionelle System für das Mark I * geändert, das auch in Brüchen und nicht in ganzen Zahlen funktionierte. Außerdem wurde der Baudot-Fernschreibercode durch einen Code in der folgenden Reihenfolge ersetzt
Programmfehler waren schwer zu finden. Programmierer konnten am Maschinensteuerpult sitzen und beobachten, wie die Maschine jeweils eine Anweisung ausführte, um zu sehen, wo ungewollte Ereignisse aufgetreten sind. Die Maschinenzeit wurde jedoch immer wertvoller. John Bennett schlug daher vor, dass Woods ein Diagnoseprogramm schreibt, um den Inhalt des Akkumulators und bestimmte Speicherzeilen an bestimmten Stellen des Programms auszudrucken, damit die Diagnose außerhalb der Maschine erfolgen kann. Die Herausforderung ihrer Routine „Stopandprint“ bestand darin, dass sie das Programm unter Diagnose überwachen musste, ohne es zu stören, und es gab sehr wenig Platz im Fast Store. Mit J. M. Bennett und D. G. Prinz war sie am Schreiben von interpretierenden Unterprogrammen beteiligt, die von der Ferranti-Gruppe verwendet wurden.
Programmfehler waren ein Problem, Maschinenfehler ein anderes. Der Computer las die binären Ziffern regelmäßig falsch. Die Ingenieure glaubten, die Mathematiker könnten dies durch Programmierung von Rechenprüfungen kompensieren, und die Mathematiker würden zu leicht davon ausgehen, dass ein fehlerhaftes Funktionieren auf die Maschine zurückzuführen ist, obwohl dies auf einen Programmfehler zurückzuführen war. Es gab unvermeidliche Reibungen zwischen den Mathematikern und den Ingenieuren. Im Mittelpunkt stand ein Programm, das Woods geschrieben hatte, um eine Matrix zu invertieren, um 40 simultane Gleichungen zu lösen – eine große Zahl zu dieser Zeit. Für die Maschine dauerte es zu lange, die langen Datenreihen fehlerfrei zu verarbeiten.
Während ihrer Anstellung bei Ferranti entdeckte Woods, dass Frauen weniger Lohn bekamen als Männer. Sie wandte sich damit an die Personalabteilung, und konnte diese davon überzeugen, Frauen gleiches Gehalt und gleiche Rechte einzuräumen.

## Privatleben

Mary Lee Woods war mit Conway Berners-Lee verheiratet, den sie während ihrer Arbeit im Ferranti-Team kennen gelernt hatte. Ihr ältester Sohn, Sir Tim Berners-Lee, erfand das World Wide Web.
Nach der Erziehung ihrer Kinder, wurde sie Mathematiklehrerin und dann Programmiererin mit BASIC, Fortran und anderen Sprachen, bevor sie 1987 in den Ruhestand ging. Sie starb im November 2017 im Alter von 93 Jahren.