Real Programmers Don't Use Pascal (deutsch)

Hauptkategorie: Externes Kategorie: Humor Erstellt: Montag, 17. Januar 2011 Zuletzt aktualisiert: Samstag, 30. Juni 2012 Veröffentlicht: Montag, 17. Januar 2011 Geschrieben von Jörg Hoppe
Hier die deutsche Version des englischen Originals.

Quelle: delphi.nusskugeldingsi.de/use_pascal.php

Teil 1

Vor langer Zeit, in der goldenen Ära der Computer, war es noch leicht, die Männer von den Memmen zu trennen (mitunter auch "echte Männer" und "Müslifresser" genannt). Echte Männer programmierten Computer, und Müslifresser ließen es bleiben. Ein richtiger Programmierer sagte Dinge wie "DO 10 I=1,10" und "ABEND", und der Rest der Welt quengelte "Computer sind mir zu kompliziert" oder "Ich kann zu Computern keine gefühlsmäßige Beziehung aufbauen - Sie sind mir zu unpersönlich". Dabei zeigte schon Remy Eyssens Buch "Echte Männer mögen kein Müsli" (Heyne TB 6290), dass echte Männer zu nichts und niemandem eine gefühlsmäßige Bindung aufbauen und dass sie auch keine Angst haben, unpersönlich zu sein. Aber die Zeiten ändern sich. Heute sehen wir eine Welt, in der kleine ältere Damen einen computerisierten Mikrowellenherd kaufen können, zwölfjährige Dreikäsehochs einen richtigen Mann bei Asteroids oder PacMan spielend in die Tasche stecken, und jedermann seinen höchstpersönlichen Personal Computer kaufen und sogar verstehen kann. Der richtige Programmierer droht von Studenten mit TRASH-80ern deklassiert zu werden!

Es gibt jedoch einige Unterschiede zwischen dem typischen Pac Man spielenden Gymnasiasten und einem richtigem Programmierer. Diese Unterschiede zu begreifen könnte den Heranwachsenden eine Perspektive geben - ein Ziel, nach dem sie streben können - eine Vaterfigur. Außerdem schützt es richtige Programmierer vor der Arbeitslosigkeit. Der einfachste Weg, um zu bestimmen, wer die richtigen Programmierer sind, geht über die Programmiersprache, die sie verwenden. Richtige Programmierer verwenden FORTRAN. Müslifresser verwenden Pascal. Niklaus Wirth, der Erfinder von Pascal, wurde einmal gefragt: "Wie sprechen Sie Ihren Namen aus?" "You can either call me by name, pronouncing it 'Veert', or call me by value, 'Worth'", sagte er. Man kann aus dieser Antwort unmittelbar ersehen, dass Niklaus Wirth ein Müslifresser ist. Die einzige Form der Wertübergabe, die ein richtiger Programmierer gutheißt, ist call-by-value-return, wie es in den IBM/370-FORTRAN-G- und -H- Compilern implementiert ist. Richtige 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. Richtige Programmierer programmieren Listenverwaltung, Stringmanipulation, 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, lass es ganz bleiben.

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, passen immer auf jeweils eine Seite irgendeiner obskuren Zeitschrift. 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 richtige Leben hinaus. Meine erste Aufgabe war, ein 200000 Zeilen langes FORTRAN-Programm zu lesen und zu verstehen, um es anschließend um einen Faktor zwei zu beschleunigen. Jeder richtige Programmierer wird dir sagen, dass kein strukturierter Code der Welt dir helfen kann, ein Problem wie das zu lösen - dazu braucht man wirkliches Talent.

Einige Betrachtungen zum Thema "Echte Programmierer und strukturierte Programmierung":

  • Richtige Programmierer haben keine Angst, GOTOs zu verwenden;
  • Richtige Programmierer können fünf Seiten lange DO-Schleifen schreiben, ohne nervös zu werden;
  • Richtige Programmierer lieben das arithmetische IF-Statement (das mit den drei Ausgängen), weil es den Code interessanter macht;
  • Richtige Programmierer schreiben selbstmodifizierenden Code, speziell wenn sich dadurch 20 Nanosekunden im Inneren einer engen Schleife einsparen lassen;
  • Richtige Programmierer brauchen keine Kommentierungen; der Code spricht für sich;
  • dass es in FORTRAN keine strukturierten IF-, REPEAT...UNTIL- oder CASE- Statements gibt, braucht einen richtigen Programmierer nicht zu sorgen. Nebenbei, man kann sie nötigenfalls durch zugewiesene GOTOs simulieren.

"Datenstrukturen" gehen seit kurzer Zeit auch durch die Presse. Abstrakte Datentypen, Strukturen, Pointer, Listen und Strings sind in bestimmten Kreisen populär geworden. Wirth der Müslifresser, hat ein ganzes Buch geschrieben ("Algorithms + Data Structures = Programs", Prentice Hall, 1976), das behauptet, man könne Programme basierend auf "Datenstrukturen" schreiben, anstatt den umgekehrten Wege zu benutzen. Wie jeder richtige Programmierer weiß, ist der einzige nützliche Datentyp das Array. Strings, Listen, Strukturen 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; richtige Programmiersprachen legen den Typ - wie wir alle wissen - anhand des ersten Buchstabens eines maximal sechs Zeichen langen Bezeichners implizit fest.

Was für eine Art von Betriebssystem verwendet ein richtiger Programmierer?

CP/M? Gott behüte. Im Grunde ist das ein Spielzeug-Betriebssystem. Auch kleine ältere Damen und Oberschüler können CP/M 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's um die Wurst geht, ist Unix ein herrliches Videospiel. Die Leute machen nichts Seriöses auf Unix-Systemen; sie schicken Scherzchen via USENET um die Erde oder schreiben Adventure-Games und Forschungsberichte.

Nein, der richtige Programmierer verwendet OS/370. Ein guter Programmierer kann die Beschreibung eines IJK305I-error, der gerade aufgetreten ist, in seinem JCL-Handbuch suchen 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 benutzen.

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 heranzugehen, ist über einen Lochkartenstanzer. Einige Leute behaupten, es gäbe ein Time-Sharing-System, das auf OS/370 läuft, aber nach sorgfältigem Studium bin ich zu der Ansicht gelangt, dass sie Unrecht haben.

Was für Tools benutzt der richtige Programmierer?

Theoretisch kann ein richtiger Programmierer seine Programme zum Laufen bringen, indem er sie direkt über das Frantpanel in den Computer eingibt. In den frühen Tagen, als die Computer noch Schalttafeln hatten, wurde das gelegentlich so gemacht. Der typische richtige 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-I-Supercomputers und der meisten Control-Data-Computer, das erste Betriebssystem für den CDC 7600 aus dem Gedächtnis über das Frontpanel eingab, als sie zum ersten Mal hochgefahren wurde. Cray ist selbstverständlich ein richtiger Programmierer.

Einer meiner Lieblings-richtige-Programmierer war Systemprogrammierer bei Texas Instruments. Eines Tages erreichte ihn ein Ferngespräch von einem User, dessen System mitten in einer wichtigen Arbeit zusammengebrochen war. Jim behob den Schaden, indem er den User dazu brachte, Disk-I/O-Instruktionen über die Schalttafel einzugeben, nach seinen Anweisungen System Tables in Hex zu reparieren und Registerinhalte auszulesen. Die Moral dieser Geschichte: Obwohl ein richtiger Programmierer nützlicherweise einen Lochkartenstanzer und einen Printer zu seinem Werkzeug zählt, kann er im Notfall mit einem Frontpanel und einem Telefon auskommen.

In einigen Firmen besteht das Edieren von Programmtext nicht länger darin, dass zehn Ingenieure Schlange stehen, um einen 029-Lochkartenstanzer zu benutzen. Tatsächlich ist es so, dass in dem Gebäude, in dem ich arbeite, kein einziger Lochkartenstanzer steht. Der richtige Programmierer hat in dieser Situation seine Arbeit mit einem Text-Editor-Programm zu machen. Die meisten Systeme sind mit mehreren 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 Palo Alto Research Center, zur Verwendung auf Altos- und Dorado-Computern geschrieben werden. Unglücklicherweise wird kein richtiger Programmierer jemals einen Computer mit einem Betriebssystem benutzen, das SmallTalk heißt, und er wird dem Computer bestimmt keine Mitteilungen mit einer Maus machen.

Einige der Konzepte dieser Xerox-Editoren sind in Editoren aufgenommen worden, die auf Betriebssystemen mit etwas vernünftigeren Bezeichnungen wie EMACS oder VI laufen. Das Problem mit diesen Editoren ist, dass richtige Programmierer meinen, "what you see is what you get" sei ein schlechtes Konzept für Text-Editoren. Der richtige 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 bei der Kommunikation mit TECO wird dein Programm zerstören, oder schlimmer noch, subtile und mysteriöse Bugs in Subroutinen schleusen, die mal funktioniert haben.

Aus diesem Grund widerstrebt es richtigen Programmierern, ein Programm zu edieren, das kurz davor steht zu funktionieren. Sie finden es viel einfacher, den binären Objektcode 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 solches Programm zu fixen, wird kein Manager jemand Geringeren als einen richtigen Programmierer mit dem Job betrauen - kein müslifressender, strukturierter Programmierer würde wissen, wo anzufangen wäre. Das nennt man Arbeitsplatzsicherung.

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

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

Teil 2

Wo arbeitet der typische richtige Programmierer?

Was für eine Art von Programmen sind solcher talentierter Individuen würdig? Man kann sicher sein, dass sich kein richtiger Programmierer totschreibt an einem Programm für Kontoaußenstände in COBOL oder an einem Maillist-Sortierprogramm für das "People"-Magazin. Ein richtiger Programmierer braucht Arbeiten von erschütternder Wichtigkeit.

Richtige Programmierer arbeiten für das Los Alamos National Laboratory und schreiben Atombomben-Simulationen, die auf Cray-I-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 Anstrengungen tausender richtiger 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 richtigen Programmierern programmiert, und diese wahren Profis sind auch bei Boeing an der Arbeit, um Steuerungssysteme für Cruise Missiles zu entwerfen.

Einige der ehrfurchtsgebietendsten richtigen Programmierer arbeiten im Jet Propulsion 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 der 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 Positionsfensteram Saturn zu treffen, oder beschädigte Sensor-Plattformen, Funkgeräte oder Batterien zu reparieren oder zu überbrücken. Einer der richtigen Programmierer brachte es fertig, ein Bildverarbeitungsprogramm in einige 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 Galilei-Sonde geht dahin, auf dem Weg zum Jupiter eine Gravitations-Ablenkung hinter dem Mars zu benutzen. Diese Route verläuft 80 +/- 3 Kilometer über der Marsoberfläche. Kein Mensch wird sich für diese Art von Navigation einem Pascal-Programm oder -Programmierer anvertrauen.

Viele der richtigen Programmierer arbeiten für das U. S. Government, vor allem für das Verteidigungsministerium. Das ist so, wie es sein soll. Vor kurzem hat sich eine schwarze Wolke am Horizont der richtigen 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 richtigen Programmierens nichtig zu machen. Es ist eine Sprache mit Struktur, Datentypen, Großschreibung und Semikolons. Kurz gesagt, wie geschaffen, um die Kreativität des typischen richtigen Programmierers zu verkrüppeln. Glücklicherweise hat die Sprache, derer sich das Department of Defense 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 richtiger Programmierer kann FORTRAN-Programme in jeder Sprache schreiben.

Der richtige Programmierer kann einen Kompromiss mit seinen Prinzipien eingehen und an geringfügig trivialeren Dingen als der Vernichtung des Leben wie wir es kennen arbeiten, vorausgesetzt, dabei ist genug Geld zu holen. Es gibt einige richtige Programmierer, die bei Atari Videospiele programmieren (Aber sie spielen die Spiele nicht. Ein richtiger Programmierer weiß, wie man die Maschine zu jeder Zeit schlagen kann, und dass darin keine Herausforderung steckt.) Jeder, der bei Lucas Film arbeitet, ist ein richtiger Programmierer, denn es wäre verrückt, das Geld von 50 Millionen Star-Wars-Fans sinnlos zu verplempern. Den Anteil von richtigen Programmierern in der Computergrafik ist etwas niedriger als die Norm, großteils weil noch niemand herausgefunden hat, wofür Computergraphik nützlich sein könnte. Andererseits ist die ganze Computergraphik in FORTRAN gemacht, so dass es Leute gibt, die Grafik machen, nur um dem COBOL-Programmieren aus dem Weg zu gehen.

Im Allgemeinen spielt der richtige Programmierer auf dieselbe Weise, wie er arbeitet - mit Computern. Es amüsiert ihn unausgesetzt, 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 richtige Programmierer aus dem Büro, um ein wenig frische Luft zu sich zu nehmen, oder ein oder zwei Bier.

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

  • Auf Parties sind die richtigen Programmierer diejenigen in der Ecke, die über Betriebssystemsicherheit plaudern, und wie man sie umgehen kann.
  • Bei einem Fußballmatch ist der richtige Programmierer derjenige, welcher den Spielverlauf mit seiner Simulation, gedruckt auf grün-weißem Endlospapier, vergleicht.
  • Am Strand ist der richtige Programmierer der, der Flowcharts in den Sand zeichnet.
  • Ein richtiger Programmierer geht in die Discothek, um sich die Lightshow anzusehen.
  • Bei einem Begräbnis ist der richtige Programmierer derjenige, der sagt: "Armer George. Und er hatte die Sortierroutine kurz vor der Vollendung."
  • In einem Lebensmittelgeschäft ist der richtige Programmierer derjenige, der darauf besteht, seine Dosen selbst am Barcode-Scanner vorbeizuschieben, weil er nicht glaubt, dass Lochkartentippsen es die ersten Male richtig machen.

Teil 3

In was für einer Art von Umgebung funktioniert ein richtiger Programmierer am besten?

Das ist eine wichtige Frage für den Auftraggeber von richtigen Programmierern. In Anbetracht der Stange Geld, die ein Stab von Mitarbeitern kostet, erscheint es am besten, sie oder ihn in einer optimalen Umgebung unterzubringen.

Der typischen richtige 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 Büros gestapelt. Ebenfalls zu finden ist etwa ein halbes Dutzend halbvoller Tassen mit kaltem Kaffee. 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 teilweise recht interessanten Seiten. An die Wand geheftet befindet sich ein auf einem Uralt-Printer gedruckter Snoopy-Kalender aus dem Jahre 1969. über den Boden verstreut liegen die Reste der Verpackungen von gefüllten Keksen (der Typ, der schon in der Fabrik so furztrocken gebacken wird, dass er auch bei längerem Liegen im Automaten nicht schlechter wird). Schließlich, in der linken obersten Schublade, unter einer Schachtel Muntermacher, befinden sich Flußdiagramm-Formulare, die der Vorgänger zurückgelassen hat. Richtige Programmierer schreiben Programme, keine Dokumentation, das überlässt man den Typen von der Wartung.

Der richtige 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 richtigen 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 richtigen 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. Dies beeindruckt nicht nur seinen Auftraggeber, sondern liefert gleichzeitig eine bequeme Ausrede dafür, dass keinerlei Dokumentation vorhanden ist. Generell: Kein richtiger Programmierer arbeitet von 9:00 bis 17:00, außer wenn er Nachtschicht hat. Richtige Programmierer tragen auch keine Krawatten. Richtige Programmierer tragen keine hochhackigen Cowboystiefel. Richtige Programmierer treffen gegen Mittag im Büro ein. Ein richtiger Programmierer weiß den Namen seiner Frau, oder er weiß ihn auch nicht. Was er auf jeden Fall kennt, ist die gesamte ASCII-(oder EBCDIC)-Codetabelle. Richtige Programmierer wissen nicht, wie man kocht. Lebensmittelgeschäfte sind selten um 3:00 Uhr morgens geöffnet, also müssen sie von Keksen und Kaffee leben.

Wirft man einen Blick in die Zukunft, so ziehen einige richtige 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 einer Schalttafel gesehen. Nur wenige, die heute von der Schule kommen, beherrschen Hexarithmetik ohne einen Taschenrechner. Die heutigen College-Absolventen sind gegenüber der harten Programmierer-Wirklichkeit 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 einen Abschluß schaffen, ohne FORTRAN zu lernen! Steht uns bevor, eine Gesellschaft von Unix-Hackern und Pascal-Programmierern zu werden?

Nach meinem Dafürhalten sieht die Zukunft für richtige 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 herausgekommen, aber in jedem von denen gibt es eine Zusatzoption, mit der er sich selbst in einen FORTRAN-66-Compiler zurückverwandeln kann - um DO-Schleifen so zu compilieren, wie Gott es vorgesehen hat.

Sogar Unix scheint nicht mehr ganz so schlimm für richtige Programmierer zu sein, wie es einmal war. Die letzte Version von Unix hat die Stärken eines Betriebssystems, das eines richtigen Programmierers würdig ist. Es hat zwei unterschiedliche und subtil inkompatible User Interfaces, einen überzogenen und komplizierten TTY-Treiber und virtuellen Speicher. Wenn man von der Tatsache absieht, dass es strukturiert ist, kann sogar das Programmieren in C für einen richtigen Programmierer annehmbar werden. Es gibt keine Typüberprüfung, Variablennamen sind sieben (zehn? 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; ganz zu schweigen von den etwas kreativeren Anwendungen von "#define".

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 richtige Welt hinausgehen. Allem Anschein nach lebt der Geist des richtigen Programmierens in all diesen jungen Männern und Frauen weiter. Solange es abartig definierte Projektziele, bizarre Bugs und unrealistische Zeitpläne gibt, wird es richtige Programmierer geben, gewillt einzuspringen, das Problem zu klären und die Dokumentation auf später zu verschieben.

Original aus: Real Programmers Don't Use Pascal
(Ed Post; Wilsonville, Oregon; Datamation 7/83, übernommen aus FORTHTREE/Hamburg; übersetzung ins Deutsche von Peter Glaser; hier aus: Datenschleuder 20ff)
© 2011 Florian Rehder · http://FlorianRehder.de

Zugriffe: 11927