I’m a software guy, and like any other coder out there, there are times you look at what you’ve written and go "hey, let me just add this one thing more" – and a while later, you say "time to test". And THEN that famous phrase kicks in: "Aw, crap".
Not only has the new "feature" turned into a bug, but it has taken other parts of the system with it. Even after commenting out all that new / modified code, the bug is still there. Examples of this conundrum have been seen here on the ‘Grok – add a new post and all of a sudden, the front page look wacky;
- all older posts have the same nutty formatting
- picture look crazy
- videos won’t vid
- and the sidebars take a vacation.
OK, the normal thing is to remove the offending post. Ooops – that "one more thing" wasn’t enough to put things right. More posts have to be taken out to get back to a stable system before adding stuff back in to "progress forward". Perhaps tickling a few other areas of code too, in many cases.
Because when a software app is broke, adding more stuff to it ain’t gonna make it right, not going to make work, and you aren’t going to move forward. You’re only going to make a bigger, more tangled spaghetti code mess. And as you add new features to a system, especially those that were not originally "designed in", things get more and more tangled. It finally crushes itself under it’s own weight. Sure, you may get that new feature, but the overall system ends up harder to maintain (costing more to keep running), works slower (forcing users to use "faster" computers), and takes up more space (bigger disks). That’s why most engineers always call the smallest possible solution that does the job is called "elegant"; those that construct such packages are hailed as superstars by their peers.
A great proxy (or metaphor) for our government?

public union employees are unhappy with him for his Right To Work stances – you can read that