If you have any interest in Linux kernel development or software development in general, I recommend this podcast of a talk by Andrew Morton, lead maintainer of the Linux kernel (I believe he shares this duty with Linus Torvalds; both are employed through the Open Source Development Lab (OSDL) in Portland, OR). Morton, a deeply thoughtful guy, gives a nice overview of the current organization and process of Linux development.
A few interesting things I learned from the talk:
1) The majority of code contributors are now employed by companies in positions where contributing to the Linux kernel is part of their job description. This is quite a contrast to the early days of Linux, when it was mostly the work of enthusiasts. Morton describes the economic and GPL licensing factors which make it attractive for corporations (even large ones, like IBM or HP) to contribute to the kernel code base.
2) More than 50% of the code is contributed by 20 or so individuals (this is out of thousands or more who have participated). Morton is restrained, but can't help characterizing these people as off-scale coders who are far beyond the level of typical professionals. Does this say something about the distribution of talents in programming, and the relative productivity of exceptional versus average developers?
3) Product testing (as opposed to coding) is still largely dominated by true volunteers and hobbyists. Tens of thousands download each new image of the kernel to see whether it will run on all manner of obscure hardware.
Steve,
ReplyDeleteMorton is restrained, but can't help characterizing these people as off-scale coders who are far beyond the level of typical professionals. Does this say something about the distribution of talents in programming, and the relative productivity of exceptional versus average developers?
Another example is Donald Knuth and his TeX, Metafont and WEB. Amazing contributions!
MFA