Inhaltsübersicht
Einleitung und Zusammenfassung
Ada
Lovelace ist eine der bekanntesten feministischen
Kultfiguren bzw. Mythen. Die Google-Suche
"Ada+Lovelace" liefert rund 500.000 Treffer. Schon
auf der Trefferliste wird eine Personenbeschreibung
eingeblendet, wo man lernt, sie sei "eine Mathematikerin"
und habe "als Erste ein komplexes Programm"
veröffentlicht. Die
deutsche Wikipedia macht fast die gleichen Angaben
und präzisiert: "Das Programm nahm wesentliche Aspekte
späterer Programmiersprachen wie etwa das Unterprogramm
oder die Verzweigung vorweg." Auf
frauen-informatik-geschichte.de
erfahren wir "Sie entwarf Konzepte zur Programmierung
einer mechanischen Maschine".
einstieg-informatik.de
behauptet, die "Computerpionierin [!] Ada Lovelace
beschrieb die grundlegenden Konzepte der
Computerprogrammierung [!] und die Bausteine, die in jeder
[!] Computersprache benötigt werden." Wirklich beachtlich,
aber Frauen können eben alles.
Leider ist keine einzige der vorstehenden Aussagen über
Ada Lovelace wahr. Manche sind frei erfundener Unfug,
manche könnte man irgendwie retten, indem man "Es gibt
plausible Hinweise, aber keinen Beweis, daß ..." davor
schreibt, manche sind geschickte (oder wahlweise
hinterhältige) rhetorische Tricks. Ada Lovelace war
interessiert an Mathematik, ob sie mehr als Abiturniveau
erreichte, ist umstritten und nicht erwiesen. Sie hat kein
einziges Programmiersprachenkonzept erfunden, sie hat genau
ein Programm geschrieben, das war aber nicht das erste.
Sie war kein Computerpionier. Man kann sie als engagierten
und erfolgreichen Wissenschaftsreporter bezeichnen (das
ist als Kompliment gemeint), der dem Publikum eine geniale
Erfindung, die Analytical Engine von von Charles Babbage,
beschrieb.
Nun sind groß angelegte Geschichtsfälschungen (um nicht zu
sagen
Geschichtsrevisionismus) bzw. "große Lügen" guter
Brauch im Feminismus. Den Begriff "Patriarchat" kann man
als eine einzige gigantische Geschichtsfälschung bewerten.
Beim Thema
Hexenverbrennungen hatten die Geschichtsfälschungen
signifikante Ausmaße, und die gefälschten Angaben waren
lange Zeit wesentlich für das feministische
Selbstverständnis. Ein weiteres Beispiel sind die
angeblich
von den Nazis verfolgten Lesben. Ist die
Darstellung von Ada Lovelace eine weitere große Lüge?
Man spricht von einer "großen Lüge", wenn Desinformation
flächendeckend verbreitet ist, wenn die korrekten
Informationen kaum noch eine Chance haben, wahrgenommen zu
werden, wenn zumindest teilweise Maßnahmen erkennbar sind,
die Öffentlichkeit zu täuschen, wenn ggf. die Benutzung
der korrekte Informationen aktiv unterdrückt wird. Der
Begriff "große Lüge" stammt aus dem Nationalsozialismus
und wird deshalb manchmal damit verbunden, daß eine große
Lüge nur bei der Vorbereitung bestialischer Verbrechen
geplant und umgesetzt wird. Dies ist hier explizit nicht
gemeint, ob die Aussagen über Ada Lovelace stimmen oder
nicht, ist materiell ziemlich unwichtig. Man könnte auch
den weniger bekannten Begriff
Woozle-Effekt verwenden, der aber mehr auf unbedachtes
Zitieren zielt: Wenn alle zugänglichen Quellen konsistent
die gleiche Unwahrheit berichten, wird die Unwahrheit -
oft noch inhaltlich gesteigert - im Brustton der
Überzeugung weitergegeben.
Viele große Lügen haben den Nachteil, Aussagen über große
Zeiträume und große Personengruppen zu machen, also über
unübersichtliche Themen. Der Fall Ada Lovelace hat den
Vorteil, relativ überschaubar und hinreichend präzise
untersuchbar zu sein. Der Fall Ada Lovelace ist trotzdem
eine Lehrstunde dahingehend, wie schwer es ist,
geschichtliche Vorgänge angemessen zu beschreiben und zu
verstehen, und wie leicht man aufgrund erster Eindrücke
und ohne Hintergrundwissen zu völligen Fehlurteilen kommen
kann. Die Lügen im Fall Ada Lovelace kann man daher auch
nur verstehen, wenn man sich Zeit nimmt und sich die
Themen und Personen genauer ansieht.
Eine Befassung mit dem Fall Ada Lovelace ist andererseits
insofern spannend, als man einen Einblick in eine
drastisch andere Welt bekommt und ein Gefühl dafür, vor
welchen Problemen Erfinder von Technologien standen, die
für uns heute völlig selbstverständlich erscheinen, und
welche Leistungen manche Innovationen erforderten.
Die maßlose feministische Übertreibung der Verdienste von
Ada Lovelace ist auch ein Unrecht an ihr selber: sie war
tatsächlich eine interessante, durch ihren Reichtum und
den Adelsstand sehr privilegierte, durch Krankheiten
geschädigte, oft auch fragwürdige Person. An ihrem
Beispiel wird deutlich, mit welchen Behinderungen
technisch interessierte Frauen damals zu kämpfen hatten.
Sie hat sich tatsächlich Verdienste erworben, denn ihr
Wirken als Wissenschaftsreporter, der die Erfindungen
von Babbage einem breiteren Publikum zugänglich machte,
stellte eine erhebliche eigene Leistung dar, nicht zu
reden davon, daß sie Babbage in der sehr intensiven
Kooperation mit ihm nötigte, seine Erfindungen genauer
darzustellen und zu durchdenken.
Um genauer einordnen zu können, um welche historische
Innovation es sich hier handelt, führt ein erster
Abschnitt
Algorithmen vs.
Computerprogramme vs. Mikroprogramme einige
Grundbegriffe ein, um die Analytical Engine
technikhistorisch einordnen zu können. Spätere Abschnitte
skizzieren
den Werdegang und die Ausbildung
von Ada Lovelace und gehen vor diesem Hintergrund
auf die
ihr
zugeschriebenen wissenschaftliche Leistungen ein.
Die
Entstehung des heutigen Hypes um Ada Lovelace
wird anschließend dargestellt. Eine zentrale Rolle spielte
hier die Benennung der neuen Standard-Programmiersprache
des US Department of Defense (DoD) nach Ada Lovelace im
Jahr 1979.
Abschließend werden Beispiele für
typische feministische
Falschaussagen über Ada Lovelace und rhetorische
Tricks, mit denen eine explizite Falschaussage
vermieden, der Leser aber getäuscht wird, aufgelistet. Am
Ende muß jeder selber beurteilen, ob der Fall Ada Lovelace
eine große Lüge oder nur eine ganz normale
Geschichtsfälschung ist.
Charles Babbage und die Analytical Engine
Algorithmen vs. Computerprogramme vs. Mikroprogramme
Um besser zu verstehen, um welche Innovation es hier geht,
sollte man sich zunächst den Unterschied zwischen einem
Algorithmus und einem Computerprogramm klarmachen. Ein
Algorithmus ist eine "mechanisch" ausführbare
Handlungsvorschrift zur Lösung eines Problems oder einer
Klasse von Problemen. Ein bekanntes Beispiel ist der
Euklidische Algorithmus zur Berechnung des ggT zweier
natürlicher Zahlen. Dieser Algorithmus besteht i.w. aus
einer Schleife, in der eine Division mit Rest solange
durchgeführt wird, bis eine Abbruchbedingung erfüllt ist.
Ein weiteres Beispiel ist das
Sieb
des Eratosthenes zur Bestimmung aller Primzahlen.
In
der programmiersprachlichen Notation erkennt man
zwei ineinander geschachtelte Schleifen. Sogar drei
ineinander geschachtelten Schleifen weist der
Standardalgorithmus zur
Matrizenmultiplikation auf. Es gibt unzählige
Algorithmen in der Mathematik, viele davon wurden schon
vor 2000 Jahren verstanden und manuell ausgeführt.
"Prozessor" ist hier der Mensch, der sowohl die
Ablaufsteuerung als auch die benutzten Rechenoperationen
versteht bzw. ausführen kann. Beschrieben wurden
mathematische Algorithmen früher nur in natürlicher
Sprache. I.f. wird es wichtig sein, daß bis auf eine
eventuelle progammiersprachliche Notation auch komplexe
Algorithmen schon 1800 altbekannt waren.
Ein Computerprogramm ist ein Algorithmus, der in einer
maschinell ausführbaren Sprache geschrieben ist. Es setzt
also eine ausführende "Maschine" (bzw. einen "Automaten")
voraus, die sowohl die Ablaufsteuerung als auch die
elementaren Rechenoperationen (beides als
Befehlssatz bezeichnet) technisch implementiert.
Der Befehlssatz bzw. die damit entstehende
Programmiersprache sollte flexibel genug sein, um
möglichst viele Algorithmen implementieren zu können.
In den Algorithmen benutzte Befehle wie die Addition oder
Division zweier ganzer Zahlen werden ihrerseits im
Rechnerkern in komplexen Abläufen realisiert. Die
Programme, die diese Abläufe steuern, nennt man
Mikroprogramme. Die Mikroprogramme verarbeiten einzelne
Bits einer Zahlendarstellung und behandeln elementare,
hardware-nahe Aspekte. Mikroprogramme und
"user-level"-Programme verarbeiten also verschieden große
Datenobjekte, sind aber hinsichtlich der Ablaufsteuerungen
und der dabei benutzten Algorithmen vergleichbar komplex.
Die Analytical Engine
Die von Charles Babbage in mehreren Versionen konzipierte
Analytical Engine ist die historisch erste
programmierbare Rechenmaschine - sie funktionierte rein
mechanisch. Vom Funktionsumfang her würde man sie heute
eher als programmierbaren Taschenrechner bezeichnen, sie
weist aber viele zentrale Merkmale von modernen
programmierbaren Computern auf. Charles Babbage gilt daher
der Erfinder des Computers. Daß die Analytical Engine
technisch zu seiner Zeit nicht implementierbar war, weil
die nötige Präzision der Bauteile nicht erreichbar war,
ist dabei unwesentlich.
Die Analytical Engine war nur "Hardware", es gab kein
Betriebssystem und keine Compiler, die man heute für
selbstverständlich hält. Sie konnte also nur direkt in
Maschinensprache (Assembler) über Lochkarten programmiert
werden. Erst rund 100 Jahre später entwickelte
Grace
Hopper das Konzept höherer Programmiersprachen (statt
Assembler) und den ersten Compiler, eine fundamentale und
wegweisende Leistung. Konzepte und Notationen höherer
Programmiersprachen wie Schleifen oder Unterprogramme
waren in der Ära von Babbage unbekannt, die zugehörigen
Compiler waren undenkbar, ebenso fehlte die Erfahrung, wie
man komplexe Ablaufstrukturen auf Maschinensprach-Ebene
implementiert.
Babbage hat kaum Publikationen über die Analytical Engine
verfaßt. Nach
Bromley
(1982) hat Babbage rund 300 großformatige
technische Zeichnungen in seinem privaten Nachlaß
hinterlassen, die hunderte Diagramme enthielten, ferner
6000-7000 Seiten in Notizbüchern. Diese Aufzeichnungen
sind sehr detailliert und sozusagen auf der Ebene der
Mikroprogrammierung, es fehlt leider eine lesbare
Darstellung des "user-level"-Befehlssatzes, die von den
technischen Details abstrahiert.
Bromley (1990) merkt dazu an:
The conclusion seems inescapable that
Babbage did not have a firm command of the issues raised
by the user-level programming of the Analytical Engine. It
would be quite wrong to infer that Babbage did not
understand programming per se. The microprogramming of the
barrels for multiplication and division show command of
the basic branching and looping ideas and his skills in
the microprogramming of addition and subtraction show
complete virtuosity. It was from this base that Babbage
explored the ideas of user-level programming.
(Offensichtlich hatte Babbage keine klare
Vorstellung von einer User-Level-Programmierung der
Analytical Engine und den dabei auftretenden Problemen.
Daraus kann man aber definitiv nicht schließen, daß
Babbage die Programmierung als solche nicht verstand. Die
Mikroprogrammierung der Schaltwerke für die Multiplikation
und Division zeigt, daß er die grundlegenden Konzepte von
Verzweigungen und Schleifen beherrschte, und seine
Mikroprogrammierung der Addition und Subtraktion zeugen
von einer wirklich virtuosen Beherrschung dieser Konzepte.
Von dieser Mikroprogrammierung aus erforschte Babbage die
Möglichkeiten der User-Level-Programmierung.)
Babbages Reifegrad beim user-level programming kann man vor
allem aus den Beispielprogrammen, die sich in den privaten
Notizen finden, ableiten.
Bromley (1982) macht hierzu auf S. 215 eine
wichtige Beobachtung:
"Some two dozen programs for the Analytical
Engine exist dated between 1837 and 1840. Strictly
speaking, they are not programs in the modern sense, but
are walkthroughs of particular execution instances of
programs. In consequence, the mechanism by which the
sequencing of operations is obtained is
obscure."
(Es gibt etwa zwei Dutzend Programme für die
Analytische Engine, die zwischen 1837 und 1840 datiert
sind. Streng genommen sind dies keine Programme im modernen
Sinne, sondern schrittweise Beschreibungen von
einzelnen Ausführungen der Programme. Infolgedessen bleibt
der Mechanismus, wie der Ablauf der einzelnen
Rechenschritte gesteuert wird, unklar.)
Sowohl Babbage als auch Ada Lovelace haben in Fällen, wo
ein vorhandener mathematischer Algorithmus in ein Programm
umzusetzen war und wo dieser mathematische Algorithmus
geschachtelte Schleifen erforderte, diese
Steuerstruktur nicht 1:1 in geschachtelte
Programmschleifen umgesetzt - das kann man nur mit den
Konzepten und Notationsformen höherer Programmiersprachen
-, sondern die äußere Schleife "entfaltet". Dabei werden
die aufeinanderfolgenden Durchläufe der inneren Schleife
hintereinander als Kommandos aufgeschrieben. Dies meint
Bromley, wenn er von "walkthroughs of particular execution
instances of programs" spricht. Ein Beispiel hierzu von
Babbage ist ein "Programm" aus dem Jahr 1838, es berechnet
die Koeffizienten des Produkts zweier Polynome (Faksimile
s.
Wolfram
(2015)). Ein weiteres Beispiel ist das legendäre
Bernoullizahlen-Programm von Ada Lovelace.
Diese entfalteten Schleifen enden aber nach wenigen
Iterationen der äußeren Schleife und sind
keine korrekte,
allgemeine Implementierung des konzeptuell
zugrundeliegenden mathematischen Algorithmus (den man von
Hand ausführen könnte). D.h. die eigentliche
Herausforderung, komplexe user-level-Ablaufstrukturen, die
durch die mathematischen Algorithmen klar definiert waren,
programmtechnisch umzusetzen, haben weder Babbage noch Ada
Lovelace gemeistert. Neben fehlendem methodischen Wissen
kann dabei auch eine Rolle gespielt haben, daß die
Analytical Engine offenbar keine geschachtelten Schleifen
ausführen konnte.
Die ersten Versionen der Analytical Engine hatten einen
ungünstigen Befehlssatz; Babbage verbesserte aufgrund der
umständlichen Programmierung den Befehlssatz punktuell.
Diese historische Entwicklung im Zeitraum 1837 - 1840 und
die 27 in dieser Zeit von Babbage geschriebenen Programme
werden in
Rojas
(2016c) genauer beschrieben.
Die wissenschaftliche Leistung von Babbage
Von weitem betrachtet ist die Analytical Engine so ähnlich
wie der Jacquardwebstuhl, also nur eine Maschine, die
durch Lochkarten gesteuert wird und statt mit Nadeln und
Fäden eben mit Zahlen umgeht. Dies übersieht den
entscheidenden Punkt: Addierer, Multiplizierer und andere
Rechenwerke sind eine oder zwei Größenordnungen komplexer
als die Mechanik eines Jacquardwebstuhls oder andere
damals bekannte Maschinen. Vermutlich war die Analytical
Engine die mit Abstand komplexeste im Prinzip
funktionsfähige Maschine (geplant waren 55.000 Teile), die
seinerzeit entworfen wurde.
Daß Babbage als einzelne Person in wenigen Jahren neben
anderen Aktivitäten ein derart komplexes System entwickeln
konnte, hängt mit einer entscheidenden wissenschaftlichen
Leistung zusammen: er löste sich von den damals üblichen
mechanischen Zeichnungen bzw. Funktionsdarstellungen und
benutzte Ablaufpläne und andere Diagramme, die er
"Mechanical Notation" nannte und die die logische Funktion
der Maschine beschrieben und von den geometrischen bzw.
mechanischen Details abstrahierten. Anders hätte er z.B.
zustandsabhängiges Verhalten nicht verstehen bzw. planen
können. D.h.
er schuf neue, abstraktere
Denkkategorien, in denen er die Probleme bei der
Konstruktion eines programmgesteuerten Rechenautomaten
durchdachte und Lösungen ausarbeitete (s. auch Abschnitt
Babbage's Secret Sauce in
Wolfram (2015)). Diese
Trennung mehrerer Abstraktionsebenen ist heute bei der
Entwicklung von digitalen Systemen völlig
selbstverständlich, damals war es ein Quantensprung.
Eine weitere entscheidende Innovation von Babbage bestand in
der Entwicklung einer einfachen Programmiersprache. Die
Lochkarten, auf denen jeweils ein Kommando codiert war,
entsprechen zwar nicht dem üblichen Textbegriff, stellen
aber trotzdem Texte dar, und zwar maschinell verarbeitbare.
Die Wichtigkeit dieser "Kommandosprache" wird leicht
unterschätzt: Der Rechnerkern mußte einen Interpreter für
Kommandos enthalten, der die auszuführende Operation und die
Operanden eines Kommandos identifizierte und dann die
Operationausführung startete. Babbage mußte diese Sprache
leistungsfähig genug ausgestalten, um die mathematischen
Algorithmen, die er maschinell ausführen wollte, auch
implementieren zu können. Er muß sich also auch intensiv mit
dem Umfang seiner Programmiersprache beschäftigt haben, ein
völlig neue Fragestellung in seiner Zeit.
Die bahnbrechende wissenschaftliche Leistung von Babbage
lag also nicht nur darin, eine einzelne konkrete
datenverarbeitende Maschine entworfen zu haben, sondern
auch Methoden, Notationsformen und Architekturen, wie man
solche Maschinen überhaupt entwerfen kann. Daß man diese
Maschinen dann auch benutzt, um auf Benutzerebene
Applikationen zu programmieren, versteht sich von selbst,
ist aber im Vergleich zur Konstruktion der Maschine fast
Nebensache.
Wie sein Biograph
Bruce Collier in
CHAPTER FIVE
- Conclusion gut darstellt, war Babbage seiner Zeit
mit diesen Innovationen ein Jahrhundert voraus.
Obwohl Babbage als hochdekorierter Mathematik-Professor
wußte, wie man publiziert, hat er fast nichts über die
Versionen der Analytical Engine und die Mechanical
Notation publiziert, eventuell weil er sie nicht für reif
genug hielt. Entwürfe entsprechender Papiere wurden erst
später in seinem Nachlaß gefunden.
Babbages Vortrag in Turin, 1840
1840 hielt Babbage einen Vortrag über die Analytical
Engine in Turin. Federico Luigi Menabrea, ein
italienischer Ingenieur, verfaßte mit Babbages
Einverständnis auf Basis dieses Vortrags eine
allgemeinverständliche Erklärung der Analytical Engine auf
Französisch (
Menabrea
(1842)). In diesem Text findet man drei
Beispielprogramme, die die Funktion der Maschine
erläutern.
Ada Lovelace hat 1843 Menabreas Text ins Englische
übersetzt (
Menabrea
(1843)), ist also nicht Autor, sondern nur
Übersetzer dieses Textes und der darin enthaltenen
Beispielprogramme. Ferner hat sie einen längeren Anhang
("Notes by the translator") selber geschrieben, der in
mehreren Anmerkungen den Menabrea-Text vertieft erläutert.
Die Anmerkungen sind mit "Note A" bis "Note G"
überschrieben und werden üblicherweise als "
the
Notes" bezeichnet. Dieser Anhang wiederholt und
ergänzt Programmfragmente aus dem Menabrea-Text und
enthält genau ein neues Programm, das die Bernoullizahlen
berechnen soll. Dieses
Bernoullizahlen-Programm ist
das einzige Programm, das Lovelace (angeblich) alleine
geschrieben hat, es wird üblicherweise als Nachweis
genannt, Lovelace sei der historisch erste Programmierer.
Ada Lovelace
Werdegang und Ausbildung
Ada Lovelace wurde am 10. Dezember 1815 geboren als
Tochter von Anne Isabella Noel-Byron, 11. Baroness
Wentworth, und
George
Gordon Byron (genannt Lord Byron) geboren. Sie war
einzige eheliche Tochter von Lord Byron. Die Eltern
trennten sich kurz nach Adas Geburt, was einziges
gesellschaftliches Aufsehen erregte. Ada war während ihrer
Kindheit häufig und teilweise sehr lange krank. Sie
heiratete 1835
William King, der 1838 Earl of Lovelace wurde, sie
demzufolge Countess of Lovelace. Zwischen 1836 und 1839
gebar sie 3 Kinder. Ada Lovelace verkehrte regelmäßig am
Hof und war selbst für eine Adelige aufgrund Ihres
Aussehens und guten Auftretens eine überdurchschnittlich
bekannte Person.
Als Mitglied der Oberklasse hatte Ada Kontakt zu vielen
Künstlern und Wissenschaftlern, die immer wieder als ihre
Lehrer genannt werden. Sie hat offenbar nur
Hauslehrer gehabt, nie eine öffentliche Schule oder eine
Universität besucht und daher auch keine formalen
Prüfungen absolviert. Unklar bleibt, wie intensiv der
private Unterricht war, teilweise scheint es sich eher um
Briefwechsel gehandelt zu haben. Auf Wunsch Ihrer Mutter
bekam sie ungewöhnlich viel Mathematikunterricht. Von
Augustus De Morgan, einem ihrer Lehrer, wurde sie als
sehr begabt eingestuft. Ada entwickelte vielfältige
Interessen, oft erwähnt werden
Phrenologie
und
Mesmerismus, aus heutiger Sicht okkulte
Pseudowissenschaften. Wenn man diese breiten Interessen
und ihre gesellschaftlichen Verpflichtungen (die
Kindererziehung wurde ggf. auf Personal übertragen)
zusammenzieht, bleibt nicht viel Zeit für ein intensives
mathematisches Training.
Mathematische Qualifikation von Ada Lovelace
Im Rahmen der Glorifizierung von Ada Lovelace als
feministische Ikone wird sie regelmäßig als Mathematikerin
bezeichnet, wahlweise sogar als hochqualifizierte oder
führende. Für diese These sind aber keine Belege bekannt,
z.B. Zeugnisse oder andere Nachweise besonderer
mathematischer Leistungen, ebenfalls keine Publikationen
mit mathematischem Inhalt. Unklar ist, ob die Berichte
über ihre Begabung durch ihre Hauslehrer
Gefälligkeitsurteile waren.
Laut
Stein (1985), die
den umfangreichen Briefverkehr von Ada Lovelace mit ihren
Lehrern untersucht hat, war aber der jahrelange (Fern-)
Unterricht wenig erfolgreich:
At twenty-eight, [...] and after ten years
of intermittent but sometimes intensive study, Ada was
still a promising "young beginner".
(Mit achtundzwanzig Jahren [...] und nach zehn
Jahren wiederholt unterbrochenem, aber manchmal intensivem
Studium war Ada immer noch ein vielversprechender "junger
Anfänger".)
Stein wies anhand der Korrespondenz von
Ada Lovelace nach, daß sie grundlegende mathematische
Techniken wie Variablensubstitutionen nicht beherrschte
und daß Ada Lovelace auch die Analytischen Maschine nur
unvollständig und stellenweise falsch verstanden hat.
Eventuell waren dies aber nur Flüchtigkeitsfehler. Sie
konnte offenbar die mathematischen Formeln, die das
Bernoullizahlen-Programm berechnen sollte, nicht selber
bestimmen, denn sie bat Babbage darum, ihr diese Formeln
zu liefern. Es bestehen daher erhebliche Zweifel, ob die
tatsächlichen mathematischen Qualifikation von Ada
Lovelace die Bezeichnung "Mathematiker" rechtfertigen und
ob sie fähig war, alleine anspruchsvolle mathematische
Algorithmen zu entwerfen.
Ada Lovelace und Babbage
Ada Lovelace lernte 1833 Babbage kennen. Babbage war seit
1828
Lucasian Professor of Mathematics in Cambridge, hatte
damit eine der prestigeträchtigsten Professuren inne und
war ein erfahrener, sehr vielseitiger Forscher,
Mathematiker und Erfinder.
Andererseits stand Babbage gesellschaftlich eine ganze
Stufe unter der adeligen Ada Lovelace. Obwohl er ein
erfolgreicher Professor und Erfinder war, fehlte ihm stets
Geld, um die sehr teuren Prototypen seiner Erfindungen zu
realisieren. Er war daher immer darauf aus, prominente
Unterstützer für seine Projekte zu haben. Ada Lovelace war
wegen ihrer Prominenz und Attraktivität für Babbage ein
idealer Promotor seiner Projekte. Intellektuell, insb. als
Mathematiker und Konstrukteur, war Babbage Ada Lovelace
haushoch überlegen, es ist nicht davon auszugehen, daß er
wissenschaftlich auf ihre Mithilfe angewiesen war. Die
Kooperation zwischen Ada und Babbage muß deutlich in
diesem Kontext gesehen werden.
Die Kooperation von Ada Lovelace und Babbage
Ada Lovelace scheint eine wissenschaftliche Karriere
angestrebt zu haben. Ein damals typischer Einstieg war die
Übersetzung von wichtigen etablierten Werken. Ada Lovelace
bot daher Babbage an,
Menabrea (1842) ins Englische zu übersetzen. Dies
führte zu einer über viele Monate dauernden intensiven
Kooperation der beiden. Ada Lovelace sah sich dabei
eindeutig in der Rolle des Berichterstatters und Erklärers
der Konzepte der Analytical Engine, dies wird in
Wolfram (2015)
mit vielen Zitierungen der Korrespondenz belegt.
Unterstellte wissenschaftliche Beiträge
von Ada Lovelace
Alleinautorenschaft der Notes
Den Untertitel von
Menabrea
(1843) "With notes by the Translator Ada ..." kann
man als Anspruch auf alleinige Urheberschaft (und nicht
nur vollwertige Mitautorenschaft, die niemand infrage
stellt) der Notes verstehen, dies wird aus interessierten
Kreisen auch regelmäßig so verstanden.
Sofern man die heute gültigen, strengen Zitiervorschriften
zugrundelegt, hat Ada Lovelace mit diesem Anspruch
eindeutig die wesentlichen Beiträge von Babbage zu den
Notes verschwiegen. Da sich die Notes aber intensiv auf
den Menabrea-Text beziehen und auf diesem aufbauen, ist
ein solcher Anspruch auf alleinige Urheberschaft der Notes
sowieso seltsam und unsinnig. Er war auch
höchstwahrscheinlich nicht von ihr intendiert gewesen und
auch von Babbage nicht so verstanden worden (sofern man
Babbage nicht unterstellt, daß er seine Mitwirkung an den
Notes bewußt verheimlicht hat, weil er durch die
offizielle Alleinautorenschaft von Ada Lovelace ihre
werbliche Unterstützung seiner Projekte kompensieren
wollte).
Es bestehen daher gravierende Zweifel, ob Ada Lovelace die
"Notes" und speziell das Bernoullizahlen-Programm
alleine verfaßt hat. Der Historiker
Bromley (1990) verneint die
inhaltliche Autorenschaft eindeutig:
Ada Lovelace has sometimes been acclaimed
as the "world's first programmer" on the strength of her
authorship of the notes to the Menabrea paper. This
romantically appealing image is without foundation. All
but one of the programs cited in her notes had been
prepared by Babbage from three to seven years earlier. The
exception was prepared by Babbage for her, although she
did detect a "bug" in it. Not only is there no evidence
that Ada Lovelace ever prepared a program for the
Analytical Engine but her correspondence with Babbage
shows that she did not have the knowledge to do so.
(Ada Lovelace wurde manchmal als "der weltweit
erste Programmierer" aufgrund ihrer Autorenschaft der
Notizen an der Menabrea-Papier gefeiert. Dieses romantisch
ansprechende Bild ist unbegründet. Abgesehen von einer
Ausnahme waren alle in ihren Notizen zitierten Programme
von Babbage zwischen drei und sieben Jahren vorher
entwickelt worden. Die Ausnahme wurde ebenfalls von
Babbage für sie entwickelt, allerdings entdeckte sie einen
Fehler darin [und war insofern Ko-Autor]. Es fehlt nicht
nur jeglicher plausibler Nachweis, daß Ada Lovelace jemals
eigenständig ein Programm für die Analytische Engine
entwickelt hat, sondern ihre Korrespondenz mit Babbage
zeigt im Gegenteil, daß sie dazu nicht das Wissen
hatte.)
Die Einschätzung von Bromley, daß Ada Lovelace fachlich
nicht in der Lage war, selber komplexe Programme zu
schreiben, und daß sie beim Schreiben der Notes eher die
Rolle eines Redakteurs hatte, der von Babbage instruiert
wurde, wird auch von
Rojas
(2016a) unterstützt. Er weist
hier
auf erhebliche Fehler in der Ablaufsteuerung des
Bernoullizahlen-Programms hin: Eine Reihe wesentlicher
Sprunganweisungen fehlt, das Programm terminiert
offensichtlich nicht, und
Ada geht im Text davon aus, dass das
Programm an diesen Stellen einfach den jeweils richtigen
Weg einschlägt.
Babbages Biograph Bruce Collier gibt in seiner
Dissertation (
Collier
(1970)), die auf umfangreicher Quellenforschung
basiert, den Ablauf der Entwicklung der Analytical Engine
in vielen Zitaten wieder und bemerkt zu Ada Lovelace:
In the summer of 1843, Menabrea's paper
was translated by Ada ...; she composed, in
extensive consultation with Babbage, a series of long
notes to the paper ... . The whole
was published in Richard Taylor's Scientific Memoirs for
1843, [92] under the title "Sketch of the Analytical Engine
invented by Charles Babbage, Esq;" this was the only
extensive paper on the Analytical Engine published in
English during Babbage's life, or, indeed, up to the
present. Although it is clear that Lady Lovelace was a
woman of considerable interest and talent, and it is clear
that she understood to a very considerable degree
Babbage's ideas about the general character and
significance of the Analytical Engine, and expressed them
well in her notes to Menabrea's paper, it is equally clear
that the ideas were indeed Babbage's and not hers; indeed,
she never made any claim to the contrary. She made a
considerable contribution to publicizing the Analytical
Engine, but there is no evidence that she advanced the
design or theory of it in any way. And she did not even
express an interest in learning about the machine until
January 5, 1841, [93] even as late as June 30, 1843, she
apparently knew quite little about the mechanical details
of the Engine. [94]
(Im Sommer 1843 wurde Menabreas Papier von Ada ...
übersetzt. Sie erstellte, in extensiven Beratungen mit
Babbage, eine Reihe von ausführlichen Notizen für der
Papier
.... Das Ganze wurde in Richard Taylors Wissenschaftlichen
Memoiren für 1843 [92] veröffentlicht, und zwar unter dem
Titel "Übersichtsdarstellung der analytischen Engine,
erfunden von Charles Babbage, Esq"; dies war das einzige
umfangreiche Papier über die Analytische Engine, das zu
Lebzeiten von Babbage in englischer Sprache veröffentlicht
wurde, bzw. genaugenommen sogar bis heute.
Obwohl es klar ist, dass Lady Lovelace eine Frau von
großem Interesse und Talent war, und es klar ist, daß sie
Babbages Ideen über die allgemeinen Merkmale und die
Bedeutung der analytischen Engine sehr gut verstanden hat
und sie in ihren Notizen zu Menabreas Papier sehr gut
ausgedrückt hat, es ist ebenso klar, daß diese Ideen
tatsächlich vom Babbage stammen und nicht von ihr; in der
Tat hat sie niemals etwas Gegenteiliges behauptet. Sie
hat einen erheblichen Beitrag zur Veröffentlichung der
Analytical Engine geleistet, aber es gibt keine
Hinweise dafür, daß sie das Design oder die Theorie der
Analytical Engine in irgendeiner Weise vorangebracht
hätte. Und sie zeigte auch bis zum 5. Januar 1841 kein
Interesse, Details der Maschine kennenzulernen [93], und
sogar noch später am 30. Juni 1843 wußte sie ziemlich
wenig über die mechanischen Details der Maschine [94].)
Erstautorenschaft eines Programms
Unstrittig ist, daß Babbage schon Jahre vor Ada Lovelace
Programme geschrieben, aber bis auf die Beispiele in
Menabrea (1842)
nicht veröffentlicht hat.
Bromley (1982) hierzu auf S. 197:
"... there are several dozen sample
programs prepared between 1837 and 1840 (all,
incidentally, substantially predating the preparation of
Ada Lovelace's notes, which incorporate several of
them)."
(... es gibt mehrere Dutzend
Beispielprogramme, die zwischen 1837 und 1840 entwickelt
wurden (die übrigens alle wesentlich früher als Ada
Lovelace's Notes entstanden))
Selbst wenn man sich nur auf den Menabrea-Text bezieht,
sollte auffallen, daß die im Vortrag von Babbage benutzten
Beispielprogramme offensichtlich vor dem
Bernoullizahlen-Programm entstanden sind und publiziert
wurden.
Um den Innovationsanspruch von Ada Lovelace zu retten,
wird regelmäßig argumentiert, diese früheren Programme
seien "zu einfach" und Ada Lovelace sei der erste, der ein
"komplexes" Programm geschrieben (wir reden hier von ca.
25 Zeilen) und publiziert habe. Ein längeres, "komplexes"
Programm ist allenfalls hinsichtlich der Ablaufsteuerung
qualitativ anspruchsvoller als ein sehr kurzes Programm.
Die Länge des Bernoullizahlen-Programms ist aber in erster
Linie durch die Entfaltung der äußeren Schleife
verursacht, die einzelnen Schleifendurchläufe sind
wiederum relativ kurz.
Rojas (2016a) weist
ferner in der Ablaufsteuerung des Bernoullizahlen-Programm
gravierende Lücken nach. Dies sind keine
Flüchtigkeitsfehler, es kann als ausgeschlossen gelten,
daß Ada Lovelace imstande war, diese Lücken zu füllen,
oder daß sie die hier benötigten Prinzipien der
Ablaufsteuerung verstanden hätte. (Babbage übrigens auch
nicht, denn andernfalls hätte er dies vermutlich
verbessert.)
Erfindung grundlegender Konzepte der
Computerprogrammierung bzw. von
Programmiersprachen
Vielfach wird behauptet, Ada Lovelace habe "grundlegende
Konzepte der Programmierung" erfunden, wobei offen bleibt,
welche Konzepte hier gemeint sind.
Oben wurde schon im Abschnitt
Algorithmen vs. Computerprogramme
dargestellt, daß sogar ziemlich fortgeschrittene
Konzepte der verbalen Formulierung von Algorithmen aus der
Mathematik altbekannt waren, z.B. das Konzept einer
Schleife.
Im Abschnitt über die
wissenschaftliche Leistung von
Babbage wurde deutlich, daß Babbage durch den
Befehlssatz eine komplette Programmiersprache definiert und
einen Interpreter dafür implementiert hatte. Damit waren
auch die grundlegenden Konzepte der Programmierung dieses
Rechners abschließend definiert. Seine eigenen Programme und
die von Ada Lovelace mußten mit diesen Konzepten auskommen.
Ada Lovelace konnte keine weiteren "Konzepte der
Programmierung" erfinden, um sie in ihren Programmen zu
nutzen: dies hätte wesentliche Erweiterungen des
Rechnerkerns erfordert. Sie hat im
Bernoullizahlen-Programm an einer Stelle, wo sie ein
mächtigeres Schleifenkonzept hätte einsetzen müssen, nur
verbal beschrieben, daß Anweisungen wiederholt werden
müssen. An anderer Stelle benutzte sie eine mathematische
Mengenklammer, die außerhalb der Syntax der Lochkarten
liegt. Letztlich ist sie damit auf die
altbekannte "mathematische Sprache der
Algorithmenformulierung" zurückgefallen, sie hat damit
kein Programmiersprachen-Konzept entwickelt.
Beiträge zur Künstlichen
Intelligenz
Note G enthält eine oft zitierte Bemerkung, die Analytical
Engine könne nichts erfinden oder wie ein Mensch kreativ
sein, sondern müsse programmiert werden:
The Analytical Engine has no pretensions
whatever to originate anything. It can do whatever we know
how to order it to perform. It can follow analysis; but it
has no power of anticipating any analytical relations or
truths.
(Die Analytische Maschine erhebt keinerlei
Anspruch, irgendetwas kreativ zu erschaffen. Sie kann
alles tun, von dem wir wissen, wie sie anweisen, es zu
tun. Sie kann auf einer Analyse aufbauen; sie hat aber
keine Fähigkeit, vorab irgendwelche analytischen
Beziehungen oder Wahrheiten zu erkennen.)
Diese Bemerkung wird zum Teil so interpretiert, sie habe
(besser als Babbage) die Bedeutung und die prinzipiellen
Beschränkungen einer algorithmischen Maschine erkannt.
Allerdings hatte Babbage schon 1841 in einem Papier "Of
the Analytical Engine" (s.
Collier (1970), Kap. 3) genau diese Möglichkeiten
und Limitationen eines programmierbaren Rechenautomaten
sehr genau ausgedrückt:
... to state what it cannot accomplish. It
cannot invent. .... It cannot in fact do anything more
than perform with absolute precision and in much shorter
time those series of operations which the hand of man
might itself much more imperfectly accomplish.
(... festzustellen, was sie nicht erreichen
kann. Sie kann nicht erfinden. .... Sie kann in der Tat
überhaupt nichts, was darüber hinaus geht, mit absoluter
Präzision und in viel kürzerer Zeit Serien von
Rechenoperationen durchzuführen, die von Menschenhand nur
sehr viel unperfekter erledigt werden könnten.)
Ferner findet sich sogar im übersetzten Menabrea-Papier
ein entsprechender Satz:
... for the machine is not a thinking
being, but simply an automaton which acts according to the
laws imposed upon it.
(Denn diese Maschine ist kein denkendes
Lebewesen, sondern nur ein Automat, der nach den Gesetzen
handelt, die ihm auferlegt werden.)
mit dem Menabrea (also letztlich Babbage) dem
staunenden Publikum klar machte, daß diese
neue Maschine zwar rechnen, aber keinen denkenden
Menschen ersetzen kann.
Aufgrund der engen Kooperation von Babbage und Ada
Lovelace ist davon auszugehen, daß ihre Bemerkung
tatsächlich nur eine Reproduktion des 1841er Papiers von
Babbage und der analogen Aussage im Menabrea-Papier und
damit indirekt von Babbages Vortrag in Turin ist.
Unabhängig davon, wer nun die prinzipiellen Beschränkungen
eines Computers zuerst formuliert hat:
Sofern man die Äußerungen nicht auf die geringe
Rechenleistung der Analytical Engine bezieht, sondern als
prinzipelle Bemerkung zum intellektuellen Potential von
Computern, haben beide die Fähigkeiten heutiger KI-Systeme
durchaus unterschätzt. Sie lagen also mit ihrer nicht genau
qualifizierten Einschätzung mehr oder weniger
falsch, weil
sie den Begriff "Intelligenz" nicht genug durchdrungen
hatten und sich die qualitativen Auswirkungen einer
milliardenfach höheren Rechnerleistung nicht vorstellen
konnten.
Ferner ist eine bloße Einschätzung keine echte
wissenschaftliche Leistung: Wenn man sich nicht vorstellen
kann, wie ein Problem zu lösen ist, dann beweist das
nicht, daß keine Lösung existiert.
Ada Lovelace als Visionär
In diversen Quellen wird Ada Lovelace auch zugesprochen,
als erste das weitreichende Potential der Analytical
Engine und damit moderner Computer erkannt zu haben.
Belegt wird dies durch Andeutungen bzw. Visionen in den
Notes, die Maschine könne auch symbolische Berechnungen
durchführen, Bilder verarbeiten oder Musik komponieren. Note A
enthält z.B. den Satz:
Supposing, for instance, that the
fundamental relations of pitched sounds in the science of
harmony and of musical composition were susceptible of
such expression and adaptations, the engine might compose
elaborate and scientific pieces of music of any degree of
complexity or extent.
(Wenn wir z.B. annehmen, die grundlegenden
Beziehungen der von Tonhöhen in der Harmonielehre und der
musikalischen Komposition wären einer solchen
[machinellen] Darstellung und Adaptierung zugänglich, dann
könnte die Maschine aufwändige und wissenschaftliche
Musikstücke von beliebiger Komplexität oder und beliebigem
Umfang komponieren.)
Diese These steht, wenn man Musikkomposition als kreativen
Akt versteht, in klarem Gegensatz zur vorherigen These,
ein Recher könne nicht kreativ sein. Um den
offensichtlichen Widerspruch zwischen den beiden Aussagen
aufzulösen, kann man vermuten, daß Ada Lovelace nicht
verstand, was sie da schrieb, oder daß die These von der
Musikkomposition mit sehr einschränkenden Annahmen zu
verstehen ist, oder daß sie jede Gelegenheit blindlings
nutzte, der Analytical Engine (gemäß ihrer hochtrabenden
Selbstbezeichnung "analytisch") ein nach oben offenes
Potential zu bescheinigen. Für letzteres spricht, daß Ada
Lovelace sich als "Verkäufer" und Promotor der Erfindungen
von Babbage verstanden hat.
Helmut Schmidt fand: "Wer Visionen hat, soll zum Arzt
gehen." Wenn Visionen und Andeutungen mehr sein sollen als
wilde Spekulationen, die jeder Klatschreporter anstellen
kann, dann müßten zumindest Lösungansätze mitgeliefert
werden, wie die Vision realisiert werden kann. Dies ist
hier nicht der Fall. Wegen der weitgehenden Unkenntnis der
internen Funktionsweise der Analytical Engine dürfte Ada
Lovelace unklar gewesen sein, daß symbolische Berechnungen
weit jenseits der Möglichkeiten einer mechanischen
Rechenmaschine liegen. Wegen der fehlenden mathematischen
Bildung dürfte sie ferner die Schwierigkeit symbolischer
Berechnungen radikal unterschätzt haben. Im Endeffekt kann
man ihre "Visionen"
nicht als qualifierte Prognosen des
langfristigen Potentials programmgesteuerter Rechner
ansehen.
Gesamteinschätzung der Leistungen von Ada Lovelace
Eine halbwegs unvoreingenommene Bewertung von Ada Lovelace
und ihren wissenschaftlichen Leistungen würde sie als
guten Wissenschaftsreporter oder als Mitglied einer
Forschungsgruppe einstufen. Diverse Biographen von Babbage
oder von Ada Lovelace, die die Originalquellen intensiv
studiert haben, finden keine Hinweise auf eine
signifikante eigenständige wissenschaftliche Leistung
ihrerseits. Die These, Ada Lovelace sei die alleinige oder
auch nur dominierende Erfinderin "des Programmierens" oder
gar Miterfinderin der Analytical Engine, sind unhaltbar
und stammen durchweg von Personen, die keine eigene
Quellenforschung betrieben haben.
Andererseits wird der Satz von Collier "She made a
considerable contribution to publicizing the Analytical
Engine." in seiner Bedeutung leicht unterschätzt: Ohne die
Initiative von Ada Lovelace gäbe es die Notes nicht. Der
Text ist zwar nur 25 Seiten lang, sie hat aber rund ein
halbes Arbeitsjahr in das Schreiben investiert und Babbage
durch eine Vielzahl von Rückfragen genötigt, genauere
Angaben zu machen und seine Gedanken zu schärfen.
Damit
ist sie zwar nicht Alleinautor, aber ein vollwertiger
Mitautor dieser zentralen Publikation. Ob die orginale
französische Version des Menabrea-Textes auch nur entfernt
die gleiche Rezeption erhalten hätte wie die englische
Version mit den Notes, ist zu bezweifeln. Ada Lovelace hat
sich also erhebliche wissenschaftsjournalistische
Verdienste erworben, die man nicht kleinreden sollte, nur
weil ihr 100 Jahre später viel umfangreichere, nicht
zutreffende Leistungen angedichtet wurden.
Entstehung des Ada Lovelace-Hypes
Ada Lovelace war zwar gesellschaftlich in London eine
bekannte Person, aber keine wissenschaftliche Persönlichkeit
und auch keine zeitgeschichtlich relevante Persönlichkeit.
Sie wandte sich ab ca. 1844 anderen Interessen zu und starb
nur wenige Jahre später, während Babbage noch jahrzehntelang
mit Unterbrechungen an der Weiterentwicklung der Analytical
Engine arbeitete. Ada Lovelace geriet daher zu Recht in
Vergessenheit. Erst in den 1950er Jahren wurde man wieder
vereinzelt auf sie bzw. die Notes aufmerksam.
Alan Turing erwähnte 1950 in seinem grundlegenden Text
über künstliche Intelligenz
Computing Machinery and Intelligence - in dessen 1.
Abschnitt er übrigens das
Imitation
Game vorstellt - u.a. die Notes. Als einen von 9
Einwänden, daß Maschinen nicht intelligent sein können,
zitiert er die schon oben erwähnte Passage "
The
Analytical Engine has no pretensions whatever to originate
anything ..." und bezeichnet sie als "Lady Lovelace's
Objection". Mangels Quellenkenntnis konnte er nicht
wissen, daß diese Einschätzung tatsächlich von Babbage
stammt. Turing
widerspricht der Einschätzung von Ada
Lovelace (und indirekt Babbage), er hält sie für falsch.
Dies hindert feministische Aktivisten keineswegs daran,
das Turing-Zitat als Evidenz dafür zu zitieren, wie
weitsichtig und bedeutend die Ansichten von Ada Lovelace
waren.
Das entscheidende Ereignis, das Ada Lovelace weltweit
bekannt machte, war die Benennung der neuen
Standard-Programmiersprache des US Departments of Defense
(DoD) nach ihr. Das DoD hatte 1975 mit der Planung der neuen
Sprache begonnen. 1979 gewann ein Team um den Franzosen Jean
Ichbiah einen entsprechenden Wettbewerb, die Gewinnersprache
wurde dann zu
Ada umbenannt. Die Benennung der neuen Sprache nach der
damals praktisch unbekannten Ada Lovelace war eindeutig eine
feministische Geste.
Die Promotion, die Ada Lovelace durch die Programmiersprache
Ada bekam, führte zu einer Vielzahl von
Frauenförderprojekten, die nach Ada Lovelace benannt wurden,
zu Vereinen, die ihr Andenken pflegen, zu einem
Ada Lovelace Day (der jährlich
in der 2. Oktoberwoche stattfindet, in 2016 am 13.10.) und
zu
Ada Lovelace Awards. Ada Lovelace avancierte zu einer
regelrechten Kultfigur (heilig gesprochen wurde sie
allerdings noch nicht) und feministischen Ikone.
Die finanziellen und emotionalen Investments in die Marke
Ada ab den 1980er Jahren sind so gigantisch, daß ein
Wechsel dieser Marke völlig ausgeschlossen ist und die
historische Person Ada Lovelace notfalls mit Gewalt bzw.
direkten Geschichtsfälschungen an die Erfordernisse
angepaßt werden muß.
Typische Falschaussagen und rhetorische Tricks
Ada Lovelace wird heute in tausenden Artikeln als
Erfinderin des Programmierens genannt und mit weiteren
Attributen faktenwidrig glorifiziert. Nachfolgend einige
Beispiele, die aktuell oder neueren Datums sind. Man kann
sie in drei Gruppen einteilen:
- direkte Falschaussagen über Ada Lovelace,
- rhetorische Tricks, also Aussagen, die
wörtlich nicht falsch sind, aber eine falsche Aussage
suggierieren,
- allgemeine Glorifizierungen und unhaltbare
Vergleiche mit anderen herausragenden Persönlichkeiten.
In die Bewertung dieser Falschaussagen sollte einfließen,
daß die
Dissertation von
Bruce Collier, die alle wesentlichen Anpreisungen
von Ada Lovelace widerlegt, schon 1970 erschien. Die 1985
erschienene Biographie
Stein
(1985) wird zwar oft zitiert, inhaltlich dann aber
schlicht ignoriert. D.h. vielen feministischen Aktivisten
sind die historischen Fakten und die Gegendarstellungen
zur eigenen Propaganda durchaus bekannt, werden aber
systematisch ignoriert oder unter fadenscheinigen
Vorwänden als irrelevant abgetan.
Falschaussage: "She is the world's first
computer programmer"
findet die
Ada Initiative, übrigens als dummdreiste Antwort auf
Diskussionen, man müsse Ada Lovelace aus der Geschichte der
Informatik streichen.
https://anydayguide.com/calendar/2617, ein
Kalendereintrag für den "Ada Lovelace Day", behauptet
"
Ada Lovelace, a prominent English mathematician, known
as the first programmer". Also Erstautor aller
Programme.
Aber da geht noch mehr, dachte sich viele Autorinnen und
legten noch eine Schippe drauf, oder gleich mehrere, womit
wir z.T. bei absurden Glorifizierungen landen. Beispiele:
-
Ada Lovelace war ganz
einfach der Anfang der Programmierung in allen Sprachen der Welt.
- Teresa Nauber in der Welt meint: "Die beiden
Wissenschaftler [!] arbeiteten von nun an gemeinsam die
Programmiergrundlagen für Babbages Maschinen aus."
Eigentlich geht wohl auch Babbages Arbeit und die gesamte
Informatik auf Ada Lovelace zurück.
- einstieg-informatik.de schreibt "Die Analytikerin
[!] und Computerpionierin [!] Ada Lovelace beschrieb die
grundlegenden Konzepte [!] der Computerprogrammierung und
die Bausteine, die in jeder [!] Computersprache benötigt
werden." Grundlegenden Konzepte der Algorithmik wie
Schleifen kennt man seit 2000 Jahren,
- Man
könnte sagen, Ada hat hier die Informatik vorhergesagt
("hier" bezieht sich auf oben zitierten Visionen). Man sollte es aber besser nicht sagen.
Rhetorischer Trick: "Ada Lovelace hast als Erste
ein komplexes Programm geschrieben."
Mit "Programm" ist das Bernoullizahlen-Programm
gemeint. Der rhetorischer Trick besteht hier darin,
willkürlich zwischen "komplexen" und "nicht komplexen"
Programmen zu unterscheiden, ohne Kriterien für die
Abgrenzung anzugeben. Babbage hat vor Ada Lovelace ebenfalls
wenigstens ein Programm geschrieben, das "komplexer" als die
sonstigen kleinen Programme war.
Autoren solcher Behauptungen war vermutlich bewußt, daß
Babbage lange vor Ada Lovelace diverse Programme
geschrieben hat, man kann also eine Täuschungsabsicht
unterstellen.
Mit "Programm geschrieben" wird ferner suggeriert, das
Bernoullizahlen-Programm sei von ihr alleine verfaßt
worden. Diese alleinige Urheberschaft trifft nicht zu, sie
wurde von Babbage dabei wesentlich unterstützt.
Rhetorischer Trick: "Ada Lovelace hast als Erste
ein komplexes Programm veröffentlicht."
Ebenfalls eine Behauptung der deutschen Wikipedia. Formal
ist dies insofern richtig, als Ada Lovelace als alleiniger
Autor der "Notes" in
Menabrea1843 genannt wird. Verschwiegen wird
dabei, daß sie damit gegen heute übliche
Zitiervorschriften verstoßen hat und daß sie eigentlich
die Mitwirkung von Babbage erwähnt haben müßte.
Falschaussage: "Sie entwarf Konzepte zur
Programmierung einer mechanischen Maschine,..."
... wird in
frauen-informatik-geschichte.de behauptet.
Kann man dazu ein Beispiel nennen? Also wenigstens ein
Konzept, das damit adressierte Problem der Programmierung
und die Lösungsidee? Wie schon oben erwähnt haben weder
Ada Lovelace noch Babbage Konzepte höherer Programmiersprachen
entworfen, was hier suggeriert wird.
Rhetorischer Trick: "The engine was never
completed so her program was never tested."
Diese Aussage in der
englischen Wikipedia wirkt auf den ersten Blick
selbstverständlich und überflüssig, dient aber einer
Täuschung.
Die Aussage "The engine was never completed" ist korrekt,
die Aussage "her program was never tested" ist vermutlich
korrekt bezogen auf Lovelace selber, allerdings der
Kausalzusammenhang "
so her program was never
tested." ist falsch. Testen kann man Programme auch im
Kopf, indem man selber den Ablauf gedanklich simuliert und
ggf. Fehler identifiziert - das machen Programmierer
ständig.
Es geht hier um die Frage, ob das Ada Lovelace
zugeschriebene Programm auch richtig funktioniert, denn
andernfalls wäre es kein ausführbares Programm, also kein
Programm im engeren Sinn, sondern nur ein Text bzw.
unfertiger Rohling, der keine Programmierkompetenz belegt.
Man hätte auch berechtigte Zweifel, ob sie verstanden hat,
was sie da aufgeschrieben hat. Das Programm weist in der
Tat erhebliche Fehler auf, s.
Rojas (2016).
Der rhetorischer Trick besteht hier darin, 1. einem Leser
zu suggerieren, man könne ein Programm nur durch
Ausführung in einem Rechner testen, und 2. mit dem so
eingeschränkten Testbegriff die dem Leser eventuell
bekannten Fehler auf die fehlende Testmöglichkeit
zurückzuführen. Dabei wird weiter ohne Beweise
unterstellt, daß Ada Lovelace, wenn sie die Fehler bemerkt
hätte, imstande gewesen wäre, das Programm zu korrigieren.
Hieran bestehen ganz erhebliche Zweifel.
Falschaussage: "Lady Lovelace's Objection war
ein wissenschaftlicher Beitrag"
Dies findet u.a. die
deutsche Wikipedia, indem sie diesen als
wissenschaftlichen Beitrag von Ada Lovelace listet.
In Klammern erwähnt sie vorsichtshalber "
Turings Widerspruch
dagegen", aber wer ist schon Alan Turing? Und wer
mit falschen Thesen andere Forscher dazu veranlaßt, diese
zu widerlegen, hat ja auch irgendwie zur Wissenschaft
beigetragen, oder? Dieses absurde, aber für Außenstehende
nicht durchschaubare Argumentationsmuster verwendet auch
findingada.com (s. Abschnitt "A computing legacy").
Falschaussage: "Ada Lovelace war eine
(britische) Mathematikerin."
Dies behaupten die
deutsche Wikipedia und zahllose andere Quellen. Wenn
man die gängige Begriffsdefinition von "Mathematiker"
zugrundlegt, hatte Ada Lovelace nicht die Qualifikation
eines Mathematikers. Die Behauptung ist unbewiesen und von
den Analysen von
Dorothy
Stein widerlegt.
Die Biographie
http://www.biography.com/people/ada-lovelace-20825323
behauptet ähnlich:
"Through Babbage, Ada began studying
advanced mathematics with University of London professor
Augustus de Morgan." Was ist "advanced mathematics", und
hat sie mit Erfolg studiert?
Glorifizierung: "Ada and her counterpart Charles
Babbage"
Googles Kalendereintrag
https://www.google.com/doodles/ada-lovelaces-197th-birthday
behauptet allen Ernstes
"
Augusta Ada King, countess of Lovelace, along with her
counterpart Charles Babbage, were pioneers in
computing".
Das geht jetzt zu weit. Ada Lovelace auf eine Stufe mit
Charles Babbage, der sich gerade im Grabe umdreht, zu
stellen, ist absurd.
Glorifizierung: "Ada Lovelace war Wegbereiter
für Alan Turing"
Findet z.B. der
Telegraph. Welchen Weg hat Ada Lovelace für Alan Turing
bereitet?
Rhetorischer Trick: "Ada Lovelace is often
referred to as the first computer programmer."
Diese vielfach benutzte Formulierung ist korrekt, Ada
Lovelace wird tatsächlich sehr häufig, sogar fast überall
als erster Programmierer angesehen, bei einer großen Lüge
glauben ganz viele das Falsche. Daraus, daß viele etwas
meinen, kann man aber nicht nicht schlußfolgern, daß es
auch zutrifft.
Der rhetorischer Trick besteht hier darin, diese falsche
Schlußfolgerung zu suggerieren.
Daß hier das
Argumentum ad populum als rhetorischer Trick benutzt
wird, ist ein klares Indiz dafür, daß wir es mit einer
großen Lüge zu tun haben.
Literatur
-
Bromley, Allan G.:
Charles Babbage's Analytical Engine, 1838.
Annals of the History of Computing 4:3, S.
197-217, doi:10.1109/mahc.1982.10028,
1982.
http://athena.union.edu/~hemmendd/Courses/cs80/an-engine.pdf
-
Bromley, Allan G.:
Difference and Analytical Engines.
In Aspray, William: "Computing Before Computers",
Iowa State University Press, S. 59-98. ISBN
0-8138-0047-1,
1990.
http://ed-thelen.org/comp-hist/CBC-Ch-02.pdf
-
Bruce Collier:
The Little Engines that Could've:
The Calculating Machines of Charles Babbage.
Dissertation, Department of History of Science,
Harvard University, Cambridge,
1970.
http://robroy.dyndns.info/collier/
-
Thomas DeMichele:
Ada Lovelace Wrote the First Computer Program - Myth.
Fact / Myth,
21.08.2016.
http://factmyth.com/factoids/ada-lovelace-wrote-the-first-computer-program/
-
Eugene Eric Kim, Betty Alexandra Toole:
Ada und der erste Computer.
Spektrum der Wissenschaft 7 / 1999, S. 80,
1999-07.
http://www.spektrum.de/magazin/ada-und-der-erste-computer/825569
-
Federico Luigi Menabrea:
Notions sur la machine analytique de Charles
Babbage.
Bibliothèque Universelle de Genève, Oktober
1842, No. 82, S. 351-376,
1842.
https://www.bibnum.education.fr/calcul-informatique/cal ... babbage
-
Federico Luigi Menabrea, Ada Lovelace:
Sketch of the Analytical Engine Invented by Charles
Babbage. With notes upon the Memoir by the Translator Ada
Augusta, Countess of Lovelace.
Taylor's Scientific Memoirs,
1843.
http://www.fourmilab.ch/babbage/sketch.html
-
Raúl Rojas:
Versuch, Ada Lovelace auf die Füße zu stellen.
Telepolis,
09.01.2016.
http://www.heise.de/tp/artikel/47/47022/1.html
-
Raúl Rojas:
Die ersten Computerprogramme der Welt.
Telepolis,
18.09.2016.
http://www.heise.de/tp/artikel/49/49357/1.html
-
Dorothy Stein:
Ada - A Life and a Legacy.
MIT Press Series
in the History of Computing, Cambridge,
1985.
-
Stephen Wolfram:
Untangling the Tale of Ada Lovelace.
stephenwolfram.com,
10.12.2015.
http://blog.stephenwolfram.com/2015/12/untangling-the-tale-of-ada-lovelace/
-
literatur/Yanes20151209.pdf