Mini-Programmierwelten
Das Erlernen von Programmiersprachen und die Entwicklung von Programmen sind nicht trivial. Sicher gibt es Schüler, die sehr schnell damit zurechtkommen. Viele haben aber Probleme mit der Komplexität der Thematik und sind schnell frustriert. Für einen einfachen Einstieg in die komplexe Welt der Programmierung wurden daher bereits in den 70er Jahren des vergangenen Jahrhunderts so genannte Mini-Programmierwelten (micro worlds) entwickelt. Sie reduzieren den zugrunde liegenden Befehlssatz auf ein Minimum, enthalten spielerische Elemente und verbinden mit den entsprechenden Befehlen visuelle Aktionen von virtuellen Akteuren auf dem Bildschirm.
Ur-Vater dieser Miniwelten ist „Karel the Robot“. Karel ist ein virtueller Roboter, der mit Befehlen, wie move oder turnLeft durch eine virtuelle Landschaft gesteuert werden kann und dabei verschiedene ihm gestellte Aufgaben zu lösen hat.
Eine andere weit verbreitete Mini-Programmierwelt ist das „Hamster-Modell“. Programmieranfänger erlernen hiermit die grundlegenden Konzepte der Programmierung sowie den Programmentwicklungsprozess, indem sie virtuelle Hamster durch eine virtuelle Körner-Landschaft steuern. Der Befehlsatz besteht dabei aus vier Grundbefehlen (vor, linksUm, gib, nimm) und drei Testbefehlen (vornFrei, kornDa, maulLeer). Programmieranfängern werden bestimmte Aufgaben gestellt (der Hamster soll alle Körner in seinem Territorium finden und fressen, der Hamster soll ein Labyrinth durchlaufen, …), zu denen sie dann Hamster-Programme entwickeln müssen, die die Aufgaben lösen. Mit dem so genannten Hamster-Simulator wird dabei eine Programmierlernumgebung zur Verfügung gestellt, mit dem Hamster-Programme eingegeben, compiliert, getestet und ausgeführt werden können (siehe https://www.java-hamster-modell.de)
Weitere bekannte Mini-Programmierwelten sind „Kara der Marienkäfer“, bei dem ein virtueller Marienkäfer Kleeblätter suchen und dabei Pilze verschieben und Baumstümpfen ausweichen muss oder die „Schildkrötengraphik“, bei der eine virtuelle Schildkröte mit Hilfe eines Stiftes Zeichnungen (Fraktale) malen kann.
Derartige Mini-Programmierwelten weisen im Allgemeinen folgende Eigenschaften auf:
- Es gibt einen (virtuellen) Akteur, der mit Hilfe bestimmter Befehle durch eine (virtuelle) Landschaft gesteuert werden kann.
- Die Komplexität eines Computers wird auf einen minimalen Satz von Befehlen eingeschränkt, die dem Akteur erteilt werden können.
- Die Programmierkonzepte werden schrittweise und aufeinander aufbauend eingeführt und jeweils durch zahlreiche Beispiele demonstriert.
- Anhand vieler Aufgaben mit einfach zu verstehenden Aufgabenstellungen können die Programmieranfänger selbst überprüfen, ob sie den Stoff nicht nur verstanden haben, sondern auch praktisch umsetzen können.
- Für die Bearbeitung der Aufgaben existiert eine einfach zu bedienende Programmierlernumgebung, die die Erstellung und den Test von Programmen unterstützt und Programmausführungen, d.h. die Aktionen der Akteure, visuell auf dem Bildschirm darstellt.