Falling foul of my phobias
Developers do this all the time - they create something that is "beautiful on the inside", but doesn't actually do the task required. Everyone admires the class and how generics, hash tables and private virtual abstract objects were used to create the ultimately flexible utility.
Trouble is, no-one knows how to use it.
There's no point in having a "do anything" object and then require 30 buttons, text boxes, dropdown lists and radio buttons to control it - the beautiful do anything object is beautiful and broken.
Kinda obvious, right?
Which only makes me more human to admit that I just created a beautiful do-anything object. It's really cool, works perfectly and is so flexible that it makes those tantric yoga guru's look like they have arthritis.
But, yes, it's broken. I'm still stinging from demoing it to ScottW and RobH today.
My problem (and the phobia in the title) is that I hate duplicate code. So I wrote my code to expose inheritence to end-users so they could build their thing based on other things. What a pillock - users don't understand inheritence.
I'm still too in love with it to be able to dismantle it's inner beauty, simplify it and make it actually useable, but I know I'm going to. If only I still smoked, now would be the time that I stepped outside.
As it is, I'm setting IM to "be right back" and going to put the kettle on. 
Give me a few more hours and this baby is going to be really cool. <insane laughter fades stage right />