stepken wrote:
Der Grund, warum ich auf Smalltalk gestoßen bin, sind zwar die eToys, aber die sind in der Unterstufe relevant. Dort lernen die Schüler (bei mir mittlerweile mit Scratch) die Grundstrukturen imperativer Programme. In Klasse 10 soll dann das objektorientierte Paradigma im Mittelpunkt stehen, und Squeak bietet in meinen Augen die schöne Möglichkeit, hier das Innenleben des aus der Unterstufe vertrauten Werkzeugs zu erkunden. Deshalb probiere ich das dieses Jahr aus.
Achgottchen... erst imperative Programmierung und dann OO? Völlig falsche Reihenfolge, aus didaktischer Sicht, das versaut die Denkstrukturen.
Z.B. werden zu Beginn immer Scheifen programmiert. Wozu gibt es das
"foreach element in liste von Objekten machmalwasdamit ..." ... Iteratoren, wie in Squeak ETOYS auch. Du hast wegen Schleifen konstrukten Scratch eingeführt. Nur - man braucht sie einfach nicht, sie sind auch in OO-Programmierung unbedingt zu vermeiden ... Ich brauche mir nur OO-Code anzuschauen, und wenn ich da irgendwelche Zähl-Schleifen drin finde, weiß ich - Der Mensch hat OO überhaupt nicht verstanden - ein Grund, ihn/sie aus dem Team zu schmeißen ...
Ja, das mag in Entwicklerteams so funktionieren. Ich weiß ja nicht, wie viel Erfahrung du mit dem deutschen Bildungssystem hast, aber es gibt Rahmenrichtlinien, an die sich der Lehrer halten muss und die in jedem Bundesland wieder anders sind. Du magst ja recht haben mit deinen Ausführungen und das ist nicht die reine Smalltalk-Lehre, es geht ja nicht darum, die Schüler alle zu Programmierern zu machen. Die Reihenfolge, in der Stoff behandelt wird, ist in den Rahmenrichtlinien festgelegt (also, dass z.B. zuerst die Grundstrukturen drankommen). Und das ist auch nichts Negatives. Hast du mal das Buch von Stephane Ducasse (Squeak Learning Programming with Robots) gelesen? Er führt da auch wunderbar diese Grundstrukturen ein und das ist einfach etwas, was Schüler in diesem Alter erfassen und verstehen können. Das ist doch der Zweck der Programmiersprache im Unterricht, die Dinge, die man programmiert, zu verstehen.
Unterrichtlicher Kontext:
Das große Thema in den vier Unterrichtsjahren heißt Modellierung unter objektorientierten Vorzeichen. Was die Schüler lernen sollen, ist übersichtliche und strukturierte Darstellung von 'Information'. Kurz gesagt, ist das wichtigste der Umgang mit verschiedenen Formen von Diagrammen und die Erkenntnis, daß diese ein richtig wertvolles Vehikel sind. Alles was mit Rechnern zu tun hat (also z.B auch das Programmieren) ist ein *Neben*produkt des Unterrichts.
Wo sind da die Erfolgserlebnisse?
Immer vorausgesetzt, daß die Schüler überhaupt qualifiziertes Lehrpersonal haben, lernen sie:
- Klasse (bislang 10. Klasse):
Klassen und Objekte. Dazu gehört ganz massiv (vereinfachtes) UML, an sich auch Datenkapselung (wie von Dir angesprochen) und das Nachrichtenkonzept). Umgesetzt wird das (in meinen Augen eher ungeeigneterweise) mit Vektorgraphiken, Textdokumenten, Präsentationen und Hypertext.
Geht alles mit Squeak ... Textverarbeitung, wo die Buchstaben sogar einen selbstgemalten Wasserfall herunterfließen ... Präsentationen? -> Schau Dir mal in OPLC 1111 + Updates den Ereignisrecorder oder
Ich finde schon, dass Schüler auch mit herkömmlichen Textverarbeitungssystemen umgehen können sollten. Glücklicherweise heißt das nicht mehr unbedingt, dass alle Word lernen, sondern bei guten Lehrern schon, dass man die Grundprinzipien lernt und dann auch recht schnell ein neues System bedienen kann.
- Klasse (im Moment eben auch 11. Klasse):
Ablaufmodellierung, insbesondere die klassischen imperativen Strukturen.
Ich würde mich weigern, so etwas überhaupt noch zu unterrichten ...
Im Prinzip z.B. eine Sache für eToys, denen bislang aber die Schleifen fehlten.
dank Iteratoren ist nix mehr mit Schleifen. Gottseidank!
Scratch paßt hier wie die Faust aufs Auge.
Es passt auf Deine mentalen Modelle, Deine Denkstrukturen. Nur - Deine Schüler werden versaut mit veralteten Denkweisen ... das hat keine Zukunft ...
Du urteilst ganz schön hart. Das mag aus deiner Sicht ja alles stimmen, aber im Schulsystem kann man nicht machen, was man will, selbst wenn man davon überzeugt ist, recht zu haben. Veränderungen erreicht man nur schrittweise, frag mal die Leute, die das seit Jahren versuchen! Man muss sich da mit Beamten auseinandersetzen, die den Kern des Problems gar nicht erfassen. Es wird an verschiedenen Stellen versucht, Smalltalk und Squeak in die Schulen zu bringen und das ist eine Sysiphos-Arbeit. Es ist ein Wunder, dass noch nicht alle aufgegeben haben. Wenn man dann noch kommt und alles umwerfen will, weil es veraltet ist und keine Zukunft hat, braucht man entweder einen Schulleiter, der einem freie Hand lässt (was wohl kaum vorkommen dürfte), oder eine Privatschule, in der man sich zwar auch an die Vorgaben der Rahmenrichtlinien halten muss, aber viel mehr Gestaltungsspielraum hat oder man kann gleich einpacken. Also versucht man es "durch die Hintertür", orientiert sich an den Vorgaben und benutzt alternative Software.
Von der Modellierung her propagieren die Schulbücher an dieser Stelle Struktogramme - ich selber finde Flußdiagramme 'besser'.
Typisch für Menschen, die OO noch nicht so verinnerlicht haben ... Ereignisse (Events) Nachrichten, Methoden .... wie willst Du das mit Flußdiagrammen überhaupt darstellen?
Ich weiß es aus eigener leidvoller Erfahrung, wie lange es dauert, ehe man das verinnerlicht hat, ich bin noch nicht an dem Punkt, dass ich sagen würde, ich habe es vollkommen verstanden. Und so geht es natürlich jedem Lehrer. Das ist für mich das Hauptproblem, zu vermitteln, was das Besondere an Squeak und Smalltalk ist, eben weil es so anders ist als alle anderen Sprachen und Werkzeuge. Es wird als "Spielzeug" abgetan, egal ob ich Etoys oder Botsinc mache. Und dann geht es in der Schule eben nicht nur um die eine Programmiersprache, sondern um Modellierung, da hilft eine Vielfalt, um abstrahieren zu lernen.
- Klasse (ab 2007/8):
Datenflüsse und Datenmodellierung, insbes. auch ER-Modell und Datenbanken
Auweia. Entity-Relationship - Diagramme ... bei OO-Datenbanken, siehe Magma völlig überflüssig ...
Ja, schön, wenn du denn OO-Datenbanken nimmst. Du kannst aber nicht auf einen Schlag alles Bekannte abschaffen und durch komplett Neues ersetzen. Er-Diagramme sind wieder eine Methode, Zusammenhänge zu veranschaulichen und was ein Schüler z.B. dabei lernt, ist Modellierung. Noch ein bisschen Kontext: ich unterrichte Lehrer (berufsbegleitend) an der Uni, habe es geschafft, dass sie auch Squeak-Etoys kennen lernen und einige setzen es sogar im Unterricht ein. Ich habe auch schon selbst Schülerkurse mit Etoys gemacht. Selbst bin ich Informatikerin und befasse mich seit einiger Zeit etwas mit Informatik-Didaktik.
Viele Grüße, Rita