It's not that we're not interested in the kernel, it's that the kernel moves so rapidly along with the sheer size of the kernel, where's one supposed to start?
I've seen some Google tech talks from Andrew Morton and Greg Kroah-Hartman, they both recommend that patching the kernel is the best way of learning it.
Most universities that I know of either use OS161 [http://www.eecs.harvard.edu/~syrah/os161/] , Nachos [http://inst.eecs.berkeley.edu/~cs162/sp10/] or Minix from Tanenbaum. These kernel's are small enough that a student can know all of it, but is that any good for "real" kernel's like Linux, BSD, etc...?
I don't think systems programming has lost it's "cool", any respectable university still has a low level operating systems course where they either work on simulated hardware like SYS161 or work on actual real hardware where they have to get their hands dirty with assembly for context switches/interrupt handlers/low level IO (UART's and Serial/Parallel) and do Processes/Multiprogramming/VM in C.
And no, we're not given any IDE's like Visual Studio, it is still just a text editor (vi or emacs, pick you weapon) along with Makefiles and gcc/gdb. And yes, we were taught Java/.NET/Scheme, and we know when and where to use these languages/tools appropriately.
Its more about transferring these experience from the "Ivory Tower" world of academia to the real world, and we have no idea how to start that.
How did you experienced developers start? Did any of these academic kernel's help at all?