There’s Truth In Numbers: FOSS and Metrics

| | by

At the Linux Foundation’s Collaboration Summit a couple weeks ago, the Linux Foundation announced their annual “Who Writes Linux?” report. Amanda McPherson of TLF blogged about it on April 3, and her comments about what we can extract from the numbers ring true: the Linux Kernel is receiving more and more attention from companies and individuals focused on embedded and mobile use cases. TI, Broadcom, and Samsung in particular have been investing in contributions, to help ensure that their markets and customers receive the right amount of attention.

There is a meta-lesson to be learned from this report – that the Linux Kernel in particular, and FOSS projects in general, publish a nearly complete picture over time of their development, in the form of their source code history. By asking the right questions and extracting and analyzing this rich treasure trove of data, we can learn some very interesting facts about both specific projects such as the kernel, and FOSS projects in general.

One question I’ve been curious about is how the use of different programming languages in FOSS projects has been evolving over time. Ohloh has long had “Compare Languages” capability that presents monthly language use statistics across all the projects on Ohloh. Lets take a look at a collection of the most popular languages in use in FOSS projects – specifically, a monthly graph of projects with at least one line of code changed in each of these languages, over time.

This graph shows that the old stalwart languages like C, C++ and Java that are the primary languages of many mature, active projects remain very highly used, but that other languages like JavaScript and Python are increasing in use. This analysis covers all the projects on Ohloh – the mature and the brand new. But what if we compare the primary language of projects started 5 years ago, vs. the primary language of projects started in the past year? Five years ago, Java, C++ and C were the most popular languages for projects just starting. But in the past year, while Java remains the most popular, Python, PHP and JavaScript all have overtaken C and C++ in popularity. The “Other” language category also increased its use for startup projects in the past year, showing that the FOSS community is willing to experiment with new languages that have not yet achieved high popularity with the mature, active projects.

If you’re starting a new FOSS project, it could be very important to know which languages are gaining in popularity, and thus which technologies your project could adopt in order to attract new contributors.

For more on this and other statistics about the FOSS world, please be sure to check out my more in-depth discussion over on the Ohloh blog, at http://meta.ohloh.net/2012/04/measuring-project-activity/.

 

Tags: , , , , , , , , , , , , , ,

No comments yet.

Leave a Reply