Da hat uns dieser Tim Berners-Lee ja schön was eingebrockt: Mit seiner Erfindung des weltweiten Webs hat er die gesamte Programmiererei auf den Kopf gestellt. Denn plötzlich musste man HTML lernen, um Webseiten bauen zu können. Und man musste absolut firm mit dem Client-Server-Prinzip sein. Das hatten wir Computer-Freaks der Achtzigerjahre doch ganz anders gelernt. Wir schrieben einen Programmcode und warfen ihm dem passenden, lokalen Interpreter vor und – schwupps – lief das Ding (oder auch nicht). Die Fortgeschrittenen schmissen ihre Listings dagegen in einen Compiler, der aus dem Code ein ausführbares Programm machte (oder auch nicht). In Sachen WWW hatte man nun weder einen Interpreter, noch einen Compiler auf dem heimischen Computer am Start, sondern musste den Erguss irgendwie übers Internet an einen Server schicken.
Dort wurde dann die gewünschte HTML-Seite gebastelt und über die gewünschte URL der interessierten Welt zur Verfügung gestellt. Ganz so neu war das Prinzip dann doch nicht, und vor allem für Datenbank-Programmierer war das ein alter Hut. Aber das kuschelige lokale Programmieren war nicht das Einzige, was hinten rüber fiel. Denn auch das geliebte prozedurale Programmieren war auf einmal nicht mehr angesagt – die objektorientierte Programmierung übernahm die Macht. Damit wir uns nicht missverstehen: So sah die Code-Revolution der Neunzigerjahre lediglich aus Sicht von uns Hobbyprogrammierern aus, die wir so stolz auf unsere BASIC- oder gar Pascal-Progrämmchen waren. In der Welt der richtigen IT fanden diese Paradigmenwechseln gut und gern fünfzehn, zwanzig Jahre früher statt.
Aber es gab Internethelden, die sich dem widersetzten. Rasmus Lerdorf war so einer. Er schenkte uns PHP und stieß damit die Tür zur Internetprogrammierung für den Rest von uns auf. Aber schauen wir uns die Sache von Anfang an an:
1987: Larry Wall bastelt sich Perl zurecht
Ein weiser Mensch hat einmal gesagt: Zwei Branchen haben den Fortschritt in der Computerei angetrieben – das Militär und die Pornographie. Dabei hat er einen dritten Bereich außer Acht gelassen: die Geheimdienste. Und so kommt es, dass die mehr berüchtigte als berühmte NSA den Anlass zur Entwicklung einer der wichtigsten Internet-Sprache vorangetrieben hat. Die wurde in der Kennedy-Ära im Zusammenhang mit dem kalten Krieg massiv auf Technik gebürstet und war die erste nachrichtendienstliche Behörde der Welt, die auf Computer setzte. Wie wir heute wissen, entwickelte sich die NSA später zur größten globalen Abhörzentrale, und ein Programmierer hat dabei mitgeholfen.
Larry Wall war bei Unisys angestellt und sollte diverse Tools für den Geheimdienst entwickeln, mit denen die gesammelten Daten ausgewertet werden konnten. Und weil ihm die zur Verfügung stehenden Tools und Sprachen viel zu komplex und umständlich waren, bastelte er sich aus einem Haufen Sprachkonstrukte eben Perl zusammen. Der große Vorteil von Perl war und ist, dass es sich um eine lizenzfreie Sprache handelt, die per Interpreter auf jeglicher Hardware und jeglichem Betriebssystem läuft. Zudem ist Perl nahezu beliebig durch Elemente aus anderen Sprachen erweiterbar. Der Nachteil besteht logischerweise darin, dass das Perl-Code schwer zu dokumentieren ist. Die Kernkompetenz von Perl besteht aber darin, Daten aus den verschiedensten Quellen in einem Rutsch verarbeiten zu können. Deshalb wurden und werden viele Web-Anwendungen – u.a. in den Bereichen Finanzen und eben Nachrichten – in Perl geschrieben.
1991: Guido van Rossum gibt Python frei
So schlampig Perl erscheinen mag, so übersichtlich und klar wird mit Python programmiert. Wäre das später erschienenen PHP nicht so schnell so populär geworden, hätte Python das Pascal unter den Web-Sprachen werden können. Dabei hatte Guido van Rossum sich über die Weihnachtstage 1989 nur ein bisschen die Zeit vertreiben wollen. Aus der ebenfalls in den Niederlanden entwickelten Lern- und Prototyping-Sprache ABC wollte er eine Sprache machen, mit der sich tatsächlich Anwendungen schreiben lassen konnte – und die auch in den Augen von UNIX- und C-Freaks bestehen konnte. Der Name, darauf besteht der gute Guido, leitet sich übrigens von seiner Vorliebe für die britische Komikertruppe Monthy Python her…
Mit der Verbreitung des Internets und der Ankunft des WWW wuchs rasch eine treue, engagierte Python-Gemeinde, die van Rossum den Ehrentitel „wohlwollender Diktator auf Lebenszeit“ verlieh. Zwischen den Python-Fans und den PHP-Jüngern tobt seit vielen Jahren eine Art Glaubenskrieg, und es hießt, Python-Programmierer würden niemals PHP anfassen. Apropos PHP: Über diese Sprachen haben wir im Artikel über Rasmus Lerdorf alles Wesentliche geschrieben.
1992: Das CERN veröffentlicht die Auszeichnungssprache HTML
Das Problem, das ein Team am europäischen Kernforschungszentrum in Genf (CERN) ab 1989 bearbeitet, war eines, das den elektronischen Datenverkehr zwischen Wissenschaftlern auf aller Welt die Kooperation ziemlich erschwerte: Es war bis dato kaum möglich, Dokumente so zu übermitteln, dass sie beim Empfänger exakt in der Form ankamen, in der sie abgeschickt worden waren. Die Lösung sollte eine Auszeichnungs- bzw. Seitenbeschreibungssprache sein, mit der Textdokumente mitsamt ihrem Aussehen, allen enthaltenen Elementen und dem gesamten Inhalt in Form einer Metasprache beschrieben werden. So etwas gab es schon: Bereits in den frühen Achtzigerjahren hatte man bei Adobe das legendäre Postscript entwickelt, um gestaltete Seiten so zu kodieren, dass jeder postscriptfähige Drucker dasselbe Resultat erzeugen konnte.
HTML sollte nun dafür sorgen, dass ein Dokument auf jeder Hard- und Software mit einem entsprechenden Interpreter identisch erscheinen würde. Das Prinzip ist simpel: Ein Wort wird nicht einfach fett gedruckt, sondern mit einem Tag versehen, der allen HTML-Empfänger sagt: Hey, gib dieses Wort fett aus! Man kennt das aus dem Druckgewerbe, besonders aus dem Fotosatz, wo Form und Inhalt voneinander getrennt verarbeitet werden – man sagt: Ein Stück Text wird ausgezeichnet, also mit der Anweisung versehen, es solle in dieser oder jener Schriftart und -größe fett, kursiv oder sonstwie ausgegeben werden.
Der Clou an HTML versteckt sich hinter dem H, das für „Hypertext“ steht. Schon Ende der Sechzigerjahre hatten Ted Nelson und Kollegen das Prinzip formuliert und schon in die Praxis umgesetzt, nach der in einem Text Verweise auf entfernte Elemente eingesetzt werden, die beim Auswerten des Textes aufgerufen werden können – so wie man früher anhand einer Nummer eine Fußnote am Ende der Seite oder des Buches nachgeschlagen hat. Hatte man beide Prinzipien – also das einer Seitenbeschreibungssprache und das der Hyperlinks – einmal inhaliert, war HTML ziemlich leicht zu erlernen und zu beherrschen.
1995: Die Java-Technologie verändert alles
Nein, Java mag eine Programmiersprache sein, aber einfach mal auf dieselbe Weise abhandeln wie Perl, PHP und Python lässt sie sich nicht. Denn es handelt sich um eine Technologie, die das Programmieren im Internet völlig auf den Kopf gestellt hat. Selbst das späte Kind dieser Technologie, JavaScript, lässt sich ohne einen Ausflug in die Java-Technologie nicht so einfach erklären. Deshalb werden wir diesem Komplex eine eigene Folge widmen, versprochen…
[Bildnachweis – Larry Wall: Sergiy Ostrovsky via Wikimedia unter der Lizenz CC BY-SA 4.0; Guido van Rossum: Daniel Stroud via Wikimedia unter der Lizenz CC BY-SA 4.0]