The Weekly Juan #4: "Smalltalk, Direct Manipulation and End User Programming"

Juan Vuletich juan at
Thu Nov 9 00:55:22 UTC 2006

Hi Jecel,

Thank you for your feedback. (more below).

Jecel Assumpcao Jr escribió:
> Very good!
Thank you.
> The only thing I would add about MVC is that it makes good use of the
> fact that humans have a single locus of attention (chapter 2 of Jef
> Raskin's "The Humane Interface" goes into detail about this). So there
> is one active object on the screen while all the others are frozen.
> Using the pointer position as a proxy for the locus, the Controllers
> collaborate to quickly switch which one of them is active. In a similar
> way, only the top View can be updated but as soon as the user is
> interested in a different View it comes to the top and is refreshed. I
> consider this to be the visual equivalent of the "block variables are
> really method temporaries" hack in that most people don't notice any
> problems. Bill Atkinson from Apple was so convinced he had seen
> partially obscured windows being updated in the famous PARC Smalltalk-80
> demo that he worked long and hard to come up with a way to reproduce
> this for the Lisa and Mac (what he called "region algebra").
Wow! I added this text to the article. I hope you don't mind. If you do, 
I'll remove it.
> While this is fine for business style applications, it was not a good
> option for artificial worlds like ARK, Morphic and EToys. Here we
> replace the collaborating Controllers with something more similar with
> preemptive scheduling, with all objects being constantly polled with
> #step messages. Obviously there is a huge price to pay in terms of CPU
> cycles.
Of course.
> I did find this comment about Self a bit strange:
> "Most programmers believe the Smalltalk-80 environment is more
> productive, and the software built is easier to maintain."
My idea was to be objective. Clearly that phrase was completely 
subjective. Thanks for pointing it out. I removed it.
> Other than John Maloney's interview in SqueakNews, what other
> programmers have expressed this view? While I can't be sure what John
> meant, I think he was happy to be using the system browser again where
> you get a whole view of the system (like a "map" page in a web site). In
> Self there are lots of places where objects you might be interested in
> could be hiding besides the "globals" object. As more and more projects
> started to live outside the official imagine in Squeak (which happened
> long after that interview) this has become a problem here as well,
> though the introduction of the SqueakMap did a lot to tame it.
Well, I don't know many Self programmers. In addition to John's opinion 
(crucial for me), I have a good friend who worked a couple of years on 
an application written in NewtonScript. He felt the same as John: the 
browser is a great way to organize code. Besides, code based development 
(i.e. not relying on the assembly of objects in a certain image) eases 
team work and version tracking.

> I am typing this in Linux, though I find QNX and Plan 9 far better
> technically. The reason is the community (and, as a consequence, the
> available software). In the same way I am typing this in Squeak
> (Celeste) instead of Self merely because of the community. If people who
> have experience using both Self and Squeak feel the latter is "more
> productive, and the software built is easier to maintain" I would very
> much like to hear about it.
> -- Jecel
Now I have a third opinion: yours. You don't agree with them, so today I 
would say "Some programmers believe...". Anyway, as I said above, I took 
it off. This article is not about my opinion.

Thank you so much.
Juan Vuletich

More information about the Squeak-dev mailing list