So, if you haven't heard, Apple, in their recent update to the iPhone SDK, gave the iPhone development community the Cupertino one finger salute. This was done by changing section 3.3.1 of the developer's agreement from:
3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs.
Or, to put it short, Apple has banned the use of any toolchain other than their own for iPhone development. The head of development firm TaoEffect emailed His Steveness about this change
, he recieved the response:
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.
The amount of contempt in that statement for developers is just staggering, not to mention a baldfaced lie, especially when you can point to the success of third party frameworks like MonoTouch and Unity3D. Of course, Apple's number one fanboy has a Jobs-approved explanation
for the move, mainly centering around Apple trying to kill of Adobe's attempt to develop a Flash cross compatibility tool. But considering some of the other moves Apple has made recently (such as their multitouch patent infringement lawsuit against HTC), there's an argument to be made that Apple is starting to see the growth of Android as a major long-term threat, and has begun to try to make moves to hamper Android development.
The problem is that this move seems to be backfiring. Many developers and iPhone evangelists have not taken this change well, with several notable defections. It's pretty clear that this move wasn't fully thought out by Apple whatsoever, and it's going to be interesting how they handle the backlash.