People often talk about a concept called the "herd mentality". Herd mentality describes how people are influenced by their peers to adopt certain behaviors, follow trends, or purchase products. Examples of the herd mentality include the early adopters of cutting edge technology or mainstream adoption of products which have proven themselves to be useful to the masses. Some people may be of the opinion that herd mentality is primarily an emotional response, that its based on a sense of belonging to a larger group, and that its mostly about human interaction. However, when it comes to open source software, I think there is far more simple, logical reason for this phenomenon.
By its very nature, open source software is designed to meet the needs of the majority of users for the particular problem domain for which it was created. Sure, there is always some customization required, but if you focus on the basics, most organizations share a common set of requirements when it comes to automation or information management. And the more people who actively use a particular software application, the more feedback and intelligence which goes directly into the software to ensure it meets the broadest set of business requirements. When evaluating solutions, it is certainly not unrealistic to think that other similar organizations have encountered the same challenges as you, and have already worked with software developers to come up with viable solutions. The probability of this being true is much higher for open source software than it is for proprietary or custom software, simply because of its highly accessible nature and large interactive community. So would you rather build your business on a software application which is used by 5 users or 500,000 users? I think the choice is obvious.
The other phenomenon which occurs when the user community around a product reaches a critical mass in terms of size, is that other large business organizations begin to take notice. Usually their motivations are fairly simple in terms of trying to find ways to capitalize on the emerging opportunity. This is generally a good thing for users because it results in a broader set of collaborative solutions, more services, greater competition, and higher recognition for the platform in the general market. This often has the effect of migrating the focus from the early adopter crowd to the mainstream audience ( ie. "crossing the chasm" ).
Size also matters to service providers and product developers who supply complementary solutions for the platform. A factor to consider in any commercial ecosystem is that the number of sales leads which are ultimately converted into paying customers is typically a very small percentage. So the size of the community plays a vital role in determining the amount of business which is generated around the platform.
As the largest open source project on the Microsoft platform, DotNetNuke has been quietly building a very large community of loyal users. We have been tracking the growth every step of the way and most of our metrics are out in the public domain where people can view them. We have always thought our statistics are fairly impressive, but without a reference point for comparing them to other projects, it is difficult to come to any conclusions. So recently, we took some time to analyze the competitive strengths of DotNetNuke versus some other popular open source community projects. I would like to share this information with you.
First of all, let's document the metric for DotNetNuke which we feel is the most representative of our overall community size ( as of March, 2008 ):
4,646,100 downloads ( 46 months of activity )
This sounds like a lot... but is it? Well, we decided to take a look at a few other significant open source projects who also host their downloads on SourceForge.
JBOSS: 11,281,959 downloads ( 82 months of activity )
Spring: 2,289,425 downloads ( 44 months of activity )
Alfresco: 929,348 downloads ( 31 months of activity )
SourceForge also provides month-by-month statistics for each project which allowed us to plot the comparative growth of each of the above projects, based on stage in the project life cycle:
The graph clearly shows that our growth is very strong and far exceeds that of Spring or Alfresco. In fact our growth is much closer to that of JBOSS, one of the largest open source success stories of the last decade. An interesting thing to note is that all of the projects mentioned above have received at least one round of venture capital funding; whereas, DotNetNuke has relied solely on organic growth to date.
Another interesting comparison I would like to mention is how we stack up against web framework, Ruby On Rails. Rails is an open source project managed by 37 Signals which generated considerable buzz last year ( ie. article in Time magazine ). Based on the marketing hype around the project, you would assume that it has a massive community and significant downloads. However, the statistics tell a different story:
1,508,032 downloads ( 42 months of activity of RubyGems and Rails )
Yet another popular open source content management system is Drupal. Its founder, Dries Buytaert, recently started a company named Acquia and received venture capital funding to the tune of $7 million. At the DrupalCon conference this spring, Dries mentioned that the Drupal 6.0 had 100,000 downloads in its first month, which was 100% more than the number of downloads Drupal 5.0 received in its first month. I find this very interesting because DotNetNuke consistently gets 150,000 downloads per month regardless of whether or not we have a major release. And when we release the much anticipated DotNetNuke 5.0 release later this spring, I actually expect our downloads to hit 200,000 in the first month.
Overall, the metrics do seem to substantiate the fact that DotNetNuke has a very large ( and growing ) open source community. I hope you have found this information useful...