The whole picture worth 1000 words thing is an annoying cliche but I was struck by the image on this post by Roy Osherove.
It's the perfect metaphor for software. We build it as a nice series of links, have good abstractions and we think it's generally solid. Then we notice a bug. We go in and fix it so well and make so sure it's fixed that it's the most solid part of the system. Then, as deadlines start looming and we start getting tired of the project or just all-around burnt out, our fixes get less rigorous and new feature requests or feature changes aren't implemented as well as everything else and our software starts looking like that image.






