The WebKit browser engine, which underpins a surprising number of web browsers from a variety of different providers, looks set to get some serious competition on two fronts: Mozilla and Samsung's Servo and Google's Blink.
Forked from KHTML, the web rendering engine developed by the KDE project for its homebrew browser Konqueror, WebKit forms the heart of Google's Chrome browser, Apple's Safari browser, and Opera - giving it a 40 per cent share of the web browser market, ahead of Internet Explorer's Trident engine and Firefox's Gecko engine. Originally an internal Apple project to build on the KHTML engine, WebKit was fully open sourced under the BSD licence in 2005.
Since then, it has undergone quite a few changes - but not, apparently, enough to satisfy Google. According to a post made late yesterday on the official Chromium Blog
by software engineer Adam Barth, Google is planning to create a rendering engine of its own dubbed Blink.
'Chromium uses a different multi-process architecture than other WebKit-based browsers, and supporting multiple architectures over the years has led to increasing complexity for both the WebKit and Chromium projects,
' Barth claimed in explanation of his team's decision. 'This has slowed down the collective pace of innovation - so today, we are introducing Blink, a new open source rendering engine based on WebKit.
A fork of the WebKit project, Blink is to be released under a compatible open-source licence - meaning it would be possible for Apple, or any other team working on WebKit, to fold changes made by Google back into the main WebKit source - but will be tweaked specifically for Google's needs. In the future, it will become the rendering engine of both the desktop and mobile versions of Google's Chrome browser, and the engine that drives its ChromeOS web-based operating system.
Before that can happen, there's plenty of work to be done. 'The bulk of the initial work will focus on internal architectural improvements and a simplification of the codebase. For example, we anticipate that we’ll be able to remove seven build systems and delete more than 7,000 files—comprising more than 4.5 million lines - right off the bat,
' claimed Barth. 'Over the long term a healthier codebase leads to more stability and fewer bugs.
It's not just the WebKit world that's getting a shake-up today, either: at the same time as Google announced Blink, the Mozilla Foundation - the group behind open-source browser Firefox - announced Servo
. Developed in partnership with Samsung, Servo is written in a new programming language dubbed Rust
which, the group claims, is designed to help programmers better harness the inherent parallelism of modern multi-core processors while also introducing new security features that could help reduce successful attacks against web browsers - one of the most common methods of gaining unauthorised access to a computer today.
'In the coming year, we are racing to complete the first major revision of Rust – cleaning up, expanding and documenting the libraries, building out our tools to improve the user experience, and beefing up performance,
' explained Brendan Eich, Mozilla's chief technical officer, of the partnership with Samsung. 'At the same time, we will be putting more resources into Servo, trying to prove that we can build a fast web browser with pervasive parallelism, and in a safe, fun language. We, along with our friends at Samsung, will be increasingly looking at opportunities on mobile platforms. Both of these efforts are still early stage projects and there's a lot to do yet, so now is a good time to get involved.
Unlike Google, Mozilla isn't talking about replacing the Gecko rendering engine that powers its Firefox browser just yet - but that's clearly the end-goal. With better security and improved performance, especially on the multi-core processors that are becoming increasingly prevalent in the mobile market, future Firefox versions are likely to switch to Servo just as soon as the platform is feature-complete compared to Gecko.
For end-users, the news is all good: Chrome - and Chromium, its open-source equivalent - users can expect to see improvements in functionality and performance in the near future, while Firefox users might have to wait a little while longer but can still look forward to the promise of a faster and more secure browser. For web developers, the news is something of a mixed bag: a split in the WebKit base means, potentially, a whole other rendering engine to code for and to test for incompatibilities, while Servo will add yet another variable to the mix.
Details regarding Servo are available on the GitHub repository
, while the Chromium webpage holds information on Blink