Squeak ideas for a classroom/clubhouse

Alan Kay Alan.Kay at squeakland.org
Wed Jan 15 08:41:13 PST 2003


Hi Jahanzeb --

At 7:58 AM -0800 1/15/03, Jahanzeb Sherwani wrote:
>  >The rule is: If you drag a tile out of the viewer, it *will* create a
>>new script. If you drag it out of an existing script it will *not*
>>create a new script. I know this is slightly inconsistent but it seemed
>>to be the best solution considering all the other tradeoffs.
>
>Yes, this makes sense... but the problem I was having was that dragging a
>tile out of the viewer was creating a script half the time, and not
>creating a script the other half. We (sheepishly) were running the plugin
>in a browser, and thus had not updated it -- could this have caused the
>problem?

I don't think so. I think all this is the result of a few decisions 
we made several years ago that made some sense at the time, but 
perhaps don't at all now. For example, when I first demoed etoys to 
Disney in '97 or so, I wanted it to look like magic, and having the 
tiles turn into a script when tossed on the desktop did just that. 
But this created a huge violation of good UI design because it 
produced a conflict that should never be there: at odds with how to 
show the scripts made by the kids. We just decided to have them open 
up on the desktop rather than create a new script for the tiles to go 
into. Thus the conflict with making a new script.

The other problem that needs to be solved and fixed is when to do 
something when tiles are dropped. I think what is happening to you is 
that you might be dropping tiles somewhere other than the desktop 
and the system is not reacting to this. At an earlier point in etoys 
all drops did the same thing and this was changed (I can't remember 
just why). Another example is that playfields are now made sticky and 
can't be picked up directly with the mouse because children would 
often miss when trying to touch something in the playfield and would 
pick it up instead. However, this means that playfields can only be 
moved with the black and brown handles, and this is yet another rule 
to be learned (amongst too many rules already).

I think the right thing to do with regard to the tile drag and drop 
cases is to have a better way to create a fresh script and then make 
all tiles open up when tossed on the desktop. For example, we could 
have a new handle in the halo make a script. This doesn't seem like a 
good idea because there are too many handles in the halo already. A 
better idea might be to put a new script button at the top of a 
player's viewer so that it is really easy to make one whenever the 
viewer is open. There is one of these inside the top of the viewer 
menu, but this seems too hidden to me. What do all think about this?

Also, I think while we're at it, we should also expose the "make a 
new variable" button that is also hidden in the top of the viewer 
menu. ??

Fortunately, our experience over the last few years has been that the 
children very quickly learn what to do in the UI, even with 
inconsistencies in the UI (I think they all have built-in talents for 
this since the real world of human cultures also has quite a few 
inconsistencies(!)). However, my belief is that the only difficulties 
that should be in a child's learning environment are ones that all of 
us have put there to help the child -- there shouldn't be any 
gratuitous difficulties from bad design ....

Cheers,

Alan

>
>Thanks for your answers,
>
>Jahanzeb


-- 



More information about the Squeakland mailing list