by Cedric Dugas on April 13, 2010
Jobs certainly knows what he is doing, I was listening at the 4.0 OS presentation and boy, was it everything you wanted it to be… With every new iPhone OS Apple has brought excellent features. Then again, you also have the other Apple side that want to control everything.
Apple changes the TOS and chooses a wording that basically says that you can’t use an API not written in OBJECTIVE-C for creating Apple apps.
This means that the cool kids like Phonegap, Appcelerator, unity3d and Flash CS5 are in trouble. These guys made easy the iPhone developement and enabled you to make cross-platform applications with Android pretty easy. Now this may not seen much, but beside the fact that those companies invested enormous money in making an iPhone compliant framework, a good bunch of companies invested resources in learning those API. That is a big bunch of pissed off peoples.
Granted the wording was in fact chosen to destroy Adobe plans to release a Flash SDK that would enable their developers community to create iPhone compliant applications. Why? Most people agree this is because cross-compliant applications have less quality in it but the real reason seems to be that Apple doesn’t want anyone to create an abstraction language from OBJECTIVE-C. It might be true that framework built on top of objective-C can, sometimes, diminish the apps quality, but I think it is really close minded to think that in the long run this will help them.
It cost a lot more to create a platform specific application, meaning 2 things. One, application will be more expensive to buy, good option? Not really. Two, Less budget for the iPhone specific application, meaning a more rushed application. Not really better. So what is the plan behind the masterminds at Apple? The same it’s always been, control everything in the platform. Why do you think they do not want to add the HTML5 video OGG format in webkit? This is because they want everyone to use h264 like they want every application to be written directly in OBJECTIVE-C, plain simple.