Im Gespräch mit Lars Jankowfsky

"In größeren Projekten entscheidet Architektur über Erfolg oder Misserfolg."
Kommentare

Um noch einmal kurz auf den OXID Shop zu sprechen zu kommen: Zuerst einmal vielen Dank, dass ihr eine Version der Allgemeinheit zur Verfügung gestellt habt. Denkst du, dass Open-Source-Gewinnmodelle die

Um noch einmal kurz auf den OXID Shop zu sprechen zu kommen: Zuerst einmal vielen Dank, dass ihr eine Version der Allgemeinheit zur Verfügung gestellt habt. Denkst du, dass Open-Source-Gewinnmodelle die Zukunft in der Softwareentwicklung sind?

Lars Jankowsky: Ja, davon bin ich überzeugt. Neben der Flexibilität die Kunden haben, wenn sie auf den Sourcecode zugreifen können, haben wir so auch eine erhöhte Sicherheit, die gerade im Internet sehr wichtig ist. Open Source heißt übrigens nicht immer „umsonst“, sondern nur, dass der komplette Sourcecode verfügbar ist. Im Fall vom OXID eShop ist er auch umsonst – aber auch hier gibt es eine duale Lizenzierung, ähnlich wie man sie z. B. von MySQL kennt. Letztlich müssen auch im Open-Source-Bereich Gehälter bezahlt werden.

Aber wieder zurück zu einem deiner Steckenpferde: Extreme Programming. Hier gehört Pair Programming zum Alltag eines Entwicklers. Mit wem würdest du gerne einmal in einem Projekt gemeinsam an der Tastatur sitzen?

Lars Jankowsky: Diese Frage ist wirklich gut. Ich hatte glücklicherweise schon oft das Vergnügen, mit Entwicklern, die ich sehr schätze, zusammenarbeiten zu können. Mal überlegen – wenn wir uns auf PHP beschränken, dann würde ich gerne ein paar Tage mit Gaylord Aulke (A.d.R: Director Prof. Services DACH bei Zend) zusammenarbeiten. Und wenn ich über den Tellerrand schaue, dann würde ich gerne ein Projekt zusammen mit Martin Fowler – dem „Guru“ der agilen Entwicklung -durchführen. Ich bin mir sicher, dass ich da jede Menge lernen könnte.

Du bist nicht nur Sprecher auf Konferenzen und Verfechter der agilen Entwicklung, sondern auch CTO bei einer der erfolgreichsten Flugsuchmaschinen: swoodoo.com. PHP hatte in den letzten Jahren nicht den besten Ruf, was hochskalierbare Enterprise-Anwendungen anging. Wirst du dich in Zukunft wieder für PHP entscheiden oder hast du aus diesem Projekt „gelernt“?

Lars Jankowsky: Wer sagt denn, dass PHP nicht skalierbar wäre? Abseits des üblichen Programmiersprachen-„Bashing“ wäre mir neu, dass es da fundierte Kritik gibt. Natürlich gibt es immer Punkte, die verbessert werden können, aber das ist ja das schöne an PHP – es ist Open Source. Und jedem, der etwas verbessern möchte, steht es frei, sich einzubringen. Im konkreten Fall von Swoodoo habe ich mich die letzten Monate hauptsächlich um Skalierung gekümmert. Zurzeit gibt es für dieses Projekt reichlich Fernsehwerbung, und da hat man es aus Entwicklersicht mit wirklich hässlichen Lastspitzen zu tun. Swoodoo besteht im Frontend komplett aus PHP-Code und im Backend – der Engine – wird Java eingesetzt. Beide Bereiche skalieren sauber, und da PHP stateless ist, kann man mit steigender Last recht einfach neue Server hinzufügen, wenn diese benötigt werden. Aber die eigentliche Kunst liegt in einer vernünftigen Architektur, mit deren Hilfe dann die einzelnen Komponenten punktgenau skaliert werden können. Und schon wären wir wieder beim Thema Softwarearchitektur.

Gibt es Architekturentscheidungen, die du gerne wieder Rückgängig machen würdest, oder welche, auf die ihr besonders „stolz“ seid?

Mehr zum Thema

Hat Ihnen das Interview gefallen? Dies und mehr ist alles Teil der Ausgabe 4.09 unseres PHP Magazins. Mehr zu diesen und anderen Themen bekommen Sie alle zwei Monate frisch am Kiosk! Zur jeweils aktuellen Ausgabe geht es hier.

Lars Jankowsky: Architektur sollte wie auch der Sourcecode ständig überwacht und gegebenfalls „refactored“ werden. Ich hatte vorher schon darauf hingewiesen, dass eine Evolution stattfinden muss. Je nach Anforderungen und Learnings muss eine gewisse Zeit für Wartung reserviert werden. Und da fällt auch eine Anpassung der Architektur darunter. Ganz konkret führt für mich, bei wirklich erfolgreichen Projekten mit vielen Nutzern, kein Weg an SOA (Service-oriented Architecture) vorbei. Gerade wenn es um die Themen Skalierung, Wartbarkeit und auch um das Updaten eines Livesystems mit möglichst geringer Downtime geht, dann ist das sicherlich der Königsweg. Einzelne Komponenten können dann einfach ausgetauscht, upgedatet oder auch komplett refactored werden, ohne dass andere Teile des Systems davon beeinflusst werden.

Du hast dich für PHP entschieden und klar deinen Fokus gesetzt. Trotzdem wird es Momente gegeben haben, in denen du die Sprache verflucht hast. Wann hast du dich das letzte Mal so richtig über PHP aufgeregt?

Lars Jankowsky: Ich bin nun schon gute 15 Jahre in der professionellen Softwareentwicklung tätig. Begonnen habe ich mit C++, später kam Java dazu und mit PHP arbeite ich seit PHP/FI. Ganz ehrlich, ich ärgere mich schon lange nicht mehr über Technik. Meine Devise heißt: „Nicht ärgern, wundern,“ und damit erspare ich mir so einige Magengeschwüre. Und wenn du wissen möchtest, wann ich mich das letzte Mal so richtig gewundert habe, dann war das, als wir unsere Server auf eine neue PHP-Version upgegradet hatten, nur um dann festzustellen, dass in dieser Version strtotime() einen „Memory Leak“ hatte. Im Anschluss durften wir dann auf allen unseren Servern die PHP-Version wieder downgraden.

Das war es auch schon. Recht herzlichen Dank, dass du dir die Zeit genommen hast, unsere neue Interviewreihe mit uns zu starten.
Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -