Code shouldn't be sat on
When a software project is ready to release, there is a temptation to keep polishing and refining, rather than releasing it for consumption and inevitable criticism. A bit like a hen who doesn't want their eggs to hatch.
Bad similes aside, it is wrong to perpetually incubate work where it is out of harms way, under the pretence of being a perfectionist or having exceptionally high standards. In reality this could be indicative of a lack of confidence in what is being produced.
It is vital to set high standards. However the "release early and often" rule is still a good one. I have found that when code is put out there scrutiny it improves rapidly. This is obvious. Attention is paid to the right places, not where developers think the improvements need to be made. And when the code does go live to the world, it can be done so with utmost confidence.
