You never truly understand what it takes to accomplish something until you actually start doing it yourself. It is sometimes hard to speculate the amount of time you will spend on a task when you have never done it. Especially if you don't want to half ass it than you will always without fail spend more time on the task then you anticipated.
I was amazed at how long it took to clean up after dinner last night, not that I have not cleaned before, I was actually conscious instead of going into automated mode. What I thought was going to be a ten minute quick clean turned into a 35 minute of exceptional cleaning. This happens not only with cleaning but with everything we want to do the right way. I don't want to say perfect because I don't believe in that word. I don't know why that word exist. Lets look at the meaning of the word "free from any flaw or defect in condition or quality; faultless". We can get stuff close to being flawless, but you will always find fault one way or another, depending on who is looking at it and with what kind of opinions/beliefs they already have. My belief is much different then yours, something I may find that is faulty you may think is not. You see where I am going with this?
So when you are estimating the amount of time a job will take you, under promise and over deliver in all cases. This way you will not disappoint yourself, and most importantly the person you are doing it for or with. Lastly give credit to where credit is due to people who do the tasks you can only guesstimate.