One of the first things many decision-makers want for any given software product is a roadmap, so they can plan around releases. However, the Linux kernel is and always has been bereft of a roadmap. To counter this, the Linux Foundation announced today that it is offering a Linux Weather Forecast to help provide some guidance to developers and organizations that need to know where the kernel is going.
The forecast page includes guidance on developments in the core kernel, and an overview with a forecast for filesystems, virtualization and containers, security, networking, hardware support, and miscellaneous kernel topics. Jim Zemlin, the Linux Foundation's executive director, described the forecast as a "second layer" for developers "who may not be as tied in" to kernel development and need "easier access to information, [something] easier to digest."
The "chief meteorologist" for the forecast is Jonathan Corbet, executive editor of LWN.net. Corbet has not only followed Linux kernel development closely for many years, he's also a kernel developer and co-author of the popular Linux Device Drivers book.
Corbet says that the forecast is for "anybody who wonders about what they can expect from the kernel development community in the near future, but who does not have the time to follow development more closely via the mailing lists or sites like LWN."
How reliable is a forecast?
The weather analogy for kernel development, and indeed FOSS development in general, is fairly apt. Corbet says that even Linux kernel creator Linus Torvalds rarely tries to predict where the kernel will go and what features will be appearing in the kernel -- but some things are easier to predict than others.
"In truth, it depends on where the code is coming from and what sort of feature it is. Certain kinds of features (device support, for example) are fairly predictable: once you have a skilled developer with the hardware and some sort of documentation to work from, things will happen in the near future. Some kinds of core kernel features can be hard to get right and hard to sell to the other developers, and one never knows if they will be merged until it happens.
"Then there are some developments (like KVM) which appear out of the blue and fly into the kernel; those are impossible to predict. They are also some of the most interesting, though: there is no limit to the imagination and the capabilities of Linux developers."
Corbet also says it's not uncommon for features to be delayed or left out completely after being slated for inclusion. "A famous case was the extended volume management system (EVMS) code done by IBM. Linus had said he thought he would merge it, only to switch to the device mapper code at the last minute. More recently, the staircase deadline scheduler by Con Kolivas looked set to be merged, but it did not work out that way."
Despite the occasional surprise, Corbet says, "Usually the path into the kernel is more predictable. If the functionality itself is not controversial and the developers are capable and responsive to feedback, code will be merged in a fairly straightforward manner. Big surprises do not happen that often."
What about the rest of the stack?
Knowing where the kernel is going is certainly useful, but what about the other important components of Linux distributions? The forecast includes a stub for KDE and GNOME, but there are a lot of userland applications that are of interest to developers and organizations that work with Linux.
Corbet says that other FOSS applications are on the list, but "following all of those projects closely enough to say something useful about them is a *lot* of work" -- too much work, obviously, for one person. Zemlin says that the Linux Foundation will be allowing contributions from the community at some point. For now, community members can submit comments on the forecast as well as suggestions for additional areas to be covered.