Estimation is often the programmer’s bane of existence. It’s the worst part of any project for any of us, and it’s something we’ve all been burned by at some point.
I often try to glean insight from other industries that deal with the same situation. The de facto analogy is that of a car. We often correlate our explanations with car buying, car selling, car building, or car fixing when it comes to Web projects. We do that because it’s a baseline for people, many have done it and if they haven’t they at least understand the concept of a car and more-or-less how it’s built.
Mechanics though, need to estimate how much something is going to cost to fix when they don’t really know a definitive problem. Yet we all go to a shop feeling somewhat entitled to a price before they even open the hood. That puts a lot of pressure on and requires the mechanic strategically handle the process as a whole.
We’ve got to deal with the same things, it’s interesting to read about psychological research that could likely have an effect on our estimation process entirely.