Gestalten-Lernen-Programmieren

Mit Scratch gestalten

Hauptartikel: Mit Scratch gestalten

Wir haben auf unseren Computern Zugang zu einer unglaublichen Vielzahl an interaktiven Spielen, Geschichten, Animationen, Simulationen und andere dynamische, interaktive Medien. Zum größten Teil sind diese Programme aber eine Einbahnstraße: Man kann sich nur durcharbeiten und anklicken, was andere geschaffen haben, man kann nichts entwerfen und keine eigene Programme erstellen.

Scratch ändert dies und erweitert das Spektrum dessen, was sich mit dem Computer gestalten und schaffen lässt. So wird es einfacher, Grafiken, Fotos, Musik und Ton in interaktiven Kreationen zu kombinieren. Mit Scratch können Charaktere geschaffen werden, die tanzen, singen und miteinander interagieren. Oder man erstellt Bilder, die wirbeln, sich drehen und sich als Reaktion auf Mausbewegungen verändern. Bilder können mit Klangeffekten und Musikschnipseln zu einer interaktiven Geburtstagskarte für einen Freund kombiniert werden, oder man erstellt einen interaktiven Bericht für die Schule.

Scratch-Programmierblöcke

Im Mittelpunkt von Scratch steht eine grafische Programmiersprache, mit der die Aktionen und Interaktionen zwischen den verschiedenen Medien gesteuert werden. Das Programmieren in Scratch ist viel einfacher als in traditionellen Programmiersprachen: Um ein Skript zu erstellen, zieht man einfach grafische Blöcke, ähnlich wie Legosteine oder Puzzleteile, zusammen.

Sobald ein Scratch-Projekt fertig ist, lässt es sich auf der Scratch-Internetseite auf die gleiche Weise wie zum Beispiel Videos auf YouTube oder Fotos auf Flickr mit anderen teilen. Oder das Scratch-Projekt kann in eine andere Internetseite eingebettet werden – zum Beispiel eine interaktiven Scratch-Animation auf der eigenen Homepage eines sozialen Netzwerks.

Man bekommt neue Ideen für Scratch-Projekte, indem man sich von anderen Projekten auf der Scratch-Internetseite anregen lässt. Wenn einem Charaktere, Bilder oder Skripte aus einem anderen Projekt gefallen, kann man es sich herunterladen und Teile davon im eigenen Projekt verwenden.

Aus einem Scratch-Musikprojekt

Mit Scratch lernen

Hauptartikel: Mit Scratch lernen

Die Lernspirale
Was lernen Schüler, wenn sie interaktive Geschichten, Animationen, Spiele, Musik und Kunst mit Scratch schaffen?

Zum einen lernen sie mathematische und rechnerische Strukturen. Während die Schüler Programme in Scratch erstellen, lernen sie die Basis von Computerkonzepten wie Schleifen und Bedingungen. Sie bekommen auch ein Verständnis für wichtige mathematische Begriffe wie Koordinaten, Variablen und Zufallszahlen.

Die Schüler lernen diese Konzepte in einem motivierenden Zusammenhang. Wenn sie in traditioneller Algebra etwas über Variablen lernen, haben sie in der Regel keine persönliche Beziehung dazu. Wenn sie aber etwas über Variablen im Zusammenhang mit Scratch lernen, können sie diese sofort auf sinnvolle Weise einsetzen: um die Geschwindigkeit einer Animation zu steuern oder den Punktestand in einem Spiel, das sie programmieren, zu speichern.

Während die Schüler an einem Scratch-Projekten arbeiten, erfahren sie auch etwas über Gestaltungsprozesse. Typischerweise startet ein Schüler mit einer Idee, erstellt einen funktionierenden Prototyp, experimentiert damit, bereinigt Fehler, wenn etwas schief geht, bekommt eine Rückmeldung von anderen und überarbeitet und verbessert sein Projekt. Es ist eine kontinuierliche Spirale: man hat eine Idee, erstellt ein Projekt, was zu neuen Ideen und zu neuen Projekten führt, und so weiter.

Das Erstellen von Projekten in Scratch verhilft Schülern auch zu einem geläufigeren Umgang mit digitaler Technik. Was versteht man in diesem Zusammenhang unter geläufig? Um fließend Deutsch, Englisch oder andere Sprachen zu beherrschen, muss man sie nicht nur zu lesen lernen, sondern auch zu schreiben – also, wie man sich mit der Sprache ausdrückt. Um mit digitaler Technik genauso fließend und geläufig umgehen zu können, muss man nicht nur lernen, wie man mit dem Computer arbeitet, sondern ihn auch kreativ nutzt.

Mit Scratch programmieren

Hauptartikel: Mit Scratch programmieren

Die meisten Menschen sehen Computer-Programmierung als langweilige, spezialisierte Tätigkeit, die nur für diejenigen mit fortgeschrittener technischer Ausbildung zugänglich ist. Und tatsächlich, traditionelle Programmiersprachen wie Java und C++ sind für viele Menschen sehr schwer zu erlernen.

Scratch, eine grafische Programmiersprache, zielt darauf ab, das zu ändern. Scratch nutzt Fortschritte in der Rechenleistung und im Anwendungsdesign, um das Programmieren für Kinder, Jugendliche und andere, die Programmieren lernen möchten, ansprechender und zugänglicher zu machen. Merkmale von Scratch sind:

  • Ein Programmierblock
    Building-Block-Programmierung. Um Programme in Scratch zu erstellen, schiebt man einfach grafische Blöcke zu Stapeln zusammen. Die Blöcke sind so entworfen, dass sie nur dann zusammen passen, wenn es syntaktisch Sinn macht, so gibt es keine Syntax-Fehler. Unterschiedliche Datentypen haben ein unterschiedliches Aussehen, wodurch Typfehler verhindert werden. Änderungen an den Programmstapeln können auch während das Programm läuft ausgeführt werden, so ist es leicht, mit neuen Ideen schrittweise und iterativ zu experimentieren.
  • Medieneinsatz. Mit Scratch können Programme erstellt werden, die Grafiken, Animationen, Musik und Klänge mischen und steuern. Scratch erweitert die Möglichkeiten der Medienbearbeitung, die heutzutage, wie zum Beispiel die Programmierbarkeit von Photoshop-Bildfiltern, beliebt sind.
  • Gemeinsame Verwendung und Zusammenarbeit. Die Scratch-Internetseite bietet Anregung und Aufmerksamkeit: So können die Projekte anderer ausprobiert werden, man kann deren Bilder und Skripte verwenden und adaptieren sowie das eigene Projekt hochladen. Ziel ist es, eine Gemeinschaft rund um Scratch zu entwickeln.
Die Scratch-Homepage

Scratch bietet ein niedriges Fundament (um einfach loszulegen), hohe Decken (die Möglichkeiten, komplexe Projekte zu erstellen) und weite Wände (Unterstützung für eine breite Vielfalt von Projekten). Bei der Entwicklung von Scratch legt das Scratch-Team großen Wert auf Einfachheit, manchmal auch auf Kosten der Funktionalität zugunsten der Verständlichkeit.


Code zum Einbinden ins Forum:
[wiki=de:Gestalten-Lernen-Programmieren]Gestalten-Lernen-Programmieren[/wiki]