PIT-Hackathon 2018

Wisst ihr, was ein Hackathon ist? Vom 28.-30. Sep 2018 habe ich als Mentor beim PIT-Hackathon in Paderborn unterstützt. Der Verein "Paderborn ist Informatik e.V. (https://paderborn-ist-informatik.de/)" veranstaltete zum dritten Mal diesen Event im Heinz Nixdorf MuseumsForum. Dort gibt es neben der wohl größten Computerausstellung auch entsprechende Schülerlabore mit Computer, Netzteilen, Internet u.a. Wann hat man schon mal die Möglichkeit von 09:00 bis 23:00 im HNF zu diskutieren, entwerfen, diskutieren, programmieren und bauen u.a. Der Name "Hackathon" leitet sich von "Hack" und Marathon ab. Aber "Hacken" bedeutet nicht, irgendwo einzubrechen.

Hier ein rein subjektiver Bericht aus meiner Sicht als Mentor.

Ablauf und Themen

Am Freitag gegen 14:00 habe sich die über 70 Teilnehmer und ca. 25 Mentoren im Seminarraum 1 des HNF versammelt. Im Vorfeld haben die Mentoren schon ganze Arbeit geleistet und drei Themenbereich ausgearbeitet, die über kurze Impuls-Vorträge vorgestellt wurden. So konnten die Teilnehmer, die sich bislang noch nicht festgelegt haben, ihre Favoriten zu wählen. Diese Jahr wurden folgende Themen angeboten, zu denen passend die Arbeitsplätze vorbereitet wurden.

  • Games-Entwicklung
    Auf Basis des Unity-Frameworks und weiterer Komponenten konnten die Teilnehmer die ersten Schritt in eine Spielentwicklung gehen. In mehreren Teams werden dabei die verschiedenen Bausteine eines Spiels entwickelt und durch die Teilnehmer bearbeitet.
  • App-Entwicklung
    Jeder hat ein Smartphone aber wäre es nicht genial ein eigenes Programm von der Idee über den Entwurf bis zur Verteilung über den Appstore zu entwickeln? Genau das haben diese Gruppen gemacht. Hier wurde z.B. das Ionic-Framework als Basis vorgeschlagen.
  • IoT
    Die ganze Welt spricht von "Internet of Things". Dieses Team hat mit einer Vielzahl an Prozessoren, Sensoren u.a. ganz unterschiedliche Themen bearbeitet, auf die ich gleich noch etwas genauer eingehe.

Zwei weiter Kurzvorträge zur Projektsteuerung mit SCRUM und der Verwaltung von Sourcecode mit GIT sollten die spätere Projektarbeit unterstützen. Danach standen die Mentoren für ihren Bereich den interessierten Teilnehmern Rede und Antwort. Nach dem leckeren Abendessen in der Kantine den HNF haben sich bis 22:45 Uhr die Teilnehmer in Teams zusammengefunden, ihr Thema konkretisiert und die Arbeitsumgebung vorbereitet. Ziel des Hackathon ist es nicht nur, die unterschiedlichen Menschen unterschiedlichen Alters zusammen zu bringen, sondern auch zu lernen, wie mehrere Personen im Teams zusammen an einem gemeinsamen Ziel arbeiten.

IoT-Projekte

Diese Jahr haben sich 13 junge Schüler und Studenten für IoT entschieden. App-Entwicklung und insbesondere das Angebot zu "Games" hatten natürlich eine sehr große Anziehungskraft. Dennoch haben sich die IoT-Teilnehmer in drei Teams aufgeteilt, die sich ganz unterschiedliche Aufgaben selbst gestellt haben. Zuerst haben alle Teilnehmer ihre Ideen als Notizzettel an eine Moderationswand geheftet und ihre Überlegung dazu vorgestellt. Es zeigte sich schnell, dass es themenverwandte Aufgaben gibt, die zusammengeführt werden können. Genauso haben sich dann auch irgendwie die Teams gefunden. Drei Themen wurden dann umgesetzt.

  • Kamera
    Anfangs war geplant, dass eine Kamera Gesichter erkennen und per Servo nachgeführt wird. Eine Erweiterung wäre z.B. die Erkennung des Mundes und der Abschluss eines Gummibären-Katapult. Das diese in der Kürze nicht realisiert werden konnte, wurde der Schwerpunkt auf die Bilderkennung und entsprechender Reaktionen darauf gelegt. Zudem konnte die Kamera auch Abstimmkarten erkennen und die Software diese zählen.
    Um Einsatz kam ein RasPi3 zur Bilderfassung. Anstatt der RasPi-Kamera, deren Flachbandkabel die Bewegung wohl kaum überstanden hätte, kam dann eine USB-Webcam zum Einsatz. Die Bilderkennung erfolgt ebenfalls auf dem RasPi um die Ergebnisse dann per MQTT zu melden. Ein NodeMCU als MQTT-Subscriber steuert dann die Kamera-Servo's.
  • IoT-Haussteuerung
    Diese Teams hat sich der klassischen IoT-Anforderung gestellt und verschiedene selbst entwickelte Sensoren und Aktoren über einen Eclipse MQTT-Broker als Docker-Container auf einem RasPi 3 zu verbinden und die Daten über Node-RED auch noch auszuwerten. Darunter war ein WiFi-Scan-Sensor, der MAC-Adressen von Telefonen für die Präsenzerkennung nutzt, RFID-Sensoren für Türöffnungen, Displays zur Anzeige und eine mit ESPurna gekaperte 220V Funksteckdose mit ESP8266 als Lichtsteuerung.
  • MQTT-Encryption
    Die Übertragung von MQTT-Meldungen erfolgt entweder über Port 1883 unverschlüsselt oder per Transportverschlüsselung über Port 8883/TLS. Der MQTT-Server sieht aber die unverschlüsselten Daten. In diesem Projekt wurde eine Library entwickelt, mit der die Nutzdaten zwischen den Endpunkten verschlüsselt werden können und damit die Nutzung von öffentlichen MQTT-Diensten ohne TLS-Verschlüsselung sicher möglich ist. Das war alles andere als einfach die Diffie-Hellmann-Logik auf den kleinen ESP8266/ESP32 zu pressen.

Interessant war aus meiner Sicht, dass alle drei Projekte tatsächlich funktionierende Prototypen zustande gebracht haben und am Ende auch präsentieren konnten. In den drei Tagen habe ich sehr unterschiedliche Teilnehmer erlebt, die aber jeder für sich eine steile Lernkurve durchlaufen und einen wichtigen Beitrag zum Team geliefert haben.

Das nächste Mal

ich bin sicher, das es in 2019 auch eine viert Auflage des PIT Hackathon geben wird. Die drei Tage waren sehr interessant und wenn sich wieder ein paar Leute für IoT finden, dann bin ich als Mentor gerne wieder dabei. Es macht einfach Spaß dabei zu unterstützen, wie eine frisch zusammengewürfelte Gruppe von Personen unterschiedlichen Alters und Wissensstand im einem neuen Teams in kurzer Zeit so etwas hinbekommen. Bei der Vorbereitung habe ich mir aber gemerkt, was man noch verbessern kann.

Und ich bin sicher, dass ich auch nach dem 4. Hackathon wieder Dinge mitnehme, die ich beim 5. Hackathon dann besser machen würde. Die Hackathon-Teilnehmer durchlaufen einen einzelne SCRUM-Schleife in 24h. In Firmen sind diese Loops dann 2-4 Wochen. Die Organisatoren des Hackathon können nur jedes Jahr eine Iteration durchlaufen.

Weitere Links