Was sind die TYPO3 Dev Days?
Die Dev Days unterscheiden sich von den diversen TYPO3camps in mehreren Aspekten:
- sie sind eine offizielle Veranstaltung der TYPO3 Association
- sie dauern mit vier Tagen etwas länger (Donnerstagmittag bis Sonntagmittag)
- die Sessions werden bereits vorab geplant (Redner konnten ihre Talks vorab einreichen)
- sie sind eine englischsprachige Veranstaltung, da die Teilnehmer aus Europa und aller Welt kommen
Die Veranstaltung findet einmal jährlich statt und gilt bei vielen TYPO3-Entwicklern als das Highlight des Jahres. Eine Besonderheit ist die traditionelle Coding Night am Freitagabend, bei der sich die Entwickler zusammensetzen und gemeinsam den TYPO3-Kern, Extensions oder auch die typo3.org-Website verbessern. Es werden Tickets abgearbeitet, Reviews durchgeführt und Features implementiert.
Donnerstag
Vor der offiziellen Eröffnung der Dev Days gab es einen Workshop, bei dem man sich den TYPO3 Contribution Workflow – also die Grundlage für die Mitarbeit am TYPO3-Kern – mithilfe erfahrener Entwickler einrichten konnte. Da das offizielle WLAN noch nicht fertig eingerichtet war, wurde der letzte Stand des git-Repositories per USB-Stick verteilt. Gemeinsam mit Daniel Goerz habe ich die gut dokumentierten Schritte der Einrichtung nachvollzogen und anschließend einen praktischen Testdurchlauf inkl. Review mit Gerrit vorgenommen. Die Hürde ist wirklich nicht hoch, um selbst Änderungen am Core bereitzustellen!
Parallel liefen die Zertifizierungsprüfungen zum TYPO3 CMS Certified Integrator, Developer und Consultant. Hierfür musste man sich vorher separat anmelden.
Mittags gab es dann die Opening Session, bei der die etwa 200 Teilnehmer begrüßt und die Organisatoren und Sponsoren vorgestellt wurden. Im Anschluss hielt Christian Kerschbaum (Fachanwalt für IT-Recht) seine Keynote. Das Hauptthema dieses Jahr war wenig überraschend die Datenschutz-Grundverordnung und deren Konsequenzen für Webentwickler, aber auch Copyright und Projektdokumentation wurde angesprochen.
Nachmittags habe ich mich dann für Hannes Lau mit dem Thema Frontend Prototype Integration entschieden. Er präsentierte, wie seine Agentur die gelieferten Frontend-Templates in TYPO3 verwendet, ohne diese in Fluid replizieren zu müssen. Der Frontend-Entwickler kann z.B. PatternLab zum Prototyping mit Twig als Template-Engine verwenden. In TYPO3 wird das Ergebnis dann über eigens programmierte Controller und Data Converter eingebunden. Aufgrund der hohen Auslastung am Donnerstag wurde der Talk später noch einmal wiederholt.
Zum Abendessen gab es Burger im Außenbereich der Jugendherberge, bei der man sich seinen Burger mit Beilagen selbst zusammenstellen konnte. Nach dem ersten Tag war das eine willkommene Stärkung, auch für das abends folgende Social Event.
Aufgrund des deutschen WM-Spiels am Samstagabend wurde das Social Event schon am Donnerstag veranstaltet: Wer wollte, konnte mit der Band "Karaoke Till Death" Punk-, Rock- und Metal-Songs schmettern. Ich war mir vorher unsicher, wie gut das von uns Entwicklern angenommen würde – es wurde eine tolle Party. Wir scheinen einige Gesangstalente unter uns zu haben. Ich hatte zuvor noch nie in der Öffentlichkeit gesungen, aber mit einer echten Band im Rücken und der TYPO3-Community als Publikum war das ein Riesenspaß!
Freitag
Der Freitag stand für mich – etwas überraschend bei einer Entwicklerkonferenz – ganz unter dem Thema Design. Die britische Grafikdesignerin Piccia Neri hielt den Tag über drei Talks über Gestaltungsgrundlagen im Webdesign, den "Design Thinking"-Prozess und Farbgebung. Auch diese Sessions waren stark besucht.
Um 21 Uhr begann schließlich die Coding Night. Die Agentur Marketing Factory hatte hierfür extra Sticker für verschiedene Ziele (Wrote Patch, Code Review, Core Commit, Coden nach Mitternacht ...) ausgelobt. Ob wir an diesem Abend besonders produktiv waren, kann ich gar nicht sagen. Mein Beitrag war schließlich die Korrektur eines Tippfehlers im Install Tool und der Review einer Änderung, die dann zwischenzeitlich schon freigegeben wurde. :D
Aber immerhin! Es hat mich auf jeden Fall motiviert, zukünftig mehr am TYPO3-Kern mitzuwirken.
Samstag
composer! Das allgegenwärtige Thema der letzten Jahre. Aufgrund meines Werdegangs stand eine richtige Einarbeitung in diesen PHP-Paketmanager noch auf der Todo-Liste; bei den letzten TYPO3camps gab es parallel immer andere Sessions die mir noch wichtiger waren. Hier habe ich endlich die Gelegenheit genutzt und den Grundlagen-Talk von Florian Wessels verfolgt.
Danach ging es zu Michael Oehlhof mit seiner Einführung zu DDEV: Nach einem Überblick über verschiedene lokale Entwicklungsumgebungen (XAMPP, virtuelle Maschinen, ...) zeigte Michael die Verwendung von DDEV, mit dessen Hilfe man Docker-Umgebungen einfach einrichten und verwalten kann.
Zum Abschluss hat Thomas Löffler noch verschiedene Browsertools, Desktop Apps und PhpStorm-Tipps präsentiert, die einem bei der täglichen Arbeit sehr unterstützen können. Seine Sammlung stellt er auch auf GitHub zur Verfügung.
Abends gab es für Fußballinteressierte dann die Möglichkeit, das WM-Spiel zwischen Deutschland und Schweden zu verfolgen. Beim Kroos-Traumtor in der Nachspielzeit war der Jubel groß – wie es sonst für "Die Mannschaft" gelaufen ist, wissen wir ja.
Sonntag
Eigentlich wollte ich morgens die Session von Nicole Cordes verfolgen, wie man öffentliche Extensions gut pflegen kann. Am Ende habe ich mich mit Josef Glatz ausgiebig über den CKEditor unterhalten, den wir beide nach Möglichkeit verbessern wollen.
Der letzte Talk für mich war dann TYPO3 Performance von Marcus Schwemer, der sieben Ebenen zur Leistungssteigerung ausgemacht hat – vom Frontend über Backend bis hin zur Serverhardware.
Fazit
Es ist wie immer: am Ende geht man erschöpft, zufrieden und zugleich voll motiviert nach Hause.
Ich möchte wieder allen Teilnehmern für die vielen netten und hilfreichen Gespräche danken. Außerdem natürlich den Rednern, dem Orgateam um Andrea Herzog-Kienast und den Sponsoren jweiland.net, bitmotion, Browserwerk, internezzo, Marketing Factory, mehrwert, Nitsan, Syzygy sowie Oliver Thiele fürs Live Streaming.