Why Linux Is Not Attracting Young Developers
judeancodersfront writes "Jonathan Corbet recently pointed out at the Linux Foundation Collaboration Summit that the Linux kernel team was getting older and not attracting young developers. This article suggests the Linux kernel no longer has the same appeal to young open source developers that it did 10 years ago. Could it be that the massive code base and declining sense of community from corporate involvement has driven young open source programmers elsewhere?"
...the thing has gotten so big now [what is it - like 20,000 files which get compiled in the basic kernel?]
But that's counting each and every file system, each and every architecture and most significantly each and every hardware driver. The amount of code you need to understand to be able to, for instance, write a new network driver, is substantially less than the totality of the Linux kernel source.
Out of ~25k *.[ch] files I count ~9k in drivers alone, plus ~1k in sound. There's ~1.5k in fs and kernel has ~200. Although arch has ~10k only ~700 of those are for x86. Yes, this is a very rough and ready, not to mention incomplete, set of figures, but you get the idea.
It's not that bad. If you are interested in getting into it the easy way, here is a very nice book. O'Reilly has another good book about drivers, if you just want to write drivers. The kernel is also well organized so if you want to work on the USB section, for example, it is not hard to figure out where to look. I've seen projects with 20,000 lines of code that were harder to understand.
It's true that there are ~30,000 files in the Linux kernel, but 25,000 of those are either driver code or architecture specific code, so if you only care about the x86 and aren't interested in drivers, you really only have 6,000 files you need to worry about. If you are interested in a specific part of the kernel, it is even easier: for example, if you are only interested in the ext3 filesystem, that's around 160 files. Which is very manageable.
Qxe4
It's a lot less indimitating than it sounds.
that 4 million lines is spread across about 22 different architectures, a couple dozen file systems, and thousands of device drivers. The actual amount of that which one needs to understand to work on something is vastly smaller.
upon the advice of my lawyer, i have no sig at this time