Making Squeak more accessible and used - reversing the trend

Derek O'Connell doconnel at gmail.com
Thu Feb 1 10:38:27 UTC 2007


Regarding "attracting more developers": before appearing critical I'd
like to say that *I see* the potential in Squeak/Smalltalk but I'm not
sure it is immediately apparent to many others (meaning those yet to
encounter Squeak/Smalltalk). This is not to say I have any sort of
special insight or anything but because of years of relying on other
developers to one extent or another it is refreshing to work in an
environment where each new nugget of learning contributes to my
knowledge of the *total* environment. There's no technology barrier at
which point I have to re-tool to gain deeper control of the
environment (beyond the obvious topic of customising the VM but even
this would be transitory (do it then just use it)). My only regret is
that I didn't "discover" it years ago. I'm also grateful that
experienced developers continue to improve Squeak but... (you knew it
was coming :-) )...

Squeak/Smalltalk has been around for years with I guess large numbers
of interested developers at one time or another but still has almost
*ZERO* mindshare in the general computer using population and, I would
also guess, close to zero in those that can or want to program. This,
IMHO, is not simply a pubilicity problem, it's a presentation problem.
Framed crudely: Squeak/Smalltalk *is* a great development environment
but a dire *user* environment. Yes, Morphic is way cool but most user
oriented "applications" are mashed up with non-application elements
and many an answer to newbies questions begin with "Open up a
workspace, type "blah new openInWorld", right-click, select "DoIt"...
I mean, COME ON! What century are we in? I say this somewhat
tounge-in-cheek because if you have convinced a newbie to do this then
you can immediately claim that they have written and executed their
first Smalltalk program ("there, that wasn't hard was it?" LOL).

So to get specific: should the focus be on attracting more developers
or more "casual" users, and are better development tools needed or
more end-user applications? In truth there is no correct answer and it
is a bit of a chicken-n-egg situation. Any answer depends on the state
of affairs at the time it is given. Today there are developers (I'm
not sure how many) but I argue that there are *no* casual users and
that end-user applications are needed. If the question is "who cares
about casual users?" then I say that these, not developers, are future
life-blood of Squeak/Smalltalk development, they will generate the
demand that ensures Squeak/Smalltalk continues to exist and improve. I
could also question the role of developers without end-users and
postulate that if there were more end-users today then there would
also be jobs for Smalltalk developers... and everyone would be happy
:-P

A few final points:

- I pay homage to EToys, Seaside,  Scratch, Sophie etc but none of
these are what I would class as In-Squeak user-based applications.
Croquet of course offers potential but I would say not for general
consumption until high speed comms and 3D hw acceleration become so
standard that suppliers/manufacturers list them in their basic specs
(if only people would not dream to buy machines without hw 3D!)

- I recognise the wealth of code in the image but question the
accessibility of this to casual users or even wanna-be programmers. In
the case of the former presentation is very much key, for the latter
the amorphousness of Smalltalk interfaces lack the "sign-posts"
provided by well-documented API's in other environments.

- Squeak is an ideal place to challenge peoples concepts of what a GUI
is and what they should be able to with it. A much better environment
for *any* sort of experimentation than say "Proce55ing". I have a few
ideas that I'd like to throw into the pot, depending on what direction
Brad takes this conversation.

- To the hardcore Smalltalk developers: despite any apparent
criticisms above, I LOVE YOU! WE LOVE YOU! Carry on coding dudes! :-)



More information about the Squeak-dev mailing list