Da in der Schule das Programmieren selten über den Stand des Anfangsunterricht herauskommt, spielen reduzierte Entwicklungsumgebungen eine große Rolle im Unterricht. Bei diesen IDEs muss man sich oft nicht um irgendeinen syntaktischen Kleinkram kümmern, sondern kann ganz einfach die gewünschten Elemente hin und her ziehen oder es werden entsprechende Element automatisch ergänzt.

Ein typischer Vertreter ist seit Jahren das Programm Karol. Das Programm ist bereits so alt, dass als Mindestanforderung immer noch Win95 genannt wird. Dennoch wird es immer noch in allen bayerischen Schulen eingesetzt und ist auch ein fester Bestandteil in jedem Informatikbuch in Bayern.

Später tauchte dann Scratch auf und es entbrand ein Streit zwischen den Informatiklehrern in Bayern, welches Programm denn nun besser sei. Gewonnen hat diesen Streit keiner. Die Uni Passau hat aber mal herausgefunden, dass die Reihenfolge „erst Karol und dann Scratch“ besser sei als andersrum. Nach Scratch hat einfach keiner mehr Lust auf das dröge Karol.

Ich für meinen Teil benutze ganz gerne noch Kara von der ETH Zürich, da der Käfer nicht nur in Java, Ruby oder JavaScript programmiert werden kann, sondern auch mit Hilfe von endlichen Automaten und damit quasi grafisch. Außerdem sind in die Software viele Aufgaben mit Lösungen integriert, so das der Lehrer kaum was zu tun hat. Er schlendert im Computerraum herum und hilft den Schüler bei der Löung der Aufgaben.
Und man kann mehrere Karas gleichzeitig laufen lassen und so das Steuern von parallelen Prozessen üben.

Lego kann man ebenfalls grafisch programmieren, wobei ich von der normalen grafischen Programmieroberfläche nur abraten kann. Die Programmierumgebung basiert, glaube ich, auf der Software LabVIEW und ist kaum vernünftig zu benutzen. Meistens werden die Programme sehr schnell sehr groß und Fehler sind nur schlecht zu finden. Zumindest tun sich meine Schüler in der Lego AG da sehr schwer. Auch ich kämpfe mit der Verschaltung der Elemente und hoffe, dass die Anbindung der open-Roberta-Initiative des Fraunhofers-Instituts an die Lego-Roboter bald stabiler wird. Open-Roberta orientiert sich einfach viel stärker an der erfolgreichen Oberfläche von Scratch.

Aber wie der der Titel des Beitrags schon angedeutet hat, kann man nicht nur Roboter  programmieren. Ein verhältnismäßig neues Feld ist das Erstellen bzw. Programmieren von Musik. Vor ein paar Wochen entdeckte ich da für mich die Software SonicPI und jetzt noch PureData.

PureData halte ich dabei nicht wirklich für den Anfangsunterricht geeignet, da das Konzept mit der Vedrahtung von Oszillatoren, Amplifiern, Filtern etc. dann doch recht merkwürdig ist. SonicPI ist da ein wenig einfacher gestrickt, aber auch alles andere als trivial – leider. Immerhin kann man einfach Töne, Lautstärke und Pausen einfach eingeben und so versuchen neue Melodien zu erzeugen oder bekannte Melodien nachzuprogrammieren. Wer Entwicklungsumgebungen noch nicht kennt, sollte diese unbedingt mal ausprobieren. Denn immerhin hätte man so die Möglichkeit die unterschiedlichsten Interessen der Schüler abzudecken.

Später kann man dann alles kreativ miteinander verbinden: