IPC-Keynote von Kris Köhntopp

20 Jahre PHP – viele Meilensteine und so manche „bad idea“
2 Kommentare

Vor 20 Jahren erblickte die erste Version von PHP, den „Personal Home Page Tools“, das Licht der Welt. Und seit Rasmus Lerdorf die Skriptsprache 1995 als Ersatz für eine Sammlung von Perl-Skripten erdacht hat, ist wahrlich viel passiert.

Von PHP/FI (PHP 2) über PHP 3, 4, und 5 bis hin zur anstehenden Veröffentlichung von PHP 7 – der 20. Geburtstag von PHP ist ein weiterer bedeutender Meilenstein und gab Kris Köhntopp, OpenStack-Experte bei SysEleven, den perfekten Anlass in seiner Keynote auf „20 Years of PHP“ zurückzublicken.

PHP/FI

Am Anfang war PHP/FI, ein Set von Perl-Skripten zur Erfassung der Zugriffe auf den Webauftritt von Rasmus Lerdorf, auf dem er seinen Lebenslauf hostete. Genannt „Personal Home Page Tools“ genügte das Set an Skripten schnell nicht mehr den Ansprüchen. Mehr Funktionalität musste her und Lerdorf schrieb eine größere Umsetzung in C, die auch mit Datenbanken kommunizieren konnte und einfache, dynamischer Webapplikationen ermöglichte. Der Quellcode von PHP/FI (Personal Home Page / Forms Interpreter) wurde veröffentlicht und wies schon einige der heutigen Charakteristiken auf.

Grundsätzlich war PHP schon immer einfach zu lernen. „Doch ist es vielleicht zu einfach,“ fragte Kris Köhntopp das Publikum rhetorisch. Nein, natürlich nicht. Gerade am Anfang war es zwar recht langsam und wenig elegant. Aber es war vollständig – zumindest konnte es all das sein, was man wollte. Wünsche und Anforderungen konnten einfach durch Entwicklung in C in die Sprache eingeführt werden. Darüber hinaus hat PHP stets auch durch seine hohe Skalierbarkeit gepunktet und kam nicht zuletzt deswegen in den Anfängen von Facebook zum Einsatz.

PHP is free, easy to learn, open source, and powerful.

Als weitere wichtige Faktoren für die Erfolgsgeschichte von PHP sieht Köhntopp einerseits die ausführliche Dokumentation, Diskussionen in den User-Nodes und natürlich die „Paarung“ mit MySQL, die vor allem den professionellen Einsatz von PHP mit einem Schlag kostengünstiger und zugänglicher machte.

PHP 2 und PHP 3

Nach PHP/FI 2.0, der zweiten Überarbeitung der C-Implementierung im November 1997, kam kurz danach schon die erste Alphaversionen von PHP 3.

Das 1997 von Zeev Suraski und Andi Gutmans neu geschriebene PHP 3.0 war dann dem heutigen PHP schon recht ähnlich – auch Kris Köhntopp bezeichnete es als die „erste richtige“ PHP-Version. Auf der Habenseite stehen vor allem die starken Erweiterungsmöglichkeiten sowie eine solide Infrastruktur für eine Menge an Datenbanken, Protokollen und APIs. Aspekte, die viele Entwickler anlockten und somit den Schlüssel zum Erfolg von PHP darstellten.

Doch natürlich hatte auch PHP 3 seine Schwächen, allen voran eine schlechte Objektorientierung.

PHP 4

PHP 4, releast im Mai 2000, stand ganz im Zeichen seiner neuen Engine, der Zend Engine. Suraski und Gutmans hatten knapp zwei Jahre auf das Ziel hingearbeitet, PHP eine höhere Leistung beim Ausführen von komplexen Applikationen sowie verbesserte Modularität des Basiscodes zu erreichen. Die Zend Engine konnte dies umsetzen und darüber hinaus noch mit Unterstützung für weitere Webserver, HTTP-Sessions, Ausgabepufferung, sicherere Wege im Umgang mit Benutzereingaben und diverse neue Sprachkonstrukte aufwarten.

PHP 5

Im Juli 2004 wurde schließlich nach langwierigen Arbeiten und mehreren Pre-Releases PHP 5 veröffentlicht. Im Kern werkelt die Zend Engine 2.0, die ein neues Objektmodell und Dutzende anderer neuer Features einführte. Doch die Annahme durch die Community war schleppend. Zahlreiche Probleme erschwerten es der Version schnell eine ordentliche Marktdurchdringung zu erreichen.

Klar, PHP konnte eine verbesserte Unterstützung für Objektorientiertes Programmieren vorweisen. Und auch in anderen Sprachen bereits gängige Features wie Try/Catch-Errors oder Exception Handling waren jetzt an Bord. Doch im Rückblick waren es vor allem die zahlreichen „bad ideas“, die Kris Köhntopp dem Publikum vor Augen führte:

  • Constructors
  • Magic Quotes
  • URL-Wrapper
  • das Timeout und Error-Handling
  • generell zu viel Magic wie bspw. mit dem @-Operator, Safe Mode oder Short Open
  • nicht zu vergessen das Optional Static Typing, das mit PHP 7 eingeführt wird.

Auch einen Mangel an wissenschaftlichen Arbeiten zu PHP und PHP-Best-Practices bemängelt Köhntopp. Zwar gibt es einige allgemein gültige Best Practices, die dazu noch lokal variieren, doch es fehlt die Diskussion darüber.

Vielleicht steckt hinter diesen Mängel auch der Grund für einen gewissen Neid auf Java, den Köhntopp zu spüren glaubt. Oder überspitzt formuliert: Auf der einen Seite hat man das nette Java, das selbst für Kinder geeignet ist. Und auf der anderen Seite das hässliche und „gefährliche“ PHP.

Als umso wichtiger sieht Köhntopp deshalb die Community. „Redet mit anderen darüber, was ihr tut und warum ihr es tut. Gerade auf solchen Konferenzen wie der IPC.“ Es hilft, so Köhntopp, besseren Code zu schreiben, der auch gut performt. „Denn der Code sollte nicht durch die kommerziellen Anbieter bestimmt werden, sondern durch Menschen!“

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

2 Kommentare auf "20 Jahre PHP – viele Meilensteine und so manche „bad idea“"

avatar
400
  Subscribe  
Benachrichtige mich zu:
trackback

[…] 20 Jahre PHP – viele Meilensteine und so manche “bad idea”Kickoff zur IPC und WebTech Conference 2015HHVM 3.10.0 ist erschienenExpressive, eine Standalone-Z-Ray-Version und mehr: Zend stellt neue Tools vor […]

X
- Gib Deinen Standort ein -
- or -