Site icon Tom Merritt .com

About Smalltalk

KALM-150x150"

The way you interact with computers was probably shaped by a small team working at Xerox in the 1970s. Tom explains the history of Smalltalk.

Featuring Tom Merritt.

MP3

Please SUBSCRIBE HERE.

A special thanks to all our supporters–without you, none of this would be possible. Become a supporter at the Know A Little More Patreon page for exclusive content and ad-free episodes.

Thanks to Kevin MacLeod of Incompetech.com for the theme music.

Thanks to Garrett Weinzierl for the logo!

Thanks to our mods, Kylde, Jack_Shid, KAPT_Kipper, and scottierowland on the subreddit

Send us email to feedback@dailytechnewsshow.com

Episode transcript:

“On January 24, Apple Computer will introduce Macintosh. And you’ll see why 1984 won’t be like 1984.”

Apple aired its famous 1984 Macintosh commercial during the Super Bowl on January 22, 1984. It’s famous. When you think about it, you probably think of the woman throwing the sledgehammer and maybe the big vaguely Bill Gates-looking talking head.

“Introducing Macintosh. It does all the things you would expect a business computer to do. It does a lot of things you wouldn’t expect a business computer to do… of course to do all this, you will have to learn to do this.”

A lesser-known follow-up commercial sheds more light on why the Macintosh was a success and is still around today. It shows a screen full of visual icons and a single finger pressing the button on a mouse, implying the only thing you need to learn to use it is how to click.

That magical graphical user interface on the Macintosh was directly inspired by the GUI on the Xerox Alto. And the GUI on the Xerox Alto was made possible by a programming language called Smalltalk.

And if one of the inventors of Smalltalk had her way, Steve Jobs would never have got his hands on it.

Let’s help you know a little more about Smalltalk.

Adele Goldberg was pursuing her PhD in information science at Stanford University when she met Xerox employee John Shoch. They bonded over Shoch’s description of his friend Alan Kay’s plans for something he called the Dynabook, a computer designed for children’s education that would be easy-to-use and portable.

Goldberg was passionate about expanding education outside the classroom. She wanted to make computing easy for people to take advantage of. Shoch introduced her to Kay, who was working at Xerox’s Palo Alto Research Center, Xerox PARC. It was a freer place for engineers and scientists to research ideas without the stifling oversight of Xerox’s west coast executives.

Goldberg was pregnant in 1973 and had no experience outside her degree work, but Alan Kay recognized a kindred spirit. He wanted the Dynabook to transform education for children and adults. Kay recognized Goldberg’s talent and her passion and offered her a job. She took it. She helped develop the modern GUI while nursing her infant at the office, her colleagues helping soothe the infant so she could work.

The software part of Kay’s vision for the Dynabook was a programming environment called Smalltalk, which they developed to run on the Xerox Alto.

Kay wrote the first version, Smalltalk-71, on a bet.

You see, the first object-oriented programming language is generally credited to Simula, developed in the 1960s at the Norwegian Computing Center in Oslo. But Smalltalk introduced the term object-oriented programming.

The early days at Xerox PARC involved lots of engineers and scientists challenging each other to do things most people thought were impossible. Kay had bet he could create an object-oriented programming language inspired by Simula but only needed a page of code. It took him two mornings, but he did it.

The Smalltalk team was Goldberg, Kay, Dan Ingalls, Diana Merry, Scott Wallace, and Ted Kaehler.

Goldberg brought in children of her colleagues to try out Smalltalk’s modeling environment and eventually brought it to local schools.

This was all part of the process Kay encouraged of keeping a beginner’s mind to make it easy to use. He wanted computer environments to be as easy and intuitive as playing with clay is for children. Ingalls recalled Kay would make them play musical instruments like ukuleles to remind them what it’s like to be new at something.

It had some problems and took some revisions, but by Smalltalk-76, the team had a solid version. If you’re familiar with object-oriented programming languages like Python, Ruby, and Java, you’ll recognize a lot of the parts of Smalltalk-76, like class library code browser/editor etc. It pioneered the virtual machine and just-in-time compilation of code, the modern Integrated Development Environment, as well as test-driven development and agile methodology and much more. Simula was first, but Smalltalk crystallized what OOP should look like.

By Smalltalk-80, the team had implemented a graphical user interface. They used the desktop metaphor of paper folders, sticky notes, and garbage bins to represent the file structure of the machine. It had overlapping resizable windows thanks to Diana Merry’s code, which let you see multiple items at once and even have multiple desktops. Dropdown menus let you choose commands instead of typing them into the command line. They used Doug Engelbart’s mouse to interact with the windows intuitively without having to know the command line interface.

Don’t forget the goal of Smalltalk for Kay was to run it on his portable kids’ computer, the Dynabook. Kay and Goldberg co-wrote an article for Computer magazine in 1977 called “Personal Dynamic Media,” laying out the vision for the Dynabook. But the Dynabook didn’t get built, and Smalltalk continued to power the Alto.

In December 1979, Steve Jobs visited Xerox PARC. You may have heard a version of this story where Jobs is shown the Crown Jewels of GUIs and the mouse and runs back to Apple to steal all of Xerox’s ideas.

That’s not exactly how it happened. Apple never stole anything from Xerox. It licensed what it needed to and developed a lot on its own. Blame Xerox if it didn’t value its IP better. But don’t blame Adele Goldberg. She tried to stop them.

The way Goldberg tells it, Steve Jobs was so struck by the graphical user interface that he demanded that his entire programming team be given a demo of the Smalltalk system, specifically by Goldberg.

“I said no way. I had a big argument with these Xerox executives, telling them that they were about to give away the kitchen sink, and I said that I would only do it if I were ordered to do it because then, of course, it would be their responsibility, and that’s what they did.” That’s what she told PBS in Triumph of the Nerds Part 3.

Another legendary story from that demo is that Jobs was criticizing how scrolling went line by line. Smalltalk let you modify code while it was running, aka hot swapping. Much to Jobs’ surprise, Ingalls rewrote the scrolling code in a minute and implemented smooth scrolling right in front of Jobs’ eyes. Ingalls would later work at Apple.

Smalltalk-80 was the first version made available outside of Xerox PARC. Xerox wanted help with debugging and general review, so they shared it with DEC, HP, Tektronix, and of course, Apple. Those companies got the rights to unrestricted redistribution through any system they built. Like the Apple Lisa. Or eventually, the Mac.

Byte magazine devoted its entire August 1981 issue to Smalltalk-80.

Smalltalk-80 became the basis for all future versions of Smalltalk. Version 2 was made available to the general public in 1983.

Smalltalk continued to develop beyond the Mac, of course. ANSI Smalltalk was certified in 1998. An open-source implementation called Squeak, developed by Alan Kay in December 1995, was derived from Version 1 of Smalltalk-80 via Apple Smalltalk. And VisualWorks was derived from Version 2.

Smalltalk is still in active development and has several major implementations, including the open-source GNU Smalltalk. It took second place for “most loved programming language” in the Stack Overflow Developer Survey in 2017.

And what about Kay and Goldberg?

Kay left Xerox to be chief scientist at Atari from 1981 to 1984. And in 1984, while his work was powering the brand new Macintosh computer, he became an Apple Fellow. In 1997, he joined Disney Imagineering as a Fellow, and in 2001, he founded Viewpoints Research Institute, a nonprofit dedicated to children’s learning. He was a fellow at HP from 2002 until 2005 and taught at UCLA, Kyoto University, and MIT.

And he continues to dream of the Dynabook. Kay worked on the One Laptop Per Child project, which used Smalltalk, but he continues to expand the concept of what the Dynabook could do. In a detailed discussion on Quora in 2019, he wrote, “Don’t confuse the Dynabook idea with the physical resemblance to the iPad. The latter has thousands of times the capacity of what I had in mind, but its conception is thousands of times more meager. Today, the goals for this should be much larger than those I had more than 50 years ago.”

Kay also had a career as a professional jazz guitarist and amateur pipe organist.

As for Goldberg, she stayed at PARC championing Smalltalk and object-oriented programming. She served as President of the Association for Computing Machinery from 1984-1986. She left PARC finally in 1988 to cofound ParcPlace Systems to develop Smalltalk-based apps. She was Chair and CEO until its merger with Digitalk in 1995. She cofounded an internet support provider called Neometron in 1999, consulted at other companies including Bullitics, and helped create computer science courses at community colleges around the world.

And Smalltalk continues to influence the world with regular conferences for Smalltalk developers, like Smalltalk 2023, which was held in Argentina in November 2023.

So every time you open a folder, I hope you’ll think about it.

In other words, I hope you know a little more about Smalltalk.

Exit mobile version