I’m pretty sure this is all less about code tools, and more about eliminating the risk of a ‘lowest common denominator’ environment. Apple takes a beating for their Flash hatred, but Flash is, sadly, better than the alternatives. HTML5 is still not fully featured enough, widely deployed enough, or backed by capable enough IDEs to really compete at this time. Java by contrast epitomizes the worst of run anywhere code. By no stretch is a Java app ever likely to be more desirable to the user than a native app, all things being equal.
Also, people tend to forget that Adobe have held Apple hostage in the past, and will do so again. If Flash, for example, is arse on OSX, many users will just see that the web is arse on OSX, which is really bad news for Apple.
I can see why Apple are fighting back here.
I’m not so sure Jules. I think Google is the real target here. If Flash, either as a run-time or a development environment, becomes ubiquitous across all cell phones, Apple is done. There’ll be nothing to differentiate apps on an iDevice from apps on Android. No matter how many cool features Apple adds, apps wont utilize them because developers are tied to the feature sets supported by Adobe, and available on all devices. That’s a race to the bottom for hand-set manufacturers, since they’ll have nothing by which to differentiate themselves beyond price and gaudy. Google obviously doesn’t give a flying about that though, because they’ll have won the war they’re trying to win: ownership of the mobile space and attendant advertising revenue, whilst simultaneously dealing a potentially severe blow to Microsoft.
Apple are a troubled company. Their whole pitch is around the idea that up-market niche items are a worthwhile sector of the market, and that they can survive by exploiting that area better than anyone else. The problem is, they clearly don’t believe a damn word of it, and it shows. They, just like every other computer company, need to control a big enough section of the market to avoid being the next Netscape/TiVo/Borland etc. You can pull the niche thing in the CE world, but not in the computer industry. Inertia matters. Apple are instead trying to redefine the game, and to do that they need to persuade users that they really want CE devices not computers.
Partly because I can see where they are coming from, and partly I guess because what they are doing is little different to games console SDKs, but perhaps mostly because in my world, if I want to make my code talk to something, I’m really going to have to jump through some hoops, I just can’t get all that fired up about the new license agreement.