Alan Kay, 2015: Power of Simplicity
Kenneth Friedman6 HN recommenders · 2015–2025
145K views · talk · evergreen · Uploaded 2015-08-10
Alan Kay's 2015 talk on the power of simplicity, arguing that systems become simpler by building on more sophisticated fundamental building blocks and that big research horizons drove invention at Xerox PARC. It ranges across computing, tools and scaling software.
HN repeatedly cites it as a thought-provoking talk on reducing software complexity and on the state of computing research.
28:03AT&T Archives: Similiarities of Wave Behavior (Bonus Edition)
AT&T Tech Channel
38:47RailsConf 2014 - All the Little Things by Sandi Metz
Confreaks
1:01:39"Simple Made Easy" - Rich Hickey (2011)
Strange Loop Conference
1:24:13Micro Men - 720p (2009)
gimpymoo
25:06"Making Impossible States Impossible" by Richard Feldman
elm-conf
1:00:43Jim Simons (full length interview) - Numberphile
Numberphile2
1:21:22Light Years Ahead | The 1969 Apollo Guidance Computer
TNMoC
14:34Steve Jobs Stanford Commencement Speech 2005
JoshuaG
19 comments from Hacker News
Check this video running in another thread. This a known Alan Kay talk, he did it already a few times. [VIDEO] As an example of the type of research being done, you must be willing to build something that will be considered commodity in 15 years time at today's price. You won't get there with basic income.
Completely unrelated: Alan Kay - the power of simplicity [VIDEO] Easily over of the most thought provoking presentations I have seen recently.
Alan Kay has a more generalized idea about building up abstractions that I like better. I think he mentioned it in this video [VIDEO] I, like many in this thread, think that good people are more important than a particular programming language.
I'm not Alan, but I saw one of his talks[1] about how they did invent all those things we're using now, which you are very much referring to. What he said was important was to have a big horizon, at least 10 years. Anything less would not do. Then envision what should be possible in that time. "It would be ridiculous if $X wasn't possible in $Y years" and then backtrack on what would technically be required to make that happen. Rinse repeat. He said that with good company support and a good team, you often found yourself delivering at half that time none the less (but again, you should never constrain yourself to that little, or else you will stress towards performing, instead of thinking properly about the problems needing to be solved). Alan: Hope I didn't butcher your message too much :) [1] I think it might be this one, but I honestly haven't checked. See it anyway. It's a good talk. [VIDEO]
well, in this talk it sounds like you do advocate tool building - isn't tool building a way to try elliptic orbits instead of the circular ones ? [VIDEO] 'Power of simplicity'
I've seen him give this great talk before, but IMO the delivery this time feels rushed and a bit disjointed. That said, the last few minutes summarize his powerful "Gretzky Game" idea so succinctly that they're worth the price of admission alone. I would recommend watching the last 18 seconds of this version (starting at [LINK] ), internalizing the Gretzky Game slide on the screen, backing it up and watching the fuller explanation in the preceding ~3 minutes (starting at 54:18, [LINK] ), and then finally watching a different, more expansive version of the talk like this one, given at Qualcomm: [VIDEO] . Oddly specific advice, I know, but hopefully helpful to somebody.
Now this right here [VIDEO] is the problem: if you follow the idea of computers as virtualisers where it leads you do not , in the general case, end up with the flat backplane talked about from 23:15 and shown in the accompanying slide. (Actually, this is in turn probably just a symptom of another, more general problem.)
Having watched nearly every talk/interview of Kay I could find on YouTube (which includes the OOPSLA keynote) and having read some of his writings I think I have a reasonably good understanding of what he is advocating for. Here is Kay talking about Internet's resilience in a bit more detail: [VIDEO] >His position is strongly aligned with the "mechanism, not policy" philosophy. I don't see how this opposes or contradicts any of what I wrote above.
Bret Victor - Inventing on principle [LINK] Alan Kay - Power of Simplicity [VIDEO] Steve Jobs - Marketing (unveiling Think Different) [LINK] Robert Cialdini - On Influence [LINK] Peter Thiel - On Zero to One (Notes on Starts Ups or How to Build the Future) [LINK] Naval Ravikant on Reading, Happiness, Systems for Decision Making, Habits, Honesty and More (Farnam Street podcast) [LINK] Josh Wolfe - On "This is who you are up against" podcast [LINK] Richard Feynman - Fun to Imagine [LINK] Paul Graham - Startup school (2008) [LINK] James Burke - Connections (BBC documentary) <No link> Jim Al-Khalili tells the story of the Atom (BBC) [LINK] Elon Musk's 2003 Stanford University Entrepreneurial Thought Leaders Lecture [LINK] Ken Robinson - Do schools kill creativity? [LINK] Paul Stamets on mycology, bioremediation and fungi- Joe Rogan Experience [LINK]
Reposting my comment from discussion [LINK] with a fixed YouTube link: > Now this right here [VIDEO] is the problem: if you follow the idea of computers as virtualisers where it leads you do not , in the general case, end up with the flat backplane talked about from 23:15 and shown in the accompanying slide. (Actually, this is in turn probably just a symptom of another, more general problem.)
> “What [the computer field] needs first is a William of Occam, who said “Entities should not be multiplied unnecessarily.” The idea that it is worth while to put considerable effort into eliminating complexity and establishing the simple had a lot to do with the rise of modern science and mathematics, particularly from the standpoint of creating new aesthetics... The tricky thing is he argues for “sophistication” here[0], which on the surface seems antithetical. Picking (and committing-to) a (correct) abstraction can be tricky. Also, these “axioms” are often made true by useless qualifiers like “unnecessary” complexity, or even “complexity”. If it’s required , it’s not “complexity”, but a necessary implementation detail. Pick in good faith, keep a loose grip, have fun. [0] [VIDEO]
Not sure which generation you're in and which generation you'd (relatively) consider Alan Key in, but here is a much more principled approach to what the OP is trying to do: [VIDEO] The TLDW is that Kay thinks we haven't discovered all the fundamental rules of computing, a la Maxwells Equations for physics. If you are able to figure these out, you can substantially cut down your accidental complexity. FWIW, my unscientific view is that achieving simplicity is really hard and doesn't scale people-wise. Instead of C99 without a bunch of stuff, I'd probably use Scheme to create very dense (lots of bespoke abstractions and idioms) but simple software. That approach works reasonably well, but try onboarding a new developer!
On the other hand Alan Kay has made powerful arguments that systems can be made much simpler if only their building blocks were slightly less simple! It's a tough question. [VIDEO]
You’d probably like Bret Victor’s inventing on principle talk: [LINK] He demonstrates some good examples. I’m not quite sure it’s what you mean by visual, but it seems obviously valuable and tools that enabled some of what he shows would be really useful. I’m not sure why we don’t have these things - I think Alan Kay would say it’s because we stopped doing real research to improve what our tools can be. We’re just relying on old paradigms (I just watched this earlier today: [VIDEO] )
Do you think that software should be architected as autonomous agents for it to scale infinitely? I watched an Alan Kay video [1] some time back. In the video, he had an argument about how software systems cannot scale unless the basis is the most complex "computation" system that we know -- that system being our own biological system. [1]: [VIDEO]
Highly recommend his talk on the power of simplicity. This was one of those lightbulb moments for me when I was a younger programmer: [VIDEO]
Xerox made a ROI of 20000% on the laser printer alone [1]. A better version lecture Alan did for Ycombinator startups [2] but doesn't focus on the return of investment. Xerox did shrink a bit since then. [1] [VIDEO] [2] [LINK]
Yes. A relevant quote from Alan Kay in his talk “the power of simplicity”: > one of the things that's worked the best the last three, or four hundred years, is you get simplicity by finding a slightly more sophisticated building block to build your theories out of. its when you go for a simple building block that anybody understand through common sense, that is when you start screwing yourself right and left, because it just might not be able to ramify through the degrees of freedom and scaling you have to go through, and it's this inability to fix the building blocks that is one of the largest problems that computing has today in large organizations. people just won't do it [VIDEO]
In his "Power of Simplicity"[1] talk, Alan Kay had a great illustration of this specific phenomenon using astronomy: Before Johannes Kepler had the insight of describing the orbits of the planets with ellipsis, peoples were using the (conceptually simpler) circles which didn't completely match the observed movement of celestial body such as Mars, thus resulted in complicated circle-within-circles orbits to try to model reality. By introducing a more complex basic shape (ellipsis instead of circle) which happened to match the underlying reality more, the overall description of orbits got greatly simplified. It's a phenomenon I've seen a few time in my career so far: that while often there's complex code because there are actually complex hedge case to handle (essential complexity), sometime it's really because the data structure used to model the thing you're handling is slightly missing the mark, making things fit almost-but-not-quite, and many operation done around to handle data can be greatly simplified (if not avoided altogether) by changing the underlying data-structure. (Also, Alan Kay apparently did another talk called "Is it really complex, or did we just make it complicated"[2] that seems pertinent to the thread, though I haven't watch it yet) [1] [VIDEO] [2] [LINK]