I’ve talked here before about open-source software development, and how it fits into the overall IT landscape. Probably the largest and best-known open-source project is the Linux operating system. Linux is a “work-alike clone” of UNIX; it was begun in 1991 by Linus Torvalds while he was a student at the University of Helsinki. Although a complete Linux OS distribution, like Ubuntu, SuSE, or Debian contains a great deal of software, including the X Window GUI system, utilities and tools from the GNU project, and other applications, the core of all distributions is the kernel. This provides the low-level interface to the hardware, the virtual memory system, the scheduler, and the basic support for file system(s).
Ars Technica has an article discussing a recent report from the Linux Foundation, which oversees the kernel development process. One commonly mentioned image of the typical Linux developer is that of a socially-inept scruffy bohemian living in someone’s basement, who sees the sun two or three times a year, perhaps every time he takes a bath. Although the report doesn’t address the question of, say, sun exposure, directly, it does strongly suggest that the stereotype is rather far from the truth. Firms both within and outside the technology industry are heavily involved in kernel development.
One of the most significant aspects of the report is its analysis of corporate involvement in kernel development. The report reveals that an average of 200 companies are involved in development for any given version of the kernel and that they are responsible for developing roughly 70 percent of the code.
Among the biggest corporate contributors are Red Hat, IBM, Novell, Sun, and Intel. In essence, what has evolved is a large cooperative development effort; although it is still spearheaded by Linus Torvads as “benevolent dictator”, it is very much a mainstream project. This may seem very New Age and hip. but it is actually (at least for old crocks like me) reminiscent of the early days of computing, when organizations like SHARE (established in 1955, for IBM mainframe users) were instrumental in distributing locally-developed utilities and modifications to the operating system (which, in the early days, IBM distributed in source code). So the idea of collaborative software development actually has a long and reasonably respectable history.
You can download the report itself [PDF] from the Linux Foundation’s Web site.
In a future post, I’ll talk a little more about some of those early developments, and how they relate to the IT world of today.