Scratch ist ein vom MIT1 entwickeltes und weltweit verbreitetes digitales Baukastensystem, ein Programmierungstool, das schon Kinder und Jugendliche in die Lage versetzt, selbst Computerprogramme und -spiele sowie interaktive Kommunikationsmittel zu entwickeln. Scratch funktioniert wie ein Lego-Baukasten und fördert auf spielerische Weise das logische, mathematische, analytische und algorithmische Denken.
Scratch ist kostenlos und in über 75 Sprachen verfügbar!
Der Anwendungsbereich von Scratch ist dabei keineswegs auf das Gebiet Mathematik/Computer beschränkt: Scratch ermöglicht es unter anderem,
- interaktive Geschichten zu erzählen (Sprachunterricht),
- geometrische Kunstformen, ähnlich der Op-Art, zu erzeugen,
- Musikstücke zu komponieren und zu instrumentieren (Musikunterricht),
- Modelle und Simulationen zu programmieren (Naturwissenschaften, Gesellschaftswissenschaften).
Diese ‑ im anglo-amerikanischen Sprachraum entwickelten ‑ Lehr- und Lernkonzepte (game based learning, meaningful play, serious games) spielen in der internationalen Diskussion um schulische und außerschulische Bildung aktuell eine große Rolle2.
Und weiter?
Scratch ist (nur) der Anfang, allerdings ein ganz schön mächtiger. Mit Scratch kann man moderne Programmiertechniken erlernen und anwenden: Parallelismus, Objekt-Orientierung, Ereignissteuerung, Prototyping, Messaging … So lassen sich mit Scratch bereits recht komplexe Programme erzeugen.
Wenn Sie ein Beispiel für eine in Scratch entwickelte Lernanwendung kennenlernen wollen, dann versuchen Sie doch einmal,
hier
das „auseinandergefallene“ Europa wieder zusammenzusetzen.
(Bitte etwas Geduld beim Laden des Programms, es besteht aus sehr umfangreichen Vektorgrafiken.)
weitere Beispiele aus dem Scratch-Universum
Leider – wie die überwältigende Mehrheit der Scratch-Projekte – alle auf Englisch, weil Scratch hierzulande vom Schulsystem ignoriert uns deshalb (noch) nicht sehr verbreitet ist.
- Physik: eine Schwerkraft und Wind Simulation
- Biologie: eine Herz-Simulation
- Kunst: ein OpArtGenerator, der immer neue abstrakte Op-Art-Kunst, angelehnt an Victor Vasarely, generiert
- Musik: Scratch spielt Scott Joplins „The Entertainer“ auf einem Automatischen Klavier
All diese und weitere mehr als 160 Millionen Projekte sind auf dem Scratch-Server des MIT für jeden Internet-Nutzer einsehbar. Ohne Geheimnisse, denn der Quell-Code jedes Projekts kann nicht nur angesehen werden – in der Scratch-Welt ist es nicht nur erlaubt sondern geradezu erwünscht, ein Projekt, das einem gefällt, weiter zu führen, zu remixen, wie es im Scratch-Jargon heißt. Zum guten Ton, zur Scratch-Netiquette gehört es selbstverständlich, das eigene Projekt auf den oder die Vorgänger zu referenzieren.
Selbstverständlich hat Scratch, das ja als visuelle Lern-Sprache entwickelt wurde, seine Grenzen. Die allerdings sind, wenn man mit Scratch grundlegende Programmier-Erfahrungen gesammelt hat, schnell zu überwinden:
Snap! Ist der erwachsene Bruder von Scratch. Snap! sieht Scratch unglaublich ähnlich, alle wesentlichen Elemente von Scratch sind auch in Snap! enthalten – mit Ausnahme der „spielerischsten“ Elemente wie umfängliche Graphik-Unterstützung, Darsteller-Bibliotheken Drum-Computer und Sythesizer. Dafür bietet Snap! Eine solche Fülle komplexer Programmier-Paradigmen (First-Class-Objekte, Metaprogrammierung, frei definierbare Daten- und Kontrollstrukturen), dass es an der renommierten University of Berkeley als Lehrsprache im Computer Science Departement eingesetzt wird.
Scratch und Snap! haben gegenüber herkömmlichen Programmiersprachen einen enormen Vorteil: die weite Kluft zwischen Idee und fertigem Code entfällt, die „Klötze“, aus denen diese visuellen Programmier-Umgebungen bestehen, sind auf der einen Seite anschaulich wie Ablaufdiagramme, auf der anderen Seite sind sie unmittelbar lauffähig. 3
Und wem Snap! noch nicht ausreicht, der ist mit „GP Blocks“ bestens bedient. GP steht für „General Purpose“, und GP Blocks ist eine Scratch-ähnliche visuelle Programmiersprache, gebaut von den Entwicklern von Scratch und Snap!, die auf fast allen Plattformen lauffähig ist (inklusive Chromebooks und Tablets), und die direkt ausführbaren Code erzeugt. Von ihrer Mächtigkeit ist GP Blocks vergleichbar mit textbasierten Programmiersprachen wie etwa Python.
1 Das „Massachusetts Institute of Technology“. Eines der renommiertesten Institute dieser Universität ist das von Nicholas Negroponte gegründete „MIT Media Lab“. Innerhalb des Media Lab entwickelte Mitchel Resnick mit seiner Forschungsgruppe „Lifelong Kindergarten Group“ die graphische Programmierumgebung Scratch.
2 Allein im Jahr 2018 fanden auf US-amerikanischem Boden zwei bedeutende Konferenzen zum Thema statt, die „Serious Play Conference“ im Juli in North Carolina und die „International Academic Conference of Meaningful Play“ im Oktober in Michigan, beide nach derzeitigem Kenntnisstand ohne deutsche Beteiligung auf dem Podium.
3 „Theorie der Klötze“, Keynote von Jens Mönig, dem Chefentwickler von Snap!, auf der 16. Tagung der Fachgruppe „Informatik-Bildung in Berlin und Brandenburg“ der Gesellschaft für Informatik.