pubquizLogo

WildWeek: PubQuiz

Von und am 20.09.2021

Bei der WildWeek der Masterklasse Mobile handelt es sich um eine „Extreme Programming Week“ während des zweiten Master Semesters. Durch das Stattfinden von Distance Learning konnten wir diese Woche nicht an der Fachhochschule umgeben von Kaffee und Bildschirmen verbringen, sondern waren mittels Discord miteinander verbunden.

So der Begriff WildWeek ist ja nun geklärt. Eine Woche Programmieren. Aber mit der einen Woche ist es nicht getan. Zuerst musste ein Projekt her. Kollektiv entschieden wir, die Masterklasse Mobile, uns für die Umsetzung einer App, dem „Pub Quiz“. Es handelt sich um eine App, mit der man sich ein Gefühl von Gemeinschaft nach Hause holen können, soll. Außerdem soll es möglich sein mit der App direkt in einem Pub an einem solchen Quiz teilnehmen zu können.

Für die Umsetzung wurden die Technologien NodeJs mit ExpressJs für die Entwicklung im Backend, sowie VueJs für die Frontendentwicklung herangezogen. Weiters wurde socket.io für die Verbindung der Spiele herangezogen.

Im Vorfeld war es unsere Aufgabe uns individuell auf die zugeteilten Aufgaben vorzubereiten, Tutorials anzusehen und die einzelnen Anteile vorzubereiten.

Bettina

Meine Aufgaben lagen neben der Backendentwicklung auch in der Organisation und Koordination in der Vorbereitung. Wir mussten einige Vorbereitungen treffen, wie Technologieentscheidungen, Erstellung von Diagrammen und das Design sollte auch im Vorhinein erstellt werden.

Mit dem Start der Woche hatten wir also alle unsere Teile soweit vorbereitet, dass wir mit der Umsetzung starten konnten. Während der Woche war ich Teil des Backendteams für die Organisationsplattform. In diesem Teil der App sollten die Spiele erstellt werden, Freunde eingeladen werden und ein Spiel gestartet werden können. Auch die Statistik sollte ein Teil hiervon sein. Hier hatte ich die Möglichkeit mein Wissen in NodeJs zu vertiefen und auch Kenntnisse im Websocket Bereich zu sammeln.

Mein größter Fortschritt war wohl in Sachen Websockets. Ich war mit dieser Art Kommunikation zwischen Front- und Backend noch nicht in Berührung gekommen und konnte somit ein neues Feld kennen lernen. Für Anwender mag es unbedeutend erscheinen, dass ein Name neben einem andren auftaucht, wenn ein weiterer Spieler teilnimmt, für mich war das wohl der spannendste Fortschritt.

Schwierig war wohl die Kommunikation innerhalb der Gruppe. Da wir alle isoliert zuhause saßen und lediglich online verbunden waren, hatten wir hier einige Anlaufschwierigkeiten. Ich denke aber dennoch lässt sich, das Ergebnis dieser Woche sehen!

Mario

Ich durfte die technische Planung und Leitung des Projektes übernehmen. Zur Vorbereitung dieser intensiven Programmier-Woche kümmerte ich mich um die Zusammenführung einzelner Design- und Architektur-Konzepte. Außerdem bereitete ich die Entwicklungsumgebung für die Arbeit am Projekt vor. Dabei forderte mich am meisten die Einrichtung von Pipelines zur automatischen Testung und Veröffentlichung des Programms auf unserem Server.
Während der Woche investierte ich die meiste Zeit in Meetings zur Abstimmung der einzelnen Entwicklungsstränge und mit dem Überprüfen von geschriebenen Code, sowie dem Instandhalten des Environments.
Ich durfte aber auch an einigen Features, wie der Erstellung eines Quizzes, mitarbeiten.

My Learnings

Arbeit mit Gitlab CI/CD

Ein System mit Frontend und Backend auf einem Produktiv-System mit funktionierender Kommunikation zum Laufen zu bringen, ist nicht die einfachste Aufgabe. Dafür musste ich schon viel Zeit in der Vorbereitung für die Woche, aber auch an den ersten Tagen der Woche investieren. Den Umgang mit Docker konnte ich außerdem noch vertiefen.

Konzeption eines Full Stack Web Projekts

In einem derart großen und komplexen Projekt mit so vielen Teammitgliedern habe ich gelernt, wie wichtig es ist, das Design, die User Experience und die Usability im Vorhinein zu planen und mit der Entwicklung nicht zu früh anzufangen. Sonst besteht die Gefahr, dass zwei verschiedene Entwicklungsstränge aneinander vorbei arbeiten und nicht dieselbe Vision von der Funktionalität vor sich haben.

Zusammenarbeit bei verschiedenen Arbeitsweisen

Je unterschiedlicher die Arbeitsweisen, desto besser muss die Planung sein. In bisherigen FH-Projekte mit einzelnen Kolleginnen und Kollegen gab es da wenige Probleme. Man sucht sich schließlich Projektpartnerinnen und -partner aus, mit denen man gut zusammenarbeiten kann. In diesem Projekt sind einige unterschiedliche Arbeitsweisen aufeinander getroffen und es hätte zu manchen Zeitpunkten bessere Koordination und womöglich konkretere Pläne benötigt, um stets das Ziel im Auge zu behalten.

Discord ist gold wert

Discord ist ein Tool zur Kommunikation, das aus der Videospielszene hervorgegangen ist. Es erlaubt, einerseits über Textkanäle zu chatten, aber auch in verschiedenen Sprachkanälen zu reden bzw. sogar per Video zu telefonieren und den Bildschirm zu teilen. Dabei sieht man dauerhaft, wer gerade mit wem in einem Gespräch ist und wer verfügbar ist. Die digitale Kommunikation funktioniert besser, wenn Nutzer wissen, wer online ist und wen sie gerade nicht stören mit ihrer Frage. Die Nutzung dieses Tools hat uns meiner Meinung nach besonders geholfen.

The comments are closed.