"Developers are not free to use any tools to help them. If there is some tool that converts some Pascal or, Ruby, or Java into Objective-C it is out of bounds, because then the code is not "originally" written in C. This is akin to telling people what kind of desk people sit at when they write software for the iPhone. Or perhaps what kind of music they listen to. Or what kind of clothes they should be wearing. This is *INSANE*."
Well, there's many things to say about this humble passage. First of all, let's say Apple will really be so strict and enforce this rule (they will sure do that against the flash write once run everywhere thing). What's wrong with that? You don't like it - you don't develop for their platform but for - let's say - Android, because that's just so open as you like it to be, except there's no serious working way do develop a cool application besides Java. But ok, that's not a lock on paper :-) If you think Android is much more open than that, just look at what developer.android.com has to say. It's all about java. No complaint to be heard.
Then again, Apple chooses to define a platform supported by them to support their own product with their very own USP which is so unique that is alone ensures them their margins. So, to me it makes sense that they cover and protect the business and the (tremendous) investments they made on the platform to be sure that the platform just stays what it is. High quality, high usability, unique etc. And of course they are doing everything that is undermining the uniqueness of that platform, e.g. the Adobe write once run everywhere attitude which is, of course, out of a completely different business model the complete opposite of what Apple wants on their platform.
But the most hilarious part is when this all is compared to telling a developer on which desk to sit (heh?), what music to hear (OMG), or what to wear? My goodness, Apple being strict in defining it's product platform is like telling me what music to hear? This is so far off, that this comparison alone could be disqualifying everything else. (Even if I like Tim O'Reilly's idea and open letter that Apple should come back to the former mode of open communication and involvement in the community.
But the main point: Why should anyone be in a position to tell Apple what is best for their product?
At least, there are some sportsman out there. I really liked this posting regarding hacking the devices!
To me it seems, Apple is applying constraints to realize the following properties for applications on it's mobile devices:
- Great Usability
- Same Usability patterns across all applications
- A certain quality
You may share those objectives or not. But if you share them you have to be honest in admitting that this is the major selling point for these devices for the masses. (Thats why my wife likes those devices, that's why I even dare to think of my mother using an iPad). More than that, this product philosophy (again: like it or not) leads to certain people buying other Apple products after getting hooked on an iPhone. Like lots of people bought MacBooks after having the first real good mp3-player experience in their life with any product from the iPod family.
It's easy to see that such a well defined and user centered product philosophy pays of well for apple. And it doesn't because they want to do evil. It does because people are happy with the devices they buy. Which should be one major target for any product company. Are you happy with your Dell? You may not kill yourself over it, but: Are you happy? I myself die a little death each and every day I have to open my Dell which is provided by my employer!
I can very well understand why Apple is banning Flash from the iPhone. If you don't understand, visit me and listen to the fan of my 3 1/2 yr. old MacBook whenever I open a site with flash on any modern browser. It's killing me. It's killing me for each small little animation where I think - good god, why did they need to use flash for that little silly thing. Is it appropriate to shoot with flash when all you want is some glue to quickly hack some nifty little gadgets together? For simply showing a video? Edit: So - yes - basically one has to say that Adobe screwed itself.
I can also understand that Apple is limiting the way how applications are developed for these platforms with their limitations, because they worked hard on constraining the developer tools to be able to develop something with high quality for the platform. And this is actually the art that was performed in developing the mobile platforms of Apple - to create so much power on these little devices by bringing up so many possibilities but also lots of perfect little constraints so that the developer can not kill the good experience on that platform.
So, what Adobe and other platforms are planning with their write once run everywhere philosophy is quite the contrary: No matter what your device looks like and what constraints i has - just develop one application. Why should Apple, given their product philosophy, be so stupid and allow such a thing? (Especially in the case of Adobe which couldn't have cared less in the last ten years to support apples wishes and bug and performance reports).
And don't forget - everybody can go and grab a phone nearly as or even more powerful like the google Nexus One, which is more open (although some doubt that) but not as nice in it's UI and not as aligned across the offered applications. And yes, you can change the UI whatever way you like.
What I want to say is: If you love the Apples mobile platforms work, you need to understand that they work this way because Apple protects exactly this platform in this way. If you don't like it - buy another product. Which is completely fine. But you will not get the experience of the iPhone on such a small, weak mobile device by being open. (I tried it - i installed so many free programs on my jailbroken iPhone I got sick of them. They destroy the fun of the iPhone.)
And remember: You develop any way you want on the powerful Notebook and desktop platforms of Apple.
What's more and what seems a little forgotten is that I do not see any mobile platform out there with such a lot of programs. I simply do not know of any platform out there with such variety and diversity in depth as well as in width. Whenever I was looking for an application for a certain purpose I found it. Mostly I had the coice of several free apps vs. some offered for purchase (mostly even the free ones winning). So, in effect the iPad and the iPhone are not closed regarding purpose of the applications but the way they are developed. As John Gruber put it: Every halfway gifted 13 year old can get his app on the iPhone. In fact the much debated effective distribution channel over the iTunes AppStore has led to a very strange effect that effectively those who are making real money with iPhone apps are only very few large corporations but mostly individual developers and very small companies. Think of Tweetdeck, Things, etc. And even if the app bears the name of a big company, the market is so young that have not insourced that skillset yet. If you look closely, the so called closed system has led to individuals making the dollars rather than enterprises. Actually, I like that.
Edit: What I would really like apple to do is open the AppStore to all the crap that is supposed to be running on the device. Just open the gates. Let any mediocre flash implementation get on the iPhone on any OS update (but just for me: I want to be able to opt in first, 'cause I won't). And then activate flash and look on the responsiveness of your phone and on the battery. Yes, that's what's gonna happen ... it will be unusable (remember the processor is weak, the battery small etc.) So, if you think about that before, why not simply remove that trash from the iPone in the first place? (Like Apple did.)
Edit: Stanislav Datskovskiy published a briliant blog post from a quite different angle, hinting on the non-apples letting this happen out of sheer dumbness. Nice excerpt: "... For the Apple-imitators to turn into genuine “Apples” would be as fantastic and unlikely as it would be for a slime mold to spontaneously become a true multicellular animal, equipped with a central nervous system. It is also unclear that, from their own perspective, they should want to grow brains – for a creature with that kind of centralized point of failure is decidedly no longer immortal ... " Haha.