Hacker School in Karlsruhe: Auf die Plätze, fertig, hacken!

Keine Kommentare

Was ist die Hacker School?

Die Hacker School ist ein gemeinnütziger Verein aus Hamburg, der sich zum Ziel gemacht hat, Kinder und Jugendliche IT-technisch zu fördern und sie für’s Programmieren zu begeistern.

Am Wochenende vom 13. und 14. Juli haben 17 Unternehmen aus Karlsruhe, unter anderem codecentric, eine Hacker School veranstaltet, um Schülern über die zwei Tage das Interesse an IT zu wecken.

Betreut von zwei Organisatoren der Hacker School und vier Mitarbeitern der codecentric konnten 20 Schüler im Alter von 11-16 Jahren zwischen zwei Projekten frei wählen. Das Projekt, welches von den Kollegen der Hacker School betreut wurde, wurde mit Hilfe des Einplatinencomputer microbit realisiert. Unser Projekt hatte zum Ziel, mithilfe von Python und einem Raspberry Pi 4 im Spiel Minecraft ein spielbares Klavier zu programmieren – aber davon im nächsten Abschnitt mehr. Die Kinder und Jugendlichen arbeiteten jeweils in Zweierteams an ihrem Projekt.

Microbit Setup

Die Zusammenarbeit zu zweit fördert den Teamgedanken, so konnten sich die Schüler gegenseitig unterstützen, bevor sie auf Hilfe von einem Erwachsenen angewiesen waren. Auch in der Arbeitswelt wird diese Form von Zusammenarbeit mit der beliebten Technik “Pair Programming” – ein Rechner, zwei Entwickler – praktiziert. Dabei wird zwischen den Rollen Fahrer und Navigator unterschieden. Der Fahrer schreibt den Code und der Navigator überprüft diesen zeitgleich. Die Rollen werden dabei in regelmäßigen Abständen möglichst häufig getauscht.

Beide Projekte fanden guten Anklang, das Interesse der Jugendlichen war geweckt.

 

Unser Minecraft + SonicPi + Python Projekt

Um den Schülern in spielerischer Weise das Programmieren beizubringen und um sicherzustellen, dass sie frühe Erfolge erleben, entschieden wir uns für ein mehrstufiges Projekt auf der Basis des Spiels Minecraft. Minecraft ist ein Open-World-Spiel, in der die Spieler in einer 3D-Welt aus würfelförmigen Blöcken Konstruktionen und Gebäude bauen können. Die Basis des Projekts ist auf der offiziellen Seite für Beispielprojekte mit dem Raspberry Pi zu finden.

Unser gemeinsames Ziel war es, ein voll funktionsfähiges Klavier programmatisch mit Hilfe von Python 3 zu bauen. Das Klavier sollte durch Hüpfen der Spielfigur auf den jeweiligen Tasten verschiedene Töne wiedergeben. Realisiert wurde dies durch Sonic Pi, ein Musik-Synthesizer auf dem Raspberry Pi, mit dem Musik programmiert werden kann.

Weshalb haben wir uns für dieses vergleichsweise anspruchsvolle Projekt entschieden? Wir hatten vermutet, dass ein Python-Programm ohne die Anbindung zu anderen Programmen, Schülern zum Einen weniger Spaß und zum Anderen womöglich zu wenig Herausforderungen bieten würde. Aufgrund der Kombination von Minecraft, Python und Sonic Pi, war sowohl die Aufgabenmenge als auch die kreative Freiheit, ideal.

Konzentriertes Arbeiten

 

Kursstruktur

Zu Beginn packten die Schüler die Raspberry PI’s mit allem Zubehör aus und bauten sie zusammen.

Unser Kurs war in folgende Schritte aufgeteilt:

  • Einführung in Python (Schleifen / Bedingungen / Ausgabe / Methoden)
  • Einführung in das Spiel Minecraft (einige Schüler wussten mehr als wir 🙂 )
  • Einführung in den Musik-Synthesizer Sonic Pi
  • Bau eines Klaviers in Minecraft (manuell)
  • Einfache Manipulation der Minecraft-Welt mit Python (Erste Erfahrungen mit der Minecraft API in Python sammeln)
  • Klavier programmatisch erzeugen lassen
  • Klavier mit Python verbinden (Wie erkenne ich, welche Taste gedrückt wurde? Wo befindet sich der Spieler? Welche Elemente befinden sich ober/unterhalb des Spielers?)
  • Python mit Sonic Pi verbinden

 

Herausforderungen

Zu Beginn wurden wir von Hardware-Problemen geplagt – so startete bei der Hälfte der Teams Minecraft im Vollbildmodus und ließ sich nicht mehr schließen, was dazu geführt hat, dass Schüler eine Zeit lang nicht mit Minecraft programmieren konnten. Es stellte sich als Kompatibilitäts-Problem mit den verwendeten Monitoren heraus – das Wechseln des Monitors schaffte Abhilfe.

Darüber hinaus hatten wir Schwierigkeiten mit der vorinstallierten Version von Sonic Pi. Diese war auf dem neuen Raspberry Pi 4 in einer zu alten Version installiert und ein Update war nicht ohne weiteres möglich (Github Issue). Wir bemerkten dies rechtzeitig und konnten das Problem so am zweiten Tag umgehen. Auf dem Raspberry Pi 3, auf dem wir zuvor den Kurs testeten, trat dieses Problem nicht auf. Diese Lektion war nichtsdestotrotz lehrreich, da die Schüler so lernen konnten, weshalb man Software immer auf der endgültigen Hardware testen sollte ;-).

Zudem lernten wir, dass die Schnittstelle von Python zu Minecraft, als auch zu Sonic Pi mit Wechselwirkungen einhergeht und somit deutlich komplizierter zu benutzen ist als ursprünglich geplant. Jüngere Schüler brauchten an dieser Stelle die Unterstützung von uns Betreuern. Obwohl wir an diesem Wochenende einige neue und nicht-triviale Konzepte eingeführt haben (3D Koordinatensystem, Python, Schnittstellen, Variablen/Schleifen/Datentypen etc.), haben sich die Schüler tapfer geschlagen und die Ergebnisse können sich sehen lassen.

 

Fazit

Für uns war die Hacker School eine spannende Erfahrung, in der wir unser Know-How an die nächste Generation weitergeben konnten und dabei viel Spaß hatten. Die Schüler waren ebenfalls zufrieden, jedes Team konnte zum Schluss ein selbst programmiertes funktionales Minecraft-Klavier präsentieren.

Es war auch sehr schön zu sehen, dass die Gruppen bei der Lösungsfindung besonders kreativ waren. So erhielt jedes einzelne Klavier einen eigenen Charme und Spezialfunktionen. Zum Beispiel baute ein Team eine Funktion, der das Lied “Alle meine Entchen” abspielte, wenn man einen bestimmten Minecraft-Block berührt hat.

 

Die Kinder und Jugendlichen waren begeistert und berechtigterweise stolz auf ihre Leistung. Den Quellcode und die gedruckte Dokumentation konnten sie zum Schluss mit nach Hause nehmen.

Uns hat es viel Spaß gemacht und wir freuen uns auf nächstes Jahr! Frie Preu, Paul Strobel, Achim Nierbeck, Felix Magnus und Manuel Wessner

 

Zwei Schüler, zufrieden mit ihrer Arbeit

PS: Da das Angebot so gut ankam, fragten viele Eltern noch nach weiteren, ähnlichen Angeboten. Die Initiative devvox4kids plant aktuell eine Veranstaltung im Oktober in Karlsruhe.

 

Links:

Manuel Wessner

Manuel ist seit 2019 für die codecentric am Standort Karlsruhe tätig. Sein Schwerpunkt liegt im Java und Python Umfeld. Er ist ein großer Fan von Clean Code und Refactorings.

Felix Magnus

Felix arbeitet als Software-Entwickler mit dem Schwerpunkt Web-Frontend-Entwicklung für codecentric. Desweiteren sind Themen wie Testing, DevOps und CI / CD ein wichtiger Bestandteil seines täglichen Arbeitens.

Weitere Inhalte zu Community

Kommentieren

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