Apple and developer slavery
Apple’s updated section 3.3.1 of the iPhone developer license agreement as follows:
3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).
Now from Apple’s perspective, this will make sure that Flash will never be able to set foot in the iPhone. Also, developers will no longer be able to use tools like MonoTouch to create applications that will run on iphone and other platforms like Android with little or no change at all.
I have been thinking hard on how Apple can justify this decision. I am not too business minded and have often been astonished at the finely thought out reasons business brains provide for screwing their employees. Let me play Steve Jobs for a bit.
- We want to control the complete experience of our devices; Applications that are developed for multiple platforms look a bit.. let me put it politely.. crappy!
- ( Oops! I can’t come up with anything else guys.. nothing at all..! )
Now that one reason is such bull shit! First of all, it is up to the users to judge what looks ugly or beautiful on their device. Even if you assume that they are not capable of making that choice for themselves, you are already screening applications based on your business interests through your app approval process stating ludicrous reasons! Also what about games which don’t use native UI at all? They are very expensive to produce in the first place and porting them to multiple platforms will mean even more effort.
I have developed on many different platforms and used many different technologies and I consider choice my birth right as a developer. Already, you can only develop for iPhone on an apple desktop or a laptop (legally) . On top of that, now you want us to develop apps only using languages like Objective-C, C or C++. Are you frigging kidding me???
This is just another plot by an evil corporation to kill the competition. As the user of an iPhone, I am really impressed with Apple’s attention to detail and their game-changing innovations. They have created a killer product in iPhone and it is taking over the world. But it is really sad that Apple has gone greedy and wants to kill any competition it might have by exploiting users’ love for the device.
Allowing users to create applications in the language they are familiar with will foster innovation. Instead of people trying to learn Objective-C (which, from what I have heard, is a joke compared to some of the modern languages), they could use the most suited language to express their ideas . (If only Apple would be generous enough to bestow that privilege on us!).
A Google search for slavery returned me this definition:
bondage: the state of being under the control of another person
Yes! This is developer slavery and I’m not gonna take it. Until Apple makes amends to their license agreement:
- I will not be upgrading my iPhone to OS4
- I will not be downloading any more apps from the Apple app store
- As soon as my contract with AT & T is over, I will abandon iPhone and look for a platform that respects developers!