[Squeak-ev] Squeak im Produktiveinsatz

Andreas Wacknitz A.Wacknitz at gmx.de
Sam Sep 15 18:50:37 UTC 2007


Hallo Stefan,

eines vorweg: ich habe keine ernsthafte Erfahrungen mit Squeak,
beobachte und probiere es aber schon eine Weile.

> Nachdem mich die Jungs von Cincom letzte Woche etwas verärgert haben,
> bin ich am ernsthaften Überlegen, fällt das Hauptargument für
> VisualWorks (plattformübergreifende "Standard"-GUI-Clients) weg.
Die letzten Wochen waren für Smalltalk-Freunde wirklich nicht
erfreulich. Erst kündigt Object-Arts an, dass Dolphin nicht mehr
weiter entwickelt werden kann und nun das Desaster bei Cincom.

> Eine anstehende Web-Applikation hab ich zwar schon in VW angefangen,
> aber AIDA gibt's auch für Squeak, da sollte sich der Aufwand für den
> Umstieg in Grenzen halten. Die Daten liegen zurzeit in einer ca 120MB
> großen SQLServer-Datenbank, wo ich sie wohl auch liegen lassen muss,
> damit die übrigen Komponenten nach wie vor funktionieren.

> Bevor ich da aber ernsthaft anfange, würde ich gerne wissen:

> - Wie macht sich denn Squeak so als Langlauf-Server-Prozess auf einer
>   (32-bit)-Linux-Kiste (2xPentium V 2.3 GHz, 3GB RAM)? Der Rechner
>   selbst ist jetzt ein OpenXchange-Server für den Kunden und langweilt
>   sich fürchterlich...

> - Läuft das Ding in guter alter Linux-Manier "einfach so immer" oder
>   sollte ich das Image wöchentlich oder täglich neu starten?

> - Gibt's irgendwelche Besonderheiten zu beachten? Harte Grenzen wie die
>   max. Zahl an Objekten oder sowas?
Schau Dir mal die Mailinglisten-Archive der letzten Wochen an. Dort
findest Du interessante Diskussionen zum Thema Speicherverwaltung und
Stabilität. Auch ein Blick auf Mantis (http://bugs.squeak.org) lohnt
sich.

> - Gibt's irgendwelche Tipps und Tricks für bzw. Warnungen vor bestimmten
>   Tools, die fürs Arbeiten wichtig sind? Enorm hilfreich für mich wären
>   z.b. die beiden "History"-Knöpfchen "<" und ">", die der alte
>   RefactoringBrowser hatte, der neue OmniBrowser aber anscheinend nicht.
Meine Erfahrungen mit Squeak sind hier eher schlecht.
Eigentlich passiert es mir regelmäßig, dass Aktualisierungen von
Paketen zu ziemlicher Instabilität und Unbenutzbarkeit führen.
Gerade das OmniBrowser-Framework tut sich hier m.E. besonders
(negativ) hervor: Es wird recht intensiv weiter entwickelt, aber
Aktualisierungen über das Package-Universe führen häufig dazu,
dass ich ein neues Image erstellen muss.

> - Welche Image-Version nimmt "man" denn heute zum Entwickeln? Ich hab
>   auf dem Windows-Laptop eine 3.10-er VM und das letzte 3.9-er image und
>   ein Weilchen mit Universes und SqueakMap und Monticello at SqueakSource
>   gekämpft, bis ich ein System beisammen hatte, in dem die Sachen drin
>   waren, die ich haben wollte.
Das ist eine interessante Frage. Diese zu beantworten hängt von Deinen
Anforderungen ab. Leider laufen die VM-Varianten ein wenig
auseinander. Andreas Raab (Windows) und John McIntosh (MAC) sind recht
agil, Ian Piumarta (UNIX) ist eher zurückhaltend.

Zu den Images: Viele halten die 3.8er für die stabilste. 3.9 hat
etliche Bugs, um die man leider selber kümmern muss. Es gibt zwar
einige Patches (in Mantis), aber die fließen nur in die aktuell
"entwickelte" Version 3.10 ein.

Hier komme ich auch zu meinem eigentlichen Eindruck von Squeak:
Ich finde, dass man Squeak nicht guten Gewissens in einem
kommerziellen Umfeld nutzen kann. Zumindest gilt das m.E. für
kaufmännische und produktive Bereiche. Für Lehr- und Lernzwecke
halte ich Squeak hingegen für ausgezeichnet geeignet.

Warum ist es im kaufmännischen Umfeld nicht benutzbar?
Ganz einfach: es fehlt an Stabilität und Funktionalität.
In meinen Augen fehlt es dem Squeak-Projekt an Geld und Führung.
Es wird von verschiedenen Gruppen und einzelnen Leuten für
eigene Zwecke weiter entwickelt:
Forschung und Lehre sowie Multimedia sind die herausragenden Gebiete.
Hier kommt es aber weitgehend nicht auf Stabilität und
standardkonforme GUI an.
Das bemerkt man in Squeak an vielen Stellen: Es gibt zwar viele
interessante Programme und Frameworks, aber die sind meist nicht
zuende gestellt worden, sondern nur soweit wie man es brauchte.
Viele fragwürdige Dinge sind in den Jahren im Standard-Image gelandet
und werden nun mühselig wieder entfernt. Auch die Qualität des Codes
ist ziemlich unterschiedlich. Häufig fehlen Kommentare und über
Dokumentation brauchen wir gar nicht erst diskutieren...

Zusammengefasst: Um die GUI ist es in Squeak noch schlimmer gestellt
als bei VisualWorks. Datenbankanbindungen sind bis auf (rudimentäre)
ODBC- und PostgreSQL-Treiber nicht vorhanden. Die Vorteile,
die ich hier trotzdem sehe: man muss nicht auch noch horrende
Lizenzgebühren bezahlen und (fast) alles ist OpenSource.

Insgesamt hat mich die Entwicklung der letzten Monate ziemlich traurig
gemacht. In meinen Augen hat das Sterben von Smalltalk vor einigen
Monaten mit dem Ausstieg von IBM begonnen, dann folgte vor Kurzem die
Abkündigung von Object Arts und nun killt auch Cincom noch VisualWorks.
Smalltalk ist die beste und eleganteste Programmiersprache, die ich kenne.
Leider gibt es keine gute Implementierung (mehr).
Meine letzte, geringe Hoffnung bereitet mir der Versuch des Buyouts von
Dolphin, um es in den OpenSource-Pool zu stellen. Ich weiß allerdings
nicht, ob wirklich genug Geld gesammelt werden kann.

Viele Grüße
Andreas