Skip to content
0:00 / 0:00

#alankay#oop#smalltalk

Alan Kay at OOPSLA 1997 - The computer revolution hasnt happened yet

Jeff Gonis

233 subscribers • 1 video on Hallway

YouTube
  • Recommended by 8 people: 6 on Hacker News, 1 in engineering communities and 1 curated list.
  • A classic. People kept recommending it from 2014 to 2024.
  • Presented by Alan Kay, pioneer of personal computing and OOP
  • An opinion. It argues one side of a question engineers disagree on.

Beginner. No background in the topic needed.

126K views13 years ago8 recommendations

History and cultureSoftware designObject-oriented designSoftware architectureHistory of computing

Alan Kay discusses the original vision of object-oriented programming, system design, and how modern computing has diverged from those goals.

Alan Kay's seminal 1997 OOPSLA keynote. Originally hosted on Google Video, copies of it are now only available from the squeak.org website as far as I can find. Putting it on youtube is my attempt to preserve a really important talk in computer science and computing in general.

Why it's here

8 people recommend this

What people say. Recommended as a classic talk on the true meaning of object-oriented programming and system design.

Moments people linked to

jgonon Hacker News • Recommends

On “WebKit.js: Pure JavaScript Port of WebKit”

You should check out Alan Kay's OOPSLA keynote "The Compute Revolution Hasn't Happened Yet" at link to this video specifically about 20 mintues in where he says that a browser should be exactly what you say here. On the one hand, he was talking about this almost 20 years ago, on the other hand you're in good company because he's a pretty smart guy! I encourage all developers to watch that talk and do some thinking about the current state of our practice and where we want to go from here.

gambleron Hacker News • Recommends

On “Correctness – A paradigm for sustainable software development”

Most Alan Kay's presentations I've seen were worth watching. Tons of great ideas in each. They really improved how I reason about systems. There is this famous talk from OOPSLA 1997: link to this video If you want to see what "practical" OOP looked like in the 80s, this is a good video: link

awesome-talkscurated list on GitHubRecommends

Under “Software Development”

The Computer Revolution hasn't happend yet by **Alan Kay** (OOPSLA 1997) 1:04:34

e12eon Hacker News • Recommends

On “Restoring Y Combinator's Xerox Alto, day 4: What's running on the system”

I recently (re)discovered Alan Kay's 1997 OOPSLA talk: link to this video For others that have been following his work (and talks), it doesn't really contain much new stuff, but the context of a talk to an audience of programmers brings out some different contexts. He touches on the the fact that they didn't "just" spend extra money to prototype the dynabook in the form of the Alto - but they built 2000 machines - and part of that is of course so they could invite (among others) whole classes of school children to come and play with the tech.

infinite8son Hacker News • Recommends

On “Alan Kay on AI, Apple and Future”

No, compared to the early vision (1950s/60s) of computers as metatools that humans can use to augment their cognition. The current crop of mobile devices (and even most desktop devices) are nowhere nearer to that glorious goal. See his OOPSLA talk "The computer revolution hasn't happened yet" - link to this video

chonglion Hacker News • Recommends

On “460M Indian Internet Users Are Now on IPv6”

…nd more complex, opaque, centralized, and difficult to change. We've given away our future to big tech companies. Heck, we've even given away the past. We've lost much of the freedom we had back in the 90's, let alone the 70's and 80's when Kay did so much of his work. We're going to have to work incredibly hard just to regain what we've lost. 1 link to this video…

mpweiheron Hacker News • Recommends

On “Alan Kay's talk at UCLA – Feb 2024 [video]”

The Computer Revolution hasn't happened yet , OOPSLA 1997 keynote link to this video Others have already mentioned The Early History of Smalltalk , highly recommended. You'll probably want to read it a couple of times, revisit from time to time. The big idea is messaging, or rather "ma" link "The key in making great and growable systems is much more to design how its modules communicate rather than what their internal properties and behaviors should be." "I think I recall also pointing out that it is vitally important not just to have a complete metasystem, but to have fences that help guard the crossing of metaboundaries." " I would say that a system that allowed other metathings to be done in the o…

u/GeorgeneKeckXtroLEXin r/ProgrammingLanguages • Recommends

Video Time Code ROBLOX_OOF.mp3 (Kay's jab at C++)
1View on Reddit

u/Phiwise_in r/ProgrammingLanguages • Mentions

On “Why is Python not considered pure OO according to Wikipedia?”

This is a subtly misleading recollection of the quote from most famous instance of this idea. Here's the video: link to this video Kay is lamenting that the wider programming world had, in C++ and Java, misunderstood Smalltalk as a realization of a style of syntax and standard library, when what makes it special is actually the OO execution model, which could be the foundation of any style of packaging. This is why he goes on in the talk to praise a Lisp book on a metaobject protocol, where everything is lispily written conceptually as functions, as the most advanced object-oriented book at the time, because the Lisp object system and Smalltalk have (close enough to) the same execution model, and so c…
9View on Reddit

u/suhcoRin r/ProgrammingLanguages • Mentions

On “Why shouldn't a windowing system be object oriented?”

> I made up the term 'object-oriented', and I can tell you I didn't have C++ in mind Kay in the next sentence said "the important thing here is that I have many of the same feelings about Smalltalk"; see link to this video > So why do people disrespect his opinion so much by calling C++esque languages "OOP"? It's just an opinion; the actual work was done by Ingalls; Smalltalk-76 and 80 (in contrast to Smalltalk-72) implement inheritance and virtual methods as it was done in Simula67, just like C++ and Java do.
7View on Reddit

u/EdwardCoffinin r/compsci • Mentions

On “Looking for old letter comparing US vs European software engineering/CS practices”

There's also [Alan Kay's rebuttal from OOPSLA '97, "On the fact that most of the software in the world is written on one side of the Atlantic"].
6View on Reddit

PuercoPopon Hacker News • Mentions

On “The Future of Programming in Node.js”

I should just probably say, clearly you haven't seen Common Lisp's defpackage, modules are actually first class objects there and are completely decoupled from the file system. But most importantly as Barbara Liskov mentions in this video1 we don't know what is a module exactly or how to use them yet. Which is an specific statement aligned with Alan Kay's famous "We don't know how to design systems so let's not turn it into a religion yet."2 tl;dr; 1) Innovation is good. 2) Javascript's module is a half assed implementation of Common Lisp's defpackage. (Don't get me wrong is still way better than Python's abhorrent ninja goto: import) 1: link 2: link to this video

aufreak3on Hacker News • Mentions

On “What's wrong with Object-Oriented Programming and Functional Programming”

The Alan Kay reference is from his OOPSLA'97 talk 2, where he says that he's "apologized profusely over the last 20 years for introducing the term 'object oriented'" and suggests that the Japanese notion of "Ma" or "the unseen stuff that goes between objects" as what is important. (edit) 3 is a quote from a communication with Kay in 2003 - "OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things. It can be done in Smalltalk and in LISP. There are possibly other systems in which this is possible, but I'm not aware of them." 2 link to this video (around 38minutes) 3 link

gnipgnipon Hacker News • Mentions

On “Let’s Stop Bashing C”

Alan Kay in his famous OOPSLA talk mentions how the architecture itself leads to these language choices. link to this video He mentions how Xerox PARC machines with tagged architectures from the 80s were only 1/50 the speed of the x86 systems in '97. This, in contrast to the 50000x increase in computing power over the same time frame.

leocon Hacker News • Mentions

On “Qt for WebAssembly”

Isn't progress wonderful? 2010: link Speaking of which, the linked page is no longer up, so here's a Wayback Machine impression: link ... and ofc the Google Video link in my comment link > 1 point by leoc on Jan 16, 2010 | parent | favorite | on: QT on Google Native Client > 1997^H^H^H^H1961 is calling; someone just picked up the rotary phone. link . is now broken too, so here's a link into a YouTube upload: link to this video

timbit42on Hacker News • Mentions

On “The faster you unlearn OOP, the better for you and your software”

The best arguments against OOP, as it is done in most languages today, are made by Alan Kay, the creator of Smalltalk and the term "object-oriented". Alan should have used the term "message passing" so people wouldn't miss this component of Smalltalk that made it so great. "I invented the term object-oriented, and I can tell you that C++ wasn't what I had in mind." - Alan Kay, Source: link to this video