For a long while now WebKit (derived from KHTML) has been marching towards being the dominant rendering engine of the web. Competing against Microsoft Corp.'s (MSFT) proprietary Trident engine and the Mozilla Foundation's open-source Gecko engine, WebKit powers a number of browsers.

But today Google shook up the browser tree, announcing that it would be branching Chromium's rendering engine off of WebKit. The new engine will be dubbed "Blink". What's more Opera has already announced that it will be joining the new effort.

Google says its main reason for jumping to a new branch is because it uses a more complex multi-process model than Apple -- the other biggest WebKit contributor. Google's Adam Barth writes:

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. This has slowed down the collective pace of innovation.

The change won't happen overnight, but the jump means that the engine behind Chrome (Blink) and WebKit will gradually drift apart.

II. Practicality or a Competitive Maneuver?

Alex Russell, another Google Chrome engineer, reemphasizes this point, predicting that coverage on Blink will be full of "tripe we’re about to sell each other as 'news.'" He writes that the two major drivers of the switch were development time and processing speed. He writes:

Why couldn’t those cycle-time-improving changes happen inside WebKit? After all, much work has happened in the past 4 years (often by Googlers) to improve the directness of WebKit work: EWS bots, better code review flow, improved scripts and tools for managing checkins, the commit queue itself. The results have been impressive and have enabled huge growth and adoption by porters. WebKit now supports multiple multi-process architecture designs, something like a half-dozen network stack plug-ins, and similar diversity at every point where the engine calls back to outside systems for low-level implementation (GPU, network, storage, databases, fonts…you name it). The community is now committed to enabling porters, and due to WebKit’s low-ish level of abstraction each new port raises the tax paid by every other port.

As James Robinson has observed, this diversity creates an ongoing drag when the dependencies are intertwined with core APIs in such a way that they can bite you every time you go to make a change. The Content API boundary is Blink’s higher-level “embedding” layer and encapsulates all of those concerns, enabling much cleaner lines of sight through the codebase and the removal of abstractions that seek only to triangulate between opaque constraints of other’s port.

In other words, aside from the process model, another place where Apple and Google's objectives differ is platform support. Google supports many platforms -- Apple supports only one. Google wants to go back to the drawing board and better encapsulate the platform implementations to prevent them from slowing the overall engine.

'Google is leaving Apple on its lonesome to develop WebKit. [Image Source: Google]

But as much as Mr. Russell emphasizes practical necessities, there is one implication that's at least an interesting coincidence, to say the least: Google branching away from the core WebKit is a major blow to Apple.

For some time now Apple could rely on Google to make WebKit as fast and reliable as possible. Apple, thus, effectively gained a better Safari for Macs and i-devices thanks, in part, to Google's labors. Now it will have to go it alone.

Chrome is still about twice as fast in Peacekeeper. But I agree is seems to do better with memory management. Oh and it annoys the hell out of me that I still cannot choose the installation folder for Chrome - it's hidden somewhere in AppData and it's quite shocking to see it using >300MB.

If you download the "offline installer" for all users, it will install to program files.

The idea of appdata being its install location for default web installations is the same concept behind a virus planting itself in your appdata folder. It doesn't need admin rights to go there. So even a person locked down from installing apps to programfiles can usually install chrome under their user profile. It also doesn't need admin rights to update itself. When in program files, you do need admin rights to put files there.