by Carlo Longino

Filed Under:
developers, development, iphone

adobe, apple

Apple Reminds Everybody That It Controls The iPhone Ecosystem

from the from-the-do-you-have-permission-for-that?-dept. dept

Last week, when Apple announced version 4.0 of the iPhone OS, it also made a significant change to the license agreement for its iPhone developer program. One section of the agreement was changed to say that iPhone "Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine" -- a move that blocks developers from using cross-platform development tools and third-party development environments. So, for instance, if a developer already had an app written in .NET, they can no longer use something like Monotouch to port it to the iPhone. There has been a lot of speculation that this was just the latest step in the ongoing spat between Apple and Adobe, since the latter company will soon release a Flash-to-iPhone compiler, triggering a "go screw yourself Apple" from an Adobe employee.

But this move is actually bigger than that: it's Apple's attempt to lock developers in solely to the iPhone. Steve Jobs claims "intermediate layers between the platform and the developer ultimately produces sub-standard apps and hinders the progress of the platform", and they do -- from Apple's perspective. By requiring developers to use Apple's tools and follow its rules, the hope is that developers will follow along blindly and develop first for the iPhone, since it's currently the best monetized channel to market for them, and then will develop for other platforms later, if at all. The issue for Apple, though, is that it's not competing in a vacuum. Everybody and their mother are opening app stores, with other major smartphone platforms like Android and BlackBerry building theirs into viable competitors for the Apple channel. And as the App Store continues to get flooded with apps and becomes more competitive (and it becomes more difficult for developers to earn a living there), its position at the top of the pile is far from assured. At that point, heavy restrictions on developers and the closed ecosystem becomes a real burden for the company, not a benefit.

Reader Comments

Subscribe: RSS

View by: Time | Thread

  1. icon
    Aaron (profile), 12 Apr 2010 @ 5:34pm

    As cross platform mobile developer...

    As a cross platform developer who has plans to develop for Android and Blackberry for our product, I don't find much of a problem here.

    Saying you can only write in C, C++ and Objective-C leaves a whole heck of a lot of options open. C runs on just about every microprocessor on earth. Our main libraries for our apps are written in C and run fine on Android and iPhone with minor changes for talking to external accessories. Cross platform development for us is relatively painless compared to the alternatives for our goals.

    Sure, I have to write different interface code for both apps, but I would do that with or without the restrictions. I am a firm believer that the native UI elements provide the best experience and the only way you get good native UI elements is to write directly against the OS's standard UI libraries. I won't disagree that you can get usable apps from an intermediate layer, but the effort required in achieving a slick, polished UI with an intermediate layer is next to impossible. It's cheaper to just write directly against the built-in UI libs if you want a great experience... and anyone who disagrees with me is wrong! ;)

Add Your Comment

Have a Techdirt Account? Sign in now. Want one? Register here
Get Techdirt’s Daily Email
Use markdown for basic formatting. HTML is no longer supported.
  Save me a cookie
Follow Techdirt
Techdirt Gear
Shop Now: Copying Is Not Theft
Report this ad  |  Hide Techdirt ads
Essential Reading
Techdirt Deals
Report this ad  |  Hide Techdirt ads
Techdirt Insider Chat
Report this ad  |  Hide Techdirt ads
Recent Stories
Report this ad  |  Hide Techdirt ads


Email This

This feature is only available to registered users. Register or sign in to use it.