The Squeak world and my own position in it
I first learned about Squeak on July 7 2002 and have documented my responses since on this site and am glad that I did so.
Indeed, this is the only site on which the responses of a newbie to Squeak has been given in some detail - at least to my knowledge. There may be sites in Japan where something like it has been done, but then this was done in Japanese. And there have been some efforts by others on some Swiki (a Swiki is a website that can be edited from the internet and is maintained by Squeak), but not at all in the same detail as on this site.
The fact is - as I wrote above - that the "Squeak Community", so called, effectively is some 25 to 50 more or less regularly contributing persons, and some 1000 people receiving the developers list.
I stand somewhat outside of it all, being ill, being pooor, being an alias on the internet, having many things to do besides Squeak, and having radical opinions on most things that are shared by few. (For more on this, see my whole site.)
This is not different with Squeak. The radical opinions I hold here are several of which I list three:
- I believe Squeak is the most interesting thing in programming environments and programming languages that I know
- I believe Squeak and its precursor Smalltalk are very badly documented
- I believe that the Received Explanations for Smalltalk and Squeak in terms of animistic metaphorical prose are nonsense
So my own position is that I am going my own way and have to develop my own approach to Squeak, which includes properly documented and explained images, which so far have not existed, neither in Smalltalk nor in Squeak. (The best I've seen were Dolphin Smalltalk and Visual Works Smalltalk, but I didn't much like these attempts either.)
Since in fact neither Smalltalk nor Squeak EVER - in more than 20 years of existence - had a fully documented image (not to speak of: properly explained) it is not odd that I have not been able to produce one in 1 1/2 years of knowing of Squeak.
Even so, the images I run are by far the best documented I know of and since I am also getting better and better in coding in Squeak there will be properly documented and explained images I did put by me in the public domain, if I live.
Indeed, I hope to do so in 3 to 6 months.
Squeak in the Public Domain
In the last notes I explained that Squeak changed in that Squeak Central - being the original designers of both Smalltalk and Squeak - ceased to coordinate the developing of Squeak.
The task of Squeak Central has been taken over by six or seven developers from the developers list who call themselves Guides.
An interesting side effect is that finally Squeak is fully in the public domain - by which I mean that in fact it is owned by no one at all, free for every one, and can be developed by anyone who is willing to invest time and has the requisite type of mind.
This makes Squeak more like a natural language or like ordinary mathematics and less like commercially owned programs, and this is how it should be.
A new documentation effort on the developers list
There is a new effort on the developers list towards better documentation. The people involved in it seem to want to write something they call a "Magic Book".
As I indicated in the previous note I will not participate in it for reasons of health. Also my opinions on the animistic language used to explain Smalltalk are probably not the right ones to cooperate with others (and also I don't believe in magic).
This is not to say I am not documenting, but I am doing this privately, since I work much faster if I am not supposed to cooperate.
A little news on Squeak News
I have earlier given links to Squeak News, which is or was a valiant effort to document Squeak commercially, on CDs. I liked it, but Squeak News seems to have totally disappeared, for which I am sorry. Some months ago the original site was replaced by a notice "Coming up soon", but lately there was no connection whatsoever.
The latest news on the Squeak News site is that "Coming up soon" works again. So maybe there is some life left in Squeak News. My own opinion is that it is probably not commercially viable, but I liked it a lot and would like to see it reappear.
A very tiny Squeak image that runs in a webbrowser
The image that comes with a standard distribution of Squeak is around 10 MB. This contains a lot - Smalltalk plus Morphic, in fact - and that lot is code that is heavily intertwined.
An Argentinian called Alejandro F. Reimondo succeeded in pairing all of this down to 24.756 bytes (nearly 25 Kb: Tiny) and to retain an executable that runs. What this executable does is only one thing: It pops up fractal trees on a green background, but this it can do inside a webbrowser.
This is important in at least two respects:
- Such a tiny image can be used as the starting point for other images that include no more than is needed for specific purposes.
- This also means that Squeak can replace Java, at least in principle.
Here is a link: http://netjam.org/relief that demonstrates it (in MS Internet Explorer on Windows). It worked unproblematically on my Windows XP system.
I have mentioned Squeak Map before and like to add here only that it works quite well in a 3.4 image #5169, which is the Squeak version I mostly use at present. (I have lots of images on my hard disk, but tend to work most with the latest images.)
What is it? A repository for downloadable code for Squeak. If you run a 3.4 image there is an option Package Loader in the World Menu which connects you to the repository if your computer is on line and then displays a list of packages with descriptions of their contents.
Honest Squeaking (and documentation)
Here are parts from two recent contributonsto the developers list. First, part of a message by Richard O'Keefe, who is - I believe - a somewhat elderly academic based in New Zealand:
*THIS* is the single biggest problem with Morphic and EToys: the steep
learning curve brought about by the truly dreadful state of documentation.
I have not a clear position on it but if I'm force to choose
I'll choose to work in the next paradigm shift.
If the next paradigm shift isn't any better documented than the last
one (Morphic, EToys) was, then BUGGER it.
I almost never swear. I believe this is the first time I've ever used
a swear-word in e-mail. But here I am, an enthusiastic Smalltalker, a
technophile, keen to play with things and to learn new ways to do things,
and very admiring of Morphic results that I have seen. And I am just so
If only there was something like Brent Welch's Tcl/Tk book for Squeak,
*assuming* a basic knowledge of Smalltalk syntax and Collection classes,
explaining Morphic, EToys, Tiles... A good How-To book with *all* the
information you need, right there in one place. Something you can
actually get up to speed with, without having a veteran insider as your
I am getting a bit sick of this.
Scattered, disorganised, and out of date documentation
is, practically speaking, no documentation at all.
It is, at best, a sop to people's consciences.
The next time someone says "let's make a Swiki page to talk about
documentation" I'm going to vomit.
The reaction to this on the developers list was not too friendly, but then Alan Kay reacted as follows:
Hi Richard --
Well, I agree with pretty much everything you've said here -- this is why I don't complain about lack of adoption of these ideas -- if we don't document them so that others can use them, then we shouldn't be surprised at the rise of frustrations such as you describe. This has been a big problem even with the etoys which we have tried to document to some extent for http://www.squeakland.org.
I know you do appreciate that our Squeak work at Disney was a headlong rush of a small group to get a lot of things done and demoable to our sponsors. So we didn't have extra cycles to do documentation. Since Disney, we've been scratching along with our nonprofit Viewpoints Research Institute with a very reduced sponsorship, and we decided to take on a new research project to boot, which resulted in Croquet. This does have some documentation thanks to David A. Smith.
I've been trying to figure out a practical way to capture a lot of the "here's how you do x" in a form that others can use to make real documentation.
I've recently been really inspired by the Japanese response to the etoys stuff (and to new ideas in general). They have gotten very enthusiastic about the etoy approach and are starting to put it into schools in Japan. What they do is to attend talks that we give and use them as the basis for a really detailed summary of the ideas put forth. One example that really overwhelmed us is a website, mostly about the etoys stuff, done by Yamamoto-san (whom we haven't yet met) that has literally hundreds of webpages of documentation in Japanese and screen shots showing how to use etoys. This is so good and so extensive that we are in the process of translating the site to English in order to get this documentation!
The expansion of etoys has also led to a need for more project ideas at the Junior High and High School levels. And, as usual, we don't seem to have the time and energy to sit down and do the writing and layout that is needed.
So my thought is to try to imitate the Japanese process by doing demos, capturing them and distributing the rough video and transcripts on CDR's in the hope that someone who likes to document and is good at it (like Yamamoto-san) will take the content to a more usable level. I will start doing that in March and will encourage other Squeakers to do the same. Maybe this will help.
Perhaps it will, and I - for one - am curious about the translation of Yamamoto-san's webpages.
However, there remains one general difficulty that I see: In actual fact there are few people who have a deep understanding of coding in Squeak and they tend to use it to code and not to write documentation. And many of the explanations of aspects of Squeak I have read were written by people who did not have a deep understanding of coding in Squeak.
Feb 15, 2003