Durable programming

Computers are awesome bloody machines, they really are. Look at the 6502 chip that powers Bender. Or check out how a barrel shifter works. Something like a Hirst Audio headphone amp is more obviously beautiful because this complexity is not hidden, but imagine a computer where everything was full-on valvepunk.

The computer is hidden from us, in other words, because of exceptional miniaturisation. We realised that we needed to make the CPU smaller in order for it to be more ubiquitous; and thankfully it turned out that the technology to achieve this was easily within our reach. Now we need micron cameras to assemble an iPhone 5.

Despite computers being awesome, they are also fragile. "Data which isn't consumed rots", as Dan Connolly put it. But even perfectly serviceable APIs such as that hosted by Imgur can just break overnight forcing you to change your code.[1]

Let's imagine you wanted to make a musical computer instrument. As of 2013, you could make an iOS  or Android app, and then you'd have touchscreen and gestures; or you could create one for various desktop platforms. You could use HTML5. No one platform will make it easy for you to port to another platform.

If you made a physical instrument, a guitar or a drum kit or flute, you might expect that instrument to last for many decades. Code for displaying three-dimensional DLGs doesn't even last a year. To a significant degree, we as a culture simply ditched durability for innovation. But what if we wanted to make code like Sori Yanagi?

Things that haven't worked

Things that might work

Footnotes

[1]: This might not actually be true. According to the change log of the gist, no substantial editing of the gist took place. I also noted that there appeared to be a random perturbation of the API, which is otherwise unexplained.