[ENH] sandboxCategory-ls ( [et][er][cd][sm] )

Michael Grant mwgrant2001 at yahoo.com
Mon Nov 3 22:02:23 UTC 2003


Being the newbie the Lex refers to below I can only say that he states the case well from my perspective. 
 
One of the touted aspects of smalltalk is how you can modify your environment and indeed the SM image. Well, I'm an old newbie with some experience with other languages and environments. So now I hit SM and am told "oh yeah, just go in and modify the SYSTEM, create this, and create that, and just start stuffing things into the image. If you don't like it then move it, go to the changeset or whatever...there are alternatives. Of course this is a very power capability, but I rather minimize time undoing and maximize time doing, as any of us would.  

But if I get cute and start putting new subclasses, etc., under different categories and classes without a modicum of understanding (which comes only with experience) I could really make a mess of the image. For example, be it bad practice or whatever, in my first dalliances with Squeak I tended NOT to create new classes but to extend the existing ones. For example adding some statistical methods to Collections. It just seemed natural to do it that. But this soon made me uncomfortable--because I would never easly undo all the changes I might sprinkle thru the system--changeset or not. So you see, I needed some people like Lex, Dan, and Richard to give a little advice. Lex went a little further and sort of said 'people like you need a place to play, while you SORT things out.'  
 
Learning SM is like anything else--there is a good deal of bootstrapping involved. But first you gotta find the laces. 
 
Lex makes some good arguments.
 
Thanks,
Michael Grant
 

Lex Spoon <lex at cc.gatech.edu> wrote:
ducasse wrote:
> I'm not convinced that this is different that any other class in the 
> system.
> Why this empty would help. I doubt about that.


Let me first repost my earlier message, from the thread "Documentation,
more, more" back in September:


//---------------------------------------------------------------------\
\
"mwgrant2001" wrote:
> I ENVISION MYSELF FALLING INTO A WOODY ALLEN-ESQUE NEUROTIC 
> PARALYSIS, UNABLE TO ACT ON ANY MATTER AS I WORRY OVER WHERE TO PUT 
> ANY CLASSES I MIGHT DEVELOP! 

I wouldn't have thought of that particular problem. Perhaps we should
add an empty category to the browser and put it at the top of the list. 
It could be called something like "Sandbox". Every little bit that can
be shaved off of the initial user experience is helpful.

Okay, I've programmed it. It's in my next message.
\\---------------------------------------------------------------------/
/


The basic idea is to let people make decisions in whatever order they
like. I hate the break in flow that comes in Squeak when I am forced to
name a class and put it in a category before I can do anything with it. 
Sometimes my thought is simply "I want an object holding a Foo and a
Bar". If it's the first class in a project, then I have to think up a
category name as well. If there is a Sandbox category available, I can
simply stick everything in there until I am ready. Similarly for the
class and methods.

For newbies, like the person I responded to, the situation is even
worse. Every step is harder for a newbie, and every step shaved is a
significant saving.

Tutorials should be benefited as well. Now they have the option of
telling people to stick code right into the Scratch class instead of
having them open a browser, do "add item", create a class, etc. That's
a lot of little steps when you stop and consider it!

Finally, to help your intuition, please consider what Squeak should look
like if we consider code as the document and the browser as an
application that edits that document. In most such software, the editor
starts up viewing a scratch document where users can immediately start
scribbling. Consider word processors, spreadsheets, drawing programs,
music notation generators, movie editors, .... Consider these programs
both with and without an automatic scratch area, and I think you'll
agree that it is nice to have an automatic scratch area pop up when you
start the program.



Lex Spoon



---------------------------------
Do you Yahoo!?
Exclusive Video Premiere - Britney Spears
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20031103/9f628758/attachment.htm


More information about the Squeak-dev mailing list