[HN Gopher] Back to the future: the story of Squeak, a practical...
       ___________________________________________________________________
        
       Back to the future: the story of Squeak, a practical Smalltalk
       written in itself [pdf] (1997)
        
       Author : fanf2
       Score  : 90 points
       Date   : 2025-12-24 21:42 UTC (7 days ago)
        
 (HTM) web link (www.vpri.org)
 (TXT) w3m dump (www.vpri.org)
        
       | conartist6 wrote:
       | It's really cool how much of this feels familiar to me from my
       | own experience building and evolving bootstrapped systems
        
       | gnabgib wrote:
       | (1997)
        
       | cmrdporcupine wrote:
       | It's really a shame that the early history of Smalltalk-80 was
       | such that it remained too locked up in licensing and $$
       | implementations and so didn't get a broader penetration. That and
       | it was about a generation or two ahead of the extant
       | microcomputing hardware at the time, so wasn't going to be
       | shippable in a performant way on a general consumer class machine
       | even by the time the Lisa and Mac shipped in the mid-80s.
       | 
       | I was very excited by Squeak in the late 90s (and even more
       | excited by Self), but it was clear that the time of Smalltalk
       | being able to make any kind of broader splash was done, and Java
       | was where people's attention switched.
       | 
       | Imagine if a consumer focused machine like the Macintosh had
       | shipped, but based fully on Smalltalk, with an authoring
       | environment built on it for "regular people". The closest we got
       | to this was Hypercard.
        
         | b00ty4breakfast wrote:
         | the whole Smalltalk saga is a bit of a tragedy looking back
         | (EDIT: as someone who didn't live through that era) through the
         | context of the current state of consumer computing being so
         | "non-convivial", if I can borrow a phrase from Ivan Illich.
         | Empowering users by allowing them to conform the tools to their
         | own usecase often feels like the exact opposite paradigm of the
         | modern milieu.
         | 
         | Or maybe I'm just entering my "old man yells at cloud" phase of
         | life haha
        
           | igouy wrote:
           | Saga: https://web.archive.org/web/20130612055149/http://www.m
           | ojowi...
        
           | mwnorman2 wrote:
           | Well, I DID live through that era and I AM the 'old-man-
           | yelling-at-clouds' ;-) and the main issue was that getting
           | Smalltalk developers was a HUGE headache. I worked for a
           | Telecom company (Canada's largest, rhymes with 'Ortel') and
           | we needed to develop our own courses - yours truly developed
           | and delivered dozens of hours of training.
           | 
           | This lead to some extraordinary per-diem charges that I knew
           | some folks enjoyed for a while, mostly paid for by the
           | Financial industry. Eventually those on the paying side
           | looked for cheaper alternatives .. and yes, the new-kid-on-
           | the-block Java played a big role, but so did Visual Basic!
        
             | igouy wrote:
             | 'We read and heard many stories about confident and
             | experienced programmers plunging into self-study tutorials,
             | only to give up in frustration after several hours, still
             | wondering, "Where is the application code?" The object
             | paradigm, in which program control is distributed across a
             | set of tightly encapsulated and high-function software
             | objects, was alien to experts in procedural design.
             | 
             | ... to use Smalltalk fluently, a programmer must become
             | familiar with a huge class hierarchy and with the tools of
             | a sophisticated interactive programming environment. New
             | programmers often became lost in the hierarchy or spent
             | considerable time in unfocused exploration of the
             | interactive tools.'
             | 
             | "Making Use: scenario-based design of human-computer
             | interactions", 2000, page 103
             | 
             | https://www.google.com/books/edition/Making_Use/s-0ZuadhBBA
             | C...
        
               | em-bee wrote:
               | doesn't sound much different than studying the class
               | library of any other language.
        
               | igouy wrote:
               | _The past is a foreign country ..._
        
         | shaunxcode wrote:
         | It's comforting to remember that a lot of the research from
         | st/self eg hotspot went into the jvm. So whenever I am writing
         | clojure I feel I am still, in a way, hanging out with all of my
         | (lang) friends.
        
         | igouy wrote:
         | March 7, 1988 -- "Smalltalk/V 286 is available now and costs
         | $199.95, the company said. Registered users of Digitalk's
         | Smalltalk/V can upgrade for $75 until June 1."
         | 
         | https://books.google.com/books?id=CD8EAAAAMBAJ&lpg=PA25&dq=d...
        
           | Qem wrote:
           | Inflation-adjusted, those prices today would correspond to
           | ~$552.2 and ~$207.6
        
             | igouy wrote:
             | Look at other 1988 prices for dev tools.
        
           | whartung wrote:
           | I bought that. (We just don't discuss how much money was
           | spent in the 80's and 90's on hardware, books, software,
           | etc.) I had to drive from the So Cal South Bay up to Sherman
           | Oaks to find a store on Ventura Blvd that had it. It was
           | pretty cool at the time, but, it didn't have very good
           | documentation on getting "your first app" up, so it mostly
           | just sat and lingered.
           | 
           | There was a lot of reliance on the Smalltalk books. While the
           | blue book was common, the green (history) and orange (how the
           | GUI works) were not. I don't even recall stumbling across
           | those at OpAmp back in the day (and if anyone would have had
           | those, they would have). I was very excited about ST back in
           | the day.
           | 
           | All of my forays into ST ended up being a struggle and I
           | never got any real momentum to make progress.
        
             | igouy wrote:
             | Disks and manual were mailed across the pond.
             | 
             | > but, it didn't have very good documentation on getting
             | "your first app" up
             | 
             | I thought the "Smalltalk/V 286 Tutorial and Programming
             | Handbook" [0] was OK for that. (I hadn't seen the ParcPlace
             | books back then.)
             | 
             | [0] http://stephane.ducasse.free.fr/FreeBooks/SmalltalkVTut
             | orial...
        
         | pjmlp wrote:
         | It was perfectly accessible on Windows 3.x days, I learnt
         | Smalltalk with Smalltalk/V.
         | 
         | It was the .NET of OS/2 and getting into enterprise, until Java
         | came to be, and IBM one of the big Smalltalk backers, decided
         | to pivot into Java.
        
       | crystal_revenge wrote:
       | I developed a (personal) Squeak application a few decades ago and
       | to this day it stands out as a novel software development
       | experience that I'm very glad I did. I highly recommend everyone
       | even remotely interested in Smalltalk read the classic "Design
       | Principles Behind Smalltalk" [0]
       | 
       | Perhaps the most immediately shocking feature of Squeak is the
       | "world" which relates to the principle:
       | 
       | > Operating System: An operating system is a collection of things
       | that don't fit into a language. There shouldn't be one.
       | 
       | This means all Squeak programs live in their own, entirely Squeak
       | based, virtual machine. This was, understandably, off putting to
       | many devs since you can't bring any of your local tooling with
       | you, but it had some interesting consequences. For starters, way
       | back in the early 2000s, you could keep your Squeak image on a
       | thumb drive and bring your entire dev environment with you to not
       | only different computers, but different OSes! Then, in the Squeak
       | window system, you could _view the source_ of any arbitrary
       | window or part of the gui.
       | 
       | Squeak, despite the small community, had some really novel
       | software at the time. Monticello was a dvcs that _predated_ git!
       | There were also a proper object graph database, GemStone, that
       | could be used for object persistence that, at least from an
       | interface level, still beats any ORM we have today. There was
       | also a feature that allowed method lookup by putting in the
       | inputs and expected outputs (I still haven 't seen anything like
       | this).
       | 
       | In general learning about the history of Smalltalk interactively
       | really drove home how incredibly novel of a system is was, and
       | still remains in some ways today.
       | 
       | 0.
       | https://www.cs.virginia.edu/~evans/cs655/readings/smalltalk....
        
         | hosh wrote:
         | I am very interested in the combination of Smalltalk and local-
         | first (offline-first) designs, and the ability to share code
         | and data on ad-hoc networks.
         | 
         | I know the One Laptop Per Child project started with Squeak
         | (Scratch) with this in mind, but Scratch has since moved to an
         | always-on Internet and Python for the environment.
         | 
         | I know there is a preoccupation on LLMs and vibe coding ... but
         | just as there is a smallweb movement keeping that torch lit in
         | a sea of enshittification, there is something to be said about
         | a development environment that can be customized by end users.
         | For example, a website/blog authoring tool or RSS feed reader
         | written in Smalltalk would be interesting, if not directly
         | monetizable.
        
         | igouy wrote:
         | > Squeak, despite the small community ...
         | 
         |  _fwiw_ GemStone (and other _commercial_ Smalltalk
         | implementations) preceded Squeak.
        
           | verytrivial wrote:
           | Not quibbling at all, but I recall some discussion somewhere
           | saying that the history of the Squeak impl itself (not the
           | name) traces back via saved base images to the original
           | Smalltalk implementations, including via customs at-rest
           | transformation tools when backwards incompatible changed
           | where made in the primordial days. Base images, at least back
           | when I was toying with Squeak, where never rebuilt from
           | scratch, just modified, transformed etc. In some sense, at
           | least for the image, they were decades old.
        
             | igouy wrote:
             | I've never _implemented_ Squeak or any other Smalltalk.
        
         | znpy wrote:
         | > > Operating System: An operating system is a collection of
         | things that don't fit into a language. There shouldn't be one.
         | 
         | Squeak/Pharo and Smalltalk in general never took off (and it's
         | unlikely they ever will) because of this mindset.
         | 
         | I dabbled a bit with pharo and this mindset became evident
         | pretty much immediately.
         | 
         | The thing is: for many things pharo/squeak are really shitty
         | runtimes (think smp/threading, high-throughput or low-latency
         | i/o, network protocols support etc). But the OS is generally
         | great in that sense.
         | 
         | Smalltalk is nice but it will never get past the "toy language"
         | phase with that attitude.
         | 
         | Also: in terms of object database Versant OODBMS is much better
         | :P
        
           | pjmlp wrote:
           | Smalltalk was taking off, before Java came to be.
        
       ___________________________________________________________________
       (page generated 2025-12-31 23:00 UTC)