I’ve noticed a pattern when I write new programming code: I often spend far too much time polishing it up before putting it out into the world.
At some point the changes I make are not really making the code any better. Yet I’ll keep on tweaking things for a good day or two, well after the law of diminishing returns has set in.
I suspect this has less to do with perfectionism than with anxiety. When you put something out into the world, you are ceding control over it.
Sure, you are being neighborly — sharing with the world, helping others, laying a path for what may come next. But you are also being vulnerable, because at that point any errors in what you’ve created become public.
At some point pride of workmanship veers over into a neurotic tendency. I wonder how many other computer programmers suffer from the same neurosis.