> Having a competitor is also a great boost to productivity, even if the competition is friendly. It keeps people focused very nicely.
Actually I think it's better if the competition is friendly. Unfriendly competition leads to obstruction, lock-in wars etc.
> So, basically, even if there was a central planner of the entire open source ecosystem, I think it would be sensible of them to allow multiple implementations. Finding the level of fragmentation that maximises overall productivity is left as an exercise for the interested reader.
That's something that is done in software engineering at times: two (or more) teams get the same spec and implement it independently. This is supposed to test all the ideas that many people could have without them going down in design flamewars, and also to have several different implementation with different bugs in them ;) (As a test of interoperability, among other things.)