Recommended Link: Inventing on Principle
by Malte Skarupke
This talk was influental recently but I feel like far more people should follow this advice. The philosophy part is good, but it’s really about the demos.
The biggest disappointment when showing this talk to people is how they immediately say that it’s not applicable to them. When I show this to people in AAA games, the reaction is that it’s not applicable to AAA games because of reasons. I have never heard any good reasons, but I have also failed to convince people. (usually reasons go along the lines that you don’t want to end up with slow code like in the Unity engine, but the reasons why Unity is slow have nothing to do with how good its tools are. You can have good tools and efficient code)
When I write my own programming language all of the features that Bret Victor demoed are a must. It is disappointing that languages like Rust or Jai are not designed to support instant feedback like in his algorithm example. His binary search demo should be the first demo video of any new language. It’s not difficult to get there, you just have to want to do it. It is only difficult to tack the features on later because the ecosystem of the language can easily get in the way if it’s not designed carefully. I assume that the designers of modern languages also say that this talk does not apply to them because they care about efficiency or some other reason which is only related as long as you don’t really think about it.
Since the talk I follow Bret Victor on Twitter and every now and then he posts links like this or text like this from which I can only conclude that he is experiencing the same frustrations that I am experiencing when presenting these ideas.
Other than that his more recent videos are also brilliant. They are more science fiction though which may be a self defense mechanisme to get around the bike shed problem of having to argue about this stuff.