How to Participate in the Linux Kernel Community

This year – 2008 – could very well be regarded as the year that the term open source made it into prime time, into main stream media. We think that Google’s launch of Android towards the end of 2007 was a major contributing factor. Suddenly, everybody is an expert on the open source community. Individuals with no knowledge of how the community works have not shied away from expressing “expert opinions” about it. Even companies like Fortify, whose bogus survey of some open source projects was debunked here, have tried to mislead the public about the security practices of open source software projects.

The open source community, like any other, has its code of conduct – its culture, and it is important that those wishing to participate in it have a general idea of how the community operates. This is especially true for developers and enterprise managers itching to contribute code to software projects. To help this group along, the Linux Foundation has published an online book titled “How to Participate in the Linux Community”.

It is intended for prospective Linux kernel coders, but could apply equally well to any open source software project. Here’s a part of the guide:

WHAT THIS DOCUMENT IS ABOUT

The Linux kernel, at over 6 million lines of code and well over 1000 active contributors, is one of the largest and most active free software projects in existence. Since its humble beginning in 1991, this kernel has evolved into a best-of-breed operating system component which runs on pocket-sized digital music players, desktop PCs, the largest supercomputers in existence, and all types of systems in between. It is a robust, efficient, and scalable solution for almost any situation.

With the growth of Linux has come an increase in the number of developers (and companies) wishing to participate in its development. Hardware vendors want to ensure that Linux supports their products well, making those products attractive to Linux users. Embedded systems vendors, who use Linux as a component in an integrated product, want Linux to be as capable and well-suited to the task at hand as possible. Distributors and other software vendors who base their products on Linux have a clear interest in the capabilities, performance, and reliability of the Linux kernel. And end users, too, will often wish to change Linux to make it better suit their needs.

One of the most compelling features of Linux is that it is accessible to these developers; anybody with the requisite skills can improve Linux and influence the direction of its development. Proprietary products cannot offer this kind of openness, which is a characteristic of the free software process. But, if anything, the kernel is even more open than most other free software projects. A typical three-month kernel development cycle can involve over 1000 developers working for more than 100 different companies (or for no company at all).

Working with the kernel development community is not especially hard. But, that notwithstanding, many potential contributors have experienced difficulties when trying to do kernel work. The kernel community has evolved its own distinct ways of operating which allow it to function smoothly (and produce a high-quality product) in an environment where thousands of lines of code are being changed every day. So it is not surprising that Linux kernel development process differs greatly from proprietary development methods.

The kernel’s development process may come across as strange and intimidating to new developers, but there are good reasons and solid experience behind it. A developer who does not understand the kernel community’s ways (or, worse, who tries to flout or circumvent them) will have a frustrating experience in store. The development community, while
being helpful to those who are trying to learn, has little time for those who will not listen or who do not care about the development process.

It is hoped that those who read this document will be able to avoid that frustrating experience. There is a lot of material here, but the effort involved in reading it will be repaid in short order. The development community is always in need of developers who will help to make the kernel better; the following text should help you – or those who work for you – join our community.

Read the rest of the guide here

Related Posts

Fedora 10 Released The Fedora team has announced the public release of Fedora 10, the latest stable upgrade release of the popular Linux operating system. Users may down...
Elisa 0.5.22 Released The Elisa team has announced the release of Elisa Media Center 0.5.22. Elisa Media Center is a free and open source cross-platform media center applic...
Interview with Matthias Ettrich: The Founder of KDE KDE is the one of the leading desktop environments. It is available on Linux as well as other operating systems. In this article, we feature excerpts ...
Distro Update: Zenwalk Live 5.2 The Zenwalk development team has announced the release of Zenwalk Live 5.2, the live CD distro that is based on Zenwalk Current. Zenwalk is a Linux di...
Built to last It has now been almost exactly five years since kernel development community tentatively started using the git source code management system with the ...
Trolltech Renamed to Qt Software Trolltech ASA, which was acquired by Nokia in June 2008, has been renamed to Qt Software. Qt Software, which will operate as a group within Nokia, wil...

We Recommend These Vendors and Free Offers

ContainerizeThis 2016 is a free, 2-day conference for all things containers and big data. Featured, will be presentations and free, hands-on workshops. Learn more at ContainerizeThis.com

Launch an SSD VPS in Europe, USA, Asia & Australia on Vultr's KVM-based Cloud platform starting at $5:00/month (15 GB SSD, 768 MB of RAM).

Deploy an SSD Cloud server in 55 seconds on DigitalOcean. Built for developers and starting at $5:00/month (20 GB SSD, 512 MB of RAM).

Want to become an expert ethical hacker and penetration tester? Request your free video training course of Online Penetration Testing and Ethical Hacking

Whether you're new to Linux or are a Linux guru, you can learn a lot more about the Linux kernel by requesting your free ebook of Linux Kernel In A Nutshell.


Leave a Comment

Your email address will not be published. Required fields are marked *

*