One thing you mention though resonates. You mention perfection. What is it they say? Perfect is the enemy of the good? I really dislike the work of the dilettante or amateur, my ideals are set pretty high and I see myself failing to meet my own exacting standards and this cripples me productively. Also I am a very indecisive person, plagued with doubt. This is great in that I make up my own mind about a lot of things and I don't fall prey to herd-think but it again is a bit of a productivity killer as I flit from technology to technology and methodology to methodology. For instance I've gone from DOS/Windows to Linux fanboy to Mac owner and from C and C++ to the LAMP stack to Ruby on Rails and from nothing to SVN to Git. It's exciting but tiring and their isn't a project out there that I can call my own and there's a directory full of half-baked ideas and scraps of code in ~/Code