Markus Schlager schrieb:
Das ist genau der Weg, den wir bei uns bestreiten:
- Klasse, einstündig: Ablaufmodellierung mit Scratch
Auf dem Treffen beim HPI hat Jens Mönig den Nachfolger von Scratch vorgestellt.
Vorteil: Das didaktisch sehr wertvolle Prinzip der vorgeformten verschiebbaren, wie Lego ineinander greifenden Logikkacheln hat er auf ganz Smalltalk ausgeweitet. Also nicht nur, dass man in Scratch nun - was ja auf der Idee von Etoys mit seinen Logikkacheln basiert - in einer eigenen Grafikprogrammiersprache durch schubsen von Kacheln neue Algorithmen generieren kann, sondern er hat das komplette, darunterliegende Smalltalk in Logikkacheln überführt, die man hin- und her- schubsen kann. Diese "Zusatz-GUI" hat er "Elements" genannt.". Sie müsste eigentlich leicht auf jeden Smalltalk Dialekt übertragbar sein, der auf einem alten Squeak basiert. (Pharo, ...)
Für mich war das Programmieren wie von einem anderen Stern. (und das nach 21 Programmiersprachen, die ich inzwischen so gelernt habe).
Das Besondere:
Normalerweise kann man in Etoys oder Scratch keine Funktionen definieren, ohne in den Quellcode eingreifen zu müssen. Das ist häßlich, weil man das Konzept des Herumschubsens der Kacheln verlassen muss. Also didaktisch gesehen ein Bruch. Jens hat es geschafft, dass man auch Funktionen jeder Art, z.B. auch anonyme Funktionen als sog. "first class objects" behandeln und als Logikkacheln schubsen kann.
So kann man z.B. als Lehrer unter Scratch mit den Kiddies - ohne überhaupt die Scratch - typische GUI verlassen zu müssen, Mandelbrot Fraktale auf den Bildschirm zaubern.
In den Logikkacheln von Scratch stecken ja unsichtbar eine Vielzahl von impliziten, verborgenen Logiken, die der Anwender nicht sieht, von denen er nichts ahnt.
Wenn ich aber will, kann ich mir genau diese impliziten Logiken der Logikkacheln selber als Logikkacheln wiederum anzeigen lassen. Jens Mönig hat es geschafft, die Programmiersprache Smalltalk selber als System aus Logikkacheln erscheinen zu lassen, wobei der Übergang zur grafischen "Kunstsprache" Scratch fliessend wird.
Das Konzept der Logikkacheln ist also selber zu einem "general purpose system" geworden, mit dem sich alles programmieren lässt. Sogar kann man mit Jens' System selber neue Logikkacheln erzeugen, ohne die GUI und das Konzept der Logikkacheln verlassen zu müssen.
Ich kann also jede Abstraktionsebene in Smalltalk nun mit Schubsen von Logikkacheln bewältigen. Nun auch die unterste, Ebene, also den Smalltalk Code selber.
Dahinter steckt schon eine ganz erhebliche Denkleistung, die logischen Elemente der Programmiersprache Smalltalk mit den Logikkacheln von Scratch so nahtlos zu verbinden. Eine Denkleistung, die vor ihm, denke ich, keiner der Freaks aus der Informatik je geschafft hat.
Insgesamt eine sehr, sehr beachtliche, eine großartige, philosophische Denkleistung. Angewandte Modelltheorie pur. Da musste wohl erst ein Jurist ankommen, um den Informatikern zu zeigen, wo der Hammer hängt.
Dieses System ist nun unter dem Namen "Build Your Own Blog" ("BYOB" - für Google) frei downloadbar.
Have fun, Guido Stepken