Blink, Servo And Rust: A Good Week For Browsers

It’s sure been an interesting week for this of us who cover browsers. Last weekend, we heard that Internet Explorer 11 will probably support WebGL and SPDY. Then, on Tuesday I got an email from Mozilla, asking if I had time to get on the phone with Mozilla’s CTO Brendan Eich to talk about the organization’s next generation browser engine Servo and the Rust language it is written in. Turns out, Mozilla Research wasn’t just going to work on this alone, but managed to get Samsung to help out with bringing this new engine that’s optimized for multicore and heterogeneous computing architectures to Android and ARM. Given that Mozilla had remained relatively quiet about Servo until now, it was a bit of a surprise that it was now ready to put it into the spotlight.

Interestingly, I had heard from Google’s Chrome team earlier in the week and they, too, wanted to talk on Tuesday. Oddly, the PR team was unusually wary about giving me any details before the call (often they’ll give you some background to make sure you can prepare for the call). When Linus Upson, Google’s VP of Engineering, and Alex Komoroske, the product Manager for the Open Web Platform team, told me that Google was going to fork WebKit and launch its own rendering engine Blink based on WebKit, I had to backtrack a few times to make sure I had really heard this right. Outside of a few WebKit insiders, few people expected Google to do this. WebKit is generally seen as a major success and given its dominance on the desktop (thanks to Chrome) and mobile (thanks to Safari), few would call it anything but a massive success.

It’s Okay To Blink

dr-who-blink-weeping-angelGoogle’s WebKit is fork is obviously the most controversial of last week’s announcements and leaks. Google says the reason for its fork is essentially technical, but given that WebKit was, at this point, one of the few projects where Apple and Google were working together relatively closely, it’s hard not to think that there were some political motivations behind this, too, especially given that Google was quite a bit more active in sharing its code back to the project than anybody else.

We’ll still have to see what the ramifications of this move are, but I’m pretty optimistic. Sure, it means web developers will have to test their code against yet another rendering engine, but I do believe the folks on the Chrome team when they say that this was “not an easy decision” for them. Google is obsessed with speed and with WebKit being part of so many other browsers, the development just didn’t move fast enough for Google.

The Chrome team believes 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.” I agree. The sudden arrival of Chrome on the scene in 2008 sure pushed every other browser vendor to innovate faster. At the time, the competition was mostly about who could develop the fastest JavaScript engine (all the WebKit-based browsers use different JavaScript engines). Now, with Blink and Servo out in the open, we may see a similar arms race for rendering engines, too, and at the end of the day, that can only benefit users and developers who can look forward to faster, more stable browsers.