Textadventures im Informatikunterricht

Informatik, Klassen und Objekte. Zwischendurch ein bisschen Luft, um etwas auszuprobieren, auch weil ich die Klasse nicht nur in Informatik, sondern dazu in Englisch habe.

Also haben die Schüler Objekte für ein Textadventure erstellt. So ein Objekt sieht zum Beispiel so aus:

schoolbag1: openable
 sdesc = "green schoolbag"
 ldesc = "It's a green schoolbag with a black car on it. It is
          wonderful."
 noun = 'schoolbag'
 adjective = 'green'
 location = bathroom
;

Ich habe den Schülern die Klassen openable, readable, item und fixeditem zur Verfügung gestellt. Das Attribut ldesc gibt eine längere Beschreibung des Objektes, die man erhält, wenn man es näher betrachtet, sdesc ist die Kurzbeschreibung, location der Aufenthaltsort zu Beginn des Spiels. Zulässige Werte für location sind vor allem die Raum-Objekte, die das Spielfeld ausmachen (aber auch Objekte der Klasse openable). Die Räume habe ich vorgegeben, sie sehen zum Beispiel so aus:

in_front_of_the_house: room
 sdesc = "in front of the house"
 ldesc = "You are in front of a big house. In the south,
          there is the house, in the north, there is an open field.
          There is a blackboard standing there and a fountain."
 south = hall
 north = street
;

Die verwendete Programmiersprache war TADS 2. Natürlich erwarte ich von den Schülern nicht, dass sie Programmcode schreiben. Im Gegenteil, laut den Lehrplanmachern soll jede Art von Code weitgehend von Schülern ferngehalten werden – zu groß die Gefahr, durch Tipp- und Syntaxfehler frustriert zu werden. (Meine persönlichen Erfahrungen sind allerdings ganz anders. Aber ich bin wohl nicht typisch. Die Schüler sollen auch in der 7. Klasse zwar Webseiten erzeugen, aber nicht HTML-Code schreiben. Das wiederum sehe ich ein.)

Andererseits wollte ich auch nicht alles selber abtippen oder zuviele Fehler verbessern. Also habe ich Word-Dokumentvorlagen für den Computerraum erstellt, mit geschützten Bereichen, so dass die Schüler nur in bestimmte Formularfelder Text eintragen konnten, eben die Attributwerte und sonst nichts. Da konnten sie auch kaum Syntaxfehler machen.

Herausgekommen ist folgendes Programm (gezippte exe-Datei für Windows, ~700KB):
an_awfully_big_house.ziphaus.gif
Das ist beileibe noch kein echtes, spannendes Spiel. Man kann nur im Haus herumlaufen, Gegenstände aufnehmen und wieder hinlegen, einen Apfel essen, zwei Bücher lesen, alle Radiergummis in die Schultasche packen und so weiter. Außerdem ist das Haus voller pumpkins, das liegt daran, dass in Kalender und Schulbuch vor kurzem Halloween war.

Den Schülern machte das Erstellen der Objekte Spaß und noch mehr Spaß, mal eine Schulstunde lang in dem Haus herumzulaufen und alles auszuprobieren. Jeder Schüler hatte ja nur einige Objekte erstellt und kannte die der anderen Schüler nicht. Aus Erfahrung weiß ich, dass selbst ein kleines Spiel mit wenig Räumen sehr groß wirken kann, vor allem, wenn man sich keine Karte zeichnet. Textadventures suggerieren tatsächlich eine größere, weitere Welt als Point-and-click-Spiele, behaupte ich, und erfordern mehr Interaktion und Einsatz. Die besten davon haben tatsächlich vieles mit Büchern gemein.

Die Lernziele:

Erkennen, was Modellieren eines Ausschnittes der Wirklichkeit ist. Wissen, was Klassen und Objekte sind. Indirekt lernt man auch etwas über Vererbung, auch wenn das noch lange nicht auf dem Lehrplan steht. Dass manche Klassen bestimmte Methoden haben („open“) und andere nicht. (Fußnote: Technisch hat in TADS jede Klasse die Methode open(), nur dass sie standardmäßig zur Ausgabe von „You cannot open this“ führt.) Dass ein Objekt namens door durch den Namen allein eben noch lange nicht zur Tür wird, sondern dass das Wesen eines Objekts durch Attribute und Methoden bestimmt wird. (Im Badezimmer steht nämlich eine Tür herum, an die Wand gelehnt, die eben nirgendwohin führt, die man nicht öffnen oder schließen kann.)

Für Englisch: Vokabeln wiederholen, Texte schreiben, Englisch lesen. Auf Rechtschreibung achten.

Insgesamt: Teamarbeit. Die einen machen die Räume, die anderen teilen sich die Gegenstände auf.

Für die Zukunft: Ich würde das ganze mal gern größer ausbauen. Im Buch gibt es zur Zeit Robin Hood, da könnte man doch mal schön den Wald modellieren und das Schloss. Hohle Eichen und Baumhäuser und so weiter; eine Bibliothek beim Friar. Zeit dafür gibt’s keine, die müsste ich mir klauen. Am schönsten wäre natürlich ein Wahlkurs „Schreiben von Textadventures“. Aber ob ich da gegen Hauswirtschaft und Aquarellmalerei und dergleichen eine Chance habe?

Außerdem muss ich überlegen, ob ich mich TADS 2 weiter machen möchte oder mit dem Nachfolger TADS 3 mit anderer Syntax. TADS 3 ist wohl komfortabler und von Haus aus mit mehr Vokabular, kennt aber viele Abkürzungen, die weniger deutlich werden lassen, was ein Attribut, ein Attributwert und eine Methode ist.

Tagged: Tags

2 Thoughts to “Textadventures im Informatikunterricht

  1. Die Überlegung, die Schüler vom Schreiben von Code fernzuhalten, ist mir völlig unverständlich; zur realen Welt gehört auch und gerade – gerade heute! -, nicht nur die Theorie zu schaffen, sondern sie auch umzusetzen. Warum nur konzipieren und das Konzept dann nicht in Code umsetzen? Warum Webseiten zusammenklicken, statt HTML zu lernen?

    Im Mathematikunterricht werden – auch und gerade – nicht nur Beweise und Herleitungen und Lösungsansätze verlangt, sondern auch deren Anwendung an konkreten Beispielen. Obwohl Schreib- und Rechenfehler dabei möglicherweise die Gefahr in sich bergen, zu falschen Ergebnissen zu kommen und die armen Schüler zu frustrieren. Auch im Deutschunterricht wird man in der Regel wohl die Niederschrift eines Aufsatzes und nicht nur dessen Konzipierung verlangen; auch wenn das die Gefahr von Grammatik-, Zeichensetzungs- und Rechtschreibfehlern in sich birgt (obwohl durch die sog. Rechtschreibreform und den damit einhergehenden Einzug der Beliebigkeit zugegebenermaßen die Gefahr von diesbezüglicher Frustration weitgehend entfallen sein dürfte ;)).

  2. Ich sehe das ja auch einigermaßen so. Code schreiben macht außerdem Spaß und ist gar nicht frustrierend. Und es schadet überhaupt nicht zu lernen, dass es manchmal auf jedes Komma ankommt.

    Allerdings bin ich, wenn es um HTML-Seiten geht, auch Deutschlehrer. Ich zeige den Schüler, wie man sich den Quelltext einer Seite anschauen kann, dass der vom Browser anders dargestellt wird, und wie man den Quellltext verändern kann. Das macht Spaß, sich eine Seite lokal zu speichern und daran herumzubasteln.
    Dann wende ich mich aber dem Inhalt zu und arbeite mit Wikis. Ich habe zuviele hässliche und überflüssige Schülerseiten gesehen; es sollte auch etwas drinstehen.

    In der 7. Klasse lernen Schüler, Algorithmen in natürlicher Sprache zu formulieren und in einem einfachen Programm wie Robot Karol umzusetzen. Mit Code, wenn auch wenig fehleranfällig. Allerdings noch ohne Variablen: Die kapiert man erst, hieß es an der Uni, wenn man einen Programmablauf als wechselnde Zustände im Variablenraum erkennen kann. Auch da bin ich skeptisch.

    Ich denke, es reicht, wenn die Schüler Code schreiben lernen, ob das HTML oder eine Programmiersprache ist. HTML zum Selbstzweck halte ich nicht für wichtig. In der Oberstufe lernen die Schüler, die dann noch Informatik haben, tatsächlich eine imperative Programmiersprache. Ein bisschen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.