Platform and its taxes

Being the Platform owner, Apple has intrinsic (and unfair) advantage over others when it comes to its control of iOS software. This is what we are seeing with the latest issue of performance differences between Mobile Safari and the UIWebView control in iOS 4.3 which John Gruber defended here.

The Nitro JavaScript engine is only available within Mobile Safari. Outside Mobile Safari — whether in App Store apps using the UIWebView control, or in true web apps that have been saved to the home screen — apps get iOS’s older JavaScript engine.

Put another way: nothing is slower regarding web apps or web page rendering in iOS 4.3 compared to 4.2 or earlier. If anything, everything is at least a little bit faster. But: the most significant performance improvements in iOS 4.3, particularly for JavaScript, are exclusive to Mobile Safari.

The real answer is about security. Perhaps the biggest reason for Nitro’s performance improvements over WebKit’s previous JavaScript engine is the use of a JIT — “Just-In-Time” compilation.

Web apps that are saved to the home screen do not run within Mobile Safari. They’re effectively saved as discrete apps — thin wrappers around the UIWebView control. (That’s why they show up individually in the task bar, just like apps from the App Store.) Home screen apps may well eventually get access to the Nitro JavaScript engine — Apple simply hasn’t yet done (or perhaps finished?) the security work to allow it. It is not an oversight or a bug, or the result of a single person at Apple wishing to hinder the performance of web apps.

So in the near future Apple may allow the Nitro JavaScript engine to be used by Home screen apps but what John fails to mention is that delay in providing this equal opportunity to other App developers gives unfair advantage to Safari browser to gain on other Apps. This delay in getting the first class treatment is the Tax complementary or platform dependent products need to give to enjoy the Platform’s other advantages. And this is not just Apple, this is true with other Platforms (Windows, Facebook etc) also and we will continue to see this going forward. So get accustomed to this way of life.