Fürs Programmieren benutzt man Programiersprachen, die sehr unterschiedlich sein können, es gibt jedoch Konzepte, die sich in den meisten Sprachen wiederholen. Die Blockprogrammierung geht noch einen Schritt weiter und abstrahiert im weiten Sinne davon, wie genau die Befehle geschrieben werden. Es sind fertige Codeschnipsel, eben Blöcke, die aneinander gesteckt werden und in eingeschränkten Umfang modifiziert werden können. Dabei werden die üblichen Befehle und Konzepte angewendet, wie Variablen definieren, Funktionen auslagern, Schleifen, mathematische Operationen, usw. Das heißt, das Kind lernt mit den blockbasierten Programmiersprachen die Grundlagen der Softwareentwicklung in einer reduzierten, vereinfachten, weitgehend grafischen Form. Es ist bunt, es ist ansprechend, es geht schnell. Man muss sich die Befehle nicht wortgenau merken oder schreiben können. Man legt einfach los und sieht schnell Effekte. Perfekt für den Anfang schon mit 6-8 Jahren, aber auch für Erwachsene, die etwas Neues ausprobieren wollen.
Wenn man 2 irgendwelche Apps mit Blockprogrammierung mal ausprobiert, sieht man sofort die Ähnlichkeiten und findet sich meistens schnell zurecht. Das ist natürlich auch ein großer Vorteil. Es sind aber immer unterschiedliche Befehle, je nach dem was für den jeningen Roboter oder App Sinn macht. Am einfachsten sieht man das an konkreten Beispielen. Ein paar habe ich mal kurz für euch zusammen geklickt.
So sieht es aus in Blockly App von Dash (mehr über den Dash Lernroboter hier im Blog). Dash hat mehrere Knöpfe und LEDs, die man in dem Code ansteuern kann. Er kann auch Sprechen. Hier geht er über die Straße. Die Programmierumgebung ist super einfach zu benutzen, hat aber selbstverständlich auch viele Limits. Beispielweise muss eine Variable immer ein Obst sein und ihr kann keine Farbe zugewiesen werden, die Verwendung der Variablen ist angeschrenkt. Eigentlich wollte ich eine Ampel haben, das war dann aber mit der Wassermelone zu komisch.
![Blockprogrammierung mit Dash Blockly App](https://cdn.prod.website-files.com/63ee1ea600812e0ffcc5b04d/6452b9733c1d69279b0b8dfd_blockprogrammierung_dash_app_blockly_mod.png)
Bei Sphere (mehr über den Sphere Lernroboter hier im Blog) gibt es viel mehr unterschiedliche Blöcke und Möglichkeiten, dafür hat es ordentlich gedauert bis ich etwas halbwegs Sinnvolles zusammen bekommen habe. Auf jeden Fall nicht die einfachste Variante für den Anfang.
![Blockprogrammierung mit Sphero App](https://cdn.prod.website-files.com/63ee1ea600812e0ffcc5b04d/6452bafd6815a51220b0d61f_blockprogrammierung_sphero_app_mod.png)
ScratchJr (mehr über ScratchJr App hier im Blog) vereinfacht die Blöcke noch mehr, damit Kinder ohne Lesekompetenzen klar kommen. Hier hüpft die Katze vor Freude aufs Surfen und geht danach auf dem zweiten Screen unter.
![Blockprogrammierung in ScratchJr](https://cdn.prod.website-files.com/63ee1ea600812e0ffcc5b04d/6452bc5608bcc357bac40fda_blockprogrammierung_scratchjr_mod.png)
Wie es schon aus den Beispielen bestimmt ersichtlich ist, kann die Umsetzung der Blockprogrammierung schon sehr unterschiedlich schwer / benutzerfreundlich / umfangreich / hübsch ausfallen. Daher wäre es gut die Programmierung kurz vorm möglichen Kauf auszutesten. Meistens kann man die Apps schon ohne Roboter ausprobieren. Es gibt auch viele Video Einführungen in alle möglichen Blocksprachen.
Für die, die etwas tiefer wissen wollen: Viele von den erwähnten Apps benutzen Blockly, eine JavaScript Bibliothek von Google. Damit kann dann eine (wie in der App von Dash) grafische Programmierumgebung geschaffen werden, in der Blockbefehle dargestellt werden. Die Bibliothek kann die Befehle aus der Blocken-Form in eine gewählte Programmiersprache übersetzen und somit von Maschinen ausführbar machen. Blockly kann man hier ausprobieren https://developers.google.com/blockly?hl=de