Last Friday Stephen Hackett wrote an interesting piece at 512 Pixels about software rot.

The vast majority of people will never need to run operating systems like Mac OS X Server 1.0 or older software titles like MacPaint. As a self-proclaimed Apple historian, I am interested in keeping it accessible.

Deep inside, I know it’s a losing battle.

One of the things Steve Jobs did when he returned to Apple in 1997 was to throw away all of the old relics that the company had enshrined. It was important to leave the past behind and look towards the future. I don’t see the need to prop up old stuff. Keeping it functional can be unhealthy, actually. Hackett’s example of the Antennagate app is a reminder of a product that had a problem with it. What’s worth remembering about that?

If the solution to a problem is so good that it’s worth reusing, on the other hand, it’ll get reused, and it’ll be present in currently working software. The concept of “survival of the fittest” is important here. We should keep the stuff that works, and throw away the rest. Code that isn’t somewhere in currently working software isn’t worth remembering.

Hackett also wrote:

I believe that to understand where we are and where we’re going, we have to know where we’ve been. That includes the technology we use.

There’s a time and place for museums, certainly. But I don’t think that keeping previous technology is important in order for us to know where the puck is headed. The technology that currently works gives us plenty of context to know the kinds of things we should be building for tomorrow. As an example to prove my point, during college I heard computer science professors reminisce about MS-DOS. I didn’t have a clue what they were talking about. As a software developer who uses bleeding edge Javascript tools and libraries, I am none the worse for my ignorance of these things. The past does matter in the realm of politics, because human nature does not change. That’s a different field altogether however. Assigning that value to the history of technology is a misnomer.

Software is only valuable to the extent that it is being used today. If the software I write tomorrow is not in use 100 years from now, I couldn’t care less if it existed on a repository on a GitHub server or not. It served its purpose in its time, just as the Antennagate app served its purpose in its time.

Overvaluing unusable software is an effort in futility. If the original creator of an app no longer deems it important to preserve, why should we?

I love what Hackett’s doing at 512 Pixels, but this one’s off.