When you are competing to be the dominant platform, compatibility is an important strategic variable.  Generally if you are the upstart you want your platform to be compatible with the established one.  This lowers users’ costs of trying yours out.  Then of course when you become established, you want to keep your platform incompatible with any upstart.

Apple made a bold move last week in its bid to solidify the iPhone/iPad as the platform for mobile applications.  Apple sneaked into its iPhone OS Developer’s agreement a new rule which will keep any apps out of its App Store that were developed using cross-platform tools. That is, if you write an application in Adobe’s Flash (the dominant web-based application platform) and produce an iPhone version of that app using Adobe’s portability tools, the iPhone platform is closed to you.  Instead you must develop your app natively using Apple’s software development tools.  This self-imposed-incompatibility shows that Apple believes that the iPhone will be the dominant platform and developers will prefer to invest in specializing in the iPhone rather than be left out in the cold.

Many commentators, while observing its double-edged nature, nevertheless conclude that on net this will be good for end users.  Jon Gruber writes

Cross-platform software toolkits have never — ever — produced top-notch native apps for Apple platforms…

[P]erhaps iPhone users will be missing out on good apps that would have been released if not for this rule, but won’t now. I don’t think iPhone OS users are going to miss the sort of apps these cross-platform toolkits produce, though.  My opinion is that iPhone users will be well-served by this rule. The App Store is not lacking for quantity of titles.

And Steve Jobs concurs.

We’ve been there before, and intermediate layers between the platform and the developer ultimately produces sub-standard apps and hinders the progress of the platform.

Think about it this way.  Suppose you are writing an app for your own use and, all things considered, you find it most convenient to write in a portable framework and export a version for your iPhone.  That option has just been taken away from you.  (By the way, this thought experiment is not so hypothetical.  Did you know that you must ask Apple for permission to distribute to yourself software that you wrote?) You will respond in one of two ways.  Either you will incur the additional cost and write it using native Apple tools, or you will just give up.

There is no doubt that you will be happier ex post with the final product if you choose the former.  But you could have done that voluntarily before and so you are certainly worse off on net.  Now the “market” as a whole is just you divided into your two separate parts, developer and user.  Ex post all parties will be happy with the apps they get, but this gain is necessarily outweighed by the loss from the apps they don’t get.

Is there any good argument why this should not be considered anti-competitive?