Im Gespräch mit Lars Jankowfsky

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

Kaum eine Programmiersprache ist mit ihrer Gemeinde so eng verbunden wie PHP. Aus diesem Grund wird es die kommenden Monate hier verstärkt Interviews mit Personen aus der Community geben. Leute, die durch ihr Mitwirken PHP zu der Sprache gemacht haben, die sie jetzt ist. Dabei werden wir uns mit bekannten Persönlichkeiten unterhalten, aber auch mit Persönlichkeiten, die sonst vielleicht eher im Hintergrund agieren. Aktuelle Trends und Meinungen aufzufangen, soll Ziel unserer Gespräche sein.

Lars Jankowfsky

Lars Jankowsky arbeitet als CTO für die Swoodoo GmbH und ist hier für die PHP-basierte Flugsuchmaschine verantwortlich. Daneben ist er auch Technology Evangelist bei der OXID eSales AG. Lars entwickelt seit über 15 Jahren und setzt PHP schon seit dessen Anfängen ein. Neben dem Software Development ist das Leiten von Teams mittels eXtreme Programming eine seiner Leidenschaften.

Für unser erstes Interview haben wir uns Lars Jankowsky, CTO bei Swoodoo, Autor und Sprecher auf diversen Konferenzen ausgewählt. Seine Schwerpunkte hat er in den letzten Jahren auf agile Softwareentwicklung, Softwarearchitektur und E-Commerce gesetzt. Er war maßgeblich beim Open-Source-Gang des Oxid-eSales-Shops beteiligt und betreibt seinen Blog frontalaufprall.com. Trotz der vielen Aufgaben hat er sich die Zeit genommen, ein bisschen mit uns zu plaudern.

Du bist seit langer Zeit ein gern gesehener Sprecher auf diversen Konferenzen und triffst eigentlich immer den Zahn der Zeit. Wo holst du dir die Inspirationen für deine Themen?

Lars Jankowsky: Ganz einfach – aus meinem Alltag. Im Moment arbeite ich mit meinem Team von 10 Entwicklern sowohl agil als auch Test-driven. Das Projekt ist über einige Jahre gewachsen und muss sich so den üblichen Herausforderungen stellen. Es dauert einige Zeit, bis die Prozesse sauber laufen – sei es Continuous Integration oder Coding Conventions. Übrigens sind wir da inzwischen so weit, dass wir den codeSniffer in einem SVN Pre Commit Hook zu laufen haben – es kann also kein Code mehr submittet werden, der gegen unsere Codekonventionen verstößt und nicht ordentlich dokumentiert ist.

Nils Langner

Nils, der an der Universität Freiburg Informatik studierte, treibt sich nun mehr seit fast 10 Jahren in der Webentwicklung herum und arbeitet derzeit für eines der größten Verlagshäuser Europas im Qualitätsmanagement der Onlinesysteme. In seiner Freizeit betreibt er einen sehr erfolgreichen deutschsprachigen PHP Blog, in dem er seine Erfahrungen zum Thema PHP kundtut. Hier werden aktuelle Geschehnisse aus der PHP-Gemeinde genau so besprochen, wie Best Practices aus der Softwaretechnik. Ein Blatt wird dabei nie vor den Mund genommen.

Nach 15 Jahren Erfahrung in der Softwareentwicklung scheinst du immer noch ein technisches Spielkind zu sein. Ich schätze, dass du nicht mehr viel Zeit findest, selbst zu programmieren. Fehlt einem da nicht etwas?

Lars Jankowsky: Allerdings, das fehlt mir sehr. Wenn möglich, erstelle ich persönlich Prototypen und entwickle konkrete Funktionalitäten, aber – das hast du schon richtig vermutet – es ist recht wenig Zeit für eigenes Coding vorhanden. Andererseits kümmere ich mich ganz konkret um die Systemarchitektur, und das nicht nur im PHP-Frontend, sondern auch in unserem Java-Backend. Es ist wichtig, ständig zu kontrollieren und eine gute Evolution in der Architektur zu haben. Denn sonst kann der Alltag und Druck in der Softwareentwicklung schnell zu Hacks führen, die einem dann später das Leben sehr schwer machen können.

Zurzeit stehen Qualitätssicherung und agile Entwicklungsmethoden ganz oben auf der Liste der meist diskutierten Themen. Was wird deiner Meinung nach in der PHP-Gemeinde im nächsten Jahr im Fokus stehen?

Lars Jankowsky: Gute Frage! Testgetriebene Entwicklung wird uns sicher noch die nächsten Jahre begleiten, denn die meisten Projekte sind leider noch lange nicht soweit. Das zeigt auch das ungebrochene Interesse an diesen Themen. Des Weiteren glaube ich persönlich, dass wir uns in nächster Zeit viel mit dem Thema Softwarearchitektur auseinandersetzen müssen. Über den häufigen Frameworkdiskussionen wird gerne vergessen, dass in größeren Projekten eine gute Architektur über Erfolg oder Misserfolg entscheidet.

Architektur ist eines der wichtigsten Themen in allen Programmiersprachen. Denkst du, hier sollte man über den Tellerrand schauen und sich zusätzlich eine weitere Sprache beibringen?

Lars Jankowsky: Eine gute Ausbildung ist für vernünftiges Entwickeln absolut notwendig. Wer so wie ich aus der C++ – bzw. Java-Seite zu PHP einsteigt, der hat eine solide Grundlage, auch mit PHP saubere und ordentliche Architekturen zu entwickeln. Ich bin der Meinung, dass jeder wirklich gute Entwickler mindestens eine andere Sprache lange benutzt haben sollte, bevor mit PHP gestartet wird. Das bedeutet natürlich nicht, dass jemand, der nur PHP kann, ein schlechter Entwickler sein muss – aber eine zweite Sprache ist doch sehr nützlich.

Spricht man von Agilität in der Softwareentwicklung, dann kommt man nicht um das Thema Refaktorisierung herum. Du warst bei der Umgestaltung des OXID-Shops, der jetzt in einer Open-Source-Edition zur Verfügung steht, beteiligt. Würdest du, obwohl eure Zeitschätzung fast ein Jahr daneben lag, trotzdem die Fahne für die Refaktorisierung hochhalten?

Lars Jankowsky: Die Erfahrungen sind da eindeutig – Refaktorisierung ist immer besser, als alles neu zu schreiben. Auch wenn Entwickler dazu neigen, am liebsten noch mal von vorne zu starten, sollten sich Projektmanager davon nicht beirren lassen. Wer seinen ganzen Code neu schreibt, der wirft auch das über die Jahre gesammelte Know-how und alle Bugfixes über Bord. Es gibt übrigens auch recht berühmte Beispiele, die sich entschieden haben, alles neu zu schreiben, z. B. Netscape6, dBase for Windows oder auch Quattro Pro.

Wer kennt die heute noch? Je nachdem, welcher Studie man glaubt, sind 60 bis 80 Prozent eines Projekts Wartungsarbeiten. Und auch wenn das Refactoring ernsthaft Arbeit bedeutet – es lohnt sich. Du hast den OXID eShop erwähnt – das ist ein gutes Beispiel. Ja, es war deutlich mehr Arbeit als erwartet, aber es hat sich gelohnt. Die Releasezyklen sind von Monaten auf Wochen gesunken, die Abdeckung durch Unit-Tests beträgt über 90 Prozent und der Code ist sauber dokumentiert. Gerade im Open-Source-Bereich halte ich das für sehr wichtig, denn nur so können sich Entwickler im Sourcecode zurechtfinden und haben Spaß dran.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -