Where are we?
Right now middle of the merge window for 3.18. Speed of development has not slowed down the last couple of years – more than 10K patches per release. The current development model means that we never regress a lot, because we doe relatively small updates.
How about applying your own advice of having more than one maintainer per subsystem at the top, so Linus doesn’t have to do all the final pulls? If you feel your maintainer is not responsive to your needs, speak up about it. Developers should not feel they are waiting for the maintainer.
Where are the challenges in keeping up such a large project?
Testing is the main challenge. Automated testing only helps so much because most of the patches are drivers. The only way we can survive is to have a community that actively tests new kernels.
If you could change a single decision in the last 23 years, which would you change?
Long pause… From a technical standpoint, no single decision has ever been that important, because you can fix them later. Sometimes it’s extremely painful because people start using this interface, but it’s possible. Problems tend to be about alienating users or developers. But there is not a single instance of these that he’d fix, there are many :-). But in general, even if people dislike each other, they do tend to respect the code. On the other hand, when talking over the internet you really shouldn’t be too subtle.
Note: responsive maintainer doesn’t mean responding to e-mail, but rather that the developer sees his code merged.
The release cycle is getting shorter – is that intentional?
It’s a problem for maintainers to keep up the pace. Actually, six years ago the goal was to aim was to have two months release cycles, and indeed we sometimes get their. Right now, the typical cycle is two weeks of merge windows and 7 weeks of rcs. By the end of the cycle, there is a push from developers who have patches pending that add new stuff and no fixes left. Also, the longer the release cycle, the more patches come in in the merge window and the more difficult it gets to stabilize it.
What should you do if you want to become the next Linus?
You shouldn’t do that. You should just do something that you’re passionate about. Forget about “aim to the stars and maybe you’ll hit the moon”, just look at something you want to get done in two weeks and if you nailed it, imagine what you can do next.
How hard is it to become a Linux developer?
It’s actually fairly easy. You need to enjoy a certain amount of pain. Usually people start out as driver developer because there’s so much of that. Becoming a maintainer is a matter of gathering the trust of people, that you’ll keep on doing this taking care of 5000 e-mails per week.
Make a bold prediction about the future of Linux
I will probably release rc1 in about a week.