Motivation
Ursprünglich wurde das Lernspiel Waddle für den Girls’ Day 2024 entwickelt. Aus dem Girls’ Day wurde ein Angebot für das berufsorientierende Praktikum am Gymnasium. Dann kam ein zweiter Termin für dieses, eine Anfrage zum Sommer Science Camp der Uni Ulm und ein Stand auf dem Langen Abend der Wissenschaft. Waddle wurde mit dem Ziel entwickelt, einen kurzweiligen Einstieg in das Programmieren zu geben. Am Girls’ Day und auch beim berufsorientierenden Praktikum sind Spielende mit deutlich unterschiedlichem Vorwissen anwesend. Das Spiel macht durch den Rätselaspekt gerade in späteren Leveln auch dann Spaß und bietet einen Mehrwert, wenn einzelne Spielende bereits Erfahrung mit dem Programmieren haben. Das Spiel richtet sich an Spielende ab der 6. Klasse, kann aber eigentlich für jede Zielgruppe eingesetzt werden, um einen ersten Einblick in die imperative Programmierung zu bieten. Das Spiel ist im Pixelart-Stil designt.
Didaktisches Konzept
Das Spiel ist auf eine Länge von ca. 3 Stunden ausgelegt, um für Veranstaltungen wie den Girls’ Day, oder einen relativ kurzen Zeitslot, wie beim berufsorientierenden Praktikum, angemessen zu sein. Neben dem Spiel gibt es ein Handbuch, in dem das Spiel in für die Zielgruppe angemessener Sprache beschrieben und die Spielenden durch die ersten Level begleitet werden. Die verschiedenen Konzepte werden hier eingeführt und mit Beispielen verdeutlicht. Das Spiel ist darauf ausgelegt, dass Betreuende anwesend sind und den Spielenden bei Schwierigkeiten helfen können.
Die Spielenden programmieren in pengu-speak, einer eigens für das Spiel entwickelten imperativen Sprache. In dieser Sprache ist eine überschaubare Menge an vordefinierten Funktionen und Konstrukten verfügbar, die gerade für Spielende, die bisher noch nicht programmiert haben, nicht überfordernd ist.
Im Spiel werden verschiedene Konzepte der imperativen Programmierung abgedeckt. Die imperative Programmierung eignet sich sehr gut zum Einstieg, da dabei die einzelnen Schritte, die ausgeführt werden, nacheinander angegeben werden. Dadurch ist direkt der Zusammenhang zwischen Quellcode und Ergebnis, also dem Pinguin, der durch das Level läuft, ersichtlich. Zusätzlich wird die aktuelle Zeile des Programms während der schrittbasierten Ausführung immer angezeigt. Die Ausführung kann jederzeit angehalten werden und danach können die einzelnen Schritte der Ausführung manuell ausgeführt werden. Dies wird durch die Ausgabe zusätzlicher Informationen, wie der Position des Pinguins, ergänzt.
Alle Elemente des Spiels können inspiziert werden, um Informationen über die unterschiedlichen Levelelemente zu erhalten. So erfahren die Spielenden zum Beispiel, welche Objekte verschiebbar sind oder schwimmen können.
Manche Entitäten, wie andere Pinguine, die auf vordefinierten Wegen durch das Level watscheln, haben eigenen Quellcode. Dieser kann durch Anklicken eingesehen werden. Dies beginnt mit einfachen Programmen. Später folgen hier größere Programme, in denen die Spielenden auch die Möglichkeiten der Sprache kennenlernen können.
Im Spiel werden des Weiteren auch Bedingungen, Schleifen und Funktionen thematisiert. Diese sind neben Zuweisungen die zentralen Konstrukte der imperativen Programmierung. Die Spielenden werden durch komplexer werdende Level und neue Elemente, wie Stacheln, die zufällig den Weg versperren, dazu motiviert, die neuen Konstrukte zu verwenden.
Umsetzung
Das Spiel ist eine Webanwendung, um es möglichst einfach für eine gemischte Zielgruppe und verschiedene Plattformen anbieten zu können. So kann die Webanwendung einfach aufgerufen werden und die Spielenden können sofort mit dem Spiel beginnen, ohne Software installieren zu müssen. Die eigene Sprache pengu-speak wird durch Langium ermöglicht. Geschrieben wird die Webanwendung in TypeScript.
Ausblick
Als nächster Schritt soll eine Studie in Kooperation mit verschiedenen Schulen durchgeführt werden, mit anschließender Veröffentlichung der Ergebnisse. Auch die Erweiterung des Spiels auf verschiedene Paradigmen ist in Planung.
Wer sind wir?
Umgesetzt wird das Spiel von Pinguin-Enthusiasten, die an der Uni Ulm studieren und arbeiten.
- Matthias Tichy (verantwortlicher Pinguin-Enthusiast)
- Florian Sihler (leitender Pinguin-Enthusiast)
- Raphael Dunkel
- Ruben Dunkel
- Annika Riepe
- Johanna Scheck
- Julian Schubert
- Adrian Skutecki
- Annika Wiebe