Jonathan A. Smith
jsmith at cognitivearts.com
Thu Dec 31 00:49:36 UTC 1998
> -----Original Message-----
> From: Joshua Marker [mailto:lux at umich.edu]
> Sent: Wednesday, December 30, 1998 10:36 AM
> No! Not at all. I turn people on to squeak left and right,
> but can only
> do it so quickly because they find it hard to believe and I have to show
> them myself. I guess they're inundated with the 'better than sliced
> bread' hype that they don't believe it when it's true. <g> If I had a
> book I could hand them, written not just for smalltalk but for squeak. .
> . .
Some thoughts on Squeak tutorials..
I am, of course, hardly an expert on Squeak. One format that I really like
is that used in by Matthias Felleisen, Daniel P. Friedman in their books
about recursive programming "The Little Ml-er," and "The Little Schemer".
The books are set up as a dialog between a tutor and student. The tutor
asks a series of questions and suggests exercises that build up a collection
of program fragments. In the process the student (and the reader) makes
some very interesting discoveries about recursive data structures,
functions, and so on.
There are several advantages to such a format: 1. It maintains an informal
and personal tone; 2. The reader can try each of the examples or read the
student's answers and work on only the more challenging exercises; 3. It
provides a nice format for introducing deeper issues of software design and
meaning in addition to programming language syntax and semantics; and 4. It
provides a nice format for exploring the experience of programming,
including common pitfalls and misconceptions.
The other thing that would be important is to avoid the mind-deadening
examples that often find their way in to most programming language
tutorials. (Financial record-keeping anyone?) There are really interesting
issues, both in the language design and in quite a number of application
areas. The key thing would be to come up with a collection of graduated
examples that are really exciting and model new techniques and approaches to
programming and simulation.
Learning Squeak may involve more than figuring to use a new programming
* Learning Squeak can be a way of learning to take control of part of one's
* Learning Squeak can be a way of entering in to the larger discourse about
the nature of human thought and its relationship to simulation and language
and logic. (And that dialog touches on a number of other fascinating
discussions about the nature of perception and belief, cultural transmission
and learning, the relationship between human societies and nature, and so
I would love to see tutorials that would not only teach programming but also
empower learners to create their own information space(s). I would also
like to see tutorials that could be used as a springboard to help people
full participant in that larger conversation about programming, language,
Such tutorials might take the form of a library of interesting programs with
explanations (and an annotated dialog relating the choices made by the
designer.) Perhaps some parts of such a tutorial could be built out of an
annotated (and edited) change log?
More information about the Squeak-dev