Dana Blackenhorn recently wrote two interesting articles about different approaches to open source development. The first article ‘The open source development incline‘ identifies three basic models:
- At the top of the incline are what I will call proprietary open source projects, owned by one company. Sun works on this model.
- In the middle of the incline we might put shared corporate projects, independent of any one sponsor, like Eclipse.
- At the bottom are true community projects, which don’t seem to be owned by anyone. Drupal is an example.
He then follows up with a good example of how two companies, Sun and IBM, leverage open source.
I think what Dana is capturing is the fact that there are different models for open source governance; something that I have mentioned before.
In my opinion each has its strengths, for instance:
1. Proprietary open source projects tend to have the benefits that typically come from commercial software companies. They tend to have a bit more polish, well define support options, executive escalation paths (sometimes referred to as ‘one throat to choke), and even indemnification.
2. Shared corporate projects, like Eclipse, Linux and even in some instances Apache, tend to have a more diverse community of contributors and participants. This diversity often helps foster wider adoption, creates a wider ecosystem of technology providers around the project, and tends to be more organic in its evolution. In fact, I would claim this model enables more innovation around a certain technology platform.
3. True community projects have the raw ability to ‘scratch an itch’ and prospers if others share in the vision.
All three models are valid and needed. However when thinking about adopting or participating in an open source project, understanding the model chosen is very important.