LINKS  -  www.KWAIK.de

Echte Programmierer

Im verflossenen goldenen Computer-Zeitalter war es einfach, die Männer (bisweilen "Echte Männer" genannt) von den Memmen (bisweilen "Müslifresser" genannt), zu unterscheiden. Zu dieser Zeit waren die Echten Männer die, die etwas vom Programmieren verstanden und die Müslifresser die, die nichts kapierten. 

Ein Echter Computerprogrammierer sagte Sachen wie: "DO 10 I=1,10" und: "ABEND", und der Rest der Welt sagte: "Computer sind mir zu kompliziert" und: "Ich habe keine BEZIEHUNG zu Computern - sie sind so unpersönlich". 

Ein vorausschauendes Werk, B. Feirstein's "Echte Männer essen kein Müsli", ein Taschenbuch aus dem Jahre 1982, wies darauf hin, dass Echte Männer sich auf nichts beziehen und außerdem keine Angst davor haben, unpersönlich zu sein.

Aber die Zeiten ändern sich: Heute sehen wir eine Welt, in der kleine ältere Damen einen computerisierten Mikrowellenherd haben, zwölfjährige Pimpfe gestandene Männer bei Asteroids oder PacMan spielend in die Tasche stecken, und jedermann seinen höchstpersönlichen Personal Computer kaufen und verstehen kann. Der Echte Programmierer droht von Studenten mit TRASH-80 oder Abfall IIe deklassiert zu werden!

Es gibt, wie auch immer, Unterschiede zwischen dem typischen jugendlichen PacMan-Spieler und einem Echten Programmierer. Diese Unterschiede zu begreifen, könnte den Pimpfen eine Perspektive geben - ein Persönlichkeitsbild, eine Vaterfigur. Außerdem würde es deutlich machen, dass weiterhin Echte Programmierer gebraucht werden.

Der einfachste Weg, um zu bestimmen, wer die Echten Programmierer sind, geht über die Programmiersprache, die sie verwenden. Echte Programmierer verwenden FORTRAN. Müslifresser verwenden Pascal. 

Nicklaus Wirth, der Erfinder von Pascal, wurde einmal gefragt "How do you pronounce your name?": "You can either call me by name, pronouncing it "Veert", or call me by value, "Worth"", erwiderte er. Man kann aus dieser Antwort unmittelbar ersehen, dass Nicklaus Wirth ein Müslifresser ist. Die einzige Form der Wertübergabe, die ein Echter Programmierer gutheißt, ist call-by-value-return, wie es in den IBM/370 FORTRAN G- und H-Compilern implementiert ist. 

Echte Programmierer haben keine abstrakten Konzepte nötig, um ihre Arbeit zu erledigen; sie sind vollkommen glücklich mit einer Lochkartenstanze, einem FORTRAN IV-Compiler und einem Bier. Echte Programmierer programmieren Listenverwaltung, Stringmanipulationen, Buchführung (falls sie es überhaupt machen) und Künstliche Intelligenz in FORTRAN.

Wenn Du es nicht in FORTRAN machen kannst, mach es in Assembler. Wenn Du es nicht in Assembler machen kannst, ist es nicht wert, gemacht zu werden.

Akademische Informatiker sind in den letzten Jahren zunehmend dem strukturierten Programmieren verfallen. Sie sagen, dass Programme viel einfacher zu verstehen sind, wenn man spezielle Techniken und Sprachkonstruktionen benutzt. Welche Konstruktionen genau, darüber sind sie sich nicht ganz einig, und die Beispiele, die sie bringen, um ihre Ansichten zu belegen, füllen Seiten irgendwelcher obskuren Fachzeitschriften.

Als ich mit der Schule fertig war, dachte ich, dass ich der beste Programmierer der Welt bin. Ich konnte ein unschlagbares Tic-Tac-Toe-Programm schreiben, fünf verschiedene Programmiersprachen verwenden und 1000 Zeilen lange Programme abfassen, die funktionierten. Dann geriet ich ins Echte Leben hinaus. Meine erste Aufgabe war, ein 200.000 Zeilen langes FORTRAN-Programm zu lesen und zu verstehen, um es anschließend um einen Faktor zwei zu beschleunigen. Jeder Echte Programmierer wird dir sagen, dass kein strukturierter Code der Welt dir dabei helfen wird, ein Problem wie dieses zu lösen - dazu braucht man wirkliches Talent.

Einige Anmerkungen zu echten Programmierern und strukturierter Programmierung:

  • Echte Programmierer haben keine Angst, GOTOs zu verwenden 
  • Echte Programmierer können fünf Seiten lange DO-Schleifen schreiben, ohne nervös zu werden 
  • Echte Programmierer lieben arithmetische IF-Statements, weil sie den Code interessanter machen 
  • Echte Programmierer schreiben selbstmodifizierenden Code, speziell wenn sich dadurch 20 Nanosekunden im Inneren einer Schleife einsparen lassen 
  • Echte Programmierer brauchen keine Kommentierungen: Der Code spricht für sich 

Das Standardwerk für Echte Programmierer ist "Murphy's Laws" in der ungebundenen Ausgabe, da es den größten Realitätsbezug zum Programmieren hat. Daß FORTRAN keine strukturierten IF, REPEAT..UNTIL oder CASE-Statements kennt, braucht einen Echten Programmierer nicht zu sorgen. Nebenbei, man kann sie nötigenfalls simulieren durch ASSIGNED GOTO"s.

"Datenstrukturen" gehen seit kurzer Zeit auch durch die Fachliteratur. Abstrakte Datentypen, Strukturen, Pointer, Listen und Strings sind in bestimmten Kreisen populär geworden. 

Wirth, der schon erwähnte Müslifresser, hat ein ganzes Buch geschrieben ("Algorithms + Data Structures = Programms", Prentice Hall, 1976), das behauptet, man könne Programme basierend auf "Datenstrukturen" schreiben, anstatt den anderen Weg zu benutzen. 

Wie jeder Echte Programmierer weiß, ist der einzige nützliche Datentyp das Array. Strings, Listen, Records und Mengen sind alles spezielle Fälle von Arrays und können als solche behandelt werden, ohne einem die Programmiersprache zu verkomplizieren. Das Schrecklichste an den wunderlichen Datentypen ist, dass man sie deklarieren muss; in Echten Programmiersprachen sind sie implizit: wie wir alle wissen, eine Schreibweise, die auf dem ersten Buchstaben des sechs Zeichen langen Variablennamen basiert.

Was für eine Art Betriebssystem verwendet ein Echter Programmierer? MS-DOS? Gott behüte! Im Grunde ist das ein Spielzeug-Betriebssystem. Auch kleine ältere Damen und Oberschüler können MS-DOS benutzen und verstehen. 

Unix ist selbstverständlich ein wenig komplizierter - der typische Unix-Hacker weiß nie, wie der PRINT-Befehl diese Woche heißt - aber wenn es um die Wurst geht, ist Unix nur ein herrliches Videospiel. Die Leute machen nichts seriöses auf Unix-Systemen; sie schicken Scherzchen via USENET um die Welt oder schreiben Adventure Games und Forschungsberichte.

Nein, der Echte Programmierer verwendet OS/370. Ein guter Programmierer kann die Beschreibung eines IJK3051-error, der gerade aufgetreten ist, in seinem JCL-Handbuch finden und verstehen. Der großartige Programmierer kann JCL schreiben, ohne einen Blick ins Handbuch zu werfen. Ein wirklich außergewöhnlicher Programmierer kann Bugs finden, die in sechs Megabyte Core Dump vergraben sind, ohne auch nur einen Hex-Taschenrechner zu benutzten.

OS/370 ist ein wahrhaft bemerkenswertes Betriebssystem. Es ermöglicht die Vernichtung der Arbeit von einigen Tagen durch einen einzigen, falsch gesetzten Blank, also ist es beim Programmieren angesagt, aufgeweckt zu sein. Die beste Art, an das System ranzugehen, ist über eine Lochkartenstanze. Einige Leute behaupten, es gäbe ein Timesharing System, das auf OS/370 läuft, aber nach sorgfältigen Studien bin ich zur Ansicht gelangt, dass sie Unrecht haben.

Was für Tools benutzt der Echte Programmierer? Theoretisch kann ein Echter Programmierer seine Programme zum Laufen bringen, indem er sie direkt über die Schalttafel in den Computer eingibt. In den frühen Tagen, als die Computer noch Schalttafeln hatten, wurde das gelegentlich so gemacht. Der typische, Echte Programmierer hat den gesamten Bootstrap Loader in Hex im Gedächtnis und gibt ihn neu ein, wenn er von seinem Programm zerstört worden ist. 

In dieser Zeit war Speicher noch Speicher - er verschwand nicht, wenn der Strom weg war. Heutzutage vergisst der Speicher Dinge, auch wenn du es nicht willst, oder er behält Dinge, die er längst hätte vergessen sollen. Die Legende sagt, dass Seymour Cray, der Erfinder des Cray Supercomputers und der meisten Control Data Computer, das erste Betriebssystem für den CDC 7600 aus dem Gedächtnis über die Schalttafel eingab, als sie zum ersten Mal hochgefahren wurde. Cray ist selbstverständlich ein Echter Programmierer.

Einer meiner Lieblings-Echter-Programmierer war Jim, ein Systemprogrammierer bei Texas Instruments. Eines Tages erreichte ihn ein Ferngespräch von einen User, dessen System mitten in einer wichtigen Arbeit zusammengebrochen war. Jim behob den Schaden über das Telefon, indem er den User dazu brachte, Disk I/O-Instruktionen über die Schalttafel einzugeben, nach seinen Anweisungen Registerinhalte auszulesen und System Tables in Hex zu reparieren. 

Die Moral der Geschichte: Obwohl ein Echter Programmierer nützlicherweise eine Lochkartenstanze und einen Printer zu seinem Werkzeug zählt, kann er im Notfall mit einer Schalttafel und einem Telefon auskommen.

In einigen Firmen besteht das Editieren von Programmtext nicht länger darin, dass zehn Ingenieure Schlange stehen, um eine 029-Lochkartenstanze zu benutzten. Tatsächlich ist es so, dass in dem Gebäude, in dem ich arbeite, keine einzige Lochkartenstanze steht. Der Echte Programmierer hat in dieser Situation seine Arbeit mit einem Text-Editor-Programm zu machen. Die meisten Systeme sind mit verschiedenen Editoren ausgestattet, aus denen man wählen kann, und der richtige Programmierer muss achtgeben, dass er sich den aussucht, der seinem persönlichen Stil entspricht.

Viele Leute glauben, dass die besten Editoren der Welt im Xerox Palo Alto Research Center geschrieben werden, zur Verwendung auf Altos- und Dorado-Computern. Unglücklicherweise wird sich kein Echter Programmierer jemals einen Computer wünschen mit einem Betriebssystem, das SmallTalk ("Geplapper") heißt, und bestimmt seinem Computer keine Mitteilungen mit einer Maus machen.

Einige der Konzepte dieser Xerox Editoren sind in Editoren aufgenommen worden, die auf Betriebssystemen laufen mit etwas vernünftigen Bezeichnungen, wie etwa EDT oder VI. Das Problem mit den Editoren ist, dass Echte Programmierer meinen, WYSIWYG ("what you see is what you get") sei ein schlechtes Konzept für Texteditoren. Der Echte Programmierer will einen "you asked for it, you got it"-Editor; einen, der kompliziert, kryptisch, mächtig, unnachsichtig und gefährlich ist. TECO, um genau zu sein.

Man hat festgestellt, dass eine TECO-Kommandofolge eher an Zeichensalat durch übertragungsrauschen erinnert, als an lesbaren Text. Eines der unterhaltsamsten Spiele mit TECO besteht darin, dass man seinen Namen als Kommandozeile eintippt und Vermutungen darüber anstellt, was dadurch passiert. So gut wie jeder mögliche Tippfehler wird bei der Kommunikation mit TECO kurzerhand dein Programm zerstören, oder schlimmer noch, subtile und mysteriöse Bugs in Subroutinen einschleusen, die einst funktionierten.

Aus diesem Grund widerstrebt es Echten Programmierern, ein Programm zu editieren, das kurz davor steht, zu funktionieren. Sie finden es viel einfacher, den binären Objektcode direkt zu patchen, indem sie ein wunderbares Programm benutzen, das SUPERZAP (oder das entsprechende äquivalent auf nicht IBM-Maschinen) heißt. 

Das funktioniert so gut, dass viele Programme, die auf IBM- Systemen laufen, keinerlei Verwandtschaft mehr mit dem Original FORTRAN-Code haben. In einer Anzahl von Fällen ist der Source Code nicht länger verfügbar. Wenn es an der Zeit ist, ein derartiges Programm zu fixieren, wird kein Manager jemand geringeren als einen Echten Programmierer mit dem Job betrauen - kein müslifressender, strukturierender Programmierer würde wissen, wo anfangen. Das nennt man Arbeitsplatzsicherung.

Einige Programmier-Tools, die nicht von Echten Programmierern benutzt werden:

  • FORTRAN-Präprozessoren wie MORTRAN und RATFOR. Derartige Programmierrezepte sind gut zum Müslimachen
  • Source Language Debugger. Echte Programmierer können Core Dumps lesen
  • Compiler mit Array Bounds Checking. Sie ersticken die Kreativität, vernichten die meisten der interessanten Verwendungsweisen für EQUIVALENCE und machen es unmöglich, den Betriebssystemcode mit negativen Vorzeichen zu modifizieren. Das Schlimmste: Bounds Checking ist ineffizient.
  • Source Code-Pflegesysteme. Ein Echter Programmierer hält seinen Code in einem Karteikasten verschlossen, denn er geht davon aus, dass der Eigentümer seine wichtigen Programme nicht unbewacht zurücklassen kann.

Wo lebt der typische Programmierer? Was für eine Art von Programmen sind solcher talentierter Individuen würdig? Man kann sicher sein, dass sich kein Echter Programmierer tot schreibt an einem Programm für Konto-Außenstände in COBOL, oder einem Maillist-Sortierprogramm für das "CHIP"-Magazin. Ein Echter Programmierer braucht Arbeiten von erderschütternder Wichtigkeit.

Echte Programmierer arbeiten für das Los Alamos National Laboratory und schreiben Atombomben-Simulationen, die auf Cray II Supercomputern laufen. Sie arbeiten auch für die National Security Agency und decodieren russische Funksprüche. Es war eine großartige Belohnung für die Anstrengung tausender Echter Programmierer bei der NASA, dass unsere Jungs vor den Kosmonauten auf den Mond und wieder zurück gekommen sind. Die Computer im Space Shuttle sind von Echten Programmierern programmiert, und diese wahren Profis sind auch bei Boing an der Arbeit, um Steuerungssysteme für Cruise Missiles zu entwerfen.

Einige der ehrfurchtgebietendsten Echten Programmierer arbeitet im Jet Propulution Laboratory in Kalifornien. Viele von ihnen kennen das gesamte Betriebssystem der Pioneer- und Voyager-Sonden wie ihre Westentasche. 

Mit einer Kombination von großen, in den Bodenstation verfügbaren FORTRAN-Programmen und kleinen, in den Rechnern der Sonden untergebrachten Assembler-Programmen können sie unglaubliche Kunststücke an Navigation und Improvisation vollbringen - wie etwa nach sechs Jahren im All zehn Kilometer große "Fenster" am Saturn zu treffen, oder beschädigte Sensor-Plattformen, Funkgeräte oder Batterien zu reparieren oder zu überbrücken. 

Einer der Echten Programmierer brachte es fertig, ein Bildverarbeitungsprogramm in einigen hundert Bytes unbenutzten Speichers in einer der Voyager-Sonden zu quetschen, das anschließend einen neuen Jupitermond suchte, lokalisierte und fotografierte. 

Ein Plan für die Galileo-Sonde geht dahin, auf dem Weg zum Jupiter eine Gravitations-Ablenkung um den Mars zu benutzten. Diese Route verläuft 80 (+/- 3) Kilometer über die Marsoberfläche. Kein Mensch wird diese Art von Navigation einem Pascal-Programm oder -Programmierer anvertrauen.

Viele der Echten Programmierer arbeiten für das U.S. Gouverment, vor allem für das Verteidigungsministerium. Das ist so, wie es ein soll. Vor kurzem hat sich eine schwarze Wolke am Horizont der Echten Programmierer zusammengeballt. Es scheint, dass ein paar höhergestellte Müslifresser im Verteidigungsministerium entschieden haben, dass alle Verteidigungsprogramme in einer großen vereinheitlichten Sprache namens Ada geschrieben werden sollen. Für eine Weile schien es, als ob Ada ausersehen worden wäre, sämtliche Regeln des Echten Programmierers nichtig zu machen. Es ist eine Sprache mit Struktur, Datentypen, Großschreibung und Semikolons. Kurz gesagt, wie geschaffen, die Kreativität des Echten Programmierers zu verkrüppeln. 

Glücklicherweise hat die Sprache, derer sich das Department of Defence angenommen hat, genügend interessante Features um sie annehmbar zu machen - sie ist unglaublich komplex, beinhaltet Methoden, um Schweinereien mit dem Betriebssystem anzustellen und Speicher nachträglich einzurichten, und Edgar Dijkstra mag sie nicht. 

Dijkstra, wie man wissen muss, verfasste "GOTOs Considered Harmful", ein Meilenstein der Programmiermethoden, auf die Pascal-Programmierer und Müslifresser abfahren. Nebenbei: ein Echter Programmierer kann, wenn es sein muss, FORTRAN-Programme in jeder Sprache schreiben.

Der Echte Programmierer kann einem Kompromiss mit seinem Prinzipien eingehen und an geringfügig trivialeren Dingen als der Zerstörung des Lebens arbeiten, vorausgesetzt, dabei ist genug Geld zu holen. 

Es gibt einige Echte Programmierer, die beispielsweise bei Atari Videospiele programmieren. Aber sie spielen die Spiele nicht. Ein Echter Programmierer weiß, dass er die Maschine zu jeder Zeit schlagen kann, und darin steckt keine Herausforderung mehr. 

Jeder, der bei Lucasfilm arbeitet, ist ein Echter Programmierer, denn es wäre verrückt, das Geld von 50 Millionen Star Wars Fans sinnlos zu verplempern. 

Der Anteil von Echten Programmierern in der Computergraphik ist etwas niedriger als die Norm, großteils weil noch niemand herausgefunden hat, wofür die Computergraphik nützlich sein könnte. Andererseits ist die ganze Computergraphik in FORTRAN gemacht, so dass es Leute gibt, die Graphik machen nur um dem COBOL-Programmieren aus dem Weg zu gehen.

Im Allgemeinen spielt der Echte Programmierer auf dieselbe Weise, wie er arbeitet - mit Computern. Es amüsiert ihn unentwegt, dass sein Auftraggeber ihn für das bezahlt, was er ohnehin zu seinem Vergnügen tun würde, obgleich er es natürlich sorgfältig vermeidet, seine Auffassung laut zu äußern. Gelegentlich geht der Echte Programmierer aus dem Büro, um ein wenig frische Luft zu sich zu nehmen, oder ein oder zwei Bier.

Hier ein paar Tipps, um Echte Programmierer außerhalb eines Rechenzentrums zu erkennen:

  • Auf Partys sind die Echten Programmierer diejenigen in der Ecke, die über Betriebssystemsicherheit plaudern, und wie man sie umgehen kann.
  • Bei einem Fußballspiel ist der Echte Programmierer derjenige, welcher den Spielverlauf mit seiner Simulation, gedruckt auf grünweißem - Endlospapier, vergleicht.
  • Ein Echter Programmierer geht in eine Diskothek, um sich die Lightshow anzusehen.
  • Bei einem Begräbnis ist der Echte Programmierer derjenige, der sagt: "Armer Gregor. Und er hatte die Sortierroutine kurz vor der Vollendung."
  • In einem Lebensmittelgeschäft ist der Echte Programmierer derjenige, der darauf besteht, seine Dosen selbst an dem Barcode-Scanner vorbeizuschieben, weil er nicht daran glaubt, dass die Verkäuferin es beim ersten Male richtig macht.

In was für einer Art von Umgebung fühlt sich ein Echter Programmierer am wohlsten? Das ist eine wichtige Frage für den Auftraggeber von Echten Programmierern. In Anbetracht der Stange Geld, die ein Stab von Mitarbeitern kostet, erscheint es am besten, ihn in einer optimalen Umgebung unterzubringen.

Der typische Echte Programmierer lebt vor einem Computerterminal. Um das Terminal herum liegen die Listings aller Programme, an denen er jemals gearbeitet hat. Diese sind in grob chronologischer Ordnung auf jeder ebenen Fläche des Raums gestapelt. 

Ebenfalls zu finden ist etwa ein halbes Dutzend halbvoller Tassen mit kaltem Kaffee. Gelegentlich schwimmen Zigarettenstummel in dem Kaffe. In einigen Fällen enthalten die Tassen auch Orangensaft. 

Weiter, außer er ist wirklich SEHR gut, werden sich Kopien des OS JCL-Handbuchs finden, sowie die "Principles of Operation", aufgeschlagen auf einer sehr interessanten Seite. 

An die Wand geheftet befindet sich ein auf einem Uralt-Printer gedruckter Snoopy-Kalender aus dem Jahre 1969. über den Boden verstreut liegen die Verpackungen diverser mit Erdnussbutter gefüllter Käsebrote. Schließlich, in der linken obersten Schreibtischschublade, unter einer Schachtel Kekse, befinden sich Flußdiagramm-Formulare, die ein Vorgänger da zurückgelassen hat. Echte Programmierer schreiben Programme, keine Dokumentationen, die für das Wartungspersonal hinterlassen werden.

Der Echte Programmierer ist, unter großem Druck, in der Lage, 30, 40, sogar 50 Stunden in einem durch zu arbeiten. Er schätzt es, so zu arbeiten. Leerlaufzeiten sind für den Echten Programmierer kein Problem; sie geben ihm die Möglichkeit, ein Mützchen Schlaf zwischen zwei Compilerdurchgängen zu nehmen. 

Wenn nicht genug Termindruck auf dem Echten Programmierer lastet, tendiert er dazu, die Zügel schleifen zu lassen, indem er in den ersten neun Wochen an einem kleinen, aber interessanten Bereich des Problems herumbastelt. Dann schließt er die gesamte Arbeit in der letzten Woche ab, in zwei oder drei 50- Stunden-Marathons. Das beeindruckt nicht nur seinen Auftraggeber, sondern liefert gleichzeitig eine bequeme Ausrede dafür, dass keinerlei Dokumentation vorhanden ist.

Generell:

  • Kein Echter Programmierer arbeitet von 9 bis 5, außer in der Nacht.
  • Echte Programmierer tragen keine Krawatten.
  • Echte Programmierer tragen auch keine hochhackigen Cowboystiefel.
  • Echte Programmierer treffen gegen Mittag im Büro ein.
  • Ein Echter Programmierer weiß den Namen seiner Frau, oder er weiß ihn auch nicht. Was er auf jeden Fall weiß, ist die gesamte ASCII-(oder EBCDIC)-Codetabelle.
  • Echter Programmierer wissen nicht, wie man kocht. Lebensmittelgeschäfte sind selten um 3 Uhr morgens geöffnet, also müssen sie mit Keksen - und Kaffee überleben.

Wirft man einen Blick in die Zukunft, so ziehen einige Echte Programmierer in Betracht, dass die jüngste Programmierer-Generation nicht mit denselben Aussichten großgeworden ist, wie ihre Eltern. Viele von ihnen haben nie einen Computer mit Schalttafel gesehen. Nur wenige, die heute von der Schule kommen, beherrschen Sedezimal-arithmetik ohne einen Taschenrechner. Die heutigen Universitätsabsolventen sind gegenüber der harten Programmierwirklichkeit wie in Watte gepackt durch Source Level Debugger, Text-Editoren, die Klammern zählen, und benutzerfreundliche Betriebssysteme. Am schlimmsten ist, dass einige dieser angeblichen Computerwissenschaftler eine Promotion schaffen, ohne FORTRAN zu lernen! Steht uns bevor, eine Gesellschaft von Unix-Hackern und Pascal-(oder Modula)-Programmierern zu werden?

Nach meinem Dafürhalten sieht die Zukunft für Echte Programmierer nach wie vor glänzend aus. Weder OS/370 noch FORTRAN zeigen Anzeichen auszusterben, den boshaften Bemühungen von Pascal-Programmierern zum Trotz. Auch sehr subtile Tricks wie etwa der Versuch, FORTRAN strukturierte Code-Konstrukte unterzujubeln, sind fehlgeschlagen. Ja sicher, ein paar Computerhändler sind mit FORTRAN 77-Compilern rausgekommen, aber in jedem von denen gibt es einen Weg, auf dem er sich selbst in einem FORTRAN 66-Compiler zurückverwandeln kann - um DO-Schleifen zu compilieren wie Gott es vorgesehen hat.

Sogar Unix scheint nicht mehr ganz so schlimm für Echte Programmierer zu sein, wie es einmal war. Die letzte Version von Unix hat die Stärken eines Betriebssystems, das einem Echten Programmierer würdig ist. Es hat zwei unterschiedliche und subtil inkompatible User Interfaces, einen überzogenen und komplizierten DFÜ-Treiber und virtuellen Speicher. Wenn man von der Tatsache absieht, dass es strukturiert ist, kann sogar das Programmieren in C für einen Echten Programmierer annehmbar werden. Es gibt kein Type Checking, Variablennamen sind sieben (10? acht?) Zeichen lang, und das Bonbon des Pointer-Datentyps ist noch hinzugefügt. Es ist als hätte man die besten Teile von FORTRAN und Assembler in einer Sprache; noch ohne an einige der mehr künstlerischen Anwendungen für "define" zu denken.

Nein, die Zukunft ist nicht dunkel. In den letzten Jahren hat die Presse auch die glänzende Schar neuer Computerleuchten und Hacker bemerkt, die aus Orten wie Stanford oder MIT in die Echte Welt rausgehen. Allem Anschein nach lebt der Geist des Echten Programmierens in all diesen jungen Männern weiter. Solange es abartig definierte Sprungziele, bizarre Bugs und unrealistische Tabellen gibt, wird es Echte Programmierer geben, gewillt einzuspringen, das Problem zu klären und die Dokumentation auf später zu verschieben.

Lang lebe FORTRAN!

Original von Ed Post - Leserbrief in "datamation" vom Juli 1983