top | item 1255004

Why Apple did what they did

23 points| KevinBongart | 16 years ago |blog.alexandretestu.com | reply

27 comments

order
[+] mrkurt|16 years ago|reply
Why Apple did what they did: to hurt Adobe, to hurt Android.

Why they're not concerned about the collateral damage: because they really don't care whether small developers have access to the platform or not, they're more interested in having more AAA titles.

I'm pretty sure everyone who thinks it was arrogant, hostile, and stupid of them to do such a thing understands why Apple did it. Everyone also understood why Microsoft spent a great deal of time forcing OEMs to offer only their software.

[+] rimantas|16 years ago|reply
I get the point about Adobe, but Android?
[+] frederickcook|16 years ago|reply
The author hints that apps built on third-party compilers are of lower quality, without explaining how/why.

This blog is a commentary on the high number of apps in the app store and Apple's desire to try to maintain quality, with a few opening sentences about the current TOS changes as link-bait.

[+] stcredzero|16 years ago|reply
This little flash game has very high production values for artwork, music, and sound. In fact, I think its quality is on a par with anything Apple ever did. The interface would be a natural for a touch interface like the iPad.

Little Wheel: http://www.kongregate.com/games/fastgames/little-wheel

There are many Flash games of comparable quality. It is a shame that such excellence will never be allowed on the iPad under the current policy.

How to kill off Flash using Market Forces

If I were Apple, I would develop a toolset to convert flash apps to an iPad compatible target along with an outreach program to encourage the migration of such apps to the iPad and the Apple App Store. If HTML5 is not robust enough, then Apple should develop a target based on Javascript or other advanced VM, taking care to ensure that a subset of the target is nearly isomorphic to Flash/Actionscript. This could be done defensibly by drawing on prior art in programming languages, and a near 1 to 1 correspondence would make most of the conversion work possible through automated translation. As a standard, HTML5 is in a better position to be the target, however.

License such an SDK stipulating that the app and its derivative works can only be published on web sites in a manner which is compatible with Mobile Safari.

The effect of such a program would be to harness a profit motive towards killing off Flash! Using such a carrot is going to work better than the stick of legal action. The latter has the side effect of making many developers like Apple and the App Store less. The former would be an opportunity to reach more users and make more money.

You can catch more flies using honey than vinegar. You can kill more of them that way as well.

[+] bartl|16 years ago|reply
I think he's hinting that Apple is probably thinking that apps built on third-party compilers are lower quality.
[+] atestu|16 years ago|reply
I (the author) never state that apps built on third-party compilers are of lower quality.

It is about Apple's struggle to maintain quality, yes, since I have little interest in the specifics of the TOS change.

[+] philwelch|16 years ago|reply
Proportionally speaking, how many good iPhone apps would have been built by clever hackers using Scheme/Lisp/Haskell/Clojure and how many shitty iPhone apps would have been built using Flash?
[+] Lazlo_Nibble|16 years ago|reply
Here's some how/why, at least as regards frameworks designed for cross-platform development.

Cross-platform frameworks push developers towards lowest-common-denominator UI design -- you can only use the UI elements and interactions that are supported on all the platforms you target. So if there's a mediocre way to do something cross-platform and a more "Apple-Like" way to do it that isn't cross-platform (or which hasn't been baked into the framework yet, assuming it ever will be) a lot of apps are going to do it the mediocre way. (This doesn't really apply to games, as they usually have their own from-scratch UIs. But for every other kind of application it's absolutely going to be an issue.)

So say CS5 comes out and suddenly there are thousands of new developers who have never written for iPhone/etc. before, who only know about the features and interactions supported by Adobe's framework, and who, because they're Flash developers (sorry for the snark but I doubt it's far removed from how Apple sees it), wouldn't know what to do with a set of human interface guidelines to save their lives. I think it's safe to say that a large percentage of these developers will be delivering apps with interfaces that would be rejected if submitted as native apps -- but which developers using the native tools (and therefore steeped in the platform's ecosystem) would never have designed in the first place.

If Apple believes something's about to happen that will result in a significantly higher percentage of rejected applications, it's far easier for them to issue a blanket ban on it today and take all the heat for that decision in one blast than it is to let the can of worms be opened and deal with a new flood of problems on a case by case basis. I don't know if this is really their thinking but we'll find out, if the developer agreement is refined in a way that allows some of the dev processes discussed in other threads here as collateral damage.

There are other issues. Say CS5 had come out a year ago, and there were thousands of Apps in the App Store that used the Adobe framework. OS4 was released to developers last week, and all the native devs have started working with it. If OS4 breaks something for them, they're going to know about it and in all likelihood have a fix out by the time OS4 streets. But if OS4 breaks something in the CS5-built apps, the developers of those apps can't do anything about it until Adobe fixes the problem. You can argue that that's the developer's fault and the developer's problem, but when the people who bought those apps switch over to OS4, those users aren't going to think "god, how stupid of the developers to rely on a third-party framework by Adobe, a company whose reputation for timely bug fixes leaves much to be desired" -- they're going to think "Hey! OS4 broke my apps!". That's Apple's problem.

That's some of it, at any rate.

(Just to be clear: I'm not arguing that Apple only did this with pure, consumer-friendly motives -- I'm sure the Adobe/Google-kneecapping implications of this decision were very prominent in their minds if not the main driver. But there are also pragmatic benefits to Apple that have nothing to do with its effect on the competition.)

[+] Zak|16 years ago|reply
Apple risks driving away anyone who was considering iPhone development as their primary source of income; it's pretty risky to put all your eggs in one basket when the owner of that basket has a habit of spilling a large portion of its contents.

What I think I'd do if I was Apple is to provide a two-tier app store. Tier 2 apps would be only be checked to see that they're not malicious or destructively buggy. Tier-1 apps would be strictly reviewed for quality and performance, and would presented to the user as such. There would be a submission fee to get an app verified as Tier-1.

[+] rbarooah|16 years ago|reply
It would be a better post if you explained how each piece of your advice would help the situation for apple.

For example - the $100 per year fee means that a lot of the most useless apps will disappear from the store if their authors don't want to keep paying for them to exist.

[+] ilike|16 years ago|reply
Author's points would have been valid if Apple didnt charge developers for App approval process.

But there is a developer fee, which obviously go towards approval/rejection of submitted apps. Apple's existing app approval process is more than enough to not let in crappy apps.The fee will cover extra cost arising from influx of new developers.

[+] blue1|16 years ago|reply
One thing I do not understand. The graphic design crowd is the biggest force behind Mac popularity. And "graphic design software" and "Adobe creative suite" are synonims. So Adobe has the power to inflict huge damage to the OS X platform if it wants. Isn't Apple even slightly scared of this?
[+] naner|16 years ago|reply
When you submit an iPhone app for approval, do Apple techs look at the code? Because this restriction would make their job much easier.

I wonder if someone submits obfuscated C code, will they reject it?

[+] ARR|16 years ago|reply
I would actually like to know if there is a real difference in performance between the apps compiled from flash and those written in objective-C ?
[+] chmike|16 years ago|reply
If it was about quality, why allowing C++ ? Why disabling GC ?
[+] binspace|16 years ago|reply
Apple's approval process makes the apps worse because they circumvent the iteration cycle. Companies cannot change their product to their customers' wishes without approval from Apple.

Besides, there are other solutions to the quantity/quality problem. For example, user feedback seems to work very well, and it scales!!!

[+] hackermom|16 years ago|reply
Unlike the raging Adobe employee and his blog post we all debated two days ago, this guy has his head straight on, managing to see farther than his own nose and managing to keep a perspective covering more than just his own interests.
[+] watty|16 years ago|reply
How does he know this? It seems like a MAJOR stretch to me. If they only want to increase quality of apps why aren't they more strict in the review process? Why have they allowed 60+ fart apps? To say all Flash/Unity/Appcelerator apps are of lower quality is silly. There will be low quality and high quality Flash apps submitted but that's the whole point of the review process.

From Apple's perspective

* (+) Hurts Flash and reduces Adobe CS CS5 sales

* (+) Requires devs to purchase Apple hardware

* (+) Requires devs to develop specifically for iPhone - no ports and no develop once, deploy anywhere

* (+/-) Reduces apps submitted (includes good and bad apps)

* (-) Hurts projects like Unity3D, Appcelerator, etc

* (-) Overall negative press from software developers (my opinion)

You can pick any one of these from above and write an entire blog article. I think the main reason for this decision is that it will hurt Adobe much more than it hurts Apple. Who cares if they lose a small number of developers?