Hacker News new | past | comments | ask | show | jobs | submit login
Notes by Andy Hertzfeld on Alan Kay's talk at Creative Think seminar, July 1982 (folklore.org)
135 points by tosh 17 days ago | hide | past | favorite | 29 comments

> Systems programmers are high priests of a low cult

Ouch :p

Part of the issue is that "systems" are no longer designed holistically [1], and instead follow Conway's Law [2], which leads subcomponents to be designed in isolation and then combined as best as possible.

Systems programmers build the foundation of a software platform, without a clear vision of the end goal. They focus on the intricate details of the platform, but pay little attention to how this fits in the final product.

[1] maybe only at Apple, inheritors of Kay's approach?

[2] https://en.wikipedia.org/wiki/Conway%27s_law

> Part of the issue is that "systems" are no longer designed holistically

The "high priests" line is a Bob Barton quote, which I believe probably dates back to the mid-sixties.

Thanks! I did not know that. Do you know what he meant in context?

I'm not comfortable offering some kind of deep interpretation of my own, but it's been mentioned jokingly by James Mickens and jokingly but seriously by Alan Kay, whose speeches are all worth watching. I thought it was interesting, based on Hertzfeld's notes, that Kay has been quoting Barton on this for such a long time.

""" Magnetic Fields: Find a central metaphor that's so good that everything aligns to it. Design meetings are no longer necessary, it designs itself. The metaphor should be crisp and fun. """

this might not always be possible but if you can reveal a powerful, clear metaphor (& oh my are good metaphors tricky to come by!) the resulting alignment is truly liberating.

"People who are serious about software should make their own hardware." Classic and true.

Charles "Chuck" Moore of Forth fame does this. Uses his own CAD software to create his own chips which then run a Forth purpose built to run on that chip.

"Turn up your nose at good ideas. You must work on great ideas, not good ones" - I admire Alan Kay deeply and love reading his writings and philosophy. I respect how he inspired the early generations to do incredible things - but for me personally he is a warning to not be hung up on 'great' ideas. He was ahead of his time in the 70s, but the world flew by. Even today he dwells on dynabooks, smalltalk, etc in his lectures - all innovative ideas for its time... but they never evolved and don't translate well in today's world (see One Laptop per Child)

Ideas can have a long gestation period. Neural networks were invented before even the 1950s. I read about them as a child of the 1970s as "learning machine". They only became a smash success in the last 10-12 years.

Of course, even if someone knows they have a great idea and is willing to wait for it to flower, there's certainty that will happen in their lifetime.

He keeps talking about them because they're important visions that society badly needs. The vision behind the Dynabook, that of a true personal dynamic medium, has still not been realized.

>He was ahead of his time in the 70s, but the world flew by. Even today he dwells on dynabooks, smalltalk, etc in his lectures - all innovative ideas for its time... but they never evolved and don't translate well in today's world (see One Laptop per Child)

Part of why the world "flew by" is because those ideas existed and informed what came next. And even today what he have falls short of many of those ideas (most modern dynamic languages are worse than Smalltalk in many if not most aspects for example, except adoption).

So what is wrong with "One Laptop per Child" ?

There's lots of different takes on why it failed, you can search 'olpc criticisms' on google and you'll find many articles with endless takes. To me they had many 'great' and inspiring design ideas that were completely out of touch with reality. For example, trying to put a handcrank on a laptop and the completely unfamiliar UI.

It was also because MS and Intel sabotaged it. OLPC probably would have never worked anyway but the actions taken by the two companies left a very sour taste for me. Also, the “right-click any program in order to see its source-code” was an idea many generations ahead of its time, one that I’m afraid we won’t ever get to see, actually.

Partly due to Alan Kay's STEPS project failure to release meaningful code sources, you're right.. Frank ( https://www.vpri.org/pdf/tr2012001_steps.pdf ) would have had A LOT of interested developer/user if they had released the code.

It is not easy to find and even harder to actually use, but here are the sources:


I also was sent a frank.image that runs on Squeak and uses these files but don't know where that can be found.

Thanks for the link! If you're able to find the image I'm interested, please PM me.

The aftermath of the STEPS project and its code is discussed in this thread by one of the STEPS authors/developers and others:


This HN post has links to many of the STEPS artifacts and their successors:


Was there any recordings of Alan Kay’s talk that day? Love to read these notes and hear the talk side-by-side.

Alan Kay has given some really interesting talks.

I think these are the ones I saw:



Twenty-five years before social media became mainstream, this observation seems so prophetic:

Sharing is important - we're all communication junkies

> The whole notion of 'programming language' is wrong.

Anyone know what Alan Kay meant by this or have a pointer to an expansion?

Alan Kay is a proponent for the notion of pervasive use of objects that work by sending and receiving messages, which leads to things like Smalltalk famously having no "if" statements. The attitude is pretty similar to the one that Lisp folks have. It's possible that Hertzfeld had a different takeaway than what Kay meant, but it's not clear.

In case it wasn't clear, Smalltalk does have if statements. They just aren't special keywords like in most other languages; instead, they are methods of the True/False classes.

The way it is implemented (hopefully) opens up the mind to how OO actually can work, but in practise, when you use if-else in Smalltalk, it's pretty much the same as in other languages.

I think a lot of the bullet points in that summary can be sussed from reading Kay's own Early History of Smalltalk: http://worrydream.com/EarlyHistoryOfSmalltalk/

I think the idea was that the OS, programming language, etc should all meld into a cohesive UI that would range from mouse manipulations for the simplest messages to keyboard input for finer communication (and whatever other hardware we come up with later), and a gradual learning curve that everyone (including kids) could mature along.

Some aspects of this are elaborated in "Design principles behind Smalltalk": https://www.cs.virginia.edu/~evans/cs655/readings/smalltalk....

People shouldn't need to learn a language and its paradigms to tell a computer what to do.

I suspect that the idea is that you shouldn't need a programming language to interact with a computer. I think that fits with the other comment about the computer becoming part of the environment.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact