Opera Software have announced that they are abandoning their proprietary Presto rendering engine in favour of the open source WebKit rendering engine, for future versions of their mobile and desktop web browsers.
Writing on the Opera Developer News blog, Bruce Lawson, Web Evangelist for Opera, offers the following explanation for the switch:
When we first began, back in 1995, we had to roll our own rendering engine in order to compete against the Netscape and Internet Explorer to drive web standards, and thus the web forward. When we started the spec that is now called “HTML5”, our goal was a specification that would greatly enhance interoperability across the web.
The WebKit project now has the kind of standards support that we could only dream of when our work began. Instead of tying up resources duplicating what’s already implemented in WebKit, we can focus on innovation to make a better browser. Opera innovations such as tabbed browsing, Speed Dial and data-saving compression that speeds up page-load, have been widely copied and improved the web for all.
A post on Bruce’s personal blog elaborates further on the reasoning behind the switch:
Opera’s Presto engine was a means to an end; a means for a small, European browser company to challenge the dominance of companies who, at that time, hoped to “win” the web through embracing, extending and extinguishing web standards.
Presto showed that it was possible to make a better browser while supporting standards. Other vendors have followed this path; the world has changed.
These days, web standards aren’t a differentiator between browsers. Excellent standards support is a given in modern browsers. Attempting to compete on standards support is like opening a restaurant and putting a sign in the window saying “All our chefs wash their hands before handling food”.
Rendering engines are now highly interoperable – largely due to the progress commonly known as “HTML5″, begun by Opera in 2004, then joined by Mozilla, in order to protect the web from proprietary platforms, keep it open and promote interoperability.
It seems to me that WebKit simply isn’t the same as the competitors against which we fought, and its level of standards support and pace of development match those that Opera aspires to.
The first Opera product due to incorporate the WebKit rendering engine is their new mobile web browser for the Android platform, due to be unveiled at the Mobile Congress event in Barcelona this summer. An iOS version should follow shortly after, and their desktop browser products will also make the switch.
To date, reaction from developers has been mixed. On the negative side, a number of arguments have been put forward. Writing on this personal blog, Mozilla’s Robert O’Callahan offers the following opinion:
The news about Opera switching to Webkit is disappointing. It’s a sad day for the Web, since I thought highly of their Presto engine and their Web standards work. Their impact on Web standards will be dramatically reduced, especially where they want to do something differently to Apple and Google. The big loss for the Web is a further decrease in the diversity of browser engines, especially on mobile devices. This means that our work at Mozilla simultaneously becomes more important — we now have one of the three viable browser engines, instead of one of the four, and engine diversity is already critically endangered — and more difficult, because this will strengthen the Webkit mobile monoculture and make it even harder for us to promote Web standards over “coding to Webkit”.
Some people are wondering whether engine diversity really matters. “Webkit is open source so if everyone worked together on it and shipped it, would that be so bad?” Yes. Web standards would lose all significance and standards processes would be superceded by Webkit project decisions and politics. Webkit bugs would become the standard: there would be no way for developers to test on multiple engines to determine whether an unexpected behavior is a bug or intended. It wouldn’t be the worst possible outcome — victory of a closed-source engine would be worse — but it would be a far cry from the open Web goals we’ve been striving for.
The news has just come out that Opera is switching all of their browsers (both mobile and desktop) to use WebKit (specifically, Chromium). I’ve seen a lot of gnashing of teeth on Twitter and I feel like I can respond because I use to feel the same way back in 2008-2009. However this is 2013 and the Chrome/Chromium team has made it obvious that any form of stagnation or lack of innovation does not need to occur when using WebKit. In fact it possibly gives you the ability to accelerate your development, spending less time worrying about implementing common standards. I would argue that WebKit (a common framework for implementing the standards-compatible portion of a web browser) is exactly like jQuery (a common framework for implementing a DOM standards-compatible experience in a web page) at this point.
John also addresses some of the negative comments/arguments raised by others.
So what do you think of this news? Is it the end of web standards as we know them? Does it really matter at all? Add your comments below.
You can skip to the end and leave a response.
As an Opera user, I greatly share the concerns of the Mozilla employee above, that “this will strengthen the Webkit mobile monoculture and make it even harder for us to promote Web standards over “coding to Webkit””
I do understand Opera’s reasoning for switching over, Opera’s not getting any more relevant after years of trying, and I look forward to being able to rely on a website working, particularly Google’s apps.
But I’ve long been concerned that WebKit is becoming the new Trident of the IE6 days. Not in performance or standards support, but in developer support, which leads to stagnation and slipping of interoperability.
I just hope Mozilla and the now-half-decent Trident continue to allow competition and interoperability on the desktop. I’m just greatly concerned about the mobile space
As someone that reluctantly switched back to Firefox after 2-3 years of using Opera, I can say that this is probably the best course for their users due to compatibility issues; I had to keep a second browser on standby because so many sites do not work properly in Opera. It’ll also be nice to see optional-but-nice things like kerning-support in Opera.
I agree with Robert O’Callahan. Although I never really used Opera I think every monopol-like concentration of power leads to a non-good scenario. All freedom is about diversity.
On the other side usability and design is a much more important thing than many think. Steve Jobs showed us that there is a lot of innovation possible based on standard technology.
Quite sad news. I feel that Opera throwing in the towel, and adopting this dominant (but not necessarily “standard”) rendering engine is betraying what Opera was about.
It’s going to be the “Works Best With…” debate again. We’ve seen this already: Google purposefully cripples Windows Phone access because it does not follow the Webkit engine.
I still love Opera, but I won’t see them in the same light anymore.
Standards are absolutely essential for a correct operation of any product.
Opera was always at the edge of good web design, but since the majority at one stage used Internet Deplorer it would have been foolish to design to Opera’s standard – it would have looked ghastly for the majority of users.
The whole idea of having browser-specific mark-ups is abhorrent to me. I don’t care how the browser developer gets to his rendering of for instance gradients as long as it looks the same in every browser.
I liked Opera Mini and I hope it will be kept since there are still millions of users using plain enhanced phones.
I’ve used Opera for years, and I have always found satisfying that what I coded is what I see. Opera is my master choice when I want to validate my HTML code on a standard-only development basis.
If the objectives of Opera is to reduce the efforts on the development of the engine, there is another way…
Why not opening the source code of the Presto engine to the community to let it continue what has been successfully done by Opera internally ?
This is a good solution in that it will reduce the effort of Opera on the engine while keeping a key alternative to Webkit and Firefox.
Just an idea…