About a month ago Ayende posted his thoughts on the Maturity Model found in Open Source Projects. Ayende's method for determining maturity is simple:
From my point of view, there is a very easy model for the maturity of an Open Source project. Look at the answers in the project's mailing list. The questions do no matter.
The model is simple, the higher the percentage of answers given by non project members, the more mature the project is.
I thought of this today when I came across the group info page for the RhinoMocks and saw the statistics for this month. I was struck by how low on the list Ayende is:
You can see here that Ayende is tied for #5 on the list. (Yes that's me on the list, but that's beside the point.) In two polls (poll #1, poll #2) done over the last two years Roy Osherove has found RhinoMocks to be the #1 mocking framework of those polled. I believe it is safe to say at this point that RhinoMocks is mature. Measured with Ayende's method above and the data for this month's RhinoMocks group, I'd say that RhinoMocks is quite mature. Ayende, the project creator/owner, sits at #5, which is pretty good.
Being familiar with open source I wanted to explore the maturity idea a bit further in depth on some other projects. I posted on twitter a question about what open source projects people are using. I wanted to take a few projects that are out there and explore a little bit to see if Ayende's assertion was in fact correct.
(Note: I am only exploring projects which have groups on Google. These projects are in no particular order.)
(Note the absence of John Resig)
(Note the absence of Hamilton Verissimo)
(While I would rank NUnit as "mature" Charlie Poole is the top answerer, which does not match Ayende's method)
(The findings in NUnit are not isolated, Jeff Brown, the MbUnit lead, is the top answerer)
(This is where I started to douby my original hypothesis. I did not expect to see project owners so high up on the list for such a seemingly mature project. However NHibernate has a learning curve to it that may hinder would-be helpers from ever getting to the point where they can confidently answer questions regularly on the framework.)
(Again project owner is top answer, by a long margin here).
(This one again surprised me a bit, especially given the work that I know Jeremy has done with documentation)
(Owner and creator, Jamie Cansdale, clearly the favorite)
Spark (Mvc View Engine)
(Owner and creator, Louis DeJardin, sits atop the #1 position)
When I started to dig, I wasn't sure what I find. In many cases here the project owner is sitting right at or near the top of the top answerer list. Still, I think Ayende's original assertion is somewhat correct, however more has to be considered. For example, a very well documented framework may lead to questions being asked that are rather difficult and therefore a larger number of questions answered by project founder may not really prove anything. In other cases there may be a framework which is widely used but users don't feel compelled or comfortable answering questions for that group, for any number of reasons. Ultimately any notion of what presumed before exploration was blasted to bits.
These projects above are not fringe projects, they're relatively mainstream for a certain sector of the .NET crowd. If you haven't checked out any of these projects (admittedly I did not attempt to introduce them at all) I would encourage you do so. One thing is for certain judging from the numbers above, these projects are viable, strong, and have a good following.
What do you think of the figures above? Is Ayende right? What strikes you about the projects and their discussion groups?
03-16-2009 11:49 PM