
Alan Kay - Programming and Scaling
About this video
An Alan Kay talk on programming and scaling, covering theoretical limits of code size, engineering versus tinkering, and biological cells as inspiration for object-oriented design.
Why it appears in the archive
HN fans call it one of Kay's best talks and recommend it for rethinking why programming paradigms have barely changed.
AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.
From the Hacker News discussion
These aren't necessarily my absolute favorite talks, but they're great mind-altering talks a little off the beaten path so I'd like to highlight them: "Writing A Thumb Drive From Scratch" by Travis Goodspeed - [LINK] Excellent talk on the hardware side of security, goes into some really cool theoretical hard disk defense stuff, incredibly insightful and introduces a hardware security tech toy so fun you'll want to go out and order it the moment you're done watching. The speaker is entertaining as all heck to boot. "Programming and Scaling" by Alan Kay - [VIDEO] Interesting talk on the theoretical limits of code size and engineering versus tinkering. Also talks a lot about Alan Kay's philosophy of computer science which analogizes systems to biological systems, which are the systems with the largest proven scaling on the planet. "The Mother Of All Demos" by Douglas Engelbart - [LINK] This talk is so prescient you won't believe your eyes. Given in 1968, Douglas demonstrates just about every major computing concept in use today on a modern machine, along with some ones that are still experimental or unevenly distributed such as smooth remote desktop and collaborative editing.
Read original comment ↗This is one of my favorite Alan Kay talks of all time (I think this is the right version, but at the time it wasn't on YouTube)... Programming and Scaling - Alan Kay [VIDEO] There's also one where he discusses anthropology and the human universals, but the title of that talk has escaped me for years. Anyone remember what that one's called?
Read original comment ↗Check out Alan Kay's perspective on this [0]. This talk is excellent and will cue you in on how to go about thinking about the fact that the way we program and view and understand computers, with the exception of recent advances in neural networks/LLMs, has followed largely unchanged for the past 65 or so years. [0] [VIDEO]
Read original comment ↗Reminds me of some Alan Kay talks: [VIDEO] He actually mentions the book that is the source for the first illustration in the article. He also often talks about the speed of molecules and how it's counter-intuitive to the commonplace idea of cell operation. Cell biology was an inspiration for original OOP (which wasn't much like Java/C++ at all). When reading about Covid stuff and immunity, I often think how these mechanism could be imitated in engineering. I definitely believe there are some general principles that we could benefit from without trying to "simulate" biology. Edit: Sorry, same author/illustrator, but different book.
Read original comment ↗Hi Alan, You mentioned Bob Barton's lecture a few times [1], emphasizing the role he played in debunking some of your (and his own) ideas about computing. Could you touch on some dogmas that haven't yet been evoked in this thread or in your videos on YouTube ? Either from the 70's or today. Let me link to Ted Nelson's remarks about the tradition of files/lumps [2] for a start. Bullet-point may not be the ideal form for an answer but feel free to get away with that :) [1] [VIDEO] [2] [LINK]
Read original comment ↗You're all over the place here and your arguments make no sense whatsoever when examined. First, you conflate mass-appeal with some sort of objective "better" criterion which is of course bonkers. To use one of your own examples against you, there are hundreds of thousands of Java monkeys out there that are using glue other people made to tie together rocks to build stonewalls. Which do fail as soon as the weather stops being nice. Security (you should look into Java deserialization bugs), reliability, performance what do they know about any of these things? Second, you conflate late-binding as present in Lisp and Smalltalk with late-binding present in other dynamic languages. The two are not equivalent, a perfect example of the whole is greater than the sum of its parts. Lisp and Smalltalk will never become popular (read my previous comment), but that does not mean that they do not sit on an apex and still have a lot to give. To anyone interested in the "craft of programming", "the Art", there is nothing better period. Here are some references for you, from the masters themselves: [1] [LINK] [2] [VIDEO] [3] [LINK]
Read original comment ↗Hi Josh, You raise some interesting points in your article. I wonder how to comment or discuss this the most efficient way (here or elsewhere?) Some questions: Have you looked at haiku? What you describe as modules, I think Alan Kay calls "objects" in the smalltalk/Xerox tradition. Have you looked at his research project: STEPS reinventing programming? [VIDEO] Some bits and parts of this is open source. Imagine a full system running on 10000 LoC I think this could be a step forward. Also this blurs if not throws away the distinction between "desktop and web(remote)" applications. Because if integration of remote objects is sandboxed but still transparent you get improved usability. Also I think you go not far enough. Databases for file system are fine but I think the ida of widgets or UI libraries altogether is not feasible anymore. The system has to adopt to a individual level, people have different needs and workflows. Highly adoptable and conversational interfaces are needed. WDYT?
Read original comment ↗It's a thing of its own. Used to be called informatics in some countries. Much better name, IMO. There are large parts of computer science that have nothing to do with computers. They're about information and can be applied outside of computers. I'm with Alan Kay when he says "computer science" used to be an aspiration and eventually became a misnomer. Same with software engineering. [VIDEO] (Doesn't mean CS and SE are always "worse" than science and engineering. But they are currently very different.)
Read original comment ↗