UMWERK x AVANTGARDE Experts Hackathon

Was passiert, wenn man 15 Entwickler mit 3 Raspberry Pis und 3 verschiedenen Cloud Anbietern einen Tag alleine lässt?

Hackathon Premiere


Ende Oktober haben wir zusammen mit unseren Freunden von Avantgarde Experts einen Hackathon veranstaltet.

Für alle die noch nie etwas von einem Hackathon gehört haben: Ein Event, bei dem Entwickler/innen zusammenkommen und gemeinsam an einer Aufgabenstellung arbeiten (setzt sich zusammen aus Hacking und Marathon).

No Boundaries


Im Vordergrund eines jeden Hackathons steht das Teamevent! Raus aus dem Alltag und rein ins Brainstorming mit einer zusammengewürfelten Gruppe von Menschen, mit denen man sich einer gegebene Herausforderung widmet – ohne auf langfristige Wartbarkeit, Budget oder Kundenwünsche zu achten, wie dies sonst der Fall ist.

15 Entwickler, 3 Clouds, 1 Challenge


Die Herausforderung sollte sich um den Bereich drehen, den wir am besten können: IoT und Cloud.

Jedes Team erhält einen Raspberry Pi an die Hand um damit eine IoT-Anwendung mit Cloud-Anbindung zu erstellen. Anwendung soll das Ganze in einer Photobox finden, die mit allerlei Klamotten und Utensilien bei Festen und Veranstaltungen für das unvergessliche Erinnerungsfoto sorgen.

Der Ablauf


Bei einem kurzen Briefing wurde das Thema kurz vorgestellt und die Teilnehmer in drei Teams aufgeteilt.

Der Clou bei den Teams: Jedes Team bekam eine andere Cloud für den Upload ihrer Bilder. Nach Möglichkeit sollten die Kollegen dabei mit einer Cloud arbeiten, mit der sie bisher wenig Berührungspunkte hatten, um auch einen gewissen Lerneffekt mitzunehmen.

Zielvorgabe: Am Ende muss eine funktionierende Photobox rauskommen, die auf dem Raspberry Pi lauffähig ist, Bilder aufnehmen kann und diese in die jeweilige Cloud hochlädt. Weitere Features können, müssen aber nicht angeboten werden.

Das erste Drittel


Die Teams starten voller Tatendrang in ihre Projekte und schmieden große Pläne über mögliche Zusatzfeatures. Dann geht es an die große Frage, welche Technik verwendet werden sollte.

Nativ mit Python oder als Webapp? Vielleicht mit Flutter oder auf ein anderes Framework setzen?

Es zeigen sich leider auch organisatorische Mängel, die wir bei unserer Planung nicht hinreichend getestet hatten: es fehlen passende Adapter und die Netzwerkkonfiguration lässt manche Laptops die Raspberrys im Netzwerk nicht finden – aber wir wären keine Profis, wenn wir nicht für alles eine schnelle Lösung finden würden!

Das zweite Drittel


Die Teams sind jetzt fleißig am Entwickeln und kämpfen mit unterschiedlichsten Problemen.

Bei manchen zeigt sich, dass die gewählte Technologie nicht die richtige war, andere kämpfen damit in kürzester Zeit durch die Doku der Cloud-Anbieter durchzusteigen. Insbesondere das Azure-Team kämpft mit dem Rechtemanagement der Cloud-Plattform.

Es zeigt sich, dass manch große Pläne der Ernüchterung gewichen sind, dass man erst mal die grundsätzlichen Dinge zum Laufen bringen muss, bevor man sich zu viel vornimmt. Es kommen erste Zweifel auf, ob bei allen überhaupt die Minimalanforderungen erfüllt werden.

Das letzte Drittel


Endspurt! Die Teams haben es alle geschafft, dass schon mal ein Bild auf dem Bildschirm erscheint. Es gibt noch Probleme zu lösen, aber die Zuversicht wächst, dass am Ende ein funktionierendes Produkt da steht.

Es liegt eine angespannte Arbeitsamkeit in der Luft, man kann fast ein bisschen Startup-Feeling erspüren.

Das große Finale


Pünktlich zum Ende des Hackathons nach 8 Stunden finden sich alle Teams zusammen um noch einmal gemeinsam zu sehen, welche Lösungen die anderen in der Zeit fertigstellen konnten und die Leistung des eigenen Teams zu präsentieren.

Hier zeigt sich, wie unterschiedlich die Lösungsansätze für eine doch recht konkrete Problemstellung sein können:

Während sich das erste Team für die Lösung mit Python entschieden hat, fand die Implementierung des zweiten Teams größtenteils im Browser statt. Den Raspberry Pi nutzten sie quasi fast ausschließlich, um den Browser darzustellen. Team drei hat sich für einen Stack entschieden mit dem sie sich auskennen: Flutter in Verbindung mit einem Kotlin-Backend – und das sogar in einem Docker-Container auf dem Pi. Beeindruckend, aber es gibt am Ende keine Zusatzpunkte für eine schöne Architektur, heute zählt für uns nur das Produkt.

Nachdem alle Teams ihre Lösungen präsentiert haben, holen wir ein paar unabhängige Tester dazu, die ohne die Teams und die Hintergründe zu kennen,
die Fotoboxen testen sollten.

Traurig für das Team mit den meisten Features: Leider hat sich in letzter Minute noch ein Bug eingeschlichen, weswegen der Upload nicht funktionierte – das beeindruckt leider nicht. Bei den anderen beiden Teams funktioniert alles, allerdings sticht ein Team durch eine etwas bessere Benutzerfreundlichkeit hervor und gewinnt damit die Challenge – Glückwunsch!

Fazit


Was war unser Learning Outcome?

  • Gute Vorbereitung ist enorm wichtig, schlechte Vorbereitung kostet Zeit und das ist umso kritischer, wenn man nur einen Tag Zeit hat.
  • Es kann schwierig sein, sich in so kurzer Zeit durch die Dokumentation der großen Cloud-Anbieter zu wühlen, wenn man damit bisher wenig Berührungspunkte hatte.

Was würden wir beim nächsten mal anders machen?

  • Eine Generalprobe, damit alles von der Hardware bis zur Netzwerkkonfiguration
    möglichst reibungslos läuft
  • Eine noch klarere Aufgabenstellung vorbereiten, ggf. mit etwas vorbereitetem Code – die Auswahl der richtigen Tools hat einen großen Teil der Entwicklungszeit weggenommen und viel Zeit ist für Grundlegendes draufgegangen, das am Ende wenig „Wow-Effekt“ erzeugt hat

Zeit für einen starken IT-Partner?

Mit unseren IT-Dienstleistungen meistern Sie jede Herausforderung –
ob Technologieauswahl, nahtlose Systemintegration oder Prozessautomatisierung.
Unsere Lösungen sind darauf ausgelegt, Ihre IT-Infrastruktur
stabil, effizient und zukunftssicher zu gestalten.

Schreibe einen Kommentar

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