I think at least this part is a valid and solid reason for Apple's new developers agreement.
"So, if you will indulge my claim that backwards compatibility is hard (even absent the private API issue) it is pretty easy to see why supporting other runtimes is ceding a lot of control to a 3rd party. Imagine if 10% of the apps on iPhone came from Flash. If that was the case, then ensuring Flash didn’t break release to release would be a big deal, much bigger than any other compatibility issues. Since Apple doesn’t have access to Flash CS5’s runtime library code or compiler frontend, they might be put in a position where they would need to coordinate with Adobe to resolve those issues. Shipping a new release where Apple breaks any specific application, even a top seller, is not an issue if the release is compelling, most apps work, and Apple has the option of working with the vendor to help them fix their app. Shipping a release where they break a large percentage of apps is not generally an option. Letting any of these secondary runtimes develop a significant base of applications in the store risks putting Apple in a position where the company that controls that runtime can cause delays in Apple’s release schedule, or worse, demand specific engineering decisions from Apple, under the threat of withholding the information necessary to keep their runtime working."
And combine that with the fact that Apple is just now shipping a release that depend entirely on application/platform support for its most important feature (multitasking), and the fact that the TOS change is tied to exactly that release.
I don't think Apple will mind much if games don't have explicit support for multitasking right away, but they do care a great deal about getting massive uptake of their new GameCenter API, which a full-service cross-platform game framework might have a hard time supporting.
Sounds similar to Linux decisions about keeping the kernel API's fluid.
I like how it's not about the code itself being wrong, because random developers are going to hit these corner cases too, but about the closed-source framework provider refusing to make fixes unless they get some quid pro quo based on the leverage they have.
This is the kind of writing I really like. Insightful on the strategies involved and what is plausibly going on behind the scenes.
All the other articles on the 3.3.1 change have been mostly superficial and overly emotional. Even the Gruber article that Jobs allegedly referenced didn't offer any insights that weren't obvious.
> Letting any of these secondary runtimes develop a significant base of applications in the store risks putting Apple in a position where the company that controls that runtime can cause delays in Apple’s release schedule, or worse, demand specific engineering decisions from Apple, under the threat of withholding the information necessary to keep their runtime working.
Boy does that bring back memories, from the late 1980s, of various Microsoft products running on MacOS. Apple had to bend over backwards to make API improvements, while not breaking Excel (and others). IIRC, there were various kludges that Apple finally removed, causing much distress to the average user. This wasn't about frameworks per se, but it was about the MacOS toolbox during the 6.x and 7.x era.
"If Adobe actually wants to persuade Apple to support Flash on iPhone (either as a plugin or compiled to native apps), I know how they can do it. They can get an awesome, high performance, Flash environment working on Android, and get a bunch of great Flash apps running on Android phones"
So true.
Apple has every right to do what they are doing with their new developer's agreement. It's their platform, they own it. Just like it's every developers right to choose whether or not to develop for it. Let's face it, if all the developers stopped developing for it Apple would change their approach.
Adobe should stop complaining and put all their efforts into other platforms like Android. I think they have rode the Flash wave for too long and have become too fat and lazy.
If Android gains a lot of traction and Apple either becomes stagnate or falls behind because of lack of Flash support then I bet you would see Apple either try to make a deal with Adobe or they would build their own SWF player.
10 comments
[ 3.2 ms ] story [ 28.0 ms ] thread"So, if you will indulge my claim that backwards compatibility is hard (even absent the private API issue) it is pretty easy to see why supporting other runtimes is ceding a lot of control to a 3rd party. Imagine if 10% of the apps on iPhone came from Flash. If that was the case, then ensuring Flash didn’t break release to release would be a big deal, much bigger than any other compatibility issues. Since Apple doesn’t have access to Flash CS5’s runtime library code or compiler frontend, they might be put in a position where they would need to coordinate with Adobe to resolve those issues. Shipping a new release where Apple breaks any specific application, even a top seller, is not an issue if the release is compelling, most apps work, and Apple has the option of working with the vendor to help them fix their app. Shipping a release where they break a large percentage of apps is not generally an option. Letting any of these secondary runtimes develop a significant base of applications in the store risks putting Apple in a position where the company that controls that runtime can cause delays in Apple’s release schedule, or worse, demand specific engineering decisions from Apple, under the threat of withholding the information necessary to keep their runtime working."
I like how it's not about the code itself being wrong, because random developers are going to hit these corner cases too, but about the closed-source framework provider refusing to make fixes unless they get some quid pro quo based on the leverage they have.
http://www.kroah.com/log/linux/stable_api_nonsense.html
All the other articles on the 3.3.1 change have been mostly superficial and overly emotional. Even the Gruber article that Jobs allegedly referenced didn't offer any insights that weren't obvious.
Boy does that bring back memories, from the late 1980s, of various Microsoft products running on MacOS. Apple had to bend over backwards to make API improvements, while not breaking Excel (and others). IIRC, there were various kludges that Apple finally removed, causing much distress to the average user. This wasn't about frameworks per se, but it was about the MacOS toolbox during the 6.x and 7.x era.
So true.
Apple has every right to do what they are doing with their new developer's agreement. It's their platform, they own it. Just like it's every developers right to choose whether or not to develop for it. Let's face it, if all the developers stopped developing for it Apple would change their approach.
Adobe should stop complaining and put all their efforts into other platforms like Android. I think they have rode the Flash wave for too long and have become too fat and lazy.
If Android gains a lot of traction and Apple either becomes stagnate or falls behind because of lack of Flash support then I bet you would see Apple either try to make a deal with Adobe or they would build their own SWF player.