This week we talk to Frédéric Weisbecker in our 30 Linux Kernel Developers in 30 Weeks series. From the northeast regionof France, he tells us how we got started with Linux and gives some pretty specific and useful advice for people who want to do the same. He also shares his favorite April Fool's Day fun with the Linux kernel community.
What role do you play in the community and/or what subsystem(s) do you work on?
That tends to evolve over time. I've been working on tracing with the ftrace and perf events subsystems. Then I spent some time helping remove the big kernel lock. while meanwhile contributing some cleanups here and there. Nowadays I'm mostly working on full dynticks support.
Where do you get your paycheck?
Red Hat. Red Hat is a really great company to work in for me because, besides assigning me to some Red Hat Enterprise kernel specific tasks, they give me enough freedom and time to work upstream on topics like full dynticks.
What part of the world do you live in? Why there?
In northeast France, because family and friends are here.
What are your favorite productivity tools for software development? What do you run on your desktop?
How did you get involved in Linux kernel development?
A friend of mine installed Linux on my desktop, something like nine years ago. I was not even into programming at that time, but it was about the same period when I started to wonder how software was made. That was early in my 20's. I dug deeper and deeper, going from web programming (Php) to python to C and x86 assembly. Then I met that boundary with the kernel. I developed a big curiosity about how software communicates with hardware. Having detailed answers about that was hard, though. I read "Linux Device Drivers, 3rd Edition" several times. I only truly got my hands dirty a few years afterward, though. I had an Atheros wireless card and the driver (ath5k), which was not entirely ready. I wanted to help its development, so I tried to use mmiotrace in order to trace the IO made by the proprietary driver. There was just a missing feature to insert user messages in the middle of the trace to mark some steps. So I hacked that in ftrace and finally got sucked down there for good.
What keeps you interested in it?
Working with talented people. Debating best designs. And, having a large user base. Also as the time goes, I care much more about consolidation of work. Sublimation bonus when it ends with negative diffstats. This is a way to slightly delay the evolution to the final issue: our kernel imploding under its ever growing complication.
What's the most amused you've ever been by the collaborative development process (flame war, silly code submission, amazing accomplishment)?
I've been amused many times by some patches from April 1st (April Fool's Day), or even the rest of the year. A few examples:
http://thread.gmane.org/gmane.linux.power-management.general/15888 or https://lkml.org/lkml/2012/3/31/131
What's your advice for developers who want to get involved?
A good thing would be to start by solving a problem you specifically have: a bug that impacts your machine or a missing driver. Now this kind of issue is harder to meet these days as more and more hardware is supported. So another way is to watch the bug reports in the Linux kernel mailing list, try to investigate and test people's patches. Also watch new developments through patchsets posted in LKML (those are often listed there). Then apply these patches, run them, report the bugs you find. Once you get familiar with such process, you may start to solve the bugs yourself. Get familiar with a subsystem and what needs to be done there.
This process can take a while and you need to be patient and pugnacious but it's worth it.
What do you listen to when you code?
I really can't listen to any music when I code, unless I'm doing something very mechanical. But I'm very much into music otherwise, on a broad range of styles in general. I just have a specific affinity with metal and electronic music. And about that metal thing: I like it doom, black or gothic. Quoting some random bands: My Dying Bride, Verdunkeln, On Thorns I lay, Therion. Then when the amount of metal reaches the headache, I switch to The Gathering, Emiliana Torrini, NIN, Hooverphonics and more bands unrelated altogether.
What mailing list or IRC channel will people find you hanging out at? What conference(s)?
LKML. And I also hang in OFTC #linux-rt . About conferences it depends. I usually go to the Real Time Linux Workshop, sometimes Linux Plumbers Conference, Linux Foundation Collaboration Summit, and LinuxCon. And I usually don't miss the Chemnitzer Linux Tage.