Cloudstack has proof: Foundations is the way to create a FOSS community
I found a very interesting blog post today: Open Source IaaS Community Analysis. It is a statistical analysis into forum/mailing-list traffic of the 4 major private cloud open source projects: OpenStack, OpenNebula, Eucalyptus and Cloudstack. While I have never met or read anything from the author, qyjohn, it seems we actually worked at Sun at the same time :-)
For a casual follower - like me - of these four cloud projects, the post is interesting in many ways. But for anyone interested in open source business models it is very interesting indeed. Readers of this blog will remember my research from 2010: How to grow your open source project 10x and revenues 5x. The research showed that 9 out of 9 Xtra Large projects are all governed through foundations, whereas the best performing open source codebases owned by a single vendor have developer communities that are roughly 10x smaller. Based on this observation I made this recommendation:
From these results it follows as an obvious recommendation that vendors participating in open source development and business, should look into participating in collaborative community developed projects - where the standard and familiar governance form is a non-profit foundation. If a vendor is currently in control of an open source project, it should explore the option of transferring the project to an existing foundation, or alternatively creating its own foundation for it. Since the original vendor is always the strongest candidate to become the leading vendor also in a collaboratively developed project, the vendor could, as a rule of thumb, expect this strategy - if properly executed - to result in:
- The project growing 10 times larger.
- The product thus receiving 10 times more investment into its development.
- This larger development community therefore leading also to a 10 times larger addressable market.
- The vendor being able to capture 50% or more of that larger market.
There are a few open source codebases that have actually made the transition from a single vendor project to a foundation (and I mention them in the article). Yet now we have for the first time a very clear cut, almost laboratory-like, experiment in Cloudstack, which recently moved from a Citrix owned open source project to being governed by the Apache Software Foundation. What is interesting about this is that in this case CloudStack is:
- A fairly young project, which is being moved to Apache by Citrix purely to gain competitive advantage, not for instance because Citrix would be divesting it.
- One of 4 projects competing in the IaaS cloud segment, that is itself young, rapidly evolving and still forming. The 3 other projects are what scientists would call a "control group".
- Strongly competing against 3 other, equally young and rapidly developing, open source projects in the same segment.
- The users and potential developers in this market segment consist mostly of early adopters, who will relatively easily switch between competing projects.
The result is just purely amazing. For instance if we look at the the monthly number of forum and mailing list messages, you can see that starting in early 2011 OpenStack has dominated the competition for community, having at best 5x more activity than the other 3 projects. Then CloudStack joins the Apache Foundation in April 2012, and what happens:
It's just amazing! In just 3 months, CloudStack has gone directly to the same level as OpenStack is. This is much steeper community growth than I could have predicted (if anyone had asked me for predictions, that is...). It's like if they had just flipped a switch in April, and you get instant community activity!
Also when I did my own research into vendor communities vs foundation communities, the result as such wasn't surprising, but I was surprised of the magnitude of the numbers: 9 projects which are 10x greater than anything else. Here, achieving more than 5x growth in 3 months is the same kind of surprise: In their wildest dreams, I don't think Citrix or anyone else could have wished for such community engagement in such a short time.
Qyjohn's post has many more graphs and also excellent analysis on the ups and downs of each project over time. You can read it from there. But from my perspective, it seems CloudStack success may be due to achieving a combination of best of both worlds: It is a foundation-governed project (like OpenStack and OpenNebula) but it is also a relatively mature, productized, integrated and easy to use product (like Eucalyptus, they say). It is good to remember that a foundation alone does not guarantee any success, you need to also deliver the product that your users want to use.