Messy Code Bases Are Like Messy Kitchens
One of the biggest avoidable mistakes of startups (and projects within big companies) is a messy code base.
Imagine serving up meal after meal from your kitchen without cleaning up between meals. You could probably go a very long time serving up meals while people in the dining room remain oblivious to what’s going on in the kitchen. Yet, over time, the messy behavior will take it’s toll:
- People working in the kitchen will hate their job
- Kitchen productivity will go down
- Ability to produce predictably wonderful meals will decrease
- Ability to leverage all the resources of the kitchen to deliver wonderful meals will decrease
- Over time, the decay of the kitchen may actually become irreparable and parts will need to be tossed out entirely
At some point, the dining room will discover the kitchen is messed up. Or maybe the kitchen will be asked to do something it simply cannot do due to the state of deterioration.
Code bases are the same as kitchens. Too often, non-technical co-founders rush their engineering teams and do not provide them with the bandwidth to clean up their code before they have to produce a new meal.
Over the years, it’s been interesting to hear from former AccelerEyes employees that lament the torrid state of the code bases at their new jobs. Without fail, every one of those extols how wonderfully well kept we maintain the code that we develop. For us, the complexity of what we do is already so high that we cannot afford additional complexity through rushed messiness.
As we’ve worked with tons of software clients, we’ve also encountered disgusting code on a regular basis. It’s amazing how this world keeps turning with so much crufty code out there.
I’m grateful to the technical leaders at AccelerEyes that drive clean code production into the heart of our culture.
What are your thoughts on messy code?