Yesterday came the surprise news that Google was going to kick Apple's WebKit rendering engine to the curb and replace it with a new open source rendering engine called Blink, based on WebKit.
According to Google, the reason behind the switch is the fact that WebKit has grown too complicated, and making the switch to its own rendering engine will benefit projects such as the Chrome browser and Chrome OS.
"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," writes Adam Barth, software engineer at Google.
"This," he continues, "has slowed down the collective pace of innovation."
It seems like Google has given this a lot of thought, and the company believes that it will be able to remove seven build systems and delete more than 7,000 files from its rendering engine compared to WebKit, which means some 4.5 million fewer lines of code.
Now, I'm all for simplification, and getting rid of 4.5 million lines of code from a project is undoubtedly good for stability and security. And, as noted by Barth, having multiple rendering engines will no doubt lead to more innovation.
But there's more to this switch than meets the eye.
The fact that Google focused on simplifying the WebKit is telling. Sure, Google is interested in adding new features, but in such a multi-platform world, the idea of filling Blink with features that are incompatible with other rendering engines is almost unimaginable.
The reason Google wants Blink is down to one thing — the post-PC era. WebKit is long in the tooth, and is a product of PC thinking. Google wants to change that.
There's no doubt that Apple has effectively managed the project and transformed it into a capable post-PC era rendering engine, but it is clear that if Google can eliminate 4.5 million lines of code from the project, then there's a lot of dead wood in there. And while having all that dead wood buried in the codebase might be fine on desktop and notebook systems with a beefy processor and bags of RAM, on mobile systems with limited processing power, storage, RAM and power, a more focused, streamlined rendering engine would be better for all.
Another reason why having its own rendering engine will be good for Google is differentiation. If Google can make Blink significantly better than WebKit (faster, less buggy, safer), then this gives products such as Android, Chrome, and Chrome OS an advantage over the competition. Given the world we now live in, a faster, more efficient, safer browser is something that would be welcomed by many.