Definitive Smalltalk Books

Please note that some of the books mentioned here are now freely available on the net at www.iam.unibe.ch -- MartinH�cker



If you are learning Visual Works, a good book is "Smalltalk: An Introduction to Application Development Using Visual Works" by Trevor Hopkins and Bernard Horan.

Smalltalk Objects And Design is an excellent book, even if you don't want to use Visual Age. Most of the book is Smalltalk-version independent, even language independent.

Once you're past the initial learning, Smalltalk Best Practice Patterns is a good way to learn why Smalltalk is so cool (he humbly says, gleefully hand rubbing over TENS of dollars in extra royalty checks). --Kent Beck

No, it is not a good way to learn why Smalltalk is cool, it is an ideal way to learn how to be cool! The book uses pattern form to teach the best coding practices for Smalltalk. If you are interested in patterns for other languages, it is still worth while getting Smalltalk Best Practice Patterns to get ideas, because lots of the patterns carry over. --Ralph Johnson

HP publish a book called The Art And Science Of Smalltalk, which is very good too. Smalltalk Objects And Design is not exclusively about Smalltalk but is worth a read - it offers some useful insights into the importance of System Metaphor's. -- Mike Howells


I have been playing with Squeak Smalltalk some recently, with the goal of really learning Smalltalk, and I find it to be pretty close to Smalltalk-80 as described in Small Talk Eighty The Language (and to Tek Smalltalk, which is the one I have actually done a little work on once upon a time).

I have also been looking at some books.

Kent Beck's book looked too advanced for me yet, and I think I would actually have to be writing some sort of application before I would find it useful.

Simon Lewis' The Art And Science Of Smalltalk looked interesting, but there were no exercises to prod one along (even at this stage, having a few exercises to play with really helps me expand the basic skills).

Lalonde has a book titled Discovering Smalltalk, but my scan over it did not impress me greatly, but this one had exercises.

Does anyone "in the know" have comments about either of these books?

Bill, take a gander at the Discovering Smalltalk review. I'm using it to teach beginners (to objects and to programming both). -- Douglas Auclair 990513

Furthermore, is Rapid Software Development With Smalltalk accessible to beginners, or is it another "second book"? Is it implementation-specific?


It's great that Kent gets tens of dollars for every copy you buy... er, is that what he said? I MEANT to say that I would get ten dollars extra total, a significant increase in my total take. The new book collects ~50 of my articles with a little retrospective introduction. kb

See also:


Q: The Smalltalk Language sounds great! Where can I get it?


If "definitive" is the operative word, I would have to second the recommendation for Smalltalk The Language And Its Implementation. IMHO one of the cooler things about the earlier releases of Smalltalk-80 was its support for discrete-event simulation, and this book devotes an entire part(out of four) to that topic. The serious student might also appreciate Smalltalk Bits Of History Words Of Advice. This book is hard to find, but is a compendium of very insightful papers from the who's who among early implementors of Smalltalks at Xerox Parc, Tektronix, Cal Berkeley, and HP.

In the same vein I would automatically plug Smalltalk Best Practice Patterns and everthing else Kent Beck has written :-)

Another valuable reference heretofore missing from this page is The Smalltalk Developers Guide To Visual Works by Tim Howard, which contains a thorough exposition of the Visual Works classes involved in the user interface layer (e.g., Visual Component, Application Model, etc.).

There is also the two-volume set Inside Smalltalk by Wilf La Londe and John Pugh. These books predated Visual Works but Volume I is still very helpful in terms of an introduction to programming in Smalltalk and a detailed explanation of the behavior of the classes in the core class categories of the Smalltalk-80 class library.

Finally there is Advanced Smalltalk by Jonathan Pletzke, which focusses on topics like processes & threads, exception handling, primitives, deployment, DBMS access, etc.


And for a Smalltalk slant on Design Patterns, check out the Design Patterns Smalltalk Companion. --John Vlissides



See original on c2.com