Programmierunterricht leicht gemacht!

AgentCubes wurde in Zusammenarbeit mit Lehrplanexperten der Fakultät für Pädagogik der Universität Colorado entwickelt, an den Universitäten Stanford und Colorado getestet sowie von der National Science Foundation gefördert.

A Pacman game created with AgentCubes.Two rules for the Pacman game made in AgentCubes.

Skalierbare Spieleentwicklung – die Anfänge

Two founder of Scalable Game Design holding a Scalable Game Design sign.

AgentSheets, Inc. hat sich mit den Fakultäten für Informatik und Pädagogik der Universität Colorado zusammengetan, um mit Unterstützung der National Science Foundation (NSF) den Lehrplan „Skalierbare Spieleentwicklung“ zu erstellen. Das Projekt hat zum Ziel, AgentCubes im schulischen Informatikunterricht einzusetzen. Gemeinsam mit Hunderten Lehrkräften untersuchten die Partner die Wirksamkeit dieser Aktivitäten in realen schulischen Umgebungen.

Mit unserem Ansatz wollten wir zeigen, dass Schulkinder durch das Programmieren spannender, klassischer Computerspiele Konzepte des Programmierens und der Informatik erlernen können, die sich später auf die Entwicklung wissenschaftlicher Simulationen übertragen lassen. Außerdem wollten wir nachweisen, dass dadurch sowohl themengebundene Sachkenntnisse als auch Informatikwissen vermittelt werden können. Zur Messung des Erfolgs wählten wir eine Reihe von Spielen aus (Frogger, Pac-Man, Journey), anhand derer die Schulkinder lernen sollen, wie sie grundlegende informatische Denkmuster in einen Prozess ähnlich den Lösungsschritten bei typischen Programmier- oder Modellierungsproblemen umsetzen können. Dieser Prozess umfasst als ersten Schritt die Abstraktion: Was soll der Computer tun und was soll im Spiel bzw. Modell repräsentiert werden? Als Zweites folgt die Automatisierung: Welche Aktionen sollen die einzelnen Spiel- bzw. Modellkomponenten ausführen? Zum Schluss dann die Analyse: Handelt der Computer richtig und habe ich das Problem erfolgreich gelöst?

Computational Thinking Patterns

Computerprogramme setzen sich aus Abfolgen von Handlungsvorschriften zusammen, die in der Informatik und Programmierung als Algorithmen bezeichnet werden. Algorithmen finden in zahlreichen Programmtypen Anwendung, darunter auch in Computerspielen. Wir haben daraus informatische Denkmuster abgeleitet. Alle unsere Lehrpläne zum Themenbereich Spieleentwicklung fördern das Erlernen solcher informatischen Denkmuster wie Bewegung, Transport und viele mehr. Alle diese Komponenten sind bereits im Lehrplan enthalten. Die Schüler gestalten immer komplexere und originellere Spiele und wenden dabei ganz praktisch Programmierkonzepte an, die nicht nur im Gaming-Bereich, sondern auch zur Entwicklung wissenschaftlicher Simulationen und Visualisierungen eingesetzt werden. Zu diesen Konzepten gehören: Absorbieren, Generieren, Kollision, Klettern, Cursorsteuerung, Bewegung, Diffusion, Abfragen, Wahrnehmen/Handeln und Suchen. Die Konzepte werden auf verschiedenen Niveaus für Anfänger und Fortgeschrittene behandelt.

Die erfolgreiche Vermittlung dieser Konzepte informatischen Denkens lässt sich nach unserer Erfahrung nachweisen, indem die von den Schülern programmierten Spiele mit einem Musterspiel verglichen werden. So lässt sich beurteilen, inwieweit die Schüler die zugrundeliegenden Konzepte verinnerlicht haben und beherrschen.

Standards übertreffen

Zu unseren Prioritäten gehört von Beginn an die Maßgabe, die neuesten Bildungsstandards nicht nur zu erfüllen, sondern sie zu übertreffen. Wir sehen unsere Aufgabe darin, Schüler auf eine Arbeitswelt vorzubereiten, in der Technologie eine zentrale Rolle spielt.

Unsere Lehrinhalte und Hilfsmittel im Rahmen des Lehrplans „Skalierbare Spieleentwicklung“ sollen die Schüler dazu befähigen, mit der Zeit auch Modelle und Simulationen zu entwerfen. Dazu ist es erforderlich, die Standards in folgenden Bereichen zu erfüllen und zu übertreffen:

  • Kreativität und Innovation
  • Kommunikation und Zusammenarbeit
  • Recherche und Informationsfluss
  • Kritisches Denken, Problemlösung und Entscheidungsfindung
  • Effektiver und verantwortungsvoller Umgang mit digitalen Technologien
  • Technische Abläufe und Konzepte

Eine Erfolgskombination

CSIA Apexaward, Celebrating Technology Exellence for Agentsheets, Ink.

Wir sind uns bewusst, dass die Umsetzung eines standardisierten Lehrplans in einer schulischen Umgebung mit Schülern auf unterschiedlichen Erfahrungsniveaus eine Herausforderung darstellt. Zugleich sind wir fest davon überzeugt, dass Medien und Computerspiele Lernzwecken dienen können, wenn sie von Schülern und Lehrkräften aktiv entwickelt statt nur passiv genutzt werden. Die Auseinandersetzung mit dem Thema begann bereits in den frühen Jahren der Computertechnik. Damals wollten wir Expertenwissen aus verschiedenen Bereichen auf einem Rechner für unerfahrene Neueinsteiger bereitstellen. Dazu richteten wir Informatik-Forschungsgruppen ein und begannen Ansätze zu entwickeln, um Experten ohne Computerkenntnisse die schnelle und einfache Entwicklung fachlicher Simulationen zu erleichtern. Mit Unterstützung der National Science Foundation halfen wir so einem breiten Anwenderspektrum, von Lehrern in naturwissenschaftlichen Fächern bis hin zu NASA-Forschern. Dank der fortlaufenden Förderung durch die NSF und die National Institutes of Health (NIH) sowie der Kooperation mit Lehrkräften und Hochschulen gelang es uns, Kenntnisse so anschaulich zu vermitteln, dass ein Kind der dritten Klasse binnen weniger Stunden das Spiel „Frogger“ programmieren konnte.

Der Erfolg spricht also für unsere Lernmittel. Im Mittelpunkt stand für uns nicht die Frage, wie ein Kind eine Geschichte grafisch erzählen kann, sondern wie wir neugierigen Kindern die Möglichkeiten von Computern näherbringen können. Aus dieser Überlegung heraus entstand unsere visuelle Programmiersprache AgenTalk. Computerspiele lassen sich durch die Definition einfacher Ursache-Wirkung-Relationen in Form von If-Then-Anweisungen erstellen. Doch die Syntax einer Computersprache zu kennen, ist erst die halbe Miete. Ebenso wichtig ist das Verständnis der Semantik, also der Bedeutungsebene eines Programms. Also entwickelten wir einen interaktiven Ansatz zur Programmierung namens Conversational Programming: Eine visuelle Anzeige im Hintergrund gibt wieder, wie das Programm ausgeführt wird, sodass logische Probleme im Programm erkannt und gelöst werden können. Aus der Kombination dieser programmiertechnischen Hilfsmittel mit dem richtigen, von erfahrenen Lehrkräften, Pädagogen und Prüfern entwickelten Lehrplan entstand ein Lehrmittelsatz, der selbst unerfahrene Lehrer in die Lage versetzt, Schülergruppen mit heterogenem Kenntnisstand Konzepte informatischen Denkens zu vermitteln. Die Schüler erwerben so Fähigkeiten im Umgang mit digitalen Technologien, die ihnen auf ihrem weiteren Bildungs- und Berufsweg in einer digitalisierten Welt von großem Vorteil sein werden.

Skalierbare Spieleentwicklung: Lehrmaterialien

Im Rahmen dieses Prozesses entwickelten wir einen vollständigen schulischen Lehrplan mitsamt entsprechender Materialien für Lehrkräfte. Dadurch entsteht eine direkte Verbindung zwischen unserem „Informatische Denkmuster“ und den aktuellen Bildungsstandards für den Informatikunterricht. Wir wissen, dass unser Ansatz die geltenden Standards nicht nur erfüllt, sondern übertrifft. So bereitet er Schüler sogar auf die Multiple-Choice-Sekundarschulprüfung „Prinzipien der Informatik“ (Computer Science Principles – CSP) des nordamerikanischen Advanced Placement (AP) Bildungsprogramms vor.

Mit AgentCubes „Frogger“ unterrichten

A Frogger game made in AgentCubes.

In dem Computerspiel „Frogger“ schlüpft der Spieler in die Rolle eines Froschs. Die Aufgabe ist simpel: Der Frosch muss zunächst eine dicht befahrene Straße überqueren und dabei Autos und Lkws ausweichen, um ein Flussufer zu erreichen. Auf dem Weg vom Ufer zur heimatlichen Grotte am oberen Bildschirmrand darf der Frosch nicht ertrinken, also muss er auf Schildkrötenpanzern und Baumstämmen ins Ziel hüpfen.

Schüler lernen dabei folgende Konzepte informatischen Denkens kennen:

  • Cursorsteuerung
  • Generieren
  • Absorbieren
  • Ich-Perspektive
Link zum Frogger-Tutorial

Mit AgentCubes „Journey“ unterrichten

A Journey game made in AgentCubes.

„Journey“ ist ein Spiel, in dem ein Reisender versuchen muss, ein Ziel zu erreichen. Der Weg dorthin wird von Gegnern versperrt. Das Spiel ging aus „Maze Craze“ hervor und wurde ursprünglich von einem Doktoranden an der Pädagogikfakultät der Universität Colorado in Boulder entwickelt. Es eignet sich sehr gut, um im Zusammenhang mit „Frogger“ erworbene Programmierkenntnisse zu vertiefen, da hier Klettern und Diffusion als neue Denkmuster der Informatik hinzukommen.

Schüler lernen dabei folgende Konzepte informatischen Denkens kennen:

  • Cursorsteuerung
  • Kollision
  • Diffusion (KI)
Link zum Journey-Tutorial

Mit AgentCubes „Pac-Man“ unterrichten

A Pacman game made in AgentCubes.

Das Ziel von „Pac-Man“ ist denkbar einfach: Die Figur muss so viele Punkte wie möglich fressen, ohne dabei von Geistern angegriffen zu werden. Bei der Begegnung mit normalen Geistern stirbt Pac-Man, doch wenn er eine Kraftpille vertilgt, erscheinen die Geister blau. Blaue Gespenster können gefressen werden, allerdings ist auch hier Vorsicht geboten, da sie schon bald am Ausgangspunkt wieder erscheinen.

Schüler lernen dabei folgende Konzepte informatischen Denkens kennen:

  • Cursorsteuerung
  • Kollision
  • Diffusion (KI)
  • Kollaborative Diffusion (fortgeschrittene KI)
  • Klettern
  • Abfragen
Link zum Pac-Man-Tutorial

Mit AgentCubes „Contagion“ unterrichten

A Contagion game made in AgentCubes.

Krankheitserreger verbreiten sich über verschiedene Ansteckungswege von Mensch zu Mensch, etwa durch direkten Körperkontakt, Aerosole (z. B. beim Husten oder Niesen) oder indirekte Übertragung, wie es beim Berühren kontaminierter Gegenstände der Fall ist. Die Simulation „Contagion“ (englisch für „Ansteckung“) ist eine stark vereinfachte Annäherung an die Keimübertragung durch körperliche Nähe, eine Kombination der ersten beiden Ansteckungswege.

Schüler lernen dabei folgende Konzepte informatischen Denkens kennen:

  • Simulationseigenschaften
  • Wahrnehmen/Handeln
  • Skripte
  • Diffusion (KI)
  • Klettern
Link zum Contagion-Tutorial

Mit AgentCubes die Eigenentwicklung wissenschaftlicher Simulationen unterrichten

A simulation simulating Bubble Sort in AgentCubes.

Schüler nutzen ALLE informatischen Denkmuster. Sie können beliebige Muster erstellen, die für die Zwecke ihrer Modellierung oder Simulation nötig sind.

Eigene Simulation erstellen

Forschungsarbeiten

A. Repenning, "Moving Beyond Syntax: Lessons from 20 Years of Blocks Programing in AgentSheets" Journal of Visual Languages and Sentient Systems, vol. 3, p. 24, 2017.

Repenning, A., Webb, D. C., Koh, K. H., Nickerson H., Miller, S. B., Brand, C., et al., "Scalable Game Design: A Strategy to Bring Systemic Computer Science Education to Schools through Game Design and Simulation Creation" Transactions on Computing Education (TOCE), vol. 15, pp. 1-31, 2015.

ENABLING 3D CREATIVITY BY ADDRESSING COGNITIVE AND AFFECTIVE PROGRAMMING CHALLENGES