Lasst uns mit Computern sprechen
Juraj Hromkovic erkl?rt, welches die Gemeinsamkeiten von Sprache und Programmieren sind und was eine gute Programmiersprache für den Informatikunterricht ausmacht.
Sie sind mehr der literarische Typ und k?nnen gar nichts mit Computern anfangen? Sie lesen lieber Romane als eine Codezeile? Nun, im Folgenden werde ich versuchen auch Sie anzusprechen. Was macht ein Mensch, wenn er programmiert? Er spricht mit einer Maschine. Dafür muss er allerdings die Sprache beherrschen, die auch der Computer versteht. Das Ziel der Kommunikation ist, dem Computer zu erkl?ren, was er zu tun hat. Wenn wir langweilige Routinearbeit automatisieren wollen, müssen wir eine Computersprache sprechen. Denn wer m?chte nicht anstatt den Rasen zu m?hen oder Staub zu saugen, lieber etwas Kreatives machen, was Spass macht, Erfolgserlebnisse bringt und einen in seiner Entwicklung weiterbringt?
Programme sind Texte
Wenn Programmieren etwas mit Sprechen zu tun hat, dann sind Programme nichts Anderes als grammatikalisch korrekte Texte in dieser Sprache. Die grammatikalischen Regeln übertreffen die Exaktheit derjenigen von Latein. Und wir wissen, dass Latein unsere F?higkeit zum exakten Denken, unser Verst?ndnis für Sprache positiv beeinflusst. Der Lateinunterricht bietet also viele M?glichkeiten, der Informatikunterricht ebenso!
Das Faszinierende an einem guten Informatikunterricht ist, dass wir dem Computer neue W?rter beibringen k?nnen. Schon Pippi Langstrumpf hatte ein diebisches Vergnügen, ein neues Wort zu schaffen und dann auf der Suche nach dem ?Spunk? unz?hlige Streiche zu spielen. Klingonisch – eine Kunstsprache – wird unterdessen weltweit von Trekkies gesprochen. Eine eigene Sprache zu entwickeln ist ein unglaubliches Abenteuer! In keinem anderen Fach ausserhalb der Informatik erm?glichen wir es Schülerinnen und Schülern, eine eigene Sprache zu bauen und sie auszuprobieren.
Sprachwahl ohne Qual
Wie w?hlt man aber eine geeignete Programmiersprache aus, die man auch selbst?ndig weiterentwickeln kann? Denn ja, wie bei den verschiedenen Sprachen der Menschen gibt es auch beim Programmieren etliche Sprachen – mit Vor- und Nachteilen. Schlecht beraten ist, wer ausschliesslich darauf schielt, was gerade angesagt ist oder einen kommerziellen Nutzen bringt. Anders als bei den etablierten Sprachen k?nnen Programmiersprachen sehr schnell verschwinden oder schlicht veralten.
?In der Praxis ist es so, dass Programmierende viel mehr Zeit mit der Fehlersuche als mit dem Programmieren selbst verbringen.?Juraj Hromkovic
Es geht auch nicht um die in ?heiligen Kriegen? diskutierte Frage, ob blockbasiertes oder textbasiertes Programmieren besser ist. (Beim ersten verschieben wir Bl?cke mit W?rtern, um Schreibfehler zu vermeiden, im zweiten Fall schreiben wir das Programm als Text). Aus meiner Sicht gibt es nur drei wesentliche Kriterien für die Wahl einer geeigneten Programmiersprache – besonders, wenn man Neulinge und Einsteigerinnen vor Augen hat:
- Wie gut kann ich mit der Programmiersprache die gestellten Ziele erreichen?
- Ist die Programmierumgebung so einfach, dass sie für Einsteigerinnen und Einsteiger nicht eine zus?tzliche kognitive Hürde darstellt?
- Wie gut unterstützt die Programmierumgebung die Programmiernovizen und -novizinnen bei der Suche nach grammatikalischen und logischen Fehlern?
Denkschule statt Fehlersuche
Besonders das dritte Kriterium wird stark untersch?tzt. Dabei ist es in der Praxis so, dass Programmierende viel mehr Zeit mit der Fehlersuche als mit dem Programmieren selbst verbringen. Das kann natürlich ermüdend sein. Im Unterricht k?nnen Lehrpersonen so stark damit beansprucht sein, Hilfe bei der Fehlersuche zu leisten, dass sie nicht mehr zum Unterrichten kommen. Dabei sollten ja alle frei von der Leber weg programmieren k?nnen!
Die einzige vertretbare L?sung ist eine Programmierumgebung, mit der man erfolgreich das selbst?ndige Korrigieren von Programmen unterrichten kann. Deswegen haben wir am Ausbildungs- und Beratungszentrum für Informatikunterricht ABZ der ETH Zürich eigene Programmierumgebungen entwickelt, die obige Anforderungen erfüllen. Sie sind frei für den schulischen Unterricht verfügbar (auf der ABZ-Webseite) zusammen mit dem dazu entwickelten zehnb?ndigen Lehrmittel ?Einfach Informatik?. Der Informatikunterricht f?ngt dort übrigens mit der Entwicklung der ersten Schrift von 5400 Jahre an. Vielleicht motiviert das ja literarisch Interessierte zus?tzlich, sich mit der Sprache der Zukunft auseinanderzusetzen.
ETH am Digitaltag 2018
Am 25. Oktober geht schweizweit der zweite Digitaltag über die Bühne. Die ETH setzt dieses Jahr den Schwerpunkt auf die Digitalisierung in der Medizin und zeigt im Hauptbahnhof Zürich dazu zwei Forschungsprojekte. Daneben bietet die ETH gemeinsam mit zahlreichen Institutionen aus dem Gesundheitsbereich Kurzvortr?ge, Laborführungen und Pr?sentationen an. Zudem lernen über 600 Schülerinnen und Schüler aus der ganzen Deutschschweiz an einem Programmierworkshop die Sprache der Zukunft. Weitere Infos unter: Digitaltag