Bei Mayflower haben wir zwei Dinge, die gut zusammenpassen: Einen Tischkicker und unsere Maydays. In diesem Artikel will ich kurz erläutern, warum wir uns entschieden haben eine eigene Tischkickerligaverwaltungssoftware zu schreiben.
Der neue Kicker
Mit dem neuen Tischkicker am Standort war schnell klar, dass die Ergebnisse der Spiele für statistische Zwecke erfasst werden müssen. Es geht ja nicht nur um den schnellen Spielspaß in der Pause, sondern auch um die Highscores!
Es steht eine ganze Reihe verschiedener Tools und Services zum Verwalten einer eigenen (Tischkicker-)Liga zur Verfügung. Einige haben wir kurz ausprobiert und schließlich alle Spieler bei einem kostenlosen Online-Service eingetragen. Das war nur irgendwie zu kompliziert und wurde nicht genutzt.
Selber schreiben?
Eigentlich ist es ja total NIH, wenn man anfängt, die nächste Kickerligaverwaltungssoftware zu schreiben, nur weil die existierenden gerade nicht richtig gefallen, oder man einfach die „passende” oder „bessere” App schreiben kann und will. Betrachtet man das ganze dann aber aus dem folgenden Blickwinkel, macht es durchaus wieder Sinn.
Maydays
Bei Mayflower haben wir unsere so genannten Maydays. Alle zwei Wochen nehmen wir uns einen Freitag, an dem wir nicht für Kundenprojekte arbeiten, sondern uns selbst zu verbessern suchen. Wir nutzen die Zeit, um an eigenen oder Open-Source-Projekten zu arbeiten. Hauptsächlich mit dem Hintergedanken, den eigenen Horizont zu erweitern. So entstehen spannende Projekte (von denen es hier im Blog sicher auch noch mehr zu hören gibt) und nebenbei wird ganz viel neues Wissen generiert.
Hier kommen wir nun zurück zur Kicker-App. Einfach nur ein weiteres Projekt starten, macht ja keinen Sinn. Wenn man es aber unter dem Aspekt der Verbesserung im Rahmen des Maydays betrachtet, dann ist es genau das richtige für das freitägliche Code-Workout. Vor allem, wenn man Spaß an der Sache und das Lernen neuer Dinge miteinander verbinden kann.
Fußi
Gestartet wurde die Entwicklung der Anwendung mit den folgenden Frameworks und Tools:
- Zend Framework 2
- Doctrine 2
- SQLite
- Twitter Bootstrap
Das Ganze läuft auf unserer internen OpenStack-Cloud, auf der sich jeder Mitarbeiter im Self-Service eine virtuelle Maschine bereitstellen kann. Damit im Mix sind einige Komponenten zusammen, die im alltäglichen Gebrauch nicht von jedem benötigt werden, für die Zukunft aber wichtig sein können. Vor allem lohnt es sich, langfristig Zend-Framework-2-Know-How aufzubauen.
Die erste Version entstand an zwei Abenden im Alleingang und wurde trotz des minimalen Feature-Sets gleich den Kolleginnen und Kollegen am Kicker zur Verfügung gestellt. So entstanden schnell neue Ideen – der Funke war übergesprungen, Fußi war angekommen.
Die Weiterentwicklung von Fußi findet hauptsächlich an den Maydays statt. Zu Beginn des Tages sprechen wir im Team mit den am Tag beteiligten Kolleginnen und Kollegen über neue Features und Erweiterungen, die dann am Ende des Maydays in ein Release auf unserem Produktivsystem fließen.
Sinnvolle Weiterbildung
Jedes interessierte Mitglied im Team kann sich bei Fußi mit für sich neuen Frameworks oder Arbeitsweisen beschäftigen und leistet damit einen wertvollen Beitrag zur Firmenkultur. Die Arbeit an einem echten Projekt zum Lernen ist auch bei weitem fruchtbarer, als daheim auf der Couch ein Buch zu lesen oder das Hello-World-Beispiel des neuen Frameworks nachzutippen. Hier wird echte Praxiserfahrung gesammelt!
Für alle, die selbst im Büro gern Kicker spielen und auch eine Kickerligaverwaltungssoftware haben wollen: Fußi ist Open Source und auf GitHub zu finden (http://github.com/feibeck/fussi). Benötigt wird lediglich ein geeigneter Webserver, die Einrichtung ist in der kurzen Installationsanleitung beschrieben. Wir freuen uns über jede Art von Feedback!
Open Source heißt auch, dass nicht nur wir bei Mayflower das Projekt zur Weiterbildung nutzen können. Jeder hat die Chance, sich aus seiner Komfortzone herauszubewegen und sich mit einer kleinen Beteiligung an Fußi an neue Dinge wagen. Anregungen gibt es im Issue-Tracker auf GitHub. Einfach das Projekt forken und einen Pull Request gegen den Development Branch stellen. Auch hier freuen wir uns über Feedback und Fragen zum Projekt und dem Code.
Happy Coding!
Schreibe einen Kommentar