One day, two new rendering engines announced, three browsers involved!
When you wait ages for a bus, and then three come along at once, it’s not a coincidence: it’s a side-effect of queuing and traffic lights.
But what about when three browser vendors make announcements on the same day?
Robust competition? Serendipity? Coincidence? Or a bit of all of them?
Google announced Blink, a fork of the Webkit browser that aims to build a smaller and safer rendering platform based on what Google is unashamedly referring to as a “healthier codebase.”
Opera, which is retiring its own rendering engine Presto and replacing its browser core with Chromium, the open-source flavour of Google Chrome, indirectly announced its commitment to the Blink-based flavour of Chromium.
→ The ARM processor is the CPU in most Android devices in the marketplace. Samsung, which sells a wide range of Android offerings, including phones, tablets, and phablets (giant phones or tiny tablets depending on whether they’re against your ear or on your lap) is partnering with Mozilla in the Servo-on-ARM project.
A new rendering engine has at least one similarity with marriage, namely that it is not an undertaking to be entered into lightly.
Modern browsers support all manner of third-party add-ons, extensions and plugins that typically let you customise almost everything to do with the browser’s look, feel, and feature set. (Java applets, anyone? Flash videos? Audio playback? 3D modelling? Interactive games?)
Both projects, Blink and Servo, are forward-looking, by which I mean they aren’t finished products that you can download and install right now.
Google talks about “the next 12 months” in its Developer FAQ, and talks about the “next generation” of web apps.
Mozilla’s posting refers to “the coming year”, and admits that both Rust and Servo are “early stage projects.”
Sceptics, therefore, may very well write off both announcements as little more than positioning statements.
Indeed, their coincidental arrival on the same day will probably convince the real cynics that the announcements had more to do with the browser makers’ marketing departments than with engineering.
Don’t be too judgmental, though.
Google’s was written by Adam Barth, who’s a software engineer and security researcher.
And both companies talk prominently about security and simplicity as a motivator for the projects:
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...
[Rust] is *safe by default*, preventing entire classes of memory management errors that lead to crashes and security vulnerabilities.
It’s pleasing to see this sort of language prominent in new project announcements.
Google’s writeup, indeed, explicitly talks about how many lines of code Mountain View expects to be able to remove from the Webkit codebase, which is a refreshing change from product announcements that talk up all the features that have been added since the last release.
Web developers might not feel quite as enthusiastic as I do, of course, because a brand new rendering engine means a brand new list of browser-specific pecadillos, a need for yet more special-case code tweaks, and a whole new environment to test.
Nevertheless, the principle of hybrid vigour suggests that breeding the next decade’s browsers from a broader range of genetic starting material is unlikely to do any harm.
I think we should welcome these announcements as evidence that at least part of the battle in today’s browser wars isn’t vendor against vendor, but instead a collective fight against cybercriminality.
What do you think? Have your say in the comments below…