• On MovieTome: See the villain of IRON MAN 2!
August 18, 2008 8:45 AM PDT

Torvalds to kernel hopefuls: Think 'trivial'

by Tom Espiner
  • Font size
  • Print
  • 5 comments

Linux project lead Linus Torvalds says it's not easy to become a major contributor to the Linux kernel.

In an e-mail interview with ZDNet.co.uk on Friday, Torvalds said that, while it is relatively easy for coders and organizations to contribute small patches, the contribution of large patches, developed in isolation, could lead to both new and established contributors becoming frustrated.

"It's definitely not easy to become a 'big contributor'," wrote Torvalds. "For one thing, the kernel is quite complex and big, and it inevitably simply takes time to learn all the rules--not just for the code, but for how the whole development environment works. Similarly, for a new developer, it will take time before people start recognizing the name and start trusting the developer to do the right things."

Linus Torvalds and penguin

Linus Torvalds and the Linux penguin mascot.

However, Torvalds argued that Linux kernel processes do simplify the process of contributing small patches.

"(We) make it fairly easy for people to ease into kernel development," wrote Torvalds. "It seems to be working too. We literally have thousands of people with patches attributed to them in each release."

Torvalds wrote that nobody should expect to start sending "big and complex" patches early, as it takes time for new contributors and established coders to learn how to interact effectively.

"The worst thing anybody can do is to study the kernel alone and try to learn things in private, and then, however many months later, present all the established kernel developers with a big patch that just comes out of the blue," wrote Torvalds. "That's just going to be frustrating for everybody."

Torvalds advised new contributors to "start small" by sending "trivial patches."

"It may not sound exciting but, quite frankly, I don't think anybody who starts out believing that they want to rewrite some big piece of the kernel should even bother. Reality isn't that simple."

Torvalds acknowledged that frustrated developers may become alienated by the Linux development process, which he said could be improved.

"I don't think a 'perfect' process exists," wrote Torvalds. "Of course, some people will be alienated, and there's no doubt that the process could probably be improved."

The developer warned that Linux kernel development was "not a 'warm and fuzzy' environment where people sing Kumbaya around the fireplace" and that some "very opinionated people" were involved.

"The kernel is about pretty harsh technical issues, and mistakes are really frowned upon," wrote Torvalds. "In an OS kernel, there are simply more security and stability requirements, and the bar is really higher in some respects. That will inevitably also reflect in the response to patches."

Nonetheless, Torvalds said the patching process in Linux was more about human interaction than a quantifiable set of steps, such as those listed in official international standards processes.

Although thousands of developers are involved in Linux kernel coding, Torvalds argued that the development process was still efficient. "I think that one of the things we've been very good at is to scale up with a good network of maintainers, so that most people involved actually don't work closely with more than a handful of people," he wrote.

Mark Taylor, president of the Open Source Consortium, told ZDNet.co.uk on Friday that, in general, enterprise-class open-source projects are designed to scale appropriately.

"The whole process scales very well," said Taylor. "Normally the people you find at the core (of open-source projects) are professional software engineers; these guys know how to run software projects."

Torvalds' and Taylor's comments follow the recent publication of a guide to Linux kernel development by the Linux Foundation, which aims to prevent developers becoming frustrated with the process.

Tom Espiner of ZDNet UK reported from London.

Recent posts from Business Tech
HP acquiring 3Com
AMD talks 'Hemlock' graphics, next ultra-thin laptops
Mozilla releases second Firefox 3.6 beta
Cloud to suck money out of market, report says
Logitech buys video-conferencing firm LifeSize
Adobe to cut 9 percent of workforce
Google hopes to remake programming with Go
Intel Celeron chip anchors $249 Acer Windows 7 laptop
Add a Comment (Log in or register) (5 Comments)
  • prev
  • 1
  • next
by joetesta70 August 18, 2008 1:44 PM PDT
0 comments. I guess Linux is REALLY popular.
Reply to this comment
by The_Decider August 18, 2008 7:59 PM PDT
Yeah, right.

What percentage of Linux users can even write kernel code? It is a very low number, although I would wager a lot that it is a much higher percentage of Windows users.

Ripping Vista apart on technical merits is simple. Not that simple to do so for Linux, especially since MS fans have no real technical knowledge. Sorry knowing a little bit of a language and being able to follow instructions on editing that wart known as the registry doesn't count.
by Seaspray0 August 18, 2008 4:15 PM PDT
That depends on who you are, Joetesta. On the individual level, it can be 0% popular or 100% popular on a per person basis. It's like having cancer. If you have it, it's a big deal and means alot. Maybe that's a bad analogy, but I think you get the idea. I think we should be more concerned with promoting honest opinions about the software we use rather than bash other OS's we don't use... unless the person posting is a fanboi spewing fud, and then the gloves are off.
Reply to this comment
by The_Decider August 18, 2008 7:55 PM PDT
Like you and Joe here spreading positive lies about Vista?
by The_Decider August 18, 2008 8:11 PM PDT
It is very possible to do what Linus described as frustrating privately and then slowly leak out the patches if that is what they want. I am skeptical that his idea of sending in minor patches is a good way to learn the kernel. Unless it is a obvious and simple error like bugs like some buffer overflow exploits are, a programmer would need to understand a lot to find it. It is a chicken/egg situation.

Ripping things out of the kernel and reimplementing them is the best way to learn. Compare it to the production code, tweak your code and have fun. Of course, this sort of work is not meant to be released. It would be mind-boggling funny if someone rewrote a module dealing with memory management and tried to submit it! It is a good exercise to learn basic computer concepts and really have them stick. I find that many CS students struggle with getting their head wrapped around how L1 and L2 cache relate to processor registers and main memory, especially in a multicore environment. Same goes with disk space, VM and RAM and how it is managed via page tables and TLB.
Reply to this comment
(5 Comments)
  • prev
  • 1
  • next
advertisement

As alternative energy grows, NIMBY greens

With more renewable energy projects trying to come online, the country grapples with the balance between local land use and a national push for clean energy.

Google to remake programming with Go

A Unix co-creator is among those behind a language Google hopes will speed computers and programming. Today, Go becomes open-source software.

advertisement

About Business Tech

Your destination for the latest news on enterprise-level information technology, from chip research and server design to software issues including programming, open source and patents.

Add this feed to your online news reader

Business Tech topics

advertisement
advertisement

Inside CNET News

Scroll Left Scroll Right