[Squeakland] Logo vs. Squeak

Andreas Raab andreas.raab at squeakland.org
Sat Aug 9 20:55:49 PDT 2003

Hi Anindita,

> How can one transition from being an Etoys programmer
> to a Smalltalk programmer? Right now, the gap is rather
> wide, but ideally, the ceiling should be that high.

That's an excellent point and in fact what started the current effort
towards Tweak. One of the primary reasons why the gap is as wide as it
currently is, is simply that almost all of the useful notions we find in
eToys are simply not present at the "system level". E.g., the gap is largely
due to the fact that I can do things in two lines of eToys which would
require me two-hundred lines of Smalltalk code and that I can do things in
two lines of Smalltalk code which I can't do in eToys at all. This has
severe implications on the learning curve since it essentially means that
once you cross the line (in either direction) you can forget what you
learned already and need to start essentially from scratch.

This issue of scalability has (as far as I can tell) never been addressed in
any kind of authoring/scripting environment. You live either on one side of
the fence or on the other and depending on which side you choose you can do
certain things and not others. We are trying to address this problem in
Tweak by coming from both sides; for one thing there _has_ to be an
accessible end-user representation for all "system-level activities" (even
though we build in some fences in order to prevent you from heavily damaging
the system) and on the other hand, all of the powerful notions of the
end-user domain are directly accessible on the system level.

> It's also hard to know what to do when the environment
> is opened. My first impulse would not be to alt-left
> click an object to pull up a halo and then click the 
> blue eyeball to pull up one object's viewer at a time.

So what would be your first impulse?

> Etoys is good for a number of activities such as simulations
> and animation, but in later versions of Squeak, it's been
> getting more bloated instead of more refined. Many more tiles
> have been added in and it's hard to navigate.

This is a pretty natural effect of the scalability issues we see. If people
had an easier way of finding "new things" and have them persist in the user
interface the problem wouldn't even be half as bad. What needs to be done to
sort this out is a better "meta authoring" environment in which it is easy
to integrate the "things you need" into the user interface you use for
authoring your projects.

> At this point, it might be good to take a step back and 
> rethink how to do scripting in Squeak so that children
> can access the powerful ideas and flexibility of Smalltalk
> more simply.

We have been working on this over the last two years and we are working on
this right now. For example, we had a very interesting project with a group
of design students to come up with alternative ways of scripting.
Unfortunately, this project has no online presence which is a real shame
considering how interesting the results were.

But here's something to look at which I think is pretty darn cool:


It's in German (sorry for that but it has been made for German kids ;) and
covers a lecture on "How to make Computer Games" which was given by my
friend and collegue Maic Masuch (who is professor for computer games at the
Univ. of Magdeburg) and who is very interested in scalable media
environments for his students. The system you see there is called JIVE and
has been done by Jana Hintze based on Croquet and Tweak.

  - Andreas

More information about the Squeakland mailing list