Last week I wrote about the benefits of open standards versus open source. I argued that open standards provide greater protection against vendor lock-in than open source alone. I was reminded of this conclusion when reading Peter-Paul Koch's analysis of WebKit implementations. Thanks to Palm's Dion Almaer for pointing out the analysis.
Readers know WebKit as the open source Web browser engine used by several mobile and PC Web browsers, including Apple's Safari, Google's Chrome, Palm's WebOS, and the Android Web browser. In fact, Wikipedia lists 19 browsers based on the open source WebKit browser engine. As you read on, keep in mind there is no standard that vendors using WebKit must adhere to or claim certification against. A WebKit-based browser is, well, whatever the vendor wants it to be.
[ InfoWorld Test Center named WebKit one of the best open source developer tools in 2009. Find out why. | See what other products nabbed a 2009 InfoWorld Bossie Award. ]
When Koch tried out WebKit browser versions on 27 tests, he found:
- Out of 19 tested WebKits, no two are exactly the same.
- The best WebKit available is Safari 4; the worst is S60v3.
- The Android G1 and G2 WebKits score rather badly; it’s the worst mobile WebKit except for S60.
- Regressions are fairly common: iPhone 3.1, Android G2, and S60v5 all (partially) dropped support for features handled by their predecessors.
- The closest relation of a desktop WebKit to a mobile WebKit is between Safari 3.0 and S60v5. I'm now fairly certain S60v5 is actually based on Safari 3.0. Unfortunately, this is the single example of such a close relation.
Koch's testing highlights two truths. First, pity the developer whose manager or customer expects that the application will work on multiple mobile browsers "built on WebKit." Second, open source does not make it easier for customers or their developers to transition applications from, say, building for the Google Android platform to, for example, Palm WebOS.
Imagine if there were a WebKit standard and a compliance test suite that vendors had to certify against to use the WebKit brand. Customers and developers would gain protection against vendor lock-in that open standards deliver to a much higher degree than open source alone. I'm not naive enough to think that open standards equal "write once, run anywhere." But even if a WebKit open standard could drive a 50 percent improvement in compatibility across WebKit-based browsers, that would be something to write home about.
Follow me on Twitter: SavioRodrigues.
p.s.: I should state: "The postings on this site are my own and don't necessarily represent IBM's positions, strategies, or opinions."