Der Beginn der Kommandozeilen-Ära (1999)
(web.stanford.edu)- Betriebssysteme waren einst immaterieller Code, der schwer verkäuflich schien, wurden nach Microsoft und Apple aber zu Produkten, für die die breite Öffentlichkeit bezahlt und sich bewusst entscheidet, sowie zu einem Bestandteil kultureller Identität
- GUIs machten Computer zugänglicher, indem sie Bytes und Dateien in Metaphern wie Desktop, Dokumente und Papierkorb verpackten; wenn Metaphern jedoch die tatsächlichen Abläufe verdecken, werden Fehler und Datenverlust undurchsichtiger
- Windows und MacOS schufen riesige Märkte, doch geschlossene Betriebssysteme und Hardware-Monopole standen im Kontrast zum Wachstum von Open-Source-Unix-Derivaten und dem Ökosystem günstiger PCs
- Linux legt mit Kommandozeile, offenem Quellcode, öffentlicher Bug-Datenbank und ASCII-Konfigurationsdateien das Innere des Systems offen, doch diese Stärke hinterlässt bei Alltagsnutzern Geek fatigue
- BeOS zeigte mit einer neuen GUI und einem POSIX-basierten Terminal einen Kompromiss, doch im Betriebssystemmarkt entscheiden Mindshare und Treiber-Ökosystem ebenso über das Überleben wie Technik
Wie Betriebssysteme zu Massenprodukten wurden
- Jobs und Wozniak gründeten Apple mit der Idee, Informationsverarbeitungsmaschinen für zu Hause zu verkaufen; Gates und Allen machten die noch seltsamer wirkende Idee des Verkaufs von Betriebssystemen zum Geschäft
- Ein Betriebssystem ist eine lange Folge von Einsen und Nullen mit kaum physischer Substanz, doch Microsoft wurde zu einem Unternehmen, das sie in Massen verkaufte, ähnlich wie Gillette Rasierklingen verkauft
- Neue Betriebssysteme wurden wie Blockbuster-Filme eingeführt, und auch normale Nutzer lernten den Unterschied kennen, dass Software für den Macintosh nicht unter Windows läuft
- Microsofts Betriebssystem-Monopol wurde zum Gegenstand kartellrechtlicher Maßnahmen des US-Justizministeriums, und die PC-versus-Mac-Debatte wurde zu einer kulturellen Frage, die sich sogar in persönlichen Beziehungen zeigte
- In der Auto-Analogie wird Microsoft als Unternehmen dargestellt, das vom Fahrrad MS-DOS über den riesigen Kombi Windows 95 bis zum Geländewagen Windows NT verkauft, während Apple teure Limousinen mit versiegeltem Innenleben anbietet
- BeOS ist eher ein technisch fortgeschrittenes Batmobil, Linux eher ein Panzer, der von Freiwilligen kostenlos verteilt wird
- 90 % der Kunden gehen in den Microsoft-Laden, und die meisten der Übrigen entscheiden sich für Apple
- Das kostenlose Linux ist mächtig, doch Nutzer zögern, weil sie „nicht wissen, wie man einen Panzer wartet“
Die Kosten der Metaphern von Kommandozeile und GUI
- Die frühe Computernutzung war ein formaler Ablauf über Teletype, Lochstreifen, Modems und Mainframes; die Rollenverteilung war klar: Menschen interpretierten Bedeutung, Computer führten Arithmetik auf Bits aus
- Das Command Line Interface entstand aus der Praxis, auf einem Teletype eine Zeile einzugeben und eine Antwort zu erhalten; erst nach dem Aufkommen der GUI bekam es einen eigenen Namen
- Der Macintosh popularisierte 1984 die GUI und zeigte mit seinem Design, das ausschließlich per Maus und ohne Kommandozeile bedient wurde, die Haltung, die bestehende CLI in die Geschichte zu verdrängen
- Die GUI verwendet Metaphern wie Dateien, Dokumente, Fenster, Desktop und Papierkorb, um abstrakte Datenstrukturen zu erklären
- Eine HTML-Datei ist, anders als das visuelle Ergebnis einer Webseite, eher ein Texttelegramm, das ein Browser interpretiert
- Der Browser wird mit Ronald Reagan verglichen, der sich anhand des Telegramminhalts eine Baseballübertragung vorstellte und erzählte
- GUI-Metaphern sind bequem, aber unvollständig
- „Document“ bezeichnet in der realen Welt eine feste Aufzeichnung, doch ein Computerdokument kann vor und nach dem Speichern unterschiedliche Zustände haben
- „Save“ entspricht eher der Aktion, die vorherige Version zu entfernen und den Inhalt des aktuellen Fensters durch eine neue Version zu ersetzen
- Wenn ein Dokument durch einen Absturz oder ein Stromproblem verschwindet, erlebt der Nutzer eine metaphor shear, bei der Metapher und tatsächliches Verhalten auseinanderlaufen
Die wirtschaftliche Logik von Microsoft, Apple und Open Source
- Microsoft wird als Unternehmen gelesen, das Produkte eher auf die Maximierung der Aktionärsrendite hin veröffentlicht als auf ästhetische Vollendung oder Integrität
- Selbst wenn Windows nicht gut aussieht oder fehlerhaft ist, kann es als Managemententscheidung aufgehen, sofern es höhere Gewinne bringt
- Die Feindseligkeit gegenüber Microsoft erscheint als Mischung aus Abneigung gegen „zu viel Macht“ und Verachtung für „Geschmacklosigkeit“
- Apple hielt an seiner Hardware-Monopolstrategie fest und kontrollierte die Hardware, auf der MacOS lief; deshalb war sie teuer und versiegelt aufgebaut
- Diese Politik kann die integrierte Qualität von Hardware, OS und Software erhöhen
- Gleichzeitig spielte auch der finanzielle Grund eine Rolle, dass Apple von Hardwareumsätzen abhängig ist
- Der Macintosh war eine Maschine, die Hacker nur schwer öffnen und verändern konnten
- Im Kern ähnelt ein Betriebssystem eher einer Library aus häufig verwendeten Codebestandteilen, und geschlossene Betriebssysteme stehen im Konflikt mit dem Zweck eines Betriebssystems
- OS-Schnittstellen und -Verhalten müssen offengelegt werden, damit Programmierer sie nutzen können; selbst wenn die Implementierung geheim ist, kann Code, der dasselbe Verhalten zeigt, neu geschrieben werden
- ProDOS implementierte Funktionen wie die von MS-DOS neu
- Unter Linux bildet WINE eine Laufzeitumgebung für Windows-Programme nach
- Unix wurde von verschiedenen Unternehmen wie Sun, Hewlett-Packard, AT&T, Silicon Graphics und IBM jeweils eigenständig implementiert
- Betriebssystemtechnik tendiert dazu, mit der Zeit kostenlos zu werden; Microsofts OS-Geschäft wurde zur Grundlage für den Ausbau des Anwendungsgeschäfts und der Forschungsorganisation, wird langfristig aber als etwas behandelt, das abgetrennt werden sollte
- Wenn Microsoft neue Technologien wie Browser an das Betriebssystem bindet, um den OS-Marktanteil zu sichern, können bei einem Wanken dieses Marktanteils auch andere Geschäftsbereiche mit nach unten gezogen werden
Die Systemkulturen von Linux und BeOS
- Linux ist eine von mehreren Unix-Implementierungen und begann 1991, als Linus Torvalds mithilfe von GNU-Werkzeugen einen Unix-Kernel für PC-kompatible Hardware zu schreiben anfing
- Die Voraussetzungen, die Linux ermöglichten, lassen sich in drei Achsen zusammenfassen
- Richard Stallman und GNU stellten kostenlose Entwicklungswerkzeuge bereit
- Microsoft betrieb kein Hardwaregeschäft und ließ Windows auf PCs vieler Anbieter laufen, wodurch der Markt für günstige PCs wuchs
- Linus Torvalds startete auf dieser Hardware und mit diesen Werkzeugen den Kernel
- Unix ist mächtig wie eine „Hole Hawg“-Bohrmaschine
- Es führt exakt aus, was angewiesen wurde, ist aber gefährlich, wenn der Nutzer die Folgen nicht ausreichend voraussieht
- Kleine Werkzeuge versuchen etwas und scheitern, doch die Hole Hawg ist gefährlicher, gerade weil sie Befehle wortwörtlich mit großer Kraft ausführt
- Linux zeigt beim Booten lange Logs und Fehlermeldungen in weißer Schrift; selbst bei Fehlern kann es den betreffenden Prozess aufgeben und weiterlaufen
- Frühe Versionen von MacOS und Microsoft-OS konnten nur schwer mehrere Dinge gleichzeitig tun, weshalb die Fehlerbehebung begrenzt war
- Linux und andere Unix-Derivate sind stark bei parallelen Prozessen und Fehlerüberwachung
- Debian macht Probleme und Lösungsprozesse über eine öffentliche Bug-Datenbank für Nutzer sichtbar
- Debian Constitution: http://www.debian.org/devel/constitution
- Debian Bugs: http://www.debian.org/Bugs
- Als im Januar 1997 ein Debian-Problem per E-Mail gemeldet wurde, kamen innerhalb von 24 Stunden fünf Lösungsmails aus Nordamerika, Europa und Australien zurück
- Der Versuch, Windows NT 4.0 auf derselben Maschine zu installieren, führte zu Installationsabbrüchen, einer nicht funktionierenden Microsoft-Support-Suche, einem Pay-Per-Incident-Verfahren, das sich nicht absenden ließ, und Telefonnummern, die keine Verbindung herstellten
- Später verbesserte sich die Microsoft-Support-Suche so weit, dass Dokumente gefunden werden konnten, die tatsächlichen Bug-Reports nahekommen
- Öffentliche Buginformationen haben den Effekt, Microsoft dazu zu bringen, die Existenz von Bugs anzuerkennen
- BeOS ist ein Betriebssystem, das neu entworfen wurde, um den in MacOS oder Windows angesammelten cruft zu vermeiden
- Be, Inc., gegründet von Jean-Louis Gassee, entwickelte seit Anfang der 1990er-Jahre ein neues OS, das nicht mit bestehenden Betriebssystemen kompatibel war
- Die BeBox war eine BeOS-spezifische Maschine mit Dual-Prozessoren und LED-Anzeigen an der Front
- BeOS wurde später auf Macintosh, Mac-Klone und Intel-PCs portiert
- BeOS besitzt eine objektorientierte Struktur, Message Passing, Multithreading und Multiprocessing und bietet über die Terminal-Anwendung eine Kommandozeile
- Da es POSIX folgt, kann es den GNU-Compiler, Linker und Utilities ausführen
- Auch während man den GUI-Texteditor Pe nutzt, kann man mit Unix-Befehlen wie
wcdie Zeichenzahl zählen
Mindshare als Motor des Betriebssystemmarkts
- Microsofts Macht im Betriebssystemmarkt ähnelt eher einer Dominanz des Mindshare als einem Monopol im traditionellen Sinn
- Linux ist kostenlos und gilt als technisch überlegen
- BeOS wird zu einem symbolischen Preis angeboten
- Es unterscheidet sich von früheren Monopolen, die Produktions- oder Vertriebsmittel physisch kontrollierten
- Microsoft nimmt eine hohe Position ein, weil Hardware- und Softwareanbieter Windows-kompatible Produkte entwickeln müssen, um am Markt ernst genommen zu werden
- Da Hardwareanbieter Windows-Treiber schreiben, muss Microsoft nicht selbst alle Treiber erstellen
- Linux hält dem mit einer Gruppe fähiger Coder entgegen, die kostenlose Treiber schreiben
- BeOS ist auf eigene Treiber und einige Treiber von Drittanbietern angewiesen
- Die GUI wurde über das einfache PC-Interface hinaus zur Meta-Schnittstelle für Konsumententechnik wie Videorekorder, Mobiltelefone, Satelliten-TV, Registrierkassen, Bankterminals und Lego Mindstorms
- Wenn man jede Funktion mit einer GUI versieht, wird es schwieriger, kleine Utilities als eigenständige Programme zu bauen, und Funktionen werden in riesige Pakete wie Microsoft Office aufgesogen
- Unix’
wcreicht als kleines Kommandozeilenprogramm aus; wollte man es als GUI bauen, bräuchte es viel Code und Speicher-Overhead - Die Basic-Funktionen von Microsoft Office könnten vielen Nutzern Hack-Möglichkeiten bieten
- Unix’
- Die Stärke von Linux erschöpft Nutzer, weil sie Konfigurationsdateien, Kommandozeile, Optionen, Skripte und Dokumentationslektüre verlangt
- Die Manpage von
findist 11 Seiten lang, und für eine PPP-Verbindung braucht man Dialing-Skripte, Optionsdateien und geheime Dateien - Wenn man handschriftlich vorgenommene Konfigurationsänderungen nicht protokolliert, lassen sie sich nur schwer zurücknehmen
- Ein ideales OS ähnelt einer Form, die eine gut gestaltete GUI und eine Kommandozeile bietet, zu der man bei Bedarf zurückkehren kann
- Die Manpage von
- In der letzten Analogie ist die Kommandozeile eine Schnittstelle mit Freiheit und Gefahr genug, um ein Universum zu erschaffen, während eine vollständig automatisierte GUI die Entscheidungen des Lebens durch einen einzigen Button ersetzt
- Leben und Technik sind schwierig und komplex, und keine Schnittstelle kann diese Tatsache selbst ändern
- Wer Entscheidungen nicht delegieren möchte, muss selbst entscheiden
2 Kommentare
Meinungen auf Hacker News
Dieser Essay von Neal Stephenson wurde erstmals 1999 veröffentlicht
https://en.m.wikipedia.org/wiki/In_the_Beginning...Was_the...
Die Passage, in der Betriebssysteme mit Autos verglichen werden – etwa Windows als Kombi und Linux als Panzer –, tauchte kürzlich auch wieder in der Microsoft-Folge von Acquired auf; dort wurde Vista mit einer Dodge Viper verglichen und Windows 7 mit dem Toyota Camry, den die Nutzer eigentlich wollten
https://slashdot.org/story/04/10/20/1518217/neal-stephenson-...
Trotzdem holen Leute weiterhin einen 25 Jahre alten Text hervor, um sich selbst dafür zu feiern, Linux-Nutzer zu sein. Nach dem Motto: „Ich benutze einen Hole Hawg! Ich fahre einen Panzer! Ich bin ein echter Hacker und anders als die da!“
Windows dagegen ist zu einem Auto geworden, das zwei 27-Zoll-Bildschirme im Armaturenbrett hat, eine schlechte User Experience bietet und voller Werbung ist
Diese Analogie passt ziemlich gut, weil der Comet im Grunde das Nachfolgemodell des Edsel war und nur die Marke gewechselt wurde. Der Übergang von Vista zu 7 war ähnlich
Nicht jeder braucht die schwere Transportkapazität eines Pickups, aber wenn man Volumen und Spritverbrauch vermeiden wollte, blieb nur der Pinto mit seinem gefährlichen Ausfallverhalten. Später verschwand der Pinto und wurde durch den Ford Taurus ersetzt: halbwegs brauchbar, aber weder spannend noch besonders leistungsfähig; wegen seines Transaxle-Designs musste man bei einem Defekt praktisch die gesamte Front zerlegen, um ihn zu reparieren
Hinzu kam, dass Infrastrukturplaner wegen des Marktdrucks von Ford die Dinge so gebaut hatten, dass es Straßen oder Orte gab, die man ohne eines dieser drei Autos nicht befahren bzw. erreichen konnte; und wenn man etwas anderes wollte, wurde man obendrein verspottet
Ein großer Vorteil der Kommandozeilenschnittstelle ist, dass sich Anweisungen oder Reparaturwege äußerst knapp vermitteln lassen
Wenn man für ein Linux-System einen bekannten Fix braucht, schickt man einfach einen Befehl zum Kopieren und Einfügen ins Terminal, und fertig. Bei einem bekannten Fix für ein grafisches Programm wird die Vermittlung plötzlich viel schwieriger. Soll man Textanweisungen geben wie „Klicken Sie auf das Hamburger-Menü und wählen Sie dann ‚preferences‘“, oder mehrere Screenshots mit Erklärungen anhängen?
Leider weiß ich nicht, wie man eine Doppelklick-Aktion grafisch vermittelt. Das ist ein zeitaufwendiger und fehleranfälliger Prozess, der sich eigentlich nur lohnt, wenn die fehlerhafte GUI-App praktisch Abandonware ist
Andernfalls ist es gut möglich, dass derselbe Bug oder derselbe unintuitive Ablauf auch in der neuen Version noch vorhanden ist, die GUI aber bis zur Unkenntlichkeit verändert wurde. Vielleicht, weil irgendwo ein Manager zu viele HN-Beiträge gelesen und beschlossen hat, dass ein nutzerseitiges Refactoring die wichtigste Aufgabe sei
https://support.microsoft.com/en-us/windows/record-steps-to-...
Allerdings lässt sich der zentrale Vorteil, den eine GUI im Stil der späten 1990er gegenüber einer Text-UI oder Kommandozeile hatte, am besten so ausdrücken: Sie verlangt dem Nutzer weniger ab. Der Unterschied zwischen „sehen und klicken“ und „sich erinnern und eintippen“ scheint sehr grundlegend zu sein
Für den Trade-off von Sprach-UIs oder LLM-UIs habe ich noch keine ähnlich knappe Formulierung gesehen
Zum Beispiel
{ select[i]@dropdown:states > click@button:submit }. Nur weil es ein solches System noch nicht gibt, heißt das nicht, dass es unmöglich ist. Schon die Tatsache, dass die derzeit von der Tech-Branche favorisierten LLMs auf Basis von Tokens, also Text, „visuelle Berechnungen“ durchführen können, zeigt, dass letztlich jede Darstellung als Text codiert werden kannDann könnte die Aufzeichnungsfunktion von GUI
aeine Aktionscodierung erzeugen, die man einem Kollegen, der GUIbvor sich hat, per E-Mail schickt, damit er sie einfügtWenn man GUI-zentriert arbeiten will, hat man als tatsächliches Werkzeug letztlich nur Textbefehle, die GUI-Aktionen anweisen. Am Ende entsteht also ein zusätzlicher Zwischenschritt. Wenn man zum Beispiel ohnehin schon AppleScript verwendet, ist es besser, einfach direkt die eigentlichen Befehle auszuführen, die AppleScript über das GUI-System nur indirekt anzusteuern versucht
Sollte zusammen mit dem Unix Haters Handbook https://web.mit.edu/~simsong/www/ugh.pdf noch einmal gelesen werden
Was wir brauchen, ist meiner Ansicht nach wieder so etwas wie eine neu geschaffene LispM, eine Smalltalk-Workstation oder eine Form, in der das Betriebssystem wie eine einzige Anwendung gebaut ist. Es müsste ein System sein, bei dem das Framework bis zur untersten Ebene für Nutzer offen ist, vollständig durch Endnutzer programmierbar, explorierbar und komplett integriert
Als UI brauchen wir eine 2D-, darüber hinaus eine 3D/4D-Kommandozeile; das käme eher einer DocUI nahe, die 3D sowie Video- und Multimedia-Elemente enthalten kann. Als konzeptionellen Rahmen gibt es http://augmentingcognition.com/assets/Kay1977.pdf
Zu der Originalpassage „Dieses Autohaus hat Mechaniker. Wenn Ihr Kombi ein Problem hat, können Sie sich einen Tag frei nehmen, ihn hierherbringen, im Warteraum ein paar Stunden Fahrstuhlmusik hören und dafür bezahlen, dass er repariert wird.“ fällt mir als Lautsprecher-Gegenrede ein: „Wenn Sie einen kostenlosen Panzer bekommen, kommen Freiwillige, während Sie schlafen, kostenlos zu Ihnen nach Hause und reparieren ihn!“
Hat tatsächlich irgendeine Linux-Distribution irgendwann solchen Support angeboten? Vermutlich hätte sich ein Projektbeitragender per ssh auf meinen Rechner eingeloggt
Mein Eindruck war eher, dass die Debatte in etwa so lief: „Wir haben ein ganzes Gebäude voller technischer Handbücher, in denen jede Schraube und jede Mutter des Panzers beschrieben ist, und wir können sie Ihnen kostenlos kopieren. Wenn Sie sich ausreichend Mühe geben, alles lesen und auswendig lernen, können Sie den Panzer selbst reparieren und umbauen. Sie müssen sich nicht länger auf den windigen Autohändler verlassen. Wenn Sie Hilfe brauchen, kommen Sie zum monatlichen Community-Treffen und reden Sie mit Leuten, die genauso panzerverrückt sind wie Sie. Aber kommen Sie nur, wenn Sie wirklich panzerverrückt genug sind – und erst, nachdem Sie das Handbuch gelesen haben.“
Natürlich ist das Jahrzehnte her, und heute ist die Lage viel besser
Man sieht auch, dass SuSE noch existiert, und kann sich denken, wie Canonical seine Betriebskosten deckt. Das ist bezahlter Support. Linux-Support ist ein großes Geschäft und der Motor, der populäre Distributionen am Leben hält
Früher musste man, wenn kommerzielle Software auf dem eigenen Rechner nicht lief, eine neue Version kaufen, und kostenlose Patches waren selten
Normalerweise wäre „Komm bloß nicht in die Nähe meines Hauses, du komischer Mensch!“ die normale Reaktion. Solange kein erhebliches Vertrauen aufgebaut ist, lasse ich niemanden in mein Haus, während ich schlafe
Die tatsächliche übliche Reaktion wäre wohl eher gewesen: „Weil es Open Source ist, kannst du an deinem Panzer alles selbst reparieren.“ Wenn du ein neues Modul brauchst, um ihn mit einem anderen Gerät zu verbinden, baust du es eben selbst; angeblich keine große Sache
Wenn der Browser mit langen Zeilen nicht gut zurechtkommt, kann man es so ansehen
wget -O - [https://web.stanford.edu/class/cs81n/command.txt](<https://web.stanford.edu/class/cs81n/command.txt>) | nroff | lessMeine Lieblingsstelle zur Beschreibung der Gefühle von Unix/Linux-Nutzern gegenüber Windows ist die Formulierung Hole Hawg des Betriebssystems
Dieser Essay sollte Pflichtlektüre für alle Informatikstudierenden und alle sein, die sich selbst Hacker nennen wollen
Ich habe diesen Text während meiner Universitäts-Abschlussfeier gelesen. Ich hatte ihn in den Falten meiner Robe versteckt und gelesen; das war damals wohl das passendste, was ich tun konnte
Unmittelbar danach änderte ich meine Lebensrichtung und konzentrierte mich auf die Ideen, die der Text vorstellte. Das Ziel war, die Welt über die Kommandozeile zu bewegen, und ich habe es fast geschafft
Man muss zur Command Table wechseln
Ich habe gerade eine LLM-Kommandozeilenschnittstelle fast ausschließlich in Bash geschrieben[1]
Wegen der Argumentation dieses Textes unterstütze ich die Zukunft von LLMs. Menschen werden mit LLMs sprechen, wie sie mit einer Kommandozeilen-Shell sprechen, und alles basiert auf Plain Text. Das ist auch die Unix-Philosophie. Hätte ich diesen Text gelesen, bevor ich den CLI-Client geschrieben habe, hätte ich wohl noch mehr Ideen bekommen
[1]: https://github.com/simonmysun/ell
Könnte dieser Text auf HN den Preis für den am häufigsten erneut geposteten Beitrag bekommen? Über 17 Jahre hinweg ist er im Schnitt zweimal pro Jahr aufgetaucht
https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...
Wegen Varianten bei Titel und URL schwankt die Zählung zudem
Ich besitze dieses Buch als Softcover. Wahrscheinlich habe ich es noch vor der Jahrtausendwende gelesen
Als BeOS-Fan gefiel mir die Erwähnung des Batmobils besonders
The hole hawg.. was ist das?