Symfony – drei Beispiele aus Ostwestfalen

Das PHP-Framework fĂŒr praxisnahe und pragmatische Web-Applikationen

Wie fange ich an?

Obwohl ich ganz genau weiß, was ich am Ende mit diesem Blog-Beitrag erzĂ€hlt haben will, bin ich noch nicht sicher, wie ich anfangen soll. Ist so.

Zum Beispiel könnte ich damit anfangen, dass code-x als Internetagentur bestimmt nicht die einzige Dienstleisterin ist, die neben ihrem KerngeschÀft auch immer wieder interessante Projekte umsetzt, die man so nicht erwartet hÀtte. Davon zu berichten wÀre auch mal spannend.

Ich könnte aber auch damit anfangen, dass wir uns in der Flut der sich immer wieder rasant entwickelnden Internet-Technologien immer wieder neu verlieben. Und vor einiger Zeit haben wir uns volle Kanne in Symfony verschossen.

Ich könnte aber auch bei Ihnen oder bei euch anfangen, und einfach fragen: Welche Prozesse, welche Workflows, welche Daten-Verwaltungen oder Informations- oder KommunikationsflĂŒsse zwischen euch und euren Teams, Interessenten oder Kundinnen gibt es. Welche davon glaubt ihr durch eine pfiffige digitale Lösung so verbessern zu können, dass ihr damit Zeit, Geld oder Nerven spart. Oder bestenfalls alles drei.

Bei euch anzufangen wÀre bestimmt die charmanteste Art und Weise.

Ich bin mal ehrlich: Die drei folgenden Beispiele sind so aber nicht entstanden. Nicht, indem wir uns unseren Kundinnen und Kunden proaktiv als Ideenschmiede, Berater und Umsetzer fĂŒr die Digitalisierung angeboten hĂ€tten. Sie sind eher zufĂ€llig entstanden, wĂ€hrend wir in unserem Brot- und ButtergeschĂ€ft tĂ€tig waren. WĂ€hrend wir Websites aufgebaut haben, wĂ€hrend wir Webshops programmiert haben oder wĂ€hrend wir digitale Marketing-Kampagnen begleitet haben.

Erfreulicherweise kommt es nÀmlich immer wieder vor, dass eine Kundin oder ein Kunde fragt:

„Sagt mal, könntet ihr uns vielleicht auch dabei helfen, 
?“

Es folgen drei Beispiele, bei denen wir laut und deutlich „Ja“ gesagt haben.

Und so ist mir nun der Anfang eines Blog-Beitrags aus den Fingern geflossen, mit dem ich euch am Ende inspirieren möchte, mal ĂŒber den Einsatz von Symfony nachzudenken. Einem PHP-Framework, mit dem jede erdenkliche Web-Applikation umgesetzt werden kann. Intern, extern, beides. Desktop, mobil, beides. Groß, klein. Stand Alone, voll integriert. In jedem Fall aber zweckmĂ€ĂŸig, skalierbar und mit dem Fokus auf maximale Benutzerinnen- und Benutzerfreundlichkeit.

Dies ist ein Blog-Beitrag ĂŒber drei Beispiele fĂŒr ganz unterschiedliche Web-basierte Anwendungen, die wir fĂŒr unsere Kunden schmieden durften.

Beispiel #1 – Weg von EXCEL und Co.

Ein oft unschlagbarer Vorteil von Web-basierten Anwendungen ist die Zentralisierung von Daten-Verwaltung und -Verarbeitung fĂŒr ein mehrköpfiges Team, oder um es etwas blumiger auszudrĂŒcken: Alle arbeiten mit den selben Daten, die jederzeit fĂŒr alle immer aktuell sind. Also das Gegenteil von der alten EXCEL-Tabelle, die fĂŒr alle unerreichbar auf irgendeinem PC herumliegt. Die Daten von Symfony liegen auf einem zentralen Server, und das System sorgt dafĂŒr, dass alle gleichzeitig daran und damit arbeiten können. Und es geht auch nix kaputt.

Im Beispiel der Theologischen FakultĂ€t Paderborn ging es zunĂ€chst um zwei Listen: die Liste der aktuell Studierenden und die Liste der externen Interessenten von Kursen und Workshops, die die ThF der Öffentlichkeit anbietet. Adresslisten, nicht mehr und nicht weniger. Diese wurden zuvor wie vielerorts in Excel gepflegt, lagen abgespeichert auf einem Arbeitsplatz-Rechner und es war eigentlich unmöglich, diese dort aktuell zu halten. SpĂ€testens wenn ein neues Mailing verschickt werden sollte, stand die Frage im Raum: Sind die Listen noch aktuell? Waren sie in letzter Konsequenz nie.

Von diesem regelmĂ€ĂŸigen Stress erzĂ€hlte uns unser Ansprechpartner am Rande eines Meetings, in dem es eigentlich um ein paar Fragen zur Website ging. Aus der Randbemerkung wurde dann flott die Idee, beide Adress-Verzeichnisse durch eine zentrale Lösung basierend auf Symfony abzulösen. Und wenn schon, denn schon: Was könnte man mit einer neuen zentralen Anwendung noch erledigen? Ein, zwei GesprĂ€chsrunden spĂ€ter stand der Plan.

Wir durften und sollten fĂŒr die Theologische FakultĂ€t Paderborn ein Intranet auf die Beine stellen, das folgende Möglichkeiten bieten sollte:

  • Verwaltung aller aktuell und zuvor Studierenden
  • Verwaltung aller Lehrenden und Dozenten der FakultĂ€t
  • Verwaltung aller Interessenten an offenen Workshops und Seminaren
  • Newsletter Funktion, um eine Auswahl der gespeicherten Kontakte jederzeit per E-Mail informieren zu können
  • Lehrende können so z.B. ihre Studierenden auf dem Laufenden halten
  • Die ThF kann so z.B. die Interessierten ĂŒber neue Angebote und Termine informieren u.v.m.
  • Ein zentraler Ablageort und ein Archiv aller digitalen Lehrmaterialien fĂŒr die Studierenden
  • Ein jederzeit und ĂŒberall fĂŒr alle Studierenden und Lehrenden einsehbarer und immer aktueller Lehrplan des laufenden Semesters
  • Ein all diesen Anforderungen genĂŒgendes Rechte- und Rollensystem

Diese Intranet-Lösung haben wir fĂŒr die Theologische FakultĂ€t Paderborn auf Symfony umgesetzt. Somit kann es ĂŒberall genutzt werden, wo das Internet ankommt, mit jedem GerĂ€t vom Desktop bis zum Smartphone.

Beispiel #2 – Auf die Schnelle noch ein Sondereinsatz

Das System, die Lösung, die ich euch jetzt vorstellen möchte, ist schon in der zweiten Generation. Die ursprĂŒngliche Idee von Elmar Kloke, die Projekte seines Betriebes Kloke Malermeister GmbH & Co. KG mit einer eigens dafĂŒr entwickelten Software zu verwalten, liegt weit, weit zurĂŒck. Ich sage es mal so: Elmar Kloke war mit der BauVe aus dem Hause code-x wirklich frĂŒh dran. Damals im Jahr 2004.

Die erste Version, noch ganz ohne Framework erstellt, war viele Jahre ununterbrochen im tÀglichen Einsatz.

Nachdem die Telekom und der Zentralverband des Deutschen Handwerks unsere Anwendung im Jahr 2009 mit dem 1. Preis als IT Master prĂ€miert hatte, durfte sie ab dann in WĂŒrde altern. Basierend auf den vielen Erfahrungen haben wir dann eine komplett neue Version ins Leben gerufen, bei der nun Symfony zum Einsatz kam.

Und seitdem können mit der BauVe 2.0 alle Mitarbeitenden von Malermeister Kloke jeden Morgen aktuell auf ihren Smartphones nachschauen, was fĂŒr den Tag geplant ist.

Wir haben gelernt und verstanden, dass die Verwaltung von Baustellen eines Handwerkbetriebes seiner GrĂ¶ĂŸenordnung absolute maximale FlexibilitĂ€t erfordert. Die Einsatzplanung fĂŒr die nĂ€chsten Tage steht immer im Großen und Ganzen, doch es gibt genug Parameter und gute GrĂŒnde, dass diese tĂ€glich ĂŒberprĂŒft und flexibel angepasst werden mĂŒssen.

Denn die von uns mit Elmar Kloke gemeinsam konzipierten und umgesetzte Softwarelösung verwaltet nicht nur die Kunden und Baustellen, sondern auch wer wann wo mit welchem Fahrzeug und welchen Materialien in welcher Reihenfolge eingeplant ist. Das alles unter BerĂŒcksichtigung von Feiertagen, Urlaubstagen oder auch mal krankheitsbedingten AusfĂ€llen, Fahrzeugen in der Werkstatt, Konten fĂŒr Überstunden, Auszubildenden in der Schule oder spontanen EinsĂ€tzen, die hier und jetzt erforderlich sind.

Herausgekommen ist eine zentrale, tĂ€gliche Planung, die allen Beteiligten jederzeit per Smartphone zur VerfĂŒgung steht. Mehr FlexibilitĂ€t und Planungssicherheit kann ich mir fĂŒr ein Handwerksbetrieb nicht vorstellen.

Beispiel #3 – Ein Orchester fĂ€hrt Bus

Wenn ein Orchester erst einmal im Orchestergraben Platz genommen hat, ist das meiste vermutlich schon geschafft. Auch wenn noch keine Saite gezupft und kein Ton geflötet wurde. Ich erzÀhle kurz, wie ich das meine.

In einem Orchester wie der Nordwestdeutschen Philharmonie, das verwundert niemanden, treffen sich eine Menge Leute, die zusammen musizieren. Diese kommen aber aus ganz unterschiedlichen Orten, spielen die unterschiedlichsten Instrumente und treffen sich in immer wieder wechselnden Konstellationen.

Wann hat also wer mit welchem Instrument zur Probe zu erscheinen? Wann muss ich von A nach B, um dort mit Kolleginnen und Kollegen vor Publikum aufzutreten? Wo treffen wir uns alle zusammen, um von dort aus gemeinsam mit dem Bus eine etwas weiter gelegene Konzertreise anzutreten? Und was werden wir dort ĂŒberhaupt genau spielen? Ach ja, die Kleiderordnung gibt es ja auch noch.

Das alles zu verarbeiten und allen Beteiligten 24 Stunden 7 Tage die Woche zur VerfĂŒgung zu stellen, dafĂŒr braucht es schon eine breite Klaviatur der Software-Entwicklung.

WĂ€ren da nicht auch noch die Sonder-Konzerte mit abweichendem Programm. Oder das immer herzlich willkommene Publikum, das sich jederzeit auf der Webseite ĂŒber das aktuelle Konzertangebot informieren möchte, um von dort aus auch bestenfalls bequem an Karten zu kommen. Oder an ein Abo.

Also mussten auch Schnittstellen her, zwischen Verwaltung und Website, zwischen Website und Kartenvorverkauf. Außerdem verwöhnen wir alle Orchestermitglieder dann auch noch mit einem immer aktuellen Export der fĂŒr sie relevanten Termine in die Kalender ihrer Smartphones. Nur auf Wunsch, selbstverstĂ€ndlich.

Und so verwaltet die Nordwestdeutsche Philharmonie seit vielen Jahren jeden Einsatz ihres Orchesters mit einer von uns erstellten Software-Lösung. Dass diese auf Symfony basiert, erwÀhne ich der VollstÀndigkeit halber.

Dieses dritte Beispiel unterscheidet sich von den ersten beiden insbesondere dadurch, dass es neben dem Intranet auch eine Einbindung in das öffentliche Internet gibt. Es kann sich sehen lassen. Unter https://www.nwd-philharmonie.de/konzerte-und-tickets/ findet ihr das, was vorne rauskommt, wĂ€hrend im Hintergrund tĂ€glich daran gearbeitet wird, dass alles aktuell bleibt und die erste Geige immer pĂŒnktlich am richtigen Ort gespielt wird. Mit orchestraler Begleitung und jubelndem Publikum.

Warum uns Symfony so gut gefÀllt?

Nun, da ich Symfony immer wieder als Framework erwĂ€hnt habe, hier ein paar gute GrĂŒnde, warum wir Feuer und Flamme sind.

  • Framework – Symfony ist ein PHP-Framework, eine Sammlung wiederverwendbarer PHP-Komponenten. Die Standardgrundlage, auf der die besten PHP-Anwendungen gebaut werden. Mit ĂŒber 50 einzeln verfĂŒgbaren Komponenten fĂŒr unterschiedlichste Anwendungen.
  • ModularitĂ€t – Symfony besteht aus einer Reihe von Modulen (Bundles), die unabhĂ€ngig voneinander verwendet werden können. Dies ermöglicht es, nur die Funktionen zu nutzen, die tatsĂ€chlich benötigt werden.
  • Skalierbarkeit – Symfony ist fĂŒr große und skalierbare Anwendungen entwickelt worden. Es ist in der Lage, hohe Lasten zu verarbeiten und bietet eine gute Leistung, selbst bei grĂ¶ĂŸeren Projekten.
  • Sicherheit – Symfony bietet viele Sicherheitsfunktionen, Authentifizierung und Autorisierung, die es möglich machen, sichere Anwendungen zu erstellen.
  • Rapid Development – Die Entwicklung mit Symfony ist rasend schnell. Das erste MVP ist bereits nach kurzer Zeit fĂŒr Sie einsatzbereit. Und dann geht es Schritt fĂŒr Schritt, agil und flexibel an die Weiterentwicklung.
  • Dokumentation und Community – Symfony hat eine sehr aktive Community und eine umfangreiche Dokumentation, die allen Entwicklerinnen und Entwicklern zur VerfĂŒgung stehen.
  • Open Source – Keine Lizenzkosten, keine GebĂŒhren, dafĂŒr eine weltweit aktive Gemeinschaft, die sich um die regelmĂ€ĂŸige Weiterentwicklung kĂŒmmert.
  • FlexibilitĂ€t und IndividualitĂ€t – Symfony ermöglicht es, Anwendungen auf ihre spezifischen Anforderungen anzupassen und zu erweitern. Es bietet zahlreiche Konfigurationsoptionen und ermöglicht es, eigene Komponenten und Bundles zu erstellen.
  • Einfache Wartung – Symfony ist sehr gut strukturiert und bietet somit beste Voraussetzungen, was die Wartung und Erweiterung von Anwendungen erleichtert.
  • Gute Testbarkeit – Symfony bietet eine umfangreiche UnterstĂŒtzung fĂŒr automatisierte Tests, was die QualitĂ€tssicherung optimiert und die Fehlerbehebung erleichtert.
  • Internationalisierung und Lokalisierung – Symfony bietet UnterstĂŒtzung fĂŒr die Internationalisierung und Lokalisierung von Anwendungen, was es ermöglicht, Anwendungen in verschiedenen Sprachen bereitzustellen.
  • Vielseitigkeit – Symfony kann fĂŒr eine Vielzahl von Anwendungstypen verwendet werden, wie z.B. Daten-Management-Systeme, Informations-Verwaltungs-Systeme, Intranets, soziale Netzwerke und alles andere.

Zugabe, Zugabe, Zugabe

Weiter oben habe ich bereits die Skalierbarkeit von Symfony herausgestellt, und diese möchte ich noch mal unterstreichen. Alle drei Web-Anwendungen werden seit ihrem ersten Tag immer wieder erweitert, vergrĂ¶ĂŸert, verbessert und damit an neu gewonnene Erkenntnisse und Anforderungen angepasst. Oft in kleinen Schritten, manchmal auch in großen.

Das war nun also mein Versuch, euch von drei Beispielen fĂŒr Web-basierte Anwendung auf Basis von Symfony zu erzĂ€hlen; kurz, knackig und hoffentlich nachvollziehbar. Bestenfalls inspirierend.

Denn eigentlich ist es mein heimlicher Versuch, euch dafĂŒr zu gewinnen, mal darĂŒber nachzudenken, wo euer unternehmerischer, organisatorischer Alltag mit einer pfiffigen Idee entspannt werden kann. Wie ihr fĂŒr eure Mitarbeitenden, Interessenten oder Kundinnen und Kunden den Informations- und Kommunikationsfluss flotter machen könnt. Wie wir euch dabei helfen könnten, den Weg der Digitalisierung Schritt fĂŒr Schritt zu gehen. Pragmatisch, wirksam und im richtigen Tempo.

Falls euch was einfĂ€llt: Wir sind fĂŒr euch da.

Stefan // Freise


Danke an die Fotografinnen und Fotografen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

crafted by code-x 💚
Nach oben scrollen

Existiert deine Website fĂŒr KI-Suchen?

Wenn KI-Tools, wie ChatGPT oder Gemini dich nicht kennen, verlierst du Kunden. Entdecke unseren neuen KI-Sichtbarkeitscheck und mache dich bereit fĂŒr das nĂ€chste Level.