Letztes Wochenende bin ich in den Europa-Park in Rust gefahren, um an meinem zweiten CloudFest Hackathon teilzunehmen. Das diesjährige Event hatte 11 verschiedene Projekte, 7 davon waren WordPress-Projekte (einige andere hatten nur lose mit WordPress zu tun). Im letzten Jahr habe ich das Team des Pluginkollektiv dabei unterstützt, am beliebten Antispam Bee Plugin zu arbeiten. Dieses Jahr hat das Team dann an Statify, einem datenschutzfreundlichen Statistik-Plugin gearbeitet.
Kleine Schritte zu einem neuen und besseren Plugin
Für das Antispam Bee Projekt haben wir letztes das gesamte Plugin neu geschrieben, mit dem Ziel, eine neue Hauptversion zu veröffentlichen. Diese neue Version ist nun in der Alpha-Phase, also selbst ein Jahr nach dem Event, noch immer nicht fertig. Für Statify hatte unser Teamlead Florian Brinkmann im Vorfeld einige Issues auf GitHub ausgesucht, an denen er mit dem Team arbeiten wollte. Manche davon waren sogenannte „low-hanging fruits“, andere wiederum größere Issues und Feature-Requests.
Ein vermeintlich einfaches Ticket
Wir hatten ein paar Teammitglieder, die ganz neu dabei waren, an einem Projekt mitzuwirken und haben versucht für sie einige einfache Issues zu finden. Eines davon hatte den Namen „Show title instead of permalink“ und klang daher recht einfach. Das Ticket war fast 5 Jahre alt, mit einer konstruktiven Diskussion. Es gab auch schon einen PR mit einer einzeiligen Änderung, um einen Teil des Problems zu lösen. Das Issue sollte also einfach zu lösen sein, richtig? Nun, wie sich herausstellte, war es nicht ganz so einfach. Es gab einen Grund, wieso dieses Ticket seit 2018 noch nicht gelöst wurde. Nachdem wir in der Gruppe ausführlich darüber gesprochen hatten, haben wir einige Sonderfälle identifiziert, die eine genauere Planung erforderten.
Erarbeiten einer Lösung und Einführung neuer Möglichkeiten
Nachdem wir mehrere mögliche Lösungswege diskutiert hatten und zu einigen davon ein „proof of concept“ hatten, wurde recht deutlich, dass es die beste Lösung wäre, wenn wir den aktuellen Beitragstitel zum Zeitpunkt des Trackings des Seitenaufrufs durch Statify speichern würden. Da die eigene Tabelle von Statify recht einfach ist, gab es zwei mögliche Lösungswege:
- Hinzufügen einer neuen Spalte zur Tabelle
- Hinzufügen einer
statifymeta
Tabelle zum Speichern dies Titels
Wir haben uns für den zweiten Ansatz entschieden. Auch wenn es vielleicht ein wenig zu umfangreiche für ein so kleines Feature wirkt, so kann es die neue Tabelle Statify (und erweiternden Plugins) ermöglichen, zu jedem Eintrag zusätzliche Informationen zu speichern, ohne jedes Mal die Tabelle anpassen zu müssen. Zusätzlich macht es auch die Aktualisierung von Statify einfacher, dass die Änderungen von existierenden Tabellen auf manchen Umgebungen zu Problemen führen kann.
Onboarding neuer Contributoren
Ich muss zugeben, dass ich nicht sehr viel Code geschrieben habe. Ich habe nur eine kleine UX-Verbesserung beigetragen. Stattdessen habe ich aber anderen bei ihren Contributions geholfen. Ein Teammitglied, das sonst eher keinen Code schreibt, hat seine erste Contribution gemacht und der PR wurde auch direkt geprüft und gemerged. Ein anderes Teammitglied hat an dem Beitragstitel Issue gearbeitet und kannte sich mit einigen Dingen noch nicht so gut aus. Nachdem wir zwei Tage an dem Issue gearbeitet hatten, war es an der Zeit, den aktuellen Stand zu commiten. Erst dann hat er mir erzählt, dass er bisher noch nicht mit Git gearbeitet hat, also habe ich ihm eine kleine Einführung gegeben und er konnte einen Commit in seinen Fork machen. Zu diesem Zeitpunkt haben wir dann festgestellt, dass in der Zwischenzeit andere Dinge geändert wurden, die zu Konflikten führten. Also konnte er auch die Behebung davon ein wenig lernen. Jetzt muss der neue Code noch getestet werden, bevor er dann gemerged werden kann. Da dieses Issue, und einige andere, an denen wir gearbeitet haben, recht groß waren, werden wir wohl eine neue Hauptversion von Statify veröffentlichen, die alle Bugfixes und neuen Features des Hackathons enthalten wird.
Ein Event, das man besuchen sollte!
Ich kann leider nicht so viele Details zu den anderen Teams geben. Ich würde euch aber empfehlen, euch mal den Hashtag #CFHack2023 anzusehen, um einen besseren Eindruck vom Event zu bekommen. Für mich war es wieder ein tolles Event! Nicht nur der „hacking“ Teil, sondern auch die soziale Komponente. Es gab einge offizielle Parties und spaßige Aktionen, wie etwa das Mario Kart Turniert am Sonntagabend.
Nach der Verkündung der Gewinner-Teams der verschiedenen Kategorien, hat sich die deutsche Communtiy zu einem sponaten Meta-Meetup getroffen. Darin haben Meetup-Organizer der verschiedenen Städte ihre Erfahrungen und Ideen zu deren Meetups geteilt. Wir planen ein solches Meeting nun häufiger zu haben:
Das CloudFest
Am Nachmittag gab es denn mit dem „WordPress Day“ den offiziellen Startschuss zum CloudFest. Das Haupt-Event, das am Dienstag startete, ist hauptsächlich ein „Industrie-Event“. Beim WordPress Day ging es aber in verschiedenen Vorträgen um Themen rund um das WordPress-Ökosystem, auch wenn es nicht unbedingt die typischen Themen waren, die man sonst auf einem WordCamp sehen würde. Einige davon waren eher Produkt-Präsentationen.
Am Abend fand das „Come2Gather in the Streets“ Event am Haupteingang des Europa-Parks statt. Neben Essensständen und Getränken gab es auch Livemusik. Ich hatte dann auch endlich die Gelegenheit, mit einigen Menschen zu sprechen, die in den Tagen zuvor genauso beschäftigt waren wie ich, oder die gerade erst zum Haupt-Event angereist waren.
Leider musste ich am Dienstag schon um 11 Uhr abreisen und konnte mir daher keine Sessions ansehen. Ich habe es gerade so geschafft, ein wenig durch die „Cloud Fair“, den Ausstellungsbereich, zu schlendern und mit einigen Sponsoren zu sprechen. Ich hatte auch keine Zeit, ein paar Achterbahnen zu fahren, die nur für Teilnehmende offen hatte. Im letzten Jahr hatte ich dazu aber viel Zeit.
Fazit
Auch wenn ich etwas „enttäuscht“ war, dass ich selbst nicht so viel programmiert habe, wie im letzten Jahr, hat es mir doch sehr viel Spaß gemacht, viele neue Menschen an die Open-Source-Contribution heranzuführen. Alle waren sehr aufgeregt und motiviert. Sie wollen auch in Zukunft weiter mitwirken.
Wenn nichts dazwischen kommt, dann bin ich auch im nächsten Jahr wieder gerne dabei. Vielleicht schaffe ich es dann auch, ein Projekt einzureichen. Für das eine Thema, das ich dieses Jahr einreichen wollte, hatte ich nicht genügend Zeit zur Vorbereitung. Wenn ihr selbst noch nie contributed habt, dann kann ich euch sehr empfehlen, einen Hackathon oder ein WordCamp mit einem Contributor-Day in eurer Nähe zu finden. Ihr lernt dabei neue Dinge und neue Menschen kennen!