As a side note, and as someone else working in this space, you do yourself a disservice by telling yourself work in this space is stagnant since SmallTalk.
It’s not that programming ergonomics are stagnant, it’s that all of the gains have been made by professionals. And the tooling is nearly impossible to leverage for a beginner environment because all of the assumptions of a pro developer are built in to their design.
The innovations are there, Heroku, Git, CSS, Markdown... these are all triumphs of programming ergonomics. They’re just all inevitably coopted by professional “Foundations” and amended to the maximum level a Pro developer can handle. JavaScript is almost useless for beginners now because the tooling is so complex, but full time front end devs can crank out HTTP packets like no ones business.
So you will need to watch those developments and lean on their ideas and some of the low level tooling if you ever hope to build a beginner environment. But you can’t use the tools themselves.
Still, if you start with SmallTalk you will fail. If Chris Granger and Bret Victor started their and failed, you will fail too, because those guys are rockstars.
You need to take the ideas being tested in the Pro tools and use them, without adopting the Pro implementations or even the interfaces. It’s or easy.
None of those are interesting experiences beyond the command line. They represent exactly the stagnant thinking that we are fighting against. Especially GIT, it could have come out in the 70s with the interface it relies on. It makes me sad that people see this as progress.
It doesn’t take a rockstar to make progress here, and anyways, I’ve been relatively successful on the academic side (e.g. just got a 10 year influential paper award for my 2007 live programming paper). I don’t think Bret Victor failed so much as lost interest, and he accomplished a great deal in getting people interested in this area again. Chris hasn’t really failed either, he is still young. And let’s not forget all the ex-HARCers...
Also, not all of us see this as a make programming more accessible problem; e.g. that’s not my thing, I really want to improve programming en masse. But we all agree the existing way is a dead end and we need to experiment ei5h radically different approaches.
Interesting experiences beyond the command line are game development tools; Each iteration try to make the barrier between artists/content creators and programmers thinner.
Indeed. Also interesting is a look at games themselves, especially those that show a long trajectory from beginner to experienced player with significantly different interaction patterns between the two groups.
It would seem that practically no programmer's tool has ever received the attention to interface detail that is common in the best games.
It took ideas from the 70s, dropped the interesting parts, and was hailed as a revolutionary approach to marking up documents. Ie, the past 30 years of computing have been about narrowing the interface between programmer and computer to the equivalent of a straw (everything as text!) and then try to build an entire system around that.
It’s not that programming ergonomics are stagnant, it’s that all of the gains have been made by professionals. And the tooling is nearly impossible to leverage for a beginner environment because all of the assumptions of a pro developer are built in to their design.
The innovations are there, Heroku, Git, CSS, Markdown... these are all triumphs of programming ergonomics. They’re just all inevitably coopted by professional “Foundations” and amended to the maximum level a Pro developer can handle. JavaScript is almost useless for beginners now because the tooling is so complex, but full time front end devs can crank out HTTP packets like no ones business.
So you will need to watch those developments and lean on their ideas and some of the low level tooling if you ever hope to build a beginner environment. But you can’t use the tools themselves.
Still, if you start with SmallTalk you will fail. If Chris Granger and Bret Victor started their and failed, you will fail too, because those guys are rockstars.
You need to take the ideas being tested in the Pro tools and use them, without adopting the Pro implementations or even the interfaces. It’s or easy.