Daily, snackable writings to spur changes in thinking.
Building a blueprint for a better brain by tinkering with the code.
subscribe
rss Feeds
SPIN CHESS
A Chess app from Tinkered Thinking featuring a variant of chess that bridges all skill levels!
REPAUSE
A meditation app is forthcoming. Stay Tuned.
MESSY
September 10th, 2024
"Cleanliness is next to Godliness"
- St. Thomas Aquinas
"A spotless home often has cluttered closets."
- Tinkered Thinking
A perennial debate rages between the tidy and the disheveled. Steve Jobs was apparently famous for demanding beauty on the inside of the products at apple - not just the outside. Order is valorized and we seek to use it to tame nature, either by perfectly manicured lawns, or immaculate rows of spotless corn, or even in our own homes that present with the veneer of a museum. Even programmers are infected with this debate, with the loudest worshipping "clean code", as opposed to the derogatorily termed "spaghetti code". It's exactly like it sounds like, code that is intertwined with itself in countless, innumerable, and untraceable ways. Well, almost untraceable.
There's a couple key distinctions that don't often enter the debate. One is that spaghetti code is worst when it's written by someone else. Clean code is necessary when working in teams. It's mostly about readability, and quick comprehension. In fact, clean code is a declaration that humans simply suck at understanding and following complexity. We don't have particularly powerful short term memories, and clean code is the answer to it - it's easier to understand so its quicker for someone new to the code to read it, understand it, and successfully make changes to it.
Perhaps the most important distinction that never enters the conversation about clean code vs spaghetti code is whether the computer cares or not. The computer absolutely does not give a flying fuck whether or not the code is "clean" or now. The computer doesn't care period. It simply injects electricity through circuits that are arranged by the code. That electricity either successfully makes it through the maze, or it gets hung up, and crashes. In theory, a certain arrangement of spaghetti code might be much more efficient than human-readable "clean" code. So, which is better?
Depends on one's priorities. If one's work reputation is on the line, then leaving behind code that is incredibly difficult to deal with is not exactly something to aspire to. Hence why so many valorize cleanliness. They have very clear incentives for such. They don't want to put up with more spaghetti code.
But what if you're working on your own? Well this is a totally different scenario, and while it's a common humorous meme to liken old code one has written to hieroglyphics, moving fast and making a mess has its benefits. Those who toss aside concerns about clean code have different priorities because they have different incentives. A solo hacker trying to build a small software business cares about one thing above all: does it work for the customer? The customer is a bit like the computer in this respect. The customer doesn't give a flying fuck how pretty the code is, the customer just cares if the product works or not, because, naturally, they're trying to use it for some specific useful end.
Looking at other solo creatives we often see something far different than the lifeless museum organization. Albert Einstein's desk when he died was famously a disaster. (Google and image of it.) Or, pull up a picture of the complete human circulatory system - to highlight the o.g. creator - and ask whether it looks like clean code. It literally looks like spaghetti molded into the shape of a human.
So what's the deal with this debate? Tidiness is mostly a form of communication to other people, and it's due to the fact that our oh-so-powerful brains are actually quite allergic to complexity. We interpret what we don't understand as chaos, so we seek to make the chaos orderly, and often, as a result we drain the magic that was once contained within. there is of course subtler forms of organization. Things like permaculture, for example, which seek to strike - not just a balance between the chaos of nature and the order we humans desire; but a true symbiosis that results in a greater result than can be achieved by either rampant "untamed" chaos and the deathly museum-like order. Such virtuous cycles require a different understanding, one that doesn't eschew chaos, but seeks to understand it without destroying it, and by doing so, glimpse untapped leverage hidden within reality.