Squeak is a growing community with diverse needs. We have long outgrown the monolithic image left to us by our founders, Dan Ingalls and company. The community has long been building its own images for many purposes, targeting many audiences: end-users, application developers, core developers, and researchers. Some examples:
2001: Squeakland Etoys 2002: Croquet 2003: Spoon, by Craig Latta. An experiment in very high modularity 2004: DPON, by Michael van der Gulik: A project to revive Henrik Godenryd's modularity framework abandoned in Squeak 3.3 2005: Morphic removal, by Edgar J. de Cleene 2006: Scratch, by MIT Media Lab: An end-user application for easily building and sharing animations, and teaching basic programming 2007: squeak-dev, by Damien Cassau. A distribution targeted toward application developers. 2008: Pharo, by Stephane Ducasse and others. A team focused on dramatically raising the code quality, usabily, and standards conformance of squeak overall.
We need to burn from our minds the idea that there is one "official" squeak image that serves the needs of the whole community. It is a lie.
Given that no "official image" can meet the needs of everybody, who should we target when building something official?
We need to build things for those who would build better images themselves. Having many good images to choose from makes everybody happier. The only issue with the situation is that they are not always compatible. I believe this is the core issue that the board and the squeak release team needs to address.
A standard "kernel image" that everyone builds off of has long been a pipe dream of nearly everyone in the community. I believe that such an image is not achievable in the short term; convincing all of the squeak distributions to adopt it would be nearly impossible to adopt incrementally.
A more practical approach to that end is Standard Packages. A major issue we have currently is that bugs get fixed in one distribution, but never applied to another. However, if all distributions of squeak used the same version of a package, it would be very easy: fix the bug in the common package, and each distribution will eventually upgrade to it.
I would like the board to do the following project, and I can manage it:
By this time next year, every squeak distribution (squeak.org, Pharo, eToys, cobalt) will be running a standard version of the following three packages: - Collections - Streams - Compiler
We will also fix and close all of the issues on mantis relating to these packages
If we start this process and continue it, we will eventually have enough standard packages to build a kernel image, and everybody will already be running on it.
I do not believe the board should do this to the exclusion of all else, just as one of several projects. I fully support Andreas's election platform: we should indeed start having both a stable and unstable release, both happening in parallel