Jack Hughes has a great post on The Tech Teapot today. He has been examining the effects of an “open core” licensing model on open source communities, and he hypothesized a “functionality ceiling” in such projects as the feature needs of the pay or commercial version outweigh those of the free or community edition.
Using Ohloh he was able to examine graphs of the code for two well-known open core projects. Both of them show a large plateau, seeming to demonstrate his point.
So I decided to look at the OpenNMS graph. It’s considerably different.
This is pretty cool. You can see a bump when I took over the project in 2002, but due to my limited Java skills it doesn’t grow much until 2004 when Matt Brozowski joined the project. After that the growth is pretty phenomenal. We do have a slight plateau as we are preparing for our next stable release, but nothing like the 18+ month long ones for the other projects, and the size of our code base is much, much larger.
Great idea, Jack.
TOO MUCH XML!
@mhuot XML is like violence: if it doesn’t solve your problem, you aren’t using enough of it.
Tarus,
can you explain why OpenNMS has 100 million more lines of code than the other two systems?
Not really. I haven’t looked into the other systems’ code. Note that much of what is counted as code is actually XML. We use XML for configuration purposes and our community is awesome about adding new configuration information almost daily.
If you look at the actual Java code, we’re a little over 41 million lines. OpenNMS is designed to be enterprise grade – we have clients monitoring 70K+ devices on a single instance, and collecting 1.2 million data points every five minutes. It’s serious software.
What I love about the graph is that I took over the project from a company called Oculan in May of 2002, and I was able to hire someone who knew what they were doing in the spring of 2004. If you look at the code, OpenNMS grew much more as a 100% open source project than it did as a venture-backed company.
It’s kind of funny – we’ve been refactoring the code like crazy and our lines of code should have actually gone down if we weren’t adding new functionality.
100% free and open source software FTW.