The Linux Kernel Team Grows--No End in Sight
Recently, I was talking to a tech journalist friend of mine who has been covering Microsoft since the company's inception. He made the point that nobody at Microsoft knows the whole code base of the Windows operating system anymore. Individuals once did, but the operating system is a big ball of code that no single developer can understand from end to end anymore.
That was the thought that came to mind when I saw the just-released survey on Linux Kernel Development from the Linux Foundation. The survey provides an exhaustive and fascinating glimpse at what it describes as "one of the largest cooperative software projects ever attempted."
As the Linux Foundation's survey notes, the Linux kernel is the lowest level of software running on a Linux system, charged with managing the hardware, running user programs, and maintaining the overall security and integrity of the whole system. It also notes that since 2005, over 3,700 individual developers from over 200 different companies have contributed to the kernel.
These numbers have steadily grown over the years, according to the survey. For example, here is a snapshot of the number of developers contributing to the kernel starting in early 2005 (at the top), with data for the latest releases of the kernel at the bottom:
Although the number of contributing developers over the period shown here more than doubled, the survey notes that the top contributors have a very disproportionate impact on the growth of the kernel. For example, over the past three years, the top 10 individual developers have contributed almost 15 percent of the number of changes and the top 30 developers have contributed 30 percent.
It's also interesting to take a gander at which companies are making the largest contributions to the kernel. Of known companies contributing Red Hat, Novell and IBM are at the top of the list.
The survey notes lots of important points about why these companies--often known for being fiercely competitive in other technology areas--contribute to the kernel. "Companies like IBM, Intel, SGI, MIPS, Freescale, HP, etc. are all working to ensure that Linux runs well on their hardware," says the survey. "That, in turn, makes their offerings more attractive to Linux users, resulting in increased sales." It continues by noting: "Distributors like Red Hat, Novell, and MontaVista have a clear interest in making Linux as capable as it can be. Though these firms compete strongly with each other for customers, they all work together to make the Linux kernel better."
The final conclusions point to a large amount of solidarity among companies participating in developing the kernel. "With the current expansion of Linux in the server, desktop and embedded markets, it's reasonable to expect this number of contributing companies – and individual developers – will continue to increase," it concludes.
I would agree with that. However, as I noted in a post from a couple of days ago open source technologies need better evangelists and better centralized business outreach programs. If Linux and other open source technologies can marry enthusiastic and growing teams of developers--many of whom come from companies that can contribute funds, time and business acumen--that could become a really winning combination.
Do you think the growing numbers of contributors to the Linux kernel is a healthy trend?