Youthpass

Seit unserer Gründung im Jahr 1997 entwickeln wir Websites und Webanwendungen in der Programmiersprache PHP mit MySQL als Datenbanksystem und haben auf dieser Basis rund 150 große Projekte für öffentliche Auftraggeber, Konzerne und mittelständische Unternehmen umgesetzt. PHP ist die am weitesten verbreitete Programmiersprache im Web: Ungefähr ¾ aller Websites nutzen PHP (Quelle: W3Techs).
Doch für die Realisierung einer Webanwendung braucht es weit mehr als nur eine Programmiersprache: Die Aufgaben, die erfüllt werden müssen, reichen von der Interpretation der Browseranfrage über den Datenbankzugriff, die Durchführung von Berechnungen bis hin zur Generierung des HTML-Dokuments, das die Basis für die Darstellung der fertigen Seite im Browser ist. Unabhängig von der konkreten Funktion der Website oder Webanwendung fallen diese Aufgaben immer in ähnlicher Form an. Daher haben sich über die Jahre spezialisierte Softwarekomponenten entwickelt, die jeweils eine der Teilaufgaben lösen.
In der Anfangszeit, als das PHP-Ökosystem noch jung war, haben wir für viele der Aufgaben eigene Komponenten geschrieben, da es noch keine Open Source-Lösungen gab, die unseren Vorstellungen und Anforderungen entsprachen. Zum Beispiel haben wir mit unserem CMS wfDynamic schon früh sprechende und verschachtelte URLs unterstützt, also lesbare und aussagekräftige Webadressen wie www.webfactory.de/bietet/symfony/, die sich aus der hierarchischen Position der Seite im CMS ergeben, statt technischer Webadressen mit Dateinamen und Parametern, wie www.webfactory.de/leistungen.php?id=4. Es gab aber keine bekannte, allgemein verfügbare „Routing“-Komponente, die diese URLs interpretieren konnte – so ein System mussten wir selbst entwickeln.
Das änderte sich schlagartig, als 2011 Symfony 2 erschien. Symfony ist ein Open Source Framework, das gut zusammenspielende Komponenten für alle Standardaufgaben bei der Webentwicklung bietet. Es integriert Bausteine wie z. B. Doctrine für den Datenbankzugriff, die wir auch vorher schon genutzt hatten, und löst andere Aufgaben wie z. B. die sogenannte Requestverarbeitung genau so, wie wir uns das vorher selbst überlegt hatten (zugegebenermaßen: das oben erwähnte hierarchische Routing mussten wir selbst ergänzen).
Wir haben gemerkt, dass wir und die Entwickler von Symfony eine Philosophie teilen. Das sieht man auch im Aufbau des Frameworks, das auf einzelnen Komponenten beruht, die wir bei Bedarf flexibel und unabhängig voneinander nutzen und austauschen können.
Inzwischen setzen wir Symfony seit über 10 Jahren für fast jedes Projekt ein und sind nach wie vor begeistert – auch von der sorgfältigen Release-Planung, in der seit Symfony 2.3 viel Wert auf Rückwärtskompatibilität gelegt wird. So können wir leicht die Infrastruktur eines Projektes aktualisieren, um von neuen Sicherheitsmaßnahmen, gesteigerter Performance oder neuen Features zu profitieren.
Symfony hat eine klare Vision und verfolgt zugleich einen pragmatischen Ansatz. Es wird nicht versucht, jedes Problem alleine zu lösen. Stattdessen wird das Beste integriert, was vorhanden ist.
Hinter Symfony steht eine starke, engagierte Entwicklergemeinde, die eine langfristige Weiterentwicklung und Stabilität garantiert. Auch wir sind Teil dieser Gemeinde. Unsere Erweiterung webfactory/exceptions-bundle wurde zum Beispiel in der offiziellen Symfony-Dokumentation empfohlen, rund 200.000 Mal heruntergeladen, und schließlich in den Symfony-Kern integriert!
In der Symfony-Code-Contributors-Liste steht unser Geschäftsführer Matthias Pigulla auf Platz 47. In unserem Blog, Vorträgen und Workshops sprechen wir darüber, welche Entwicklungsprobleme wir wie gelöst haben.