6 HN users recommended this talk5 months2013–2025score 6
Years with an HN recommendation, 2007–2026
Treated as a foundational talk, cited constantly for Kay's views on object-oriented programming and for rethinking software practice.
Alan Kay's 1997 OOPSLA keynote, preserved on YouTube after being lost from Google Video. He discusses what object orientation was meant to be, messaging, system design, and the state of computing practice.
“I encourage all developers to watch that talk and do some thinking about the current state of our practice” (HN, 2014)
You should check out Alan Kay's OOPSLA keynote "The Compute Revolution Hasn't Happened Yet" at [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.
Kay's keynote on what a browser should be and the state of practice
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: [this video] If you want to see what "practical" OOP looked like in the 80s, this is a good video: [link]
Famous Kay talk full of great ideas about reasoning about systems
I recently (re)discovered Alan Kay's 1997 OOPSLA talk: [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.
Kay's talk to programmers on Alto, Dynabook and children using the tech
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" - [this video]
Kay on computers as metatools augmenting cognition, unlike today's devices
operating systems which are totally transparent and easily understood by their users I sort of glossed over this part so now I have a chance to elaborate. Alan Kay has put a ton of thought into this issue [1]. He firmly believes that we can build an operating system and application software with an extremely small footprint (LOC's) so that a single person can understand the whole thing. Since he gave that talk, we've moved further and further away from Kay's vision. We've made things more and 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] [this video]
Kay's vision of small, understandable systems a single person can grasp
The Computer Revolution hasn't happened yet , OOPSLA 1997 keynote [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 ordinary course of programming (like changing what inheritance means, or what is an instance) is a bad design. (I believe that systems should allow these things, but the design should be such that there are clear fences that have to be crossed when serious extensions are made.)" "I would suggest that more progress could be made if the smart and talented Squeak list would think more about what the next step in metaprogramming should be -- how can we get great power, parsimony, AND security of meaning?"
Kay's keynote on messaging and system design, listed among key readings
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 video[1] 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]: [this video]
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] [this video] (around 38minutes) [3] [link]
Kay apologizes for the term object oriented and points to Ma
Alan Kay in his famous OOPSLA talk mentions how the architecture itself leads to these language choices. [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.
Kay on architecture driving language choices and hardware speed versus power gains
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: [this video]
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: [this video]
Kay says C++ wasn't what he had in mind by object-oriented
From his talk on OOPSLA[1], I'd say that only Smalltalk and Common Lisp (through CLOS) were able to perform OO as Kay envisioned. Erlang is another story: it would probably be better to call it just actor model. But again, Kay himself says[2] that there is not a lot of difference between actor model and his OOP. [1] [this video] [2] [link]
Kay is said to have coined the term "object-oriented", but his conception of object orientation differs considerably from that of Dahl and Nygaard as well as from all current OO languages. Dahl and Nygaard invented the first object-oriented programming language (Simula 67) but didn't use the term. And yes, active objects reacting to messages (events) passed to them were already part of Simula I (1962). The referenced article - like many others - moreover quotes Kay incompletely; Kay in the sentence next to the one quoted in the article said " the important thing here is that I have many of the same feelings about Smalltalk "; see [this video] . Smalltalk-76 and 80 (in contrast to Smalltalk-72) implement inheritance and virtual methods as it was done in Simula 67, just like C++ and Java do.
> Alan Kay’s 97 OOPSLA keynote Is it this one? [this video] Edit: I suspect it is this one, at 10:33 Alan says "Actually I made up the term <<object-oriented>>, and I can tell you I did not have C++ in mind."
Identifies the keynote where Kay says he didn't have C++ in mind
The Art of metaobject protocol In his 1997 talk at OOPSLA, Alan Kay called it "the best book anybody's written in ten years", and contended that it contained "some of the most profound insights, and the most practical insights about OOP", but was dismayed that it was written in a highly Lisp-centric and CLOS-specific fashion, calling it "a hard book for most people to read; if you don't know the Lisp culture, it's very hard to read" [2] [1] [link] [2] [this video]
Kay praises the Art of the Metaobject Protocol as profound and practical
"I really would like you to contrast that with what you have to do with HTML on the Internet. Think about it. HTML on the Internet has gone back to the dark ages because it presupposes that there should be a browser that should understand its formats. This has to be one of the worst ideas since MS-DOS." -- [this video]
Kay's criticism of HTML presupposing a browser that understands formats
This is an extremely difficult question that I've been grappling with myself. My first strategy is to create writings that can't be summarized. I try to make essays that are dripping with idiosyncrasy. I can't win in an information war, but I can stay competitive for ~10 years in a creative clash: [1] [link] [2] [link] [3] [link] [4] [link] [5] [link] I myself draw lots of my inspiration from my "sages of style", in the same way that AIs will try to replicate my voice. None of these great thinkers can be summarized or replicated in any meaningful way: [6] David Foster Wallace: [link] [7] George Carlin: [link] [8] Derek Sivers: [link] [9] John Green: [link] [10] Roman Mars: [link] [11] Alan Kay: [this video] [12] Alan Watts: [link] [13] Richard Feynman: [link] [14] Raymond Smullyan: [link] But style only takes you so far. My second strategy is to socialize IRL. This year, I'm starting a tech conference called "Outland" to foster community in an age where community might be all that matters. [15] [link]
For people who want to learn biochemsistry and subsequently be in awe and the complexity and mechanisms, there's a great beginner book, The Machinery of Life. [link] I found my way there after an Alan Kay video -- OPSLA 1997 - The computer revolution hasnt happened yet: [this video] On the subject of awe, here's another from Kurszsegat - The Most Complex Language in the World: [link]
I would agree with that if there were no distinction between clients and servers. i.e. agents and LLMs are resources that should be discovered and exploited in the same exact way as anything else, and switchable in the same ways. The whole thing reminds me of stuff like Alan Kay's legendary OOPSLA talk in 1997 ( [this video] ) "Every object should have an IP" (Also "Arrogance in computer science is measured in nano Dijkstras").
Video list and Hacker News comment labels from HackerTube (prompted by @karpathy), released under ODC-By 1.0, built on the open-index/hacker-news archive. Hacker News data is provided by Y Combinator; comments remain the work of their authors. Video titles, channel names and thumbnails belong to their creators and are shown via YouTube. HackerTube Watch is an unofficial edition. Data export of 2026-10-31.
20 Hacker News comments
From the HN archive; up to 20 kept per video, favoring different commenters. Recommendations first.
Read more
Read more
Citations, criticism and jokes
Read more
Read more
Read more
Read more