Auch wenn wie schon häufig erwähnt das Programmieren nicht unbedingt im Zentrum von CC steht, ist es dennoch unbestritten ein nützliches Werkzeug für die Förderung dieser Kompetenzen. Unplugged-Aktivitäten wie Pixel Art oder Sortieren im Schulhof sind ein hervorragender Einstieg in CC, stossen jedoch irgendwann an Grenzen: Man kann damit Konzepte veranschaulichen, aber keine eigenen digitalen Anwendungen erstellen, testen und weiterentwickeln. Der nächste logische Schritt wäre «richtiges» Programmieren. Aber textbasierte Sprachen wie Python oder Java haben eine höhere Hürde: Ein vergessenes Semikolon, eine falsche Einrückung, und nichts funktioniert mehr. Für Lernende ohne Vorerfahrung ist das frustrierend, weil der Kampf mit der Syntax vom eigentlichen Denken und der Entwicklung von CC Kompetenzen ablenkt.
Blockbasierte Programmiersprachen lösen dieses Problem elegant: Statt Code zu tippen, werden farbige Blöcke wie Puzzleteile zusammengesteckt. Die Blöcke passen nur zusammen, wenn sie syntaktisch korrekt sind. Syntaxfehler sind damit ausgeschlossen, und der Fokus liegt vollständig auf der Logik: Was soll passieren? In welcher Reihenfolge? Unter welcher Bedingung?

Bild: Screenshot der Scratch Plattform
Die Idee hat eine lange Geschichte. Bereits in den 1960er-Jahren entwickelte Seymour Papert am MIT die Programmiersprache Logo, mit der Kinder eine Schildkröte über den Bildschirm steuern konnten. Es war ein erster Versuch, Programmieren als Denkwerkzeug für alle zugänglich zu machen. Paperts Vision: Kinder sollten den Computer nicht nur bedienen, sondern ihm sagen, was er tun soll. Jahrzehnte später griff das MIT Media Lab diese Idee auf und entwickelte Scratch (2003): Eine blockbasierte Umgebung, die Paperts Philosophie mit einer modernen, visuellen Oberfläche verbindet. Heute ist Scratch mit über 100 Millionen geteilten Projekten eine weltweit vielgenutzte Programmierumgebung für Kinder, Jugendliche und Erwachsene.
In der Zwischenzeit haben sich auch viele andere blockbasierte Programmiersprachen entwickelt, wie z.B. Blockly oder Makecode. Sie sind auf unterschiedliche Zielgruppen und Systeme ausgerichtet, teilen aber die gleiche Grundidee, Programmieren durch Vereinfachungen zugänglicher zu machen.
Das Wichtigste in Kürze
Blockbasierte Programmiersprachen schlagen die Brücke zwischen Unplugged-Aktivitäten und «richtigem» Programmieren. Sie eliminieren Syntaxhürden und ermöglichen es, dass Lernende ihre kognitiven Ressourcen vollständig auf den Kern der entsprechenden Aktivitäten lenken.