Blink: Chrome’s New Rendering Engine

Craig Buckler
Craig Buckler

In a surprise statement released last week Google announced that Chrome and Chromium are to adopt a new rendering engine named ‘Blink’. Blink is a fork of Webkit introduced because:

  • Chrome uses a different multi-process architecture to other Webkit browsers
  • It provides Google with further performance improvement opportunities.

Google stated:

Blink’s mission is to improve the open web through technical innovation and good citizenship.

We believe that having multiple rendering engines — similar to having multiple browsers — will spur innovation and over time improve the health of the entire open web ecosystem.

All very noble. But was Google’s decision politically motivated? Webkit is open source; there are no technical reasons why Google couldn’t implement improvements. However, Webkit is largely controlled by Apple — a competitor. At best, Safari would have the same technologies. At worst, Apple could block features which offered Google a competitive advantage (such as Dart).

Regardless of the reasons, Blink is good for the web.

Webkit has never been a single rendering engine so another fork will have little immediate impact. Over time, Blink will proceed along a different path unencumbered by Webkit stakeholders. The engine will be one of Google’s top priorities and should evolve rapidly.

Blink will appear in Chrome 28 and also be adopted by other browsers based on Chromium — including the new version of Opera and RockMelt. We may have lost Presto, but Blink goes some way to redress the balance. The web has four major rendering engines once more — even if two will be mostly identical for a few months.

Will There be a New Vendor Prefix?

No. Blink will continue to support some -webkit prefixes for legacy compatibility but all prefixes will eventually disappear. Experimental DOM, CSS and JavaScript features will be available without a prefix but the developer must enable those facilities with a single setting in about:flags.

I’m not wholly convinced it’s a major improvement. Unless other vendors embrace the policy, developers will have the same number of prefixes to manage and remember (or forget).

Other Downsides?

Apple has most to lose. Webkit’s development team has been cut by 50% and the engine has just lost almost 40% market share. The web is everything to Google but a distraction for Apple; Safari could fall behind other browsers.

Testing has also become a little more difficult for web developers. While you could never rely on Chrome-compatible code working in Safari, differences were rare. That’s no longer the case.

The situation was complicated further when Apple dropped Safari on Windows. Windows developers must either buy a Mac, hope other Webkit browsers are close (Dooble, QupZilla, SlimBoat) or rely on Apple providing test facilities like Microsoft did for OS X users.

Finally, while Blink is technically open source, it’s Google’s baby. Chrome’s dominance means Google can change Blink in ways that were not possible before. The company could be dictating web standards before we know it — especially if they enable non-prefixed features which operate differently in other browsers.

Despite the pitfalls, Blink seems an appropriate name — the web’s future just became a little brighter.

Unless you think otherwise?…