Well, it's easy to explain. If you have to develop the game from scratch using C/C++ (remember no so called "undocumented API" i.e. no game engines is allowed) it'll take you a few years to do so. Apparently that's what Apple wants. Your best chance for getting good games on a phone is to switch to Android.
Your best bet for getting good games on a phone is for the phone developer to insist on some kind of standards. Apple would like to see real developers, not script kiddies. And it has paid off - Apple's AppStore added 85,000 new apps so far this year (plus the number of crap apps they dropped from the total). Android added 9,000 in February and about 20,000 YTD. And a huge percentage of those are junk.
Apple has one of the crappiest software development tools in the industry. Nobody ever use them unless they have to. And now you are suggesting to make the tools even more difficult to use (to weed out all the developers once and for all).
You're absolutely right. No one uses Apple's tools. The 185,000 AppStore apps just wrote themselves.
I draw a direct comparison between operating systems and governments.
Does it make you happy to parade your ignorance? There's absolutely no comparison - until we get the point where everyone is required by law to purchase a given operating system.
Thanks Mr. Jobs for keeping the standards high and for the awesome 4.0 update. No one but Apple really knows what is best for Apple. Sometimes excellence involves having to courage to make tough and unpopular decisions.
Someone who gets it. This falls in line with the decision by Apple to drop thousands of junk apps earlier this year.
Apple's toolkit is not really free. It costs ~$100 a year to actually use it and to keep test devices provisioned. That's $200 so far I've spent to keep even my own personal apps running on my own devices. And each year it'll cost me another $100 just to do that.
That's very expensive compared to RIM ($25 for lifetime key for all apps) or WinMo (free) or WebOS (free), where my own apps last forever.
And if your app is any good at all, you'd recover that $100 per year in App Store sales many times over. Good apps bring in money. Crappy apps don't. Better to spend $100 and bring in money than to use a free tool and put it on an platform where no one spends any money.
If you're the least bit serious about creating good apps, the $100 fee is insignificant.
It struck me as strange that apple would decide now, on the eve of CS5's release to put this out there.
It couldn't possibly have anything to do with the fact that Adobe has just started talking about this converter?
The argument goes against the very reason for using middleware. If you have 20,000 devs all doing their thing with Apple's tool, when Apple releases a new feature, 20,000 devs need to implement it. Now if those 20,000 devs are using middleware, the 1 middleware dev needs to implement the new Apple stuff and all the other 20,000 automagically get it when they update.
Code reuse. Portability. These are not bad things, unless you happen to be named Steve and just decided to lock down your platform.
You've got it completely backwards. If the developers use Apple's tools and Apple upgrades the OS, the tools automatically support the changes. If you're using Flash and the OS changes, 20,000 apps all break at the same time - and given Adobe's speed at fixing problems, they remain broken for months or years.
Wait, wasn't using the SDK and Xcode supposed to prevent crap apps ? And now you're admitting you submitted crap to the App Store ?
So much for "ensures a better user experience".
Who ever said that xcode would prevent crappy apps? It's possible to write lousy apps with any tools. The point is that it's impossible to write good apps with Adobe's tools, so banning them gets rid of one of the sources of bad apps. There's no way to get rid of 100% of bad apps, but this is a step in that direction.
+10
And for those whining that "Steve won't let me develop iPhone apps on Windows":
Apple sells Macs. It's in their interest that you buy one. Sometimes things aren't available on windoze. Deal with it.
You can buy a Mac Mini for $599 ($549 refurbished). Or a used system for a lot less. If you're the least bit serious about developing apps, that's nothing. Lots of developers make that kind of money from the app store every month - or faster.
Who wants to wait for Adobe to provide a fix for a platform totally designed by Apple. Those developers should just spend their time to code on Linux and leave the apple platform.
Adobe has known about the problems with Flash for at least 3 years since the iPhone came out. They haven't addressed them yet, so anyone who wants to wait for Adobe is crazy.
Even after all these years, there is STILL no full version of Flash that works on any smart phone. NONE. Why is that Apple's fault?
Even 10.1 won't be a full implementation and won't work on most Flash web sites. And that assumes that they ever release it and it works. Early reports say that it's slow and buggy. AND it requires Cortex 8 - which means that, at best, it might run on 1% of smart phones.
Flash is NOT a suitable technology for smart phones - and adding an extra layer by converting it to an iPhone app will make it worse.
This is a somewhat valid point when it comes to developing an app on multiple platforms. Many applications should be written on the platforms native language. But there are situations when it does make sense to write applications using something like Adobe AIR when it requires deployment across multiple platforms.
Not when you're talking about something as limited in power as a smart phone.
No developer wants to invest significant time into an application that has been rendered useless by Apple making a sudden change to the developer agreement.
They didn't. The SDK always banned middleware. Apple simply clarified that the Flash to iPhone converter breaks the rules that were always there.
But those new T&C rules say it has to be ORIGINALLY written in Objective-C, C or C++. I would hope something like Unity is exempt too, it doesn't seem to be the kind of thing they're after here, but technically it could fall victim. Only time will tell.
Unity says that they believe that they're not violating the agreement.
Well you have to understand the mind set of the apple fanboys.
They attend the church of Apple and their god is Steve Jobs.
Anything SJ says is the word of god. If he said go jump off a cliff they would do it with out question.
The funny thing is that it's the Apple haters who really have this attitude. "Anything Apple does is wrong. Apple is evil. Apple users are sheep".
Apple fans like the products. Three's nothing wrong with that. What's your justification for hating everything Apple does and hating people who like Apple products?
And how you know that Apple is not been malicious? You have seen Apple internal emails and been present in the meetings?
How do you know that Apple has been malicious? They have presented very reasonable explanations for their actions. On what basis is it OK for you to assume that Apple is committing a felony (by lying about their actions) but not OK for people to believe that Apple's telling the truth?
Considering the very limited resources of most handheld devices and keeping in mind the importance Apple bestows on usability I fully understand and support the move. The fact that it allows Apple to sideswipe Adobe at this juncture is a mere fringe benefit.
Exactly.
I have been
trying to learn objective-c since the news broke but too many things at once. I am going to keep my focus on action script,javascript, ajax,and php for now even though I can no longer create apps that way and keep the app thing on the back burner until I get time to learn it.
Go ahead. If you ever decide that you want to be serious about developing apps, you can learn to use appropriate tools. Until then, stop considering yourself a developer just because you can handle a few scripts or drag a few widgets.
I'm implying that without investigation we are not in position to pass judgment either way.
Then why are you passing judgment against Apple?
My concern is that this excludes a language like Freepascal, that compiles to native arm code, linking as any other native xcode app does into cocoa libraries now that it's had extensions built into language to deal with objective c. I see no reason why a language like this should be disallowed.
Apple has given the reasons. If you can't read, get someone to read it to you.
Allowing use of other languages and middleware would decrease development costs for iPhone and thus would lead to more software being developed for the iPhone.
More crappy software. I'd rather have 1,000 good apps than 1,000,000 crappy apps. Apparently, so would Apple.
I really don't thing cross platform software is any issue at all. Apple's argument carries no weight what so ever...
Only because you discount everything they say. As an iPhone user, I want good quality apps and Apple has a history of supporting that.
Let me ask a simple question. As of today, there is no full feature Flash version on any mobile device. None. Not Windows Mobile, Not Symbian, not Android. NONE. Even Flash 10.1 (which is limited in functionality and reportedly runs badly) will require a Cortex 8.
Now, take that app and add another layer by converting it into an iPhone app.
What kind of logic makes you believe that the performance will be anything even remotely acceptable on today's phones? One developer who has used it says that it's choppy even on opening a menu - much less doing anything more complicated. Why would anyone want that?
i'm monotouch developer, so this hits me hard. very hard.
i paid for the monotoch license, i paid for the developer account and i paid for the two iphone models.
now i can throw my apps to the garbage or port them to objective c.
i am not allowed to comment on the agreement, but i can say what i paid for and that i'm losing weeks of hard work.
make your own picture
Weeks of work. Cry me a river. Apple's SDK didn't allow this from the start and you chose to go down that path. Now that they've clarified their rules to make it obvious even to people who want to skirt them, you're whining about it. If you want to be a real developer, you use appropriate tools.
You guys do know that this not only affects Adobe but pretty much all the major game and app developers?
Not according to Unity.
Sorry, I normally lurk here, but this statement just made me have to stand up and be counted.
Little intro - I am one of those dreaded Flash developers, and yes I was kind of looking forward to seeing what Adobe's Packager would be like. I'm not too bothered that it's likely a no-go now, I'll just get on and learn a new language to add to my arsenal.
Rant over, out with the Objective-C books and XCode. There's nowt to scary or unfamiliar looking in it for me
And that's the way a real developer views it. If you want to develop for a platform, you learn how to do it properly. Expecting someone to hand you a freebie is silly.
I certainly can understand that apple wants to protect its platform...
But they are playing a dangerous game. It can be argued that, as a whole, apple's actions are uncompetitive and hurt consumers, could arguably lead to higher app prices accross all platforms (including iPhone) and will likely end up in court.
Imagine if Microsoft did that on Windows (C#, C++ only... or whatever other language MS wants to support), and ends up killing Java (for example). There are nuances, but it's more or less the same situation.
This'll go to court, maybe even as an antitrust issue. not good in terms of PR.
Feel free to explain exactly what grounds someone has for going to court. What antitrust law was broken?
There's nothing even remotely illegal about this. Not even close.
What about Microsoft Office, PhotoShop, Quark et al... If Apple didn't have these apps all developed with layers then they would of gone bust long ago...
if the iPhone had a multi-GHz processor with multi-GB of RAM, that might be reasonable. Unfortunately, it's not.
One of the first things I learned on my comp sci courses (possibly before you were even born) was that if computing resources are limited, you have to be very careful not to waste them. And computing resources on smart phones are VERY limited by today's standards. (although it's funny that my iPhone has more computing power than the mainframe I used to punch Fortran cards for).