Google's Marc-Antoine Ruel, a software developer at Google, has providing some fascinating insight in the Chrome release process, an effort that he described as "upgrading 200 million users within 6 hours."
Google's Marc-Antoine Ruel, a software developer at Google, has providing some fascinating insight in the Chrome release process, an effort that he described as "upgrading 200 million users within 6 hours." Of course, it's not just about 6 hours and the time it takes the Chrome installed based to ping Google for updates and download and install the software. It's about the way Google has created an extremely well-oiled browser development mention that guarantees what users perceive to be a reliable delivery of a new browser every six weeks.
Ruel's document, which refers to a presentation he gave last month in Iceland, provides information on how Google reduces "friction" for its developers, for users, for the software and the delivery of security fixes.
Google is paranoid about the stability of its master branch. Ruel noted that most new features are directly developed on the master branch, but are disabled "just after forking a release branch if not stable worthy." Google has all experimental features available on its Canary channel. The developer channel sees fewer features as the "features that have no chance to go to stable in their current state are disabled," Ruel said. Developers will have to wait for the next release to get those features into the browser. He noted that the trunk of the browser is always kept in state of being "shippable" and there is "enough automated testing to continually prove that trunk is shippable."
Google refers to its release process as "pipelining releases" which aims to take a browser branch from the developer to the beta and the stable channel in six weeks. There are secondary processes which allows Google to do "dot releases" to introduce fixes in the beta and stable channel. Ruel said that each branch lives for only 18 weeks: "We don't care about any code that is more than 3 months old, which helps us tremendously to stay flexible on the code base refactoring."
He also explained that rapid releases help Google to introduce "gradual, gentle" upgrades over time, which makes the browser update process easier for users. Ruel walked around the still controversial automated browser update feature, but hinted that users value convenience and don't want to be bothered with unnecessary system messages, or system restarts after installation. As long as the software update remains convenient for the user, Google apparently believes that the automated update is seen as a benefit by users. As far as security updates are concerned, Google hopes for a "transparent" and "magical" effect for the user: " Subtle enough that most users won't realize but power users will act upon," Ruel said. "In both Google Chrome and ChromeOS, we decided to add a little green arrow when an update is ready to be installed."