> 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?
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.
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).
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.
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 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.
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.
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