You once called open source “brutal”. What did you mean by that?
Well, I think I was asked why open source works and when you think about how software engineering management works in industry, it shouldn’t. Disparate, distributed, non-homogenous teams are extremely difficult to run in a company, but in open source it creates some world-class terrific software. Why is that?
I think that it is because open source projects are able to only work with the productive people and ignore everyone else. That behavior can come across as very harsh or exclusionary, and that’s because it is that: brutally harsh and exclusionary of anyone who isn’t contributing.
This is why project forking is so important. If a person is rejected from a project for whatever reason, they can fork and take the project in a new direction, and if their ideas and execution is superior to the primary project, that fork becomes the new reality and those people that rejected that developer are now the rejected.
So, I guess what I’m saying is that survival of the fittest as practiced in the open source world is a pretty brutal mechanism, but it works very very well for producing quality software. Boy is it hard on newcomers though…