Over a million developers have joined DZone.

The WebKit culture & web rendering engine diversity

DZone's Guide to

The WebKit culture & web rendering engine diversity

· Web Dev Zone ·
Free Resource

Access over 20 APIs and mobile SDKs, up to 250k transactions free with no credit card required

The web. Diversity. Options and competition. Yesterday Opera announced that they’re moving from their own web rendering engine, Presto, to WebKit, and it’s described more technically in Opera’s Developer Relations blog, where it’s made clear they will also use the V8 JavaScript engine.

I thought I’d express my thoughts on this – what it means and what I’m afraid developers erroneously will believe it means. While I work for Mozilla, who does the Firefox web browser, these are my opinions on the topic, and I’d have them no matter who I’d work for.

Opera’s decision

Let’s start with Opera’s decision to do this. About ten months ago, Opera confirmed WebKit prefix usage, implying that with the WebKit culture on mobile, they deemed it a necessary step.

Given just how dominating WebKit has been the latest years – in particular on mobile – I understand the challenges they’ve been facing and I’m sure it must have been a hard call.

Looking at the comments Opera are getting now, with people thinking they’re giving up etc, I don’t share that sentiment. Yes, I do think it’s sad they they will move on from Presto to WebKit. But Opera are a business. They need to weigh pros and cons against each other, and if this is the decision they think is best moving forward for their company, that’s their call.

We need competition

When something likes this happens, the reaction will be that all we need is one rendering engine. Internet Explorer and Firefox should switch to the WebKit world, then we’ll join hands, sing Kumbaya and web development will be easier than ever before.

I don’t believe in this. I believe what we saw with IE6 and Microsoft – albeit under different circumstances – is a perfect example of why we need more competition, not less. Sure, WebKit is open. WebKit is a really good web rendering engine. But those are not reasons for sticking with just one.

Also, companies like Google and Apple have huge interests vested in WebKit. The engine and project is open, but I do believe that such interests do come into play when it comes to the amount of developers that are involved, direction it can take and more.

I’m definitely not saying they’re evil. They’re just companies, like Opera, and we should not forget that first and foremost, a company’s objective is to do what’s best for the company. I like many of Google’s and Apple’s products, but that doesn’t mean I want them to be the two major players affecting the only web rendering engine in all products. Just as I wouldn’t want to see Firefox and Gecko have a 100% marketshare.

That’s why I believe we do need options, we need different interests, code bases and rendering engines, to rather spur the diversity, instead of keeping it contained within just WebKit.

It will not be just one engine

Another thing I fear is the incorrect assumption by web developers that it will be so much easier to develop now, and if all switched to WebKit, it would be a bliss. The incorrect assessment there, though, is that we will, and already do, have tons of different versions of WebKit.

Instead of having just one web rendering engine, it will be like building something that should work in IE6, IE7, IE8, IE9 and IE10. It sounds like an exaggeration, but the differences will be huge.

And on top of that, it comes to API support. That will often be implemented on the side by web browser vendors, where you can see, for instance, that Google Chrome has vastly more widespread support than Safari for features. Although they’re both WebKit. Go figure.

WebKit is great

Let’s conclude this with saying that WebKit is great. And here’s to having many other great options complementing it.

#1 for location developers in quality, price and choice, switch to HERE.


Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}