"There are only two hard problems in Computer Science: cache invalidation and naming things." - Phil Karlton.
The above quote, while somewhat tongue in cheek, wears the ring of truth. Naming things is hard. Even when you put enormous effort into consistent and clear naming, you will invariably end up with some muddy and inconsistent caverns in your code. And when you are unfortunate enough to inherit code from someone (or multiple someones) who put no effort into their naming...You're in for a world of pain. If you have been programming for any length of time you know what I am talking about.