Zum Gedenken an Tony Krueger, der die roten und grünen Wellenlinien unter Wörtern hinterließ
(devblogs.microsoft.com)- Tony Krueger war an der Funktion in Microsoft Word beteiligt, die Rechtschreib- und Grammatikprobleme sofort mit roten und grünen Wellenlinien markiert, und hinterließ damit eine UI-Spur, die fast alle Nutzer schon gesehen haben
- In frühen Word-Versionen musste die Rechtschreibprüfung vom Nutzer manuell gestartet werden, und auch Auto Spell Check war eine blockierende Aufgabe, die Vordergrundaktionen wie Speichern oder Beenden verhinderte, weshalb viele Nutzer sie deaktivierten
- Krueger entwickelte eine weniger störende Methode, damit die Prüfung den Nutzer nicht anhält, und markierte gefundene Probleme direkt unter dem Wort, ohne auf einen separaten Start zu warten
- Er arbeitete an Word 1.0, 1.1, 2.0, Word for OS/2, Word for Mac, Word 6.0 und vielen späteren Versionen und übernahm auch den Windows-Port von Chip’s Challenge
- Heute haben sich nicht nur rote, sondern auch grüne und blaue Wellenlinien in Textverarbeitungen und anderer Software verbreitet, und Kruegers Arbeit lebt als alltägliches UI für Bearbeitungs-Feedback weiter
Tony Krueger und die Wellenlinien-UI von Word
- Tony Krueger ist eine Person, deren Werk weithin bekannt ist, deren Name jedoch vergleichsweise wenig bekannt blieb
- Auf Wikipedia ist er als derjenige vermerkt, der Chip’s Challenge für das Windows Entertainment Pack auf Windows portierte
- Dieser Port entstand durch Reverse Engineering und eine Neuimplementierung für Windows, ohne den Quellcode der MS-DOS-Version
- Noch mehr Menschen erreichte jedoch sein Code für die Rechtschreib- und Grammatikmarkierung in Microsoft Word
Spuren in vielen Word-Versionen
- Krueger arbeitete an zahlreichen Word-Versionen mit
- Word 1.0
- Word 1.1
- Word 2.0
- Word for OS/2
- Word for Mac
- Word 6.0 und viele spätere Versionen
- Er wird als jemand erwähnt, der möglicherweise den Rekord dafür hält, an den meisten veröffentlichten Word-Versionen mitgearbeitet zu haben
Warum die frühe Rechtschreibprüfung unpraktisch war
- Die frühe Spell Check-Funktion in Word musste vom Nutzer ausdrücklich gestartet werden
- Danach musste der Nutzer warten, bis das Programm alle potenziellen Tippfehler gefunden hatte, und dann Wort für Wort entscheiden, wie damit umzugehen war
- Word führte Auto Spell Check ein, das die Rechtschreibprüfung im Voraus durchführte, wenn der Nutzer gerade untätig war
- So sollten die Ergebnisse bereits bereitstehen, wenn der Nutzer auf die Spell-Check-Schaltfläche klickte
- Trotzdem blieb auch Auto Spell Check eine blockierende Aufgabe, die den nächsten Arbeitsschritt des Nutzers verhinderte
- Deshalb deaktivierten viele Nutzer diese Funktion
- Wenn genau beim Speichern und Beenden eines Dokuments die Rechtschreibprüfung startete, musste man warten, bis sie abgeschlossen war
Die Einführung der roten und grünen Wellenlinien
- Krueger gestaltete die Rechtschreibprüfung so um, dass sie Vordergrundaktionen sehr viel weniger störte
- Wurde ein Problem gefunden, wartete Word nicht mehr darauf, dass der Nutzer Spell Check startet, sondern zeichnete sofort eine rote Wellenlinie unter den potenziellen Tippfehler
- Später wurden für mögliche Grammatikfehler grüne Wellenlinien verwendet
- Diese Methode ist heute in nahezu jeder Textverarbeitung zu sehen und wird auch außerhalb von Textverarbeitungen häufig eingesetzt
- Nicht nur rote, sondern auch grüne und blaue Wellenlinien sind weit verbreitet
Menschen, die sich an die Funktion erinnerten
- Krueger war ein früher Fan des Magie- und Comedy-Duos Penn and Teller
- Ein Freund und Kollege bat die beiden nach einer Show um ein signiertes Foto für Tony und erwähnte dabei, dass er im Word-Team für die roten und grünen Wellenlinien gewesen sei
- Penn Jillette reagierte mit einer Stimme, die im ganzen Theater zu hören war: “The red and green squiggles!? I love the red and green squiggles!”, und auch Teller stimmte leise zu
- Krueger bekam das signierte Foto als Geburtstagsgeschenk, und es war nicht ganz klar, worüber er sich mehr freute: über das Foto selbst oder darüber, dass Penn and Teller seine Funktion mochten
- Später tauchte die rote Wellenlinie von Word kurz im Parodievideo Word Crimes von “Weird Al” Yankovic auf, und derselbe Freund ließ auch diesen Screenshot signieren
Das bleibende Vermächtnis
- Die rote Wellenlinie ist als alltägliches Bearbeitungs-Feedback erhalten geblieben, das Fehler von Nutzern aufspürt
- Was Krueger zuerst umsetzte, verbreitete sich später in vielerlei Software als Methode zur Markierung von Textfehlern
2 Kommentare
Hacker-News-Kommentare
Wenn man in der Softwarebranche bleibt und seinen Namen im Source Code hinterlässt, wird man irgendwann vielleicht durch ein Produkt oder Feature in Erinnerung behalten, mit dem man nie gerechnet hätte
Ausgerechnet die Dinge, an denen man am härtesten gearbeitet hat und für die man bekannt sein wollte, geraten mit der Zeit in Vergessenheit. Der Prozess, etwas zu erschaffen, liegt vollständig in der eigenen Kontrolle, aber wofür man bekannt wird, liegt völlig außerhalb davon
Prowrite auf dem Amiga bot Echtzeit-Rechtschreibprüfung schon vor Word
Möglicherweise gab es noch frühere Programme mit derselben Funktion, aber Prowrite unterstrich falsche Wörter mit einer roten Wellenlinie
https://www.atarimagazines.com/compute/issue123/P215_1_REVIE...
Ich konnte auch keinen Screenshot dieser Funktion finden. Bei der AmigaOS-1.x-Farbpalette wären die Standardfarben Schwarz/Weiß/Blau/Orange gewesen, also wäre die Wellenlinie wohl eher orange als rot gewesen. Ab AmigaOS 2 waren es für den 3D-Effekt Schwarz/Weiß/Grau/Blau, also hätte die Hervorhebungsfarbe vielleicht blau sein müssen
In Umgebungen, in denen man mit mehreren Sprachen arbeitet, sind Wellen-Unterstreichungen oft nutzlos
Das System versucht zwar zu erraten, in welcher Sprache ich schreibe, liegt aber meistens falsch, und das Ergebnis ist visueller Lärm, den man entweder bekämpfen oder ignorieren muss. Jedes Mal die Spracheinstellungen manuell umzuschalten, ist ebenfalls viel zu umständlich
Da es Zeichenstile sind, gilt das sowohl an der aktuellen Cursorposition als auch für markierte Bereiche. Das hilft auch, wenn man vergisst, es vorher einzustellen, und eine Zeile plötzlich voller Wellenlinien ist. Oder man setzt die Korrektursprache für den gesamten Text auf None und schaltet damit alle Rechtschreib- und Grammatikhinweise aus
Interessanterweise verweist Chens Beitrag auf die Wikipedia-Seite als Beleg dafür, dass Tony Krueger den Port gemacht hat
In der neuesten Version verweist der Beleg für diese Aussage dann wiederum zurück auf Chens Beitrag
Chens Beitrag schreibt dann, „Tony Krueger wird auf Wikipedia als derjenige erinnert, der … portiert hat“, und fügt die Fußnote hinzu: „Dass er das ohne Source Code geschafft hat, ist vermutlich weniger gut dokumentiert. Er hat die MS-DOS-Version rückentwickelt und sie dann für Windows neu implementiert.“ Später zitierte der Wikipedia-Artikel Chens Beitrag genau für diese zusätzliche Information. Alles unproblematisch und angemessen, und ich habe die Referenz gerade so bearbeitet, dass das wieder klarer wird
Vor der Bearbeitung diente das Spiel selbst als Beleg dafür, dass Tony und Ed Halley als Entwickler genannt werden, aber die Person, die Chens Blogeintrag mit der Reverse-Engineering-Anekdote hinzugefügt hat, hat dabei den Satz geteilt, sodass das Zitat zu den Entwicklernamen nur noch für die andere Person zu gelten schien
https://en.wikipedia.org/w/index.php?title=Chip%27s_Challeng...
Er verweist darauf, wofür Wikipedia sagt, dass Krueger am bekanntesten sei, und ergänzt dann noch eine weitere bemerkenswerte Sache über Krueger, nämlich die Wellen-Unterstreichung. Wenn man den ganzen Beitrag liest, sieht man, dass er weiter unten auch Details zum Port ergänzt hat und sich dieser Tatsache also völlig bewusst ist. Den Beitrag als Quelle für den Port zu verwenden, ist in Ordnung. Solche zirkulären Belegketten entstehen auf Wikipedia tatsächlich manchmal, aber das scheint hier nicht der Fall zu sein
Ich mag solche Beiträge. Von den unzähligen möglichen Abzweigungen wurde ausgerechnet die Wellenlinie gewählt, und das noch dazu aus einer spontanen Entscheidung einer einzelnen Person heraus, und am Ende hat das die Welt komplett verändert
Ich mag Wellen-Unterstreichungen nicht immer, aber als UI-Pattern verdienen sie Anerkennung
Als visuelles Signal für „Mit diesem Wort stimmt etwas nicht“ gehören sie zu den intuitivsten und am leichtesten erkennbaren Varianten
Schon am eingereichten Titel und an der microsoft.com-Domain erkennt man immer, dass es ein Raymond-Post ist. Ich mag ihn wirklich sehr
„Er hat das ohne Source Code geschafft“ — natürlich. Das ist HN, wer braucht da schon Source Code
Allerdings hätte ich statt Reverse Engineering vermutlich nach einem Emulator gesucht oder selbst einen gebaut. Man könnte ja auch gebeten werden, andere Software zu „portieren“. Es ist schon traurig, dass wir meistens nicht wissen, wer für die guten und schlechten Features der Software verantwortlich war, die wir benutzen. Im Film ist es üblich, am Ende lange Credits zu zeigen, und ich lese die gern aufmerksam. So eine Kultur sollte es auch in der Softwareentwicklung geben. Einige Spiele machen das so, und manche Easter Eggs erfüllen ebenfalls diese Funktion
Es wäre wirklich schön, wenn man Rechtschreibprüfung komplett abschalten könnte
Ich weiß, das ist ein ziemliches Nischenanliegen, aber ich kann mit meinen Fehlern leben und möchte Slang, Fachbegriffe und Abkürzungen nicht jedes Mal „anlernen“ müssen. Ich frage mich oft, wie Leute überleben, die absichtlich nicht standardkonformes Englisch schreiben. Schwer vorstellbar, dass James Joyce das gefallen hätte
Ich bin auch kein Muttersprachler, daher wäre sie sicher hilfreich, aber mich stört genauso, dass sie über Zeichenfolgen meckert, die ich absichtlich geschrieben habe, oder sie automatisch korrigiert
Wenn ich mich richtig erinnere, hasste Larry Constantine Wellen-Unterstreichungen regelrecht
Nach seiner Auffassung sollte man beim Schreiben immer schon an das nächste Wort denken, aber Wellenlinien ziehen die Aufmerksamkeit auf Wörter, die man bereits geschrieben hat. „He, hör mal! Glaubst du wirklich, du kannst buchstabieren? Was soll denn bitte dieses gerade eben geschriebene ‚fatouos‘ sein?“, und dann nerven sie einen so lange, bis man anhält, auf das unterwellte Wort klickt und es korrigiert. Im Grunde ist das eine primitive Form von Clippy
Word ließe sich vielleicht retten, wenn es wie vi zwei Modi hätte. Im Schreibmodus würde nichts stören und man könnte einfach schreiben, und in dem Moment, in dem man in den Bearbeitungsmodus wechselt, könnte das Programm Wellenlinien und KI-Vorschläge nach Belieben ausschütten
Lobste.rs-Meinungen
Und diese Fußnote ist ziemlich beeindruckend: „Wahrscheinlich ist nicht weithin bekannt, dass er die [Portierung von Chip's Challenge] ohne Quellcode geschafft hat. Er hat die MS-DOS-Version per Reverse Engineering analysiert und dann für Windows neu implementiert.“
Ich habe gerade nachgeschaut: Tony war seit 1989 bei Microsoft und blieb bis zum Schluss dort; wenn ich richtig rechne, kommt er damit auf etwas mehr als 37 Jahre Betriebszugehörigkeit.
Dann fiel mir aber ein, dass Anfang der 90er vermutlich 4–8 MB RAM üblich waren und man wohl nicht einfach die komplette englische Wortliste in den Speicher laden konnte. Außerdem weiß ich nicht, wie es Anfang der 90er mit Multithreading in C++ aussah, aber selbst Ende der 2000er war es unerquicklich, also war das wahrscheinlich ein ziemlich kniffliges Problem.
Zur Größe des Wörterbuchs: Eine der frühen Rechtschreibprüfungen schaffte es schon Ende der 1970er, ein englisches Wörterbuch in 64 KB RAM unterzubringen (siehe Jon Bentleys Programming pearls). Mit DAWG wurde ein mittelgroßes englisches Wörterbuch mit 100.000 Wörtern auf 400 KB komprimiert, und auch die Suche nach Rechtschreibvorschlägen war schnell: https://www.strchr.com/ternary_dags