Another masterpiece from Bret Victor: The Future of Programming.
What you probably don’t know is that his talk was actually an hour long. The second half was censored from the internet by an as yet unexplained mechanism. Luckily his talk was written on sheets of cellulose which survived the digital attack. I have seen these slides and can exclusively reveal their contents.
He seemed to end with the observation that “the most dangerous thought you can have as a creative person is to think you know what you are doing.” But actually he continued:
On the other hand, the most dangerous thought you can have as a hacker is to doubt that you know what you are doing. Expertise, especially wizard-level expertise, comes only from unquestioningly accepting all the technical decisions that are out of your control (i.e. 99.99% of them) and happily cluging around them. In so doing you can demonstrate how smart you are, which is the most important thing for a hacker. Artists know that self-aggrandizing technique is a lie, and they strive valiantly for the simple truth. But true hackers instinctively avoid simplicity, for it masks their brilliance. This explains why programming has not progressed since 1973: the culture of programming itself.
Let me tell you some more about the Golden Age of programming. I didn’t mention COBOL before, because we all want to forget it. It was designed to let stupid business people write stupid business programs that produced stupid reports and updated stupid files on stupid tapes. It tried to use normal English so normal people could use it! It had sophisticated file I/O and report-formatting features unrivalled for decades. It had multiple-character variable names! Luckily we quickly suppressed that pernicious idea in Fortran. Everyone knows that mathematicians use single-character variables. This was one of the first examples of a time-tested principle that has served us well: a great way to make programming as hard as possible is to make it more like mathematics. Even to this day we are still at it, infiltrating Category Theory into programming.
I also talked about parsing with SNOBOL and regular expressions. Another big win for hackers. SNOBOL had a wonderfully easy to use language for parsing strings. Luckily Ken Thompson, one of our hacker gods, stepped in to kill it with regular expressions. Again math was the key: it was based on a solid mathematical theory. Who needs fripperies like symbolic variables or subroutines when you have math! You can count patterns in the code and use numbers instead of variables. And you can just copy and paste and edit instead of using subroutines. The language was designed to minimize keystrokes, so you can use it as a super-obscure command-line language! Regular expressions have been one of the most successful ways we have stopped normal people from infiltrating the elite corps of hackers. And it was so close to not happening! SNOBOL was already there at Bell Labs with Ken and so obviously superior in every way that only a god like Ken could have stepped in and killed it.
I could tell you more stories from the Golden Age: Spreadsheets, HyperCard, Delphi, Visual Basic. These were all enormous successes, allowing normal people to get shit done. They are despised by all true hackers. Because normal people can use them to get shit done. That is our greatest fear.
Future progress is our greatest enemy. You say you want progress? You want orders of magnitude improvements? Well to get that you are going to have to throw stuff away. Lots of stuff. Like all of it. Billions of dollars in technology investment written off. Entire careers of accumulated expertise made obsolete. Normal humans could build simple internet applications without 5 years programming experience. Brilliant hackers would only be needed for systems-level programming and supersizing apps, and there is a lot less of that. Instead of getting rich by seducing humans into clicking and swiping we might have to do things that actually delivered lasting value to peoples’ lives or the economy. Progress would ruin the startup gravy train, so it isn’t going to happen if anyone in the industry has anything to say about it.
Beware complacency! It may look easy for our entrenched hackocracy to sabotage all progress. But the future has a habit of sneaking up on you when you least expect it. As always, disruption will come from our blindspot. From amateurs and children playing with toys, untainted by the sin of knowledge. Perhaps aided and abetted by a few turncoat hackers rejecting the dark side of super-intelligence. We must be ever vigilant to uncover and suppress such traitors. Good hunting!
So there it is. Wow. Pretty heavy stuff, and not at all like Bret. In his defense, I can personally attest that thinking too much about the last 40 years of programming can lead one to depression and anger. So let’s all cut him some slack.