Hackathon Güsche App 2023

Schaffen wir es, in ein paar wenigen Tagen eine Festival-App zu bauen?
11. Juli 2023, der Dienstag bevor das Festival startet: Wir haben in den letzen Tagen was hin-gehäckt: Die inoffizielle App für das Gurtenfestival.
Kunde
Apps with love
Jahr
2023
Links

Als Allererstes:

Wichtiger Disclaimer

Diese App ist aus einer Bier-Idee am Freitag vor dem Gurtenfestival entstanden. Von daher entspricht die (inoffizielle) App auch nicht unserem üblichen Qualitätsstandard. Wir leisten für die App auch keinen Support - die meisten von uns sind eh selber aufm Güsche, sorry 😇. Wer's dennoch wagen will: Hier geht's in die Stores:

Wir tun alles dafür, dass die Informationen in der App korrekt und laufend aktuell sind. Dass wir mit dieser Bier-Idee das Gurtenfestival und seine Sponsoren aus dem Nichts überrascht und wir insbesondere beim Kommunikations- und Marketingteam des Festivals für zusätzliche und vermeidbare Aufwände gesorgt haben, tut uns leid. Das war nicht ganz zu Ende gedacht...

Was haben wir gebaut?

Wenn wir kurz promo-mässig beschreiben müssten, was hier entstanden ist, würde das in etwa so klingen:

Di inoffizielli Begleitäpp fürs Festival ufem Güsche 2023

Erlebe das Gurtenfestival auf einem neuen Level mit der Güsche App! Keine Lust auf Zeitpläne aus Papier und langsame Websites? Dann lade die Güsche App runter und checke das Line-up deines Lieblingsfestivals, entdecke Künstler*innen und speichere deine Favorit*innen.

  • Line-up-Ansicht

  • Personalisierte Favorit*innen

  • Offline-Verfügbarkeit

  • Homescreen-Widget mit den nächsten Acts

  • Food-Übersicht

  • …und laufend kommen neue Features hinzu!

Hol dir die Güsche App und feiere das Festival wie nie zuvor! #GüscheApp

Screenshot Guesche 2023 hackathon app: Homescreen Widget
Screenshot Guesche 2023 hackathon app: Lineup Screen
Screenshot der Guesche 2023 hackathon App: Wetteranzeige und Aaretemperatur
Screenshot der Guesche 2023 App: Food Übersicht
Von Homescreen Widget, über Line-up mit Favoriten-Funktion, Food-Übersicht bis hin zu Wetterprognose und Aaretemparatur: Die wichtigsten Features für die Festival App sind am Start.

Von der Thirsty-Friday-Bier-Idee in 48 Stunden in den App Store

Am Anfang stand das Problem, das alle Gurtenbesucher*innen kennen dürften: Wenn alle auf dem Hügel gleichzeitig dieselbe Handyantenne brauchen, dann dauerts ewigs bis die Webseite lädt, das Programm auf Papier ist jetzt auch nicht soo praktisch und aktualisiert sich nicht, wenn etwas ändert…

Bei einem Bier am “Thirsty Friday” kamen wir ins Fachsimpeln. Eine Lösung, mit welcher das Line-up schnell, übersichtlich und individuell konfigurierbar auf dem Smartphone angezeigt werden kann, war gefragt. Zum Glück verstehen wir was von App Entwicklung 😉. Kurzerhand haben wir beschlossen, uns eine Challenge zu setzen und zu versuchen, eine Güsche App innerhalb von 48h im App Store zu haben. Das war am Freitag, 7. Juli 2023, weit nach dem Feierabend...

Der Start zum Güsche Hackathon 2023
Der Startschuss fiel am Samstagnachmittag
Screenshot aus Slack: Progress Update Güsche Hackathon 2023
Kurz danach das erste Progress-Update: Da geht was.
Slack-Screenshot: Bugfixing der Güsche App
Bugfixing am Sonntagnachmittag. Und: Darkmode ist auch ready 😎
Meme "Waiting for Apple to review Güsche"
Weniger als 48 Stunden nach Start dann schliesslich: Wir warten auf Apple. 40 Minuten später war v1.0 im App Store erhältlich.

Wie haben wir das in so kurzer Zeit geschafft?

Relativ einfach: Wir haben auf Vieles verzichtet. Zuallererst haben wir die App nicht designed und auf Standard-UI-Komponenten von iOS gesetzt. Das Ding ist: Für eine App braucht es ja nicht nur ein App-Design, sondern auch noch Icons, Screenshots und weitere Grafiken für den App Store und auch sonst noch einiges mehr...

Dennoch stand grundsätzlich mal die Challenge im Zentrum: Schaffen wir es rechtzeitig? Also mussten wir sozusagen hinten anfangen und als erstes musste der App Store-Eintrag her. Dafür haben wir mit Platzhaltern gearbeitet. Dann erst kamen die rudimentären technischen Komponenten. Dann erste Textentwürfe für Texte im App Store (hello ChatGPT.. 😇) und dann musste mal ein erster Build, quasi v0.1 her und ins Review geschickt werden. Erst dann kamen etwas hübschere grafische Inhalte, weitere Features, bessere Texte und ganz am Schluss haben wir uns dann noch überlegt, wie das Ganze kommuniziert wird und unter anderem diese Seite erstellt. Also grundsätzlich nicht wie Entwicklung eigentlich funktioniert, aber angesichts des Zeitplans nicht anders möglich.

Screenshot aus Slack: Design-Support für das Hackathon-Projekt wird gesucht
Die Erkenntnis, dass Apps ohne Involvement vom Designteam umzusetzen nicht ganz einfach ist, setzte ziemlich schnell ein.. 😅

Und wie haben wir Android hingekriegt?

Um es in einem Wort zu sagen: Yannick 🚀. Yannick hat zwar erst am Montag angefangen, aber glücklicherweise gerade etwas Zeit. Acht Stunden später war die erste Version live im PlayStore. To be fair: Das Backend war schon bereit und Alain hatte mit der iOS Version schon viel Vorarbeit geleistet.. 😁. Insofern ist es aber nicht sehr erstaunlich, dass die Android Version ein ganz klein wenig hinterherhinkt, was Widgets und sonstige Features angeht, aber der Kernnutzen ist durchaus gegeben.

Techstack: Native Apps und Firebase Backend

Schon beim Entstehen der Idee war uns bewusst, dass wir auf die Schnelle keine Zeit haben, ein eigenes, auf unsere Wünsche zugeschnittenes Backend und die dazugehörige Schnittstelle zu entwickeln. Wir kamen zum Schluss, dass wir vollumfänglich auf die technischen Möglichkeiten von Google Firebase zurückgreifen. Folgende Services von Firebase werden genutzt:

  • Firebase Database (Firestore)

  • Firebase Authentication (Anonym)

  • Firebase Storage

Firestore Database ist ein skalierbarer, dokumentenorientierter NoSQL-Datenbankdienst, der von Firebase (Google Cloud) angeboten wird. Es ist eine cloudbasierte Datenbank, die entwickelt wurde, um die Entwicklung von Apps oder Webseiten möglichst zu erleichtern, indem eine einfache und flexible Datenspeicherung und -abfrage ermöglicht wird. Firestore bietet die Möglichkeit, Daten manuell zu importieren. Da die Daten, die wir in der App anzeigen, statisch sind, haben wir für das Line-up sowie das Essensangebot jeweils ein .json aus den Vorhanden Informationen erstellt. Dieses haben wir dann manuell als Sammlung innerhalb der Firestore Databank importiert.

Screenshot der Firestore Datenbank
Kleiner Einblick in die "Datenbank" in Google Firestore

Mit dem Firebase Authentication Service können wir eine anonyme, im Hintergrund stattfindende Authentifizierung umsetzen, welche es den User*innen ermöglicht, die Apps ohne Registrierung zu nutzen. Sobald eine User*in die App öffnet, wird ein anonymer Account erstellt und diesem eine ID zugewiesen. Diese ID kann durch die App verwendet werden, um die User*innen während der Nutzung der App zu identifizieren und ermöglicht es zum Beispiel, Push-Notifikationen an ein Endgerät senden zu können - dabei wird der Push-Token einer User*in dieser ID zugewiesen. 

Zu einem späteren Zeitpunkt könnte eine nachträgliche Verknüpfung des anonymen Users mit einem permanenten Konto in der App hergestellt werden, ohne dass dabei bestehende Daten verloren gehen oder nachträglich noch einmal abgefragt werden müssten. 

Während der App-Entwicklung haben wir zudem den Storage Service von Firebase verwendet, um möglichst schnell die Datenschutz- sowie die Nutzungsbestimmungen zu hosten, sodass wir zeitnah durchs erste Review der App im App-und Playstore kamen. 

Die nativen Apps wurden mit SwiftUI und Kotlin umgesetzt. 

Wetterdaten und Aaretemperatur

Ob es sich lohnt, vom Gurten bis ins Eichholz für einen erfrischenden Schwumm in die Aare zu gehen? Auch das lässt sich auf dem Berg mit Hilfe der Güsche App herausfinden. Für die Aaretemperatur sowie die aktuellen Wetterdaten durften wir die Aare Guru API und die Schnittstelle vom BAFU anzapfen. Merci viu mau dafür!

Fazit

Was wir mal wieder festgestellt haben: Wenn es sein muss (und man einige Abstriche macht), können wir sehr schnell sein. Als sich am Montag und Dienstag dann im Team herumgesprochen hat, was da einige in ihrer Freizeit angezettelt hatten, gab es dann schon noch die eine oder andere Diskussion: Können wir das so verantworten? Haben wir uns mit den Data-Providern vom Gurtenfestival und Aare Guru abgesprochen, stimmen Datenschutz und -Sicherheit?

Und: Wie kommunizieren wir das so, dass einerseits möglichst viele vom Projekt profitieren können, andererseits aber auch so, dass nicht der Eindruck entsteht, dass das unser übliches Qualitätsniveau und eine "normale" Entwicklungsgeschwindigkeit ist? Diese Dinge mussten dann schnellstens geklärt und umgesetzt werden. Aber:

Screenshot aus Slack: Häcken macht Freude

Prost & man sieht sich ‘oben’! 🍻⛰️

Zur Übersicht
Alain Stulz
Alain Stulz
Technical Lead iOS Development
iOS-Entwickler mit erweiterten Fähigkeiten. So beherrscht er eigentlich alles, was Strom frisst, hat einen Bachelor of Science der Uni Bern in der Tasche und die Verbesserung unserer Office-Automation stets im Hinterkopf. Unser Ass im Ärmel!
Yannick Pulver
Yannick Pulver
Technical Lead Android Development
Unser Android Dev mit Stil! Er könnte in Paris das neue Dior Gesicht werden, aber es zieht ihn eher in die Berge, wo er die schöne und reiche Natur beobachtet.
Simon Gottstein
Simon Gottstein
Project Management & Lead QA Team
Er mag nicht nur in Gewässer aller Art abtauchen, sondern auch in die Tiefen unserer Projekte. Nebst Dive-Master ist er auch Master der guten Laune, Überzeugungsarbeit und Kaffee & Kuchen Pause. Mit seinem breiten Erfahrungsschatz hat er gut lachen - wer Projekte mit ihm umsetzt, ist stets bestens unterhalten.
Martin Mattli
Martin Mattli
Head of Operations & Quality Management
Theoretisch kann er Flugzeugturbinen auseinandernehmen und wieder zusammenbauen – während des Fluges. Dies wurde ihm aber zu langweilig und er ist nun bei uns für die technische Qualitätssicherung zuständig. Wir sind safe!
Maya Walther
Maya Walther
Marketing & Sales, UX-Writing
Hochqualifiziertes Knowhow, Pragmatik, Effizienz, Kreativität: Hat sie alles. Frische Texte und neue Ideen hieven unser Marketing Team aufs nächste Level.
Valentin Naegeli
Valentin Naegeli
Head of Marketing & Sales
Wer mit uns eine App entwickeln möchte, bekommt von ihm erste Infos und Tipps. Er kennt sich mit dem ganzen App-Ökosystem aus und weiss, ob sich eine App lohnt oder ob besser zuerst in das Marketing oder eine Webseite investiert werden müsste. Wir nennen ihn auch „The Wolf of Landoltstreet“.
Till Könneker
Till Könneker
Creative Direction | Co-Founder
Hat einen gefürchteten Adlerblick und wacht über die Qualität unserer Produkte. Hängt oft seinen Gedanken nach und schmiedet Pläne, wie Apps with love ins nächste Level kommen könnte ohne ein Leben zu verlieren. Er mag Katzen, Kinder und Lakritze.
Wir haben grad gemerkt, dass du mit Internet Explorer surfst. Unsere Webseite sieht damit leider nicht so schön aus.

Du willst erfahren warum das so ist?
Wir haben darüber geschrieben.

Zum Blog

Du brauchst Hilfe bei der Umstellung?
Melde dich. Wir helfen gern.

Kontakt

Einen neuen Browser installieren?
Hier gibt es Auswahl.

Browser