Google just announced that it is forking WebKitand launching this fork as Blink. As Googledescribes it, Blink is “an inclusive open source community” and ”a new rendering engine based on WebKit” that will, over time, “naturally evolve in different directions.” Blink, Google says, will be all about speed and simplicity. It will soon make its way from Chromium to the various Chrome release channels, so users will see the first Blink-powered version of Chrome appear on their desktops, phones and tablets in the near future.
THE “COLLABORATION HAS BEEN FANTASTIC”
As Google’s VP of Engineering Linus Upson and Alex Komoroske, Google Product Manager for the Open Web Platform team, told me yesterday, the decision to fork WebKit was entirely driven by the engineering teams and solely based on the fact that the engineers felt constrained by the technical complexity of working within the WebKit ecosystem. Komoroske noted that when it comes to working with the other companies involved in the WebKit project, the “collaboration has been fantastic.”
This decision clearly wasn’t made lightly. Indeed, as Upson stressed when I talked to him yesterday, “management asked a lot of hard questions” about this move, but in the end, the decision was made in order to reduce the technical complexity of evolving Google’s rendering engine in the direction the team wanted to go in.
BLINK: SPEED AND SIMPLICITY
Specifically, Komoroske noted, Chromium’s multi-process architecture is very different from the rest of WebKit (Chromium is the open-source project behind Chrome and Chrome OS). Having to integrate Google’s way of doing things with WebKit and what the rest of the WebKit partners were doing was “slowing everybody down,” Komoroske said.
As an open-source project, both Chromium and Blink are open to outside committers, though as is typical for these kinds of projects, they’ll have to be nominated to become project members.
For now, WebKit and Blink pretty much look the same, but Google expects that they will evolve in very different directions over time. Komoroske, for example, would like to run iframes in different processes, but that’s something that’s very difficult to do with WebKit right now.
For now, though, developers won’t notice too much of a difference as most of the work will focus on internal architectural improvements. Google says, for example, that it will be able to “remove 7 build systems and delete more than 7,000 files—comprising more than 4.5 million lines—right off the bat.” Over time, Google says, this will results in a “healthier codebase” and lead “to more stability and fewer bugs.”
The WebKit project was started by Apple after it forked the KDE project’s open-source KHTML engine for its Safari browser. In an unusual move – and after a lot of back and forth between the KHTML team and Apple – Apple announced in 2005 that it would open source WebKit, and Google then adapted it for its Chrome browser. Interestingly, Google actually used a forked version of WebKit in the early days of Chromium but later reconciled its fork with the rest of the project.