All Code Is Bad
By Michael Renken
All code creates a more complicated and harder to maintain world. Technical debt does not only apply to “bad” or “near-sighted” code. It applies to all code. If you add a line, you’re adding an untested layer of functionality to something that was working in a specific way beforehand - even if that way wasn’t fully functional. The same thing happens in pop culture. If you exist on the tip of the culture spear, you’re consuming all sorts of raw media that doesn’t necessarily fit into the cannon of human experience and may not live past the cultural filter in a decade’s or two decade’s time. How any bad movies do you remember from the 90s, the 80s, the 70s, and beyond that just don’t seem relevant anymore?
If all code is bad, why do we write it? Wouldn’t we be better off without any code at all? The default answer in my mind is that whatever code you’re thinking of writing probably won’t last. But that doesn’t mean it shouldn’t be written. I’m talking about an imperfect prediction of the future based on statistics. The chance of a newly created line of code being changed in the near-to-long-term future is very high. However, the need for code often outweighs the potential downside of birthing it.
You could conceive of a public that heard of the plans for the Empire State Building in New York City and proclaimed “That’d be an abomination! Why would we waste so much money when it could be better spent?"1 But the builder (and whoever approved the building) forecasted that, at the current growth rate of the city, and despite the depression that the country was going through, there would need to be more vertical space to compensate for the lack of horizontal space in the near-to-long-term future. In addition, the tourism generated by the new building would bring in money to the stagnating city from all over the world. But the builder didn’t just start placing sticks on the ground in the hopes that those sticks would reach the full height of the future building. They carefully planned and used modern construction practices - slowly built on top of previous building practices - to build out what, at the time, was the tallest building in the world. This construction turned out to be a great success.
So, if our creation will probably have to be destroyed or set aside, why do we even do it? Because we have to.2 I, like many of my peers in my high school years, enjoyed reading The Hitchhiker’s Guide to the Galaxy by Douglas Adams. Being mostly raised by pop culture and state schools, I thought of the Earth being a computer designed to calculate the question representing “The Life, the Universe, and Everything” as an absurd concept. And it is absurd in a way, but not in the way that I figured at the time. It’s absurd because what “ultimate question” could have an answer simply of “42”? But the idea that the Earth, and by extension, all of the creatures of the Earth attempting to give meaning to their existence is far from absurd. It’s reality.
When we build, we build on top of a history of builders. We generate random mutations, mostly grounded in good sense, that endeaver to provide the next stepping stone for the next random mutation. The Linux kernel wouldn’t exist in its current form if it was closed source. It wouldn’t have the backing of millions of people and companies around the world if it hadn’t provided a stepping stone on which a future could be built. This same principle applies in evolution. We exist as we are today because, over billions of years, our predecessesors divided and produced an untold number of random mutations that has culminated in the most complex piece of technology ever devised - the human brain.
Practically, we won’t all achieve greatness. We often have to kill our creations, but creation has merit as we’re contributing to a better future. In this way, destruction has as much merit as creation. We must destroy branches that create a worse future in the moment. That doesn’t mean we can’t come back to them someday if the need arises. When I compare the beauty of the Linux kernel to some of the abominations coming out of large tech companies, I wonder just how much capital is being misallocated at any given moment. Many times, companies have an end result in mind, and they devise to reach it by throwing money at the problem. This “intelligent design” is a good way to achieve a result quickly, but the result doesn’t have any meaning unless the road there does. And if a product exists when it shouldn’t, like the “zombies” in Pet Sematary by Stephen King, their existence is an antithesis to creation - a bastardization of the Good. How can we ensure their destruction? Just don’t buy it.
-
Whitley, David - The 10 hugely popular tourist attractions that were slammed at first - https://www.letopdutop.fr/the-10-hugely-popular-tourist-attractions-that-were-slammed-at-first/ ↩︎
-
Various - Why do you feel the need to create? - https://www.quora.com/Why-do-you-feel-the-need-to-create ↩︎