Nobody ever sees mud when they look at their own ballThe big ball of mud is always inherited.
Have you ever worked on a big ball of mud? Probably. Most of us have, I venture.
But have you ever created a ball of mud?
I’ve certainly never met anyone who did. (Or at least not anyone willing to admit they did.)
Balls of mud seem to only be inherited.
“Our ball of mud has a specific reason, not attributed to the current team.” — Actual quote in a recent conversation I had.
The ball of mud is never attributed to the current team.
But how can that be?
Is it possible that we often build balls of mud without realizing it?
Nobody ever sees mud when they look at their own ball.
Yet we see the balls of mud so clearly when we look from a distance.
The importance of backward compatibility often pops up in some surprising places.
You’re building a complex piece of software. Then it comes time to deploy, so you spend a couple weeks stuffing it into a Docker container or a .deb or .rpm package, and debugging the build and deployment process. Then you add some sort of monitoring or logging, set up email or SMS alerts to tell you when it crashes, and probably a dozen other things to make it “production ready.”