Over at Dr. Dobb's Journal, Gregory Wilson recently brought up an interesting point.
A lot of open source projects get 80% done but then, instead of doing the hard work to make it right, developers go off somewhere else.
Wilson cites the example of Python Web application frameworks. CherryPy, Quixote, Twisted, WebWare, and others all work, but none of them are great. The documentation is poor or the user interfaces don't work well for folks unfamiliar with them.
Point taken. It's the difference between animals and plants in an ecosystem. Animals will work to gain domination, to control the territory. Plants will reproduce. One process is conscious, the other unconscious.
When a closed source project gets 80% done, its owner will redouble efforts to win market share. They will advertise heavily, work hard on enhancements, and try to take over. When an open source project gets most of the way there, its developer doesn't have a big incentive to make changes -- it works fine for them. They may work on bugs, or assume that other members of the community need to pull their load now. They may even go to work on something else.
This is human nature. The question is what can be done about it?
I don't have an answer. Maybe you do.