Estimating task lengths

I have to admit, I’m pretty terrible at giving estimates for how long a task is going to take me. You would have thought I’d have this mastered by now, yet after many years in the industry I still tend to underestimate how long something will take. Why should this be?
Here is a list of reasons which I’ve come up with which pertain to me personally but I’d guess are probably quite common:

So all of this together maybe means that the initial task estimates I give are maybe 2x too optimistic. On the other hand giving that realistic 2x longer estimate from the outset can seem like I’m dragging my heals on a task.
Given a set amount of time, and a task, people will tend to fill all the time available getting the task done (I am sure there’s a name for that law, but can’t remember it). If there’s any grain of truth in that statement, and I think there is, then giving the shorter (original) task estimate can actually be quite beneficial. It changes my “mental deadline”, and if my mental deadline is closer than the actual amount of time it’ll actually take me to finish up a task, that gives me a strong motivating factor to “get it done”. Let’s call this a “best case estimate” (#tongueincheek) – I usually give best case estimates when asked how long a task will take…

[This entry is cross-posted on my personal blog]