The Linux Kernel-Dev's Song

or, I am the very model of a modern Linux Kernel Dev

Because the world clearly needs another parody of the Major-General's Song
… and no, I'm not the model of a kernel dev, modern or otherwise, just a net/ and drivers/net/ gnome.

The song has also been annotated with a mixture of pithy comments, random technicruft, and H2G2 references.

Song — KERNEL-DEV

KERNEL-DEV: I am the very model of a modern Linux Kernel dev,
In git I keep my changes, I can look up each eternal rev,
I read LKML, and I can quote the whole MAINTAINERS list,
And what the coding style is to avoid getting Dave Miller pissed;
I run checkpatch religiously and sometimes make with CHECKER on,
I even ran a test for full compliance under POSIX.1,
I have a penguin hanging in my car instead of fluffy dice,
And even run a webserver that's using zero-copy splice().

Of course, git commits are only eternal if they appear on a public branch; until then they can be discarded
Keeping up with LKML may actually be a more difficult feat than memorising MAINTAINERS.
This is, of course, impossible.

This is, of course, impossible.

ALL:And even run a webserver, etc.
KERNEL-DEV: I'm very good at posting to comp.os.linux.advocacy,
And shouting down the stupid Windows users with my mockery,
In short, while I'm no Viro nor an Alexander Gordeev,
Still I'm the very model of a modern Linux Kernel dev.
This is, of course, futile.
This is, of course, easy.
No disrespect is intended to Gordeev, whose name was merely chosen for the rhyme. Meanwhile, I wouldn't dare disrespect Al Viro.
ALL:In short, while he's no Viro nor an Alexander Gordeev
He is the very model of a modern Linux Kernel dev.
KERNEL-DEV: I know our mythic history, in patches and in BitKeeper,
I feed my zombie daemons to the maw of the init reaper,
I quote in haiku flaming from the Tanenbaum OS debate,
On microkernels' folly I can endlessly pontificate,
I can tell undoubted Linus rants from Greg K-H and Ted T'so
I know who ought to build with CONFIG_LOCALVERSION_AUTO
I run a bleeding kernel 'soon as it has got to -rc4,
My business card's a CD with a distro based on TinyCore.


Five years from today / We will all be running Hurd / on our SPARCstations
A useful microkernel is, of course, impossible.



ALL:His business card's a CD, etc.
KERNEL-DEV: Then I can write "Hello World" at KERN_CRIT to /dev/kmsg,
And have it replicated through netconsole and rsyslogd,
For, while I'm no Al Viro nor an Alexander Gordeev,
Still I'm the very model of a modern Linux Kernel dev.
If you've written six Hello World programs this morning, why not round it off with breakfast at /dev/full, the restaurant at the end of the filesystem?


ALL:Yes, while he's no Al Viro nor an Alexander Gordeev
He is the very model of a modern Linux Kernel dev.
KERNEL-DEV: In fact, when I know what is meant by "VMA" and "semaphore",
When I can count the jiffies to determine which path went before,
When explanations of the locking proof I really follow through,
And when I know exactly what is meant by this thing "RCU";
When I have learned what progress has been made in modern SMP,
When I can write a module that won't try to call libgcc -
In short, when I have put at least a smattering of practice in,
You'll say a better Kernel Dev has never sent his patches in.

The correct answer being "call time_before(), don't roll your own!"

There are almost as many RCU tutorials for kernel devs as there are Monad tutorials for Haskellers.
Another possible rhyme would have been 'concurrency'.


ALL:We'll say a better Kernel Dev, etc.
KERNEL-DEV: For my kernel coding knowledge, though I suck up to a load of you
Will never get my changes through the rigours of a code review,
But still, though I'm no Viro nor an Alexander Gordeev,
I am the very model of a modern Linux Kernel dev.

If you're defensive about your code and have a thin skin when it comes to criticism, the kernel may not be the project for you.

ALL:Yes, though he's no Al Viro nor an Alexander Gordeev
He is the very model of a modern Linux Kernel dev.

By Edward Cree, with apologies to Gilbert & Sullivan.
The preceding musical number is entirely fictitious; any resemblance to real kernel developers is purely coincidental.