Google announced this week that it is going to replace the open source WebKit browser rendering engine with a fork of WebKit’s WebCore component known as Blink. The move means that Google and Apple will no longer share development of WebKit.
WebCore is a layout, rendering and document object model library. Blink is implemented on top of the Chromium Content module, and so must run in Chromium. This also means it can’t be ported directly to other platforms, but must be ported in the Chromium Embedded Framework instead.
Google is making the change because Chromium uses a different multi-process architecture than other WebKit-based browsers, and it’s become increasingly complex to support both the WebKit and Chromium projects. That is slowing down the pace of innovation, Google software engineer Adam Barth said in a company blog post when announcing the change.
“Retrofitting changes and stabilizing them can be costly and time-consuming, so these differences [in multi-processing architectures] can be significant,” Al Hilwa, a research program director at IDC, told TechNewsWorld. “This is one of the drivers for the change, but implementing a separate architecture in itself was the key divergence point.”
In the short term, the use of Blink will bring little change for Web developers, but some have expressed concerns about the long-range implications of the move.
Google did not respond to our request to comment for this story.
Blink if You Like Change
Google will first remove seven build systems and delete more than 7,000 files, comprising more than 4.5 million lines of code.
The search company will use the Chromium Bug Tracker to track and discuss desired features. It will use Rietveld, Chromium’s code review tool, to comment on implementation strategies for changes it has decided to make in the code.
New features added to Blink that are shipped will adhere to open standards. Only changes that are exposed to the open Web, or have implications for Web developers, will be governed by guidelines Google has drawn up for developers.
The review process for proposed features will consist of code reviews, announcements to the [email protected] list, and formal API reviews. Proposed features will be scrutinized proportionately to their compatibility risk.
Google plans to work with other browser vendors to develop a common approach to shipping experimental features. Development of new features will be tracked on the Chromium Features Dashboard.
Why Google’s Forking WebKit
“It is clear that there are political and strategic, as well as technical motivations [for the move],” Hilwa said. “Typically, market leaders do not like to depend on each other for strategically important components of their platforms. In this case, Google cuts the cord with Apple on WebKit, and the browser is a hugely important part of the platform.”
Google’s entire strategy is Web platform-based and “doing this is key for strategic independence,” Hilwa added.
The Blink announcement “is filling out more of the pieces of the puzzle with Samsung and Mozilla,” Jeff Orr, a senior practice director at ABI Research, told TechNewsWorld. “You’re seeing an industry — by which I mean the browser marketplace — that’s trying to get insights into how they’re going to develop the next big thing.”
Mozilla on Wednesday had announced that it’s codeveloping Servo, a next-generation browser engine, with Samsung, a move that Orr said indicated Google had to begin considering working closely with Mozilla.
“It’s not a coincidence that these two stories broke within a day apart,” he said. “Both these announcements are an effort to reignite the value of the browser as an interface.”
Impact of the Change
Users might not notice any difference after Blink features appear in Chromium, “but the odds are that there will be differentiation that will affect developers to some degree,” Hilwa warned.
Opera will also switch to Blink. However, Opera spokesperson Falguni Bhuta told TechNewsWorld that “the forking and name change have little practical influence on the Opera browsers.”