I also re-watched Bret Victor’s “The Future of Pro...
# thinking-together
s
I also re-watched Bret Victor’s “The Future of Programming” again yesterday. Seriously, if you’re in this Slack and you haven’t seen it, you must watch it. Immediately. And if you have watched it, but that was a while ago, you should really watch it again. Apart from that this talk is really well done and entertaining, it also provides a great framing for pretty much all the discussions going on here. Let’s make sure we never believe we know what we’re doing! https://vimeo.com/71278954
❤️ 5
b
If only Bret genuinely didn't know what he was doing 🙂 I've always felt that this heroic blog posting from Jonathan Edwards was an excellent chaser for this video: https://alarmingdevelopment.org/?p=797 . I remember being inspired by the video at the time, and it took me rather longer than JE (mere weeks in his case!) to smell the smell.
😐 1
❤️ 1
s
Thanks @Bosmon for sharing @jonathoda's article, which I hadn’t seen before. Ok, I think I get the gist of it, but I’m having a hard time to figure out what the point is you’re trying to make by referencing to it? So hacker culture (btw: what is the definition of that in the context of that article?) prevents us from making progress and as Bret hacked together some demos, which obviously show his “wizard-level skillz“, he's contradicting himself…? Or what is it that you mean by “smell the smell”? Clearly, I’m not smelling it. Please enlighten me!
w
"Artists know that self-aggrandizing technique is a lie." Perhaps the best. Though hacker ego is a problem, systems seem to suck even when people are trying their best to get things done straightforwardly. Even humble cleverness is a curse when your team has the skill to navigate and patch awful, broken systems. Maybe garbage collection ("going to have to throw stuff away") could help. Was tutoring in CS recently. So disappointed to see programming projects right out of the 90s – all the worse of C and UNIX. Sins of the fathers and all that.
b
@Stefan Yeah, it is a bit tough to puzzle out, it took me a few years. The point @jonathoda was making was about what Bret never talks about - what he doesn't talk about is loss. If we are in the mission of democratising programming (or whatever we call it), ultimately we are in the game of transferring power from those who currently have it, towards those who are currently disempowered. What's missing from Bret's narrative is any downside for anyone - it's all rainbows and unicorns and inspiring stuff - which, we have to note, is why Bret is allowed to get away with having such a high profile for a "revolutionary" - because he is actually fundamentally unthreatening to those who currently hold the power (intellectual and corporate elites). Don't get me wrong - he is a smart and well-intentioned guy, and he has God's own reading list, and, if we are taking the mainstream of computer science as a starting point, he is clearly setting out in the right direction. It's just that he is not going to get us where we need to go, because ultimately no transfer of power is going to happen under his watch. We always have to bear in mind that when we are truly confronting power, things are going to get a bit ugly - power is never transferred without a struggle. In practice a lot of the systems we are going to end up building are going to look pretty undesirable to a lot of people who currently carry a lot of respect - if we are doing it right. The point isn't about skills or the lack of them, but about the trajectory of deploying those skills - what does the place we're trying to get to look like?
👍 6
j
@Bosmon says it better than I did
I think I was mostly reacting to Victor’s Arthurian myth of the hacker-kings of yore whose wisdom we have forgotten. That is BS. It is also the kind of self-aggrandizing mythology that has blinded us to the vast inequalities in tech power we have created.
👍 4
s
@jonathoda Thanks for clarifying! Would you mind elaborating in a little more depth what happened from your perspective that prevented significant progress in the last 40 years? I don’t mean this in a condescending way; I’m genuinely interested as my perspective has been primarily influenced by people who look up to Victor, have worked with him, and himself, and I really would love to hear more from someone who seems to be in a position to add a slightly different perspective.
j
@Stefan There is a vast chasm between what we say (gospels of human empowerment) and what we do (entrenching the power of our technocracy). See https://alarmingdevelopment.org/?p=1173
s
Interesting - while I'd seen the video and the blog post earlier, I didn't think of them being incompatible in the least, but felt they're part of the same greater counter culture movement in computing. It seems 'real hackers' - who memorize large APIs in the blink of eye - would look at Victors work as unnecessary, leaky abstractions, maybe just 'toys' for kids that are interesting but can be ignored. But Victor's anti text file position would brush strongly against the real hacker culture. "Programming is hard, deal with it". I didn't see Victor as presenting a past that had great ideas that were lost, but rather as having great spirit and humility that were lost. Perhaps many ideas were not deeply explored and we latched onto some workable but fundamentally weak ideas that we have been working hard at optimizing ever since, while simultaneously solidifying the hacker club? I haven't seen the last 50 years.. I've only worked in the industry for about 20 years - the first 10-12 of which were fully immersed and happily seeking out local optimizations, until the creeping feeling of some deep misalignment got the better of me. My perspective has formed and shifted mainly due to talks and references by Alan Kay. One shift was that 'oh there could be fundamentally different ways to do computing' and the other was 'oh computing is primarily a medium and augmentation for humans' instead of being about programming and controlling machines. The latter is the noble goal, though to be honest I'm drawn selfishly to the former. My day to day pain is having ideas that takes an incredible amount of tedium and ceremony to implement. Another one is being locked out of my own software via the preferences page wall. Yet another is having to read large gobs of text while trying to decipher a high level view. I don't think the deep stack can be papered over with another layer of abstraction here - we'll just have to throw away a lot of stuff. Yes the problem isn't just technical, we want to start with a culture that values humane artifacts. I hope the number of people in our counter culture can grow to a critical mass where we don't need the entire world to flip, but we can be self sustaining.
👍 1
r
A bit of counter perspective to "Victor’s Arthurian myth of the hacker-kings of yore whose wisdom we have forgotten": 1. I've never heard a satisfying explanation as to why it has taken so long to replicate the feature list from "the Mother of all Demos", this is a bit tongue-in-cheek but until that has a satisfying explanation the "hacker-king" title seems appropriate. 2. Much of the history that Bret talks about isn't mainstream knowledge among programmers, I'd be shocked if even a third of the programmers I've worked with had even heard of Engelbart or Kay for example, until their accomplishments are more widely-known I don't think there's any harm in propping them up the way Bret does.
☝️ 1
s
I was confused by the connection @Bosmon was making between Bret’s talk and @jonathoda’s article. I wasn’t sure if that was just meant as commentary or criticism. When @jonathoda chimed in the strong language used made it appear to be criticism rather than just commentary. I feel like I agree with both sides but just can’t understand why there are sides… What I can understand is a feeling of tiredness to have fanboys like myself constantly shoving Bret into the spotlight. The demos he shows off are impressive, but just demos and not available to the public to investigate, learn from, or build on. There are no products. And no significant published research. That would all be valid criticism. I still believe Bret’s contribution of getting most of us here excited about the topic, and inspire many of us to further investigate what the future of programming could and should be, are worth pointing to his talks, who are just of a different kind and much more entertaining than many of the academic or product talks that might demo substantially more important ideas and technologies. One is not better than the other. Both are valuable.
w
@robenkleene both points. With (1), consider how forces push us away from an Engelbart computing substrate. Take WWW hyperlinks for example how much and attention is required just to sustain this minimal level of interoperability.
e
The goals expressed in Bret Victor's demo are laudable. They are inspiring. The fact that he lacks the technical ability to create a product or publish research that would allow someone else to build a working system should be acknowledged. There are many artists/designers in history from Leonardo to DuChamp to Colani who imagine more than they can build at the time. The fact that current development environments are so saddled with unnecessary complexity can and will be rectified.
One thing i am working towards is a concrete set of tests/tasks that can be applied to each new language/system so that we can objectively measure their performance, in the sense of how much further towards the goals do they take us. One of the key goals is interchangeable parts, and another is the issue maintainability. If i take a program and intentionally damage it in some minor way, and then give that program to a new person, how long will it take for that new person to find and fix the problem? Too often we allow people to submit work that only they understand. If real progress is to be made, we have to democratize the software development process, and the priesthood must be dis-empowered.
Once i am elected emperor, i will introduce a fine for anyone inventing and using new gobbledygook terms like "functors" and "monads".
🙃 1
s
Hi @Edward de Jong / Beads Project I don't think the above message is appropriate or conducive to good discussion. Having a position that we need less or zero category theory in programming is reasonable to state, but I find the above form off putting.
e
Any fan of the priesthood, can and should take offense. I am devoting my time remaining on this earth to demolishing the programming priesthood, which encourages obscurity, worships complexity, and has made programming harder than it was 20 years ago. Things are a lot prettier than they used to be in the VB6 and Hypercard era, but they sure aren't easier. I loathe all the frameworks, preprocessors, and complex make tools. I can't wait for one of the upcoming new generation of languages to overturn this worse-than-COBOL era. It is no wonder that ordinary people are taking up Python as it is similar to what BASIC was, a fairly friendly programming language that doesn't seem too hard. The world needs millions of programmers, and we simply must lower the peak frustration levels that a person must endure to complete projects. A lot of people know what needs to be built, but can't build it themselves. that needs to change, so that the needed products can get built quickly. There is tons of creativity all bottled up because the current practices are so tedious and frustrating.
And that was a joke by the way. The last emperor in the west was I believe Napolean, unless you count Emperor Norton of Sausalito.