How about a tutorial on Squeak from within Squeak on online on the web? A piece of static media like a book seems inappropriate for a such a dynamic system, doesn't it?
I think, it's not about media but about what and how to explain. Yes, one kind of media might be better suited as another, but my point is that the best interactive multimedia show which is poorly written can't compete with a good book. Therefore, I don't see books as inappropriate.
IMHO the Smalltalk system is very difficult to learn. For one reason this is because it's so different to all other languages, people might already know. But the main problem is that you must understand the full picture before you can start. This is a big disadvantage compared to other languages. Once you got it right, it's a very powerful environment but until then, people might give up.
Python is as powerful as Smalltalk (when comparing OO abstraction, meta-programming and so on) but it's still know as a language that is easy to learn. Why I tried to understand. My explaination is that you can start working with Python right after you've learned how the usual condition and control flow operations are written in Python. In Smalltalk, by contrast, you've to understand objects, blocks (!), inheritance, the browser, how to create an object, how to create a method, how to call a method, that there's no main function and so on. Smalltalk forces object-orientation, Python just offers it. In many cases, this is better, for example because often people "test" new languages by coding their favorite algorithm. It it looks totally strange or if they fail, they'll never consider this language again.
A good book with good explanations surely help. Polishing the Smalltalk environment can also help. Not only for beginners, a special browser that shows only a core set of classes and methods would be helpful. A console window which allows to evaluate expressions without doIt menu but just by pressing return would be also useful. The browser needs wizards to create classes and methods. Then the debugger: Stepping by menu is a pain (we need buttons here). Stepping over and in blocks also. I think, Microsoft's and Inprise's IDE's show how a debugger should look like. Where are real break points?
If you target Smalltalk to children, don't forget that english isn't the native language of all children, what means, it would be good if the enviroment had national language support (including class and method comments!). Allowing what you'd probably call "special letters" in selectors would also a nice thing. Removing umlauts from my alphabet is like I'd force you to use "uu" instead of "w" :-)
One last point. Not all people see a language and a programming enviroment just as a playground. Some people actually want to create applications. Support for this is still non-existant. A book should focus on this, for example how to create a simple break out game so something similar, but it can only focus on this, after support for parceling/stripping/packaging/etc has need added to the system.
Happy New Year bye -- Stefan Matthias Aust // Are you ready to discover the twilight zone?