Linux hit its quarter-century milestone last month. In its latest Linux Kernel Development report (download and registration required), the Linux Foundation made note of the anniversary, while breaking down the long-term progress of developers and companies in adding to the Linux kernel.
For developers, the most interesting part of the report might come at the end, when it breaks down “lessons from 25 years of Linux.” One of the key takeaways? Short release cycles.
“In the early days of the Linux project, a new major kernel release only came once every few years,” the report stated. “That meant considerable delays in getting new features to users, which was frustrating to users and distributors alike.” Longer cycles also means more code (and features) to build, integrate, and trouble-shoot.
Short cycles eliminate the bulk of these issues, while imparting some additional advantages: “Integrating new code on a nearly constant basis makes it possible to bring in even fundamental changes with minimal disruption.”
Other lessons noted by the report include the importance of a hierarchical development model, not to mention consensus among developers and stakeholders.
Although short release cycles can indeed offer significant benefits to developers (and customers), they can also undermine a piece of software if mishandled. Firefox is case in point: four years ago, Mozilla kicked the browser’s release cycle into overdrive, which irritated not only users who had to constantly update their software, but also the plugin builders who needed to tweak their own products in response to the new versions. Businesses that used Firefox also found themselves in something of a bind, as the release cycles gave IT departments little time to evaluate the latest changes for security.
Contrast that with Chrome, Firefox’s major competitor. Google’s developers figured out how to rapidly upgrade the browser without driving users or ecosystem partners insane, mostly by restricting updates to once every couple weeks. For software-builders interested in switching to a short release cycle, the Chrome team also published a blog posting a few years back that shows how they push out new versions with a minimum of disruption.
As the developers behind the Linux kernel and Chrome have found, releasing early and often can do wonders for a platform. But there are significant downsides if the updates are rolled out at a speed that irritates users.