Dev article outlines major differences between WebKit ports
Ever since Opera announced it would ditch the company’s own Presto browser engine in favour of WebKit, there’s been a certain amount of disquiet within the web industry.
Opera is joining Chrome, Safari and others in using WebKit with Chrome in particular making major in-roads on the desktop. The WebKit-powered Android Browser, Chrome and Mobile Safari are hugely dominant on mobile. Concerns exist that the web could be heading towards a WebKit monoculture, which would be detrimental to innovation and standards.
Such concerns were dismissed by Opera web evangelist Bruce Lawson, who told .net that “it's hard to claim a WebKit monoculture when IE's Trident and Mozilla's Gecko are going strong,” and added: “It’s also untrue that there is one monolithic WebKit; there are many. WebKit has many diverse and competing organisations working for it.”
That last point has been addressed at length in WebKit for Developers by frontend developer and standards expert Paul Irish. In the article, he explored what is and isn’t WebKit, how WebKit is used and why all WebKits are not identical.
Importantly, Irish noted that of the primary components of any modern-day browser, relatively few are shared across different flavours of WebKit — parsing and layout. (And even there, issues exist, as evidenced by Peter-Paul Koch’s selectors and columns post on QuirksBlog.) Elsewhere, text and graphics rendering, image decoding, GPU interaction, network access and hardware acceleration are often handled by individual WebKit ‘ports’, such as Safari, Mobile Safari, Chrome, Android Browser, Amazon Silk and Dolphin.
Irish subsequently drilled down in a more granular fashion, outlining commonalities and differences, further cementing the notion that there really isn’t one WebKit. One clear take-home from the piece is that with various companies working on individual implementations and components, there’s plenty of room left for innovation in WebKit-based browsers.