Musing about Smalltalk

Kevin Fisher kgf at golden.net
Wed Sep 13 02:21:25 UTC 2000


[ beware!  ahead lies coffee-induced speculation and musing! ]

I've been polishing off my enhancements to Celeste the past couple weeks (I 
added a tabbed preferences dialog to replace the ever-growing categories menu, 
for example) and I've been noticing something rather interesting about the 
whole process.

Morphic is all rather new to me so I've been winging it as I go.  The nice 
thing about Smalltalk is that I don't have to flip through any reference 
books--I can just open a browser and jump directly into any class in the 
system to see how things are done.  I learned Smalltalk from the 'purple' book 
(Goldberg et al).  I really just picked up the basics from the book...and I 
really don't need to flip back to it, at all, even for reference.  Even after 
long absences from Smalltalk (ie over a year) I've still been able to jump 
right back in.

This got me thinking..to me it seems that the whole learning process with 
Smalltalk is quite different from any other language I've used.  You seem to 
learn progressively...since every class is open for inspection you CAN grow 
your knowledge and apply it simultaneously, instead of the traditional 
learn-in-chunks-and-then-apply way.  It just FEELS different...as I started 
out with Morphic I knew nothing, and yet without any textbooks or detailed 
HOWTO's I managed to figure it all out by browsing the system and trying 
things in a workspace, and in a very short time.  Outstanding!  Just try 
learning C or C++ from the headers in /usr/include and see how far you can 
get... :)  More realistically, even with a well documented online system (like 
MS Visual Studio) it is still very difficult to get up to speed on something 
like MFC without a detailed book or reference.  Not so with Smalltalk, from 
what I've experienced thus far.

I dunno, maybe the coffee is getting to my brain tonight, but I just find the 
whole thought process that Smalltalk inspires to be quite remarkable.  It's 
got me thinking in a whole new way.







More information about the Squeak-dev mailing list