I want to give a Big Thumbs Up to Mark Miller for providing what I think is one of the very best explanations for why people aren’t using Smalltalk: Mark’s Answer.

The concepts of programming, process management, and data persistence are combined together into one entity, rather than being separated into operational layers that depend on each other, but which segregate their code bases, and expose little of themselves at the layer that users can see. There’s really no separation between what’s persisted, and what’s running, what’s design time, and what’s run-time, and between what’s a command line, and what’s executable code. This throws people off.

Conquering that discomfort for me involved understanding Smalltalk’s history and legacy, which is an interesting area of study, understanding that Smalltalk is like an operating system (not just a programming language), and then understanding what Alan Kay’s model of objects was when he designed Smalltalk. All of that takes quite a bit of contemplation. I say that because I’ve heard from many Smalltalk programmers, some of whom had used it for years, but didn’t understand one or two of the qualities I just mentioned.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store