How to learn Squeak

G.J.Tielemans at dinkel.utwente.nl G.J.Tielemans at dinkel.utwente.nl
Mon Oct 29 08:58:32 UTC 2001


While waiting for Minnow when it was down I was thinking:

After several tutorials in Squeak the big day comes: what do do next

Learning Squeak on this level has for me (and maybe other newbies) two
parts:
1. learning to express myself in OO design, developing a small program-idea
2. implement it in this Smalltalk dialect called Squeak.
In the past we thought that you did first the design and then the
programming details.
Now we realize more and more that we as problm solvers jump between design
and details, so if we could squeeze it together in one process, it would
make a funny sound: "Squeak"


If I try as newbie to structure this:

I want to open a workspace for all my future thoughts and work in my first
project.
Then I realize that I should open a projectspace, not a workspace for that.
Then my first choice: should I open a MVC-project or a Morph-project. 
(I choose Morph because it seems to offer more visual support-cues, am I
correct?)

Then I open a browser on my project canvas: All the classes and methods
should be already there someone said to me... How many classes? how many
methods???? where to start..

Back to my own ideas:
I want to write down my first design-ideas, so I open inside my projectspace
a..? ..a workspace for writing down all my free flow thoughts. How to keep
overview, how to organise my thoughts...
Is there a better way for organizing this logistic part of the design
process? 
(I was thinking of a kind of book but the book misses several methaphor
aspects I would wish: 
- a TOC which I would use as a first draft to do list, must also be possible
to reshuffle it later as overview/design outline,
- a summary-page to write down my first short intention, and check it now
and then.
- for every normal page a form with an intro, a paragraph structure and a
bookmark option (for meta-thoughts) 
- .. and yes, also a free text search, like I have in a swiki.. well, should
I use a swiki for this? no, not yet..

Maybe I should implement this designbook as "my first little project" first?

(Becomes more complex then I first thought...)
- For the big ones under you: a good used project-book could grow into a
tutorial later..
 
Or, are there already design-organizers in Squeak? Lets look in the
authoring tools first:  not for this moment... must remember to visit this
later... 

Back then to the world menu: Package Browser? looks more topic-oriented
organized then the browser, helps me find easier? lets replace the general
browser by this one on my project canvas.
Method finder: lets open that, must be easier then finding the right
class...
Playfield options:.. graph paper? Nice, lets setup a grid, always easy
during design of user-screens
Flaps: lets turn all the flaps on for visual help cues when we get
desperate.
Projects??: what should be the meaning of project hierarchy? 

What I would like now fro the first round is an organizer that could help me
to keep overview of my notes:
- a stack of cards for writing down wished-user-scenario's for my idea 
- a stack of cards for suggesting objects (as candidates classes) for my
design
(Looks like I reinvent the Boost tool form Mark, would be nice to have that
inside Squeak for a start..) 

But I want more:
- a field on each of these last mentioned cards for possible soution-objects
I spot in the squeak library. (I have to try them when i work on the details
in that card, and then choose & change.) 
(Could I play this in a browser? ..on the left all the squeak classes,
second column my project with it's candidates? Ok, but then:

- how could I keep track of possible alternative classes? (AND the rejected
candidates)
- where do I leave my scenario-wishes, handling more then one object (or
morphic representation of it).
- how can I visualise the assemblage of all these projects in a final
(program)draft: Seeing the browser inside the swiki gave a cue: I can open a
browserview with only the classes I want to inspect (open with: with: with:
etc..) and store this browser opening-script.

- how can I check completeness 
- how can I organise distribution from this overall-view

Did someone try such a thing already before? What is the URL?






More information about the Squeak-dev mailing list