Perhaps the biggest lesson here: never give someone a gut-level estimate of <i>anything</i>. The challenge is that a lot of clients/bosses/whatever will press you for one. Some people just need to hear a spot-estimate in order to feel comfortable.<p>In those cases, I've found a fairly effective verbal counter. It goes something like this: "Listen, Bob [assuming the client's name is Bob]. I don't want to mislead you here. I'd rather work up a proper estimate than throw out some number on the spot that might be incorrect. I want to do this the right way, for your benefit and mine."<p>If Bob presses you further, respond with "I've worked on similar projects in the past. Some have taken 2 days, and some have taken 10 days. It really depends on X, Y, and Z. I want to take a proper accounting of X, Y, and Z in this case, so that I'm not misleading you up front."<p>If pressed further: "Bob, obviously time is of the essence for you and for this project. I understand that, and I will do everything I can to ensure that I complete the project as quickly as possible. In the end, this will be much quicker if we get it right the first time. Give me a little bit of time to do some planning, and it'll save us a lot of time in the long run."<p>All of this is true, of course. It's better to aim twice and shoot once, as the saying goes. However, there will be clients or bosses who just won't accept this sort of conversation up front. It'll piss them off. So be it. FAR better to have a little bit of confrontation at the outset than a lot of confrontation later on (i.e., if you toss out a gut estimate and then have to crawl back and amend or delay it).