I've often said that as a developer, I get this suspicious feeing that I'm mostly solving the same problem over and over again. We innovate, create new and wonderful technology, and then piece together a new solution for an old problem that has just morphed into a different kind of problem but is really the same problem underneath. At this point, some developer alarm should go off in your head screaming "Burke! If you fix the root of the problem, then it WILL go away!" And you are right - it will. The reason why we can't fix the root, is that the root is what keeps changing.