=== Top of the Swiki === Attachments ===
Learning to Squeak
Good Pages on this Swiki:
Squeak Smalltalk: A Quick Reference, by Andrew C. Greenberg
Morphic tutorials:
Chris Phoenix's new Squeak Tutorial:
Making OO Smalltalk - A beginner's introduction to Squeak by Jason Steffler:
On-line learning resources, Squeak specific:
Tutorials for other Smalltalks that may be useful:
Torsten Bergmann has made a good beginning on a "book" in his Squeak Online Book, which covers basic topics as well as Morphic and scripting.
Sites with links for learning Smalltalk:
Essays that would be useful, and which probably already exist somewhere. Putting together an index of such things would probably help new Squeakers quite a bit:
- code browsing techniques, ie using the browsers, looking at implementors-of, and such
- using streams (next, next:, upTo:, ...)
- defining new streams (how to recognize a stream-like class, which methods to override,...)
- using collections (do:, the wierdo select:/collect: methods, add:, remove:,...)
- the relationship between streams and collections, eg Stream>>do: versus Collection>>do:
- printOn: and family
- morphic graphics programming
- using those wierd looking halos :)
- working with changesets and projects
- objects versus classes
- Classes, methods and blocks - The Squeaky way of Code
- memory, GC, but also the REST of the story (what you still need to think about)
- gather up the external interface stuff into a single cohesive package.
- how (and why) to use the file list.
Books on Smalltalk abound. All describe dialects that vary somehow from Squeak. The oldest books may be best since they describe the roots from which Squeak grows. See also Book Reviews.
The only way to learn Smalltalk is to program in it. Sometimes you know what you want to program. If you don't, it helps to have some excercises
Plumbin' was created by Ward Cunningham a decade ago in Tektronix Smalltalk as an exercise to show how much can be done with MVC, and how easily. Ward has updated it for Squeak (and added color).
Websites for classes using Squeak. Examples: assignments, tutorials, cases, etc.
I found the BankAccount tutorial http://www.squeak.org/tutorials/BankAccount.html to have incomplete directions, that left this newbie lost and frustrated. Where do we report these? I so no reference to the author's URL or email on these pages.
What did you consider incomplete? What was unclear? Also, when did you last look at it? (It was added to and refined several times after it was introduced a few months ago.) There is also a follow-up tutorial that begins to show some of the Morphic system - Fun with the Morphic Graphics System, Part One - http://www.squeak.org/tutorials/morphic-tutorial-1.html
Since I have the editing responsibility for these tutorials at the moment you can reply to me directly if you want.
-- Dwight Hughes
I've uploaded two sections of my new textbook on Squeak to address a couple of the most common issues that I hear about learning to Squeak: Learning change sets (changesets.pdf) and learning Morphic (programmingmorphic.pdf). More details on the books are available at http://guzdial.cc.gatech.edu:8080/personal.135, and the edited volume on Squeak is getting posted to the Web AND IS CURRENTLY SEEKING REVIEWERS! at http://coweb.cc.gatech.edu/squeakbook/ -- Mark Guzdial