Hallo Liste, da ich die Liste gerade abonniert habe dachte ich mir ich will mich mal kurz vorstellen. ich bin jemand Jahrgang '71, wohne in Kiel und bin seit Anfang der 90er Jahre in Netzen aktiv. Bin über den Amiga über den Mac zu Linux gekommen (habe somit Windows ausgelassen). Seit einigen Jahren bin auch in FLOSS(1) aktiv. Z.B. auch bei GNOME. Zuletzt bei Foresight Linux als Paketbauer ;) . Nebenbei helfe ich bei der Organisation der Kieler Linuxtage. Was das Programmieren betrifft, so habe ich mir zwar immer wieder Programmiersprachen angeschaut - konnte mich aber für keine richtig erwärmen. Zu Smalltalk bin ich über Wikis und Ward Cunningham(2) gekommen. Und dann über Google Video zu Alan Kay und darüber zu Dynabook und Squeak.
Was mich angesprochen hat war die Eleganz von Smalltalk. Bei Java musste ich bei "void" immer an "vomit" denken - und das ist ja keine schöne Assoziation. Am ehesten konnte ich mich mit Python anfreunden. Das war mir aber zu pädagogisch mit seinen ganzen Einrückungen. Was ich so bisher auf meinem Weg zu Smalltalk erlebt habe könnt ihr auch ein wenig in einem meiner Blogs unter http://vinci.wordpress.com nachlesen. Warum ich hetzt plötzlich Programmieren will? Eigentlich primär, weil ich mit meinem Notizzettelsystem "TomBoy" ein System praktiziert habe, das eigentlich ganz praktisch ist (und zwar simplifiziert: Ich habe 2 Zettel: Einer ist TodoToday und der andere TodoTomorrow - und was ich heute nicht kann besorgen das verschiebe ich auf morgen ;-) ). Das führt dazu, das ich an einem Tag meist nur wenige Punkte habe, die ich wirklich erledigen will. Das Problem an der Lösung ist nur, das sie sehr komplex zu bedienen ist. Es sind halt nur Notizzettel. D.h. von der Usability gesehen nicht sehr brauchbar. Außerdem kann ich damit keine Experimente machen - es gibt nur wenige Bedienmöglichkeiten. Einige Notizen zu dem, was ich gerne (mit Smalltalk/Squeak) machen möchte stehen hier: http://sk28.alternativ.net/cgi-bin/wiki.pl/TodoDrone Ich weiss, das das mit Sicherheit das Millionsten Todo-Verwaltungsprogramm ist, aber ich habe im Moment keins auf meinem Linux das meine Anforderungen erfüllt. Und da denke ich wird es zeit selber mal Hand anzulegen? Ok, und dann fand ich die alten Filme von Doug Engelbart aus 1968 sehr inspirierend - und auf einmal fand ich die ganze Bedienung von GNOME zu kompliziert. Mir spuken da seit geraumer Zeit schon viele Ideen im Kopf herum, die ich aber mangels Programmierfähigkeit nicht umsetzen konnte. D.h. der Leidensdruck ist jetzt ausreichend. ;-) . Ich sehe Squeak potentiell als ein Werkzeug an, das man dazu benutzen kann Oberflächen für Menschen zu schaffen, die endlich das einlösen, was Hersteller wie Apple und Microsoft imer nur versprochen haben. Dabei muss man aber auch sehen, das Squeak heute dafür nicht geeignet ist, weil es z.B. Menüs mit viel zu vielen Einträgen gibt oder alle grafischen Objekte zu viele Möglichkeiten bieten. Aber was ich verstanden habe ist, das das ja alles nur Möglichkeiten sind - und das das jetzige Aussehen und Verhalten z.B. in Schulen für Lernzwecke und mit der entsprechenden Anleitung ideal ist. Noch verstehe ich Squeak und Smalltalk nur zum Teil. Dieses arbeiten am lebenden Image z.B. löste bei mir erst mal gewisse Unsicherheitsgefühle aus, wenn man Images bisher eher von ISO-Images oder VMware kennt. Ich habe neben Squeak auch VisualWorks und GNU Smalltalk angeschaut, dabei aber auch festgestellt das sich die Syntax da noch erheblich unterscheidet. Squeak ist mir da derzeit aufgrund der Tatsache das es freie Software ist aber dennoch auch Multimedia-Möglichkeiten bietet am sympathischsten. Und ich denke irgendwann muss man sich da auf eine Lösung festlegen um besser zu Lernen. Apropos Lernen: Was ich jetzt schon feststellen konnte ist, das ich durch Smalltalk zum ersten mal richtig die Bedeutung von objektorientierter Programmierung verstanden habe. Und zwar auch durch die Konsequenz bei Smalltalk - denn hier ist Objektorientierung in meinen Worten nicht so sehr ein Feature als ein Prinzip. D.h. meine Ziele sind zweierlei: 1.) Für mich selber eine Programmiersprache haben, die ich überschaue und für eigene Anwendungen verwenden kann. 2.) Über Squeak und Smalltalk weiter arbeiten an Themen, mit denen ich mich schon länger beschäftige - wie bei GNOME - eben Grafische Schnittstellen - neue Möglichkeiten. Also was ich jetzt konkret plane ist mich in meinem Squeak-Image etwas heimischer zu fühlen und mich auf den Weg zu machen eine erste Programmversion der "TodoDrone" auf die Beine zu stellen. Ich möchte dabei den Fehler vermeiden das Programm mit Featuren immer weiter aufzuladen. Es soll eben schnell laden und sich so gut bedienen lassen und anfühlen, das man es ständig nutzt. Ich kenne so viele Programme, die zwar theoretisch ihren Zwecke erfüllen, aber deren bedienung so umständlich ist, das ich sie nicht nutze (Wie z.B. RSS-Feed-Reader). Selbiges gilt für Funktionen, die so verborgen sind, das man sie nicht ausgräbt. Das ideale Programm aus meiner Sicht soll intelligent und effizient sein, damit der User damit auch tatsächlich produktiv sein kann. Dabei muss man glaube ich teilweise radikal mit traditionellen Konzepten brechen, die im Grunde alle in den 80ern entworfen wurden auf Basis dessen, was Smalltalk und die ersten GUIs angedacht hatten. Nur ist man m.E. seitdem stehengeblieben. Fortschritt hat sich mehr oder minder nur bei der Miniaturisierung und Verbilligung und Verbesserung von Komponenten vollzogen. So, bis dahin erstmal, Thilo (1) Free Libre Open Source Software (2) Wiki-Erfinder http://www.c2.com -- Thilo Pfennig http://issues.foresightlinux.org/confluence/x/R
