[squeak-dev] Burn the Squeak Image! (Why I am running for board)

Matthew Fulmer tapplek at gmail.com
Sat Feb 28 08:20:55 UTC 2009


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

-- 
Matthew Fulmer -- http://mtfulmer.wordpress.com/



More information about the Squeak-dev mailing list