Apple has decided to pick a fight with developers. In a recent change to the Terms of Service (TOS) for their new iPhone SDK, Apple has indicated that apps developed with third party software, such as MonoTouch, Titanium, or the upcoming version of Flash, will not be allowed. The new TOS also blocks the use of third-party analytics software, such as Flurry. The details of these changes are well documented by Joe Crawford and Erik Kerr. These changes basically mean that developing an iPhone app using a language other than the native iPhone language, Objective-C, or a C-based languages (C, C++), and collecting user data and device data is no longer allowed. NOTE: Some of the above companies believe that they are compliant with these changes and/or are actively seeking clarification from Apple (see Jeff Haynie’s blog post).
From my point of view, it will be incredibly disappointing for Apple to block apps developed with these third party platforms. While Apple claims that these platforms produce sub-par apps that violate user privacy, in truth they empower developers to create multi-platform applications using a single code base while tracking user behavior to better understand user needs. This kind of behavior by Apple seems downright anti-competitive, especially considering that Apple’s iPhones are in high demand. Some think that Apple is simply trying to ensure that their app store maintains its dominant position (credit to Raghu Kakarala). I’m of the opinion that Apple wants developers to get serious about Objective-C. The real benefit of this move is that these developers can create apps for the MacOS, not just the iPhone or iPad (or iTouch) and Apple can easily expand its reach.
Apple is not the only company that realizes that it is all about developers. Microsoft did so years ago (see Steve Ballmer chanting “Developers, Developers, Developers” in video below). So the question remains — will Android developers agree to learn Objective-C or will they abandon the iPhone?
UPDATE: Hans Eckman pointed out that ZDNet had an article that indicated that Goggle is reaching out to iPhone developers to get them to port their apps to Android (source).
NOTE: Picture via TheiPhoneBlog.