Much of Your Work Will Go to Waste

Daniel Mescheder argues, correctly, that most software never becomes useful and is therefore wasted.

It may sound like an overly pessimistic assessment of the state of our industry. My intention is not to sound cynical, however, I think we need to be honest with young engineers entering the field of software development: There is a real possibility, that a lot of the code that you will write during your career will go to waste. Nevertheless, this is not as bad as it might sound.

One of the reasons for “waste” is technical obsolescence:

Following a change in technology or a migration to another platform, a lot of code can usually be thrown out.

At work, I just shut down a system that I poured a lot of effort into. It was bittersweet, but it was also a huge relief to shut down that system. I didn’t have to worry about it any more! Obsolescence is the fate of all software, eventually. If a system shipped and served users, that means it passed through the obstacles to providing value that Mescheder enumerates, and it wasn’t a waste.