Blog >>> Crew_

Crew Hackathon XII

Alle drei Monate veranstalten wir unseren Crew-Hackathon. Der Letzte fand Ende Mai statt, Zeit also für den Nächsten. In Hackathon Nummer 12 auf dem Programm: ein knifflige Evaluation mit unklarem Resultat, eine vielversprechende Idee und Weihnachtsvorbereitungen.
09.09.2021
Bene Clauß
Bene Clauß
Projektmanager
Crew Hackathon XII

Der Ablauf

Den Ablauf unseres alle drei Monate stattfindenden Hackathons haben wir bereits in den Blog Posts zum Hackathon IX und Hackathon XI beschrieben. Daher verzichten wir hier darauf, den Ablauf nochmal zu erläutern, auch wenn aller guten Dinge bekanntermaßen eigentlich drei wären.

Die Themen

Unser Ideen-Board war wieder prall gefüllt und die Gruppenfindung ging gewohnt flott vonstatten. Für unsere internen Videomeetings nutzen wir seit ein paar Monaten Discord. Beim Hackathon kam es bisher noch nicht zum Einsatz, hat sich nun aber auch hier absolut bewährt.

Während wir uns beim letzten Mal im Laufe des Tages einigen kleineren Themen widmeten, fiel die Wahl dieses Mal auf drei umfangreichere Themen:

Laravel Octane

Team: Tristan, Kevin, Sebastian

Ziel: Evaluation von Laravel Octane

Laravel Octane ist eine Erweiterung für das Laravel Framework, um die Nutzung des Frameworks mit swoole oder RoadRunner zu ermöglichen, beziehungsweise zu vereinfachen. Bei Verwendung dieser Technologien ist es so, dass der Code der Anwendung für die Laufzeit des Servers im Arbeitsspeicher geladen bleibt, anstatt für jede Anfrage an den Server neu geladen zu werden. Gerade bei komplexen Anwendungen, kann dies die Antwortzeit stark verbessern.

Bei der Umsetzung muss man hierbei allerdings einige Dinge beachten, da es sonst zu Memory-Leaks kommen kann, welche den Server und seine Tätigkeit negativ beeinflussen. So ist beispielsweise darauf zu achten, möglichst keine statischen Arrays zu verwenden, in welche dynamisch Daten hinzugefügt werden, und wenn doch, diese entsprechend wieder zu leeren.

Bei zwei unserer Projekte haben wir Octane mit Swoole implementiert und getestet. Hier fiel der Schwierigkeitsgrad der Umsetzung unterscheidlich aus, da Octane mindestens das Laravel Framework in Version 8 und ebenso PHP in Version 8 voraussetzt, und eines der Projekt diese Kriterien bereits erfüllte.

Erste manuelle Versuche in den Anwendungen haben Besserungen der Antwortzeiten von 10 bis teilweise 30%, abhängig von der aufgerufenen Route, gezeigt. Wir haben ebenfalls automatisierte Benchmarks mit Apache Benchmark ausgeführt, allerdings ist uns im Nachhinein aufgefallen, dass die Erhebung der Daten, wie wir sie durchgeführt haben, nicht statistisch relevant ist und die ersten Erfahrungen mit Octane nicht widerspiegelte.

Zu erwähnen ist noch, dass es auch einen Versuch gab, Octane mit Roadrunner aufzusetzen, dieser ist jedoch wegen Fehlern, derzeit unbekannten Ursprungs, fehlgeschlagen.

Unser Fazit hierbei ist, dass man in jedem Projekt neu abwägen muss, ob die Vorteile den Mehraufwand (besondere Wachsamkeit gegenüber eventuellen Datenlecks und Memoryleaks) rechtfertigen. Zusätzlich sollte man ein dediziertes Test-Setup aufstellen um ein aussagekräftiges Benchmark zu erstellen.

Produktentwicklung

Team: Phil, Simon, Hauke

Ziel: Konzeptionierung & Prototyping für neues Produkt

Phil, Simon und Hauke haben fleißig am Konzept und auch bereits an einem ersten Prototyp für ein neues Produkt getüfftelt. Mehr wird an dieser Stelle noch nicht verraten, aber wie immer halten wir euch natürlich im Blog auf dem Laufenden.

Sourceboat Adventskalender

Team: Ellen, Flo, Bene

Ziel: Erstellung eines Adventskalenders für unsere Website

Schon seit einigen Jahren schwebt uns die Idee eines eigenen Adventskalenders für Kunden, Partner, Freunde und alle anderen Sourceboat-Sympathisanten vor. Im August an einem Adventskalender zu basteln fühlte sich zwar etwas seltsam an, andererseits wird auch in den Supermarktregalen bald schon wieder Platz gemacht für Spekulatius, Lebkuchen und Zimtsterne. Abgesehen davon wissen wir alle, wie überraschend und plötzlich Weihnachten jedes Jahr auf´s Neue vor der Tür steht. Ergo: zu frühe Weihnachtsvorbereitungen gibt es nicht!

Zunächst machten wir uns Gedanken zum inhaltlichen Konzept. So viel können wir schon verraten: es ist gar nicht so einfach einen digitalen Adventskalender mit 24 abwechslungsreichen Türchen zu basteln. Im weiteren Verlauf wurden die 24 Türchen ausgearbeitet und bereits teilweise mit konkreten Inhalten gefüllt.

Parallel legten wir auch schon mit der technischen Umsetzung los, wobei die Herausforderung hauptsächlich darin lag, die verschiedenen Inhalte des Adventskalenders auf sämtlichen Endgeräten ordentlich darzustellen, ohne den Arbeitsaufwand völlig zu sprengen.

Die Integration des Adventskalenders auf unserer Website, haben wir soweit fertigstellen können. Hierbei haben wir auf Alpine.js zurückgegriffen, womit wir die einzelnen Türchen ohne großen Aufwand in einem SVG auf der Website verstecken konnten. Im nächsten Hackathon müssen wir dann noch den Inhalt für die Türchen einbinden und noch etwas am Design feilen.

Ob und wie uns ein Sourceboat Adventskalender gelungen ist erfahrt ihr also spätestens am 01. Dezember 2021. Stay tuned!

Teilen @