Apple's new SDK for the iPhone 4.0 OS bars developers from accessing the company's APIs through any sort of intermediary layer that translates applications written in ways Steve Jobs doesn't approve of. This will likely prevent the iPhone packager in Adobe's upcoming Flash Professional CS5 development suite from converting Flash …
I'm starting to notice a trend...
This seems mighty familiar to what they just did with advertising. Seems that they're looking at all the ways people can make money off iDevices without going through iTunes, and cutting them down one pie chart slice at a time.
One wonders what the end goal of pushing all of the world's (from the view inside the Reality Distortion Field) cash flow through the iTunes Store could possibly be. The Universal Bank of Apple? Maybe they're planning to start their own currency (after which they'll surely ban any reference to things like Dollars, Euros, Pounds, Rupies, etc - there will be nothing but the iCoin, with an engraving of His Holyness in his finest black turtleneck.
I wouldn't have problem with that. After all, Jobsthalers would be backed by 30 billion dollar of assets, which is way more than can be said of most governments.
The new language can roughly be translated as "No-one may make money from iPhone development except us".
Its getting to the point where developing for that platform is a religious experience.
As an outsider looking in its hilarious. I only follow the iPhone stuff for the laffo.
"No-one may make money from iPhone development except us"
You appear to have forgotten about the millions of iPhone developers around the world making a *lot* of money from iPhone development. Yet more Apple-hater ignorance.
App-store pays for itself
Apple is providing an outstanding business opportunity to developers (and other creatives). The money certainly isn't going to Apple - you may recollect that Apple's accounts showed the iTunes store running just over the break-even mark. I think one of the reasons other companies failed to build such a thriving market-place is that were far too greedy, raking off a huge percentage of the profits. It made the market impenetrable to all but the very largest players.
Why the new language in the agreement? Simple. Just look at the fruits of write-once-deploy-anywhere development on the Mac OS - it sticks out like a sore thumb. I haven't seen a single Java application that looked remotely like it belonged on the Mac, and they are all irritating to use as a consequence. A consistent user interface is a valuable asset for the end user, and I appreciate Apple's efforts to maintain it.
Write-once-deploy-anywhere sounds attractive, but in practice it has never delivered. And it's surprisingly easy (for a professional software engineer) to develop C/C++ based code that provides most of an application's logic for all platforms and then build a platform-specific UI for each target on top of it. Apple's new wording primarily deflects a festering pile of quick-and-dirty, Flash-based clutter. If that's what appeals to you, I'm sure other platforms will deliver. I won't miss it.
"A consistent user interface is a valuable asset for the end user, and I appreciate Apple's efforts to maintain it."
That's a joke right? Have you seen their laughable, non-standard, attempts at software on windows?
RE: A joke?
...and have you seen Microsoft's stuff on the Mac?
No Python? Not interested!
Developers, replace Python with your favourite language in the title above.
My free time is too precious to waste on the ephemeral whims of some platform tyrant.
Objective-C++ also getting the banhammer ?
Unfortunately, the new ToS also prohibits Objective-C++. Probably just a dumb oversight as they rushed out this tweak. I'm sure some will see it as a hidden agenda to push Apple's new C extensions (blocks) and thwarting C++, but I'm sure it's just a screw-up in legal - afterall, the Xcode SDK directly supports Objective-C++.
Otherwise, some of us are going to be spending a lot of time on writing C wrappers for C++ code to call it from Objective-C :-)
What is their motivation?
Speculation that this is a move to enhance the quality of iPhone/iPad apps is clearly bogus, since all apps are already individually approved.
I suspect that what Apple really doesn't like is "write once, run anywhere" apps, since that denies them exclusivity.
If they want that, then maybe they should offer money to the app developer.
My apps are "originally written" on a whiteboard. As far as I'm concerned, XCode is a translation layer.
John McCarthy, turning in his grave. At least if he were dead.
Closed OS just got more closed
Imagine Microsoft making a similar move. No Java, no python nothing but C++ or a .NET language.
Why would they want to do this? Performance? Stability? Money?
I guess what adobe can do is write a compiler that outputs C++ code that then can be compiled to target Jobs API's directly.
Windows Phone 7
They have already done it. You can only use .NET languages for their new mobile platform...
That wouldn't be 'originally' written in C++ though.
.Net languages only
Too bad they're being so restrictive, only allowing us to use
A# (Ada for .Net)
L# (Lisp for .Net)
P# (Prolog for .Net)
Ja.Net (Java 5)
Re: .NET languages only
Well, that's a wide choice of programming languages indeed. Shame that none of them are native, and all translate into their intermediate bytecode. You write C++, but I guess Microsoft will only allow _managed_ C++, which is not really C++ if you want to write high performance games for example. What if the GC stops the world right in the middle of processing a new input event from the user? Look at what Google had to do with Android: they started off by giving devs Java-only APIs and then backed off and allowed native code to be run.
Whatever fancy name you give it, it is still not native (admittedly it is not interpreted either, just JIT-compiled, but still lthe same thing, so is Python and no one calls it native) and therefore inherits all the problems of running managed/interpreted code: slow, restrictive and, if you use their C++, less portable. I can write an OpenGL app in Linux and have it ported to the iPhone OS in a matter of days unless I use some fancy non-ES API. Can you do that with Microsoft's OS?
Re: wont work
Not sure I get your point. Mine was to say that Microsoft don't allow native code in their OS, therefore imposing an even bigger restriction than Apple to potential developers.
RE: .Net languages only
The following from your list are MS only:
Ja.Net (Java 5)
These *might* be useful.
...but the code is all compiled by Microsoft's commercially offered compiler software. Apple give theirs away for free.
These are the dribbling elderly relatives of anything that could be used to write a decent phone application. What's more, they're all .Net
A# (Ada for .Net)
L# (Lisp for .Net)
P# (Prolog for .Net)
And just to reiterate, you have to pay for the compiler for these. It's not cheap. Apple's equivalent is free.
So What tbh
There'll still be millions of (mostly farting) apps on the iPad store soon
I like the iPhone but....
....this is getting ridiculous. This level of proprietary lock down would make Bill Gates green with envy. The PR and legal departments carrot and stick approach is impressive - the PR side says 'we're into open standards - no Flash here, just HTML5' while legal lobs these api restrictions at developers.
At best, petty Adobe bashing. At worst anti-competitive behaviour. Bill should be impressed - Jobs is getting away with stuff he couldn't.
I can see Steve's point
Why should the iPhone get loads of lazily coded, poor quality applications written in some bloated high level code and then translated to native code.
It's not control freakery to have high standards. Just look at Java midlets and mobile Java, it never really took off and was rather crap to look at. Do you really want such trash on your phone?
That's very valid point. Getting the best performance out of mobile devices requires a better quality/cleaner code.
I do wish that Apple would just come out and say this though. They are coming off too much like their customer base; highly pretentious douchebags.
Mobile Java is more sucessful than most people are aware
There are more MIDlets downloaded every day than iphone apps. It just doesn't get reported since it's spread across a huge number of app stores instead of being funnelled through a single point like itunes.
Yeah, but what about the likes of the excellent Unity iPhone?
Am I supposed to write my own 3D and physics engines rather than use middleware, which is perfectly acceptable and mostly "best practice" in the games industry? This is like Microsoft saying that developers can not use the Unreal engine on Windows, it's pathetic.
We better get some clarity soon from Apple whether their stupid T&C apply to Unity et al.
Big brother nonsense
as the end user it is up to me to decide what the user experience should be and where the performance tradeoffs should be. In the absence of artificial restrictions ideas can succeed or fail on ther own. It's MY device, not Steves and not bills.
The degree of cargo cultism here is simply appalling.
RE: Big brother nonsense
But it's *not* yours, is it?! At least the software isn't. The fact remains that when you use *software*, you do so under licence--even if it's OSS. Yes, the hardware is yours (no need to shout), so do like your sphenisciform friends and write your own, or use the OSS ones that are available. At no point do Messers Gates, Ballmer, or Jobs hold a gun to your head and make you buy one of their products.
>"The degree of cargo cultism here is simply appalling."
I'm sorry, but the Stallmanian ideologues really do live in a fantasy land, with their over inflated sense of entitlement. They way they look down scornfully on those that dare to have differing or, heavens forbid, *contrary* views is what is *actually* disgusting. They love to rant based on *their* idea that everything should be open as some sort of basic human right! Read about what intellectual property is and understand why it's the individuals right to determine how that property is uses and disseminated matters. GNU is just one way. Count yourself lucky that you live in a society in which you have the privilege of freedom, thought and speech in which you *can* make a choice, instead of bitching about a product that you don't like and have no intention of ever using or owing. If somebody else decides that they *do* want the UX to be monitored (read quality controlled), it's up to them. That's the problem with ideologues of all kinds, their's is always the only true path, which is ironic given JEDIDIAH's rant...
Wouldn't the new terms knock Opera Mini on the head too?
Who gives a damn how source code is written for the iPhone platform, apart from Jobs who's trying to get rid of the competition obviously. It could be chiselled in stone slabs and then laboriously hand typed and compiled or machine generated in some IDE then compiled but when it's compiled it's still the same thing.
Is this even legal ?
I bet that this could be challenged in European courts. On the other hand, who would want to do it ? Nokia is probably quite happy that Jobs shoots itself in the foot.
On what grounds?
There will be no challenges in court, there are no grounds to challenge.
Jobs shooting himself in the foot? All the way to the bank he is! Your criteria for success eludes me.
Yes, there should be a court challenge. It is clearly illegal tied selling. The EU forced MS to unbundle IE for the same reason. Apple is now the new Microsoft.
But Apple thinks that they can force you to use their tools. This has nothing to with app "quality", as if Apple even cared about app quality. They individually approve every app right now, and look at the junk they've approved. So there are so many apps right now, after using them, you basically have to restart your iPhone, because they leave the OS in a messed up state.
But lets say I make a tool that can do GUI development of iPhone. The tool would output Objective-C. But since the "original language" wasn't Objective-C, any apps created with this tool, will not be approved.
This new restriction is about several things: (1) Kill the entire market for iPhone tools, because the only tools you can use are Apple's; (2) Locks apps to iPhone. Objective-C only really exists in Apple land, but it was close enough to C that most people didn't object. What are developers of pop apps like Shazam going to do? They obvious want to port to the GPhone and Blackberry. So they need to write three separate editions?
No, it isn't legal
Imagine if Microsoft said only apps written in C# or VB.net could be run on Windows 7. People would be freaking out, and this is just the same! Come on Adobe, fire up those lawyers.
Clear grounds for challenge
There are clearly grounds to challenge.
Apple is using monopoly power in one market (mobile apps) to unduly influence another (development tools / languages for said apps).
This is exactly what MS got into trouble for and what Google and Apple are trying their hardest to get into trouble for also.
Whether or not a challenge will succeed at such an early stage of trying to do this, or whether any challenge will actually have to wait until after they have succeeded remains to be seen.
RE: No, it isn't legal
Do you mean WIndows 7 for computers or for phones.
As far as I can see, that's exactly what they're saying for phones.
RE: Tied Selling
" It is clearly illegal tied selling."
What's tied to what? It's not like Microsoft and .Net. You can't develop for their new phone OS without it. Apple give their development environments away for free. I know, I've downloaded one of them :)
"So there are so many apps right now, after using them, you basically have to restart your iPhone, because they leave the OS in a messed up state."
Name one that leaves the OS in a messed up state. I've downloaded 20 at a time and tested each one out. No phone restarting has ever been required. I smell made-up bullshit...
"But lets say I make a tool that can do GUI development of iPhone. The tool would output Objective-C. But since the "original language" wasn't Objective-C, any apps created with this tool, will not be approved."
Umm. Your tool outputs Objective-C. You feed the Objective-C into the compiler. There's no running of non-objective-c code on the phone, so this would be allowed.
"(1) Kill the entire market for iPhone tools, because the only tools you can use are Apple's;"
That's always been the case. They're FREE though, unlike MS .Net suite. Surely that's a good thing?
"(2) Locks apps to iPhone. Objective-C only really exists in Apple land, but it was close enough to C that most people didn't object."
Well, that's been the case since around 1984 or something.
"What are developers of pop apps like Shazam going to do? They obvious want to port to the GPhone and Blackberry. So they need to write three separate editions?"
They have always had to. At least in your example they didn't need to pay for .Net because you didn't include the new Winphone.
I don't think you understood the article. You can compile anything you want for the iPhone, free. You just can't release code that interprets other code. It's that simple.
RE: Clear grounds for challenge
Apple give their development environment away free, so they hardly have a monopoly. It's not like MS and .Net and their new phones.
Not having a monopoly means that there is no grounds for any challenge.
All Apple are saying is "you can't write code that interprets other code, we won't approve it"
...if this is true. Flash I care less about, but Appcelerator and the rest of them have been providing a great cross-platform solution to make phone apps. If Apple refuse to play ball then it's back to separate development for every platform.
You mean, just like it is for Windows, Mac and Linux? Or PS3, 360 and Wii?
Diddums. If it means you get a better experiance on each platform, who loses? If you, as a dev, are making oodles of money then you damn well better put the effort in to make it.
Great cross platform development? Sure, for shovel-ware shite that not worth downloading
The most elitist company in IT are trying to keep out anybody who doesn't belong to their "exclusive iPhone development elite". Very simple. I've been using Titanium for a while, but even if Titanium are allowed to continue existing under the new TOS, I won't be going along.
It's a step too far for me by Apple... I don't want to develop exclusively for the iPhone, and I'm not going to fight their fights for them as part of some utterly mercenary developer army.
Sure that means not getting access to that market place, any ultimately, Apple know the developers don't matter as much as the end customers, but I'd rather be poor and free than wealthy and shackled.
Seriously? Elite? Go Wolfram some figures,The iPhone OS dev community is the largest dev community for *any* mobile platform! Anyone with a Mac can start developing applications, splash out a mere $99 (have you seen what MS are going to charge!?) you could start earning thousands!
Well if you're going to complain about the price barrier of entry to development, do be fair:
Apple: $Cost_of_cheapest_Mac + $99
Windows: $Cost_of_cheapest_PC [Visual Web Developer Express for Windows Phone and Visual C# Developer Express are free]
anyone with a mac
and that would be like what ? 0.1% of the wolrds population ?
Yes i have an iPhone. And i am NOT impressed with the 'apps'. The only one i found worth shelling out money for is Navigon GPS app. And i have two free apps gateguru and the southwest airlines app.
There is NOTHING ou there that is interesting. games and gimmicks. Where are the 'killer' apps ?
We'll say $650 USD all up - Mac Mini.
Now the Return On Investment on developing for a Windows phone platform at this moment -with WP7 of which is due for release around xmas?
What a joke
I wish I had 10!
A joke that makes a whole lot of people happy, a joke that makes Apple loads of revenue, a joke that makes developers good sums of cash too. What a joke, the nerve of the company!
Just a few reasons why you won't find me working on an application for the iPhone/Pad anytime soon :
1/ The whole ethos of Apple. When I buy a computer, it's mine. I expect total control of MY device, to be able to install whatever I want. While there could well be some merit in a warning dialog should I ever try to install an app unannointed by his holiness (security), to prevent me from using my machine, my way, is simply not on.
2/ My opinion of Apple has a company has fallen CONSIDERABLY in recent years. They used to be known for producing very good, reliable, dependable machines. Since moving into the portable device market, they just don't seem to care about quality any more. Their customer service is a joke. I do not wish to be associated with them.
3/ Seeing as I don't particularly like Apple, I'm not particularly keen to have them leeching of my revenue. I might be tempted if I saw Apple as giving some sort of service, but it seems that whenever there's interaction between Apple and the development community, it's always the developers who seem to be left holding the shitty end of the stick. I don't have to pay Microsoft for the priviledge of releasing software for Windows, so I don't see why I should be contributing to Jobs yacht fund either...
4/ I'm reluctant to produce an application that Apple can pull out of the market at their discretion. That's a level of commercial risk I simply cannot accept.
5/ Worse still, they seem quite happy to pull entire development methodologies and platforms - with absolutely no thought for their developers.
6/ I don't know what the position is now, but I seem to recall that Apple have in the past had a very casual attitude when it came to actually paying their developers their share of the loot.
7/ Even if I could be bothered to learn Objective-C, my skills are then non-transferable to other platforms. Java / Python - even .Net are much more attrative.
8/ Android will soon utterly dominate market share.
1) Task orientation is what it's all about. We don't need refrigerators to toast bread, and vacuum cleaners to feed the pet. What we need are task oriented devices which work for the task at hand. If you want a device that does lots of things, fine, go buy one because that's what you want. For the people who don't want it to do everything why should we have to pay buy what *you* want?
2) Their cusomer service is a joke? Seen the latest poll out? They are #1 in case you hadn't. Your criteria or experiences must be different than their other customers.
3) You don't have to pay Microsoft but you do have to pay for anyone else that promotes and sells your products. Give me a f*****g break. Apple provides you with a market which their customers *must* purchase products through. You expect that for free?
I'm too bored to continue addressing your points, moving on. Epic fail.
Let's go through that one at a time, shall we
Wow. This is one of the most amazing comments on this thread! Let's go through one point at a time...
1) Any Apple computer you buy is yours. Terminal is a wonderful tool that gives you unfettered access to the system. Apple do not tell you what you can and can't do with a Mac.
2) Apple - #1 for customer satisfaction with Laptops, desktops, and now mobile phones too... For many years with only a few blips away from the number 1 spot. They are very much very reliable, and very dependable.
3) You need to stop submitting to the App Store of 2 years ago and stop dredging up these old clichés. The App Store approval process, whilst still not perfect, is orders of magnitude better than what it was... All that's asked if you want to make money, and potentially lots of it, through Apples platform, is that you abide by their rules. You don't pay Jobs to submit applications to OS X. Although, you will be giving money to Gates/Ballmer for submitting to Windows Phone 7... If you're making comparisons, at least make accurate ones...
4) Well, fine. But Microsoft have said they'll be doing it. Even do-no-evil-Google have done it... It's almost standard practise these days. Again, abide by those rules and you'll likely be fine.
5) They're not pulling anything. Other people have discovered ways of making money by giving other people tools to make shovel-ware, and Apple are trying to reign in some quality standards. If you're using these tools, you are not a developer!
6) Never heard of this. Neither has a brief Google. Happy to be proven wrong if you have proof.
7) Objective C is generally used on Apples platform, true, you're still free to use your skills in the lucrative OS X market. Besides, C, which it's based on, is actually kinda popular out there in the real world.
8) Bu-dum Tsch! Well done for ending on a joke :)
"""2) Apple - #1 for customer satisfaction with Laptops, desktops, and now mobile phones too... For many years with only a few blips away from the number 1 spot. They are very much very reliable, and very dependable."""
I used to work at a help desk, and my boss would assign calls to Apple customer service as punishment for coming in late / hung over / etc. Most of the time the calls went so miserably that he'd feel bad and buy you a pint or two after you managed to waste an entire shift trying to convince someone (Well, a string of someones) that you needed to RMA something that was clearly broken, and clearly within it's warranty period.
I once spent a month of back and forth with Apple customer service on the phone, and two certified Apple repair shops to get bad memory in a Mac Mini replaced, which I diagnosed in 15 minutes, but which neither repair shop could get right any of the half dozen times I sent it in (They replaced every component except the memory multiple times, and the machine would kernel panic on the first boot every time we'd get it back to our office - they didn't even both testing it.) Eventually we had to get an Apple corporate account, which then let them send a tech 200 miles via car to replace the memory.
We caught one of those certified repair shops claiming warranty work without actually doing it, and Apple confirmed that they had shipped new parts to the shop, which hadn't made it into the machine, which was still broken, and Apple customer support didn't see any problem with that.
Plus their non-corporate RMA process /requires/ (well, last time I cared to check) that you pay for overnight shipping, which some how came to $25 to repair, under warranty, a $100 ipod that had died from a known defect.
Anyone that thinks their customer service is OK has either been lucky, or maybe never had to actually use it. I've had actual nightmares that are based on calling Apple for support. No shit.
1/ And if someone does build a refridgerator that toasts bread, does this really haver any effect on you? If people want an app, which people are prepared to write and noone gets hurt, then fine - what's your problem?
It's about CONTROL, and about taking money from developers for no creative input from Apple themselves.
2/ This merely tells me more about the standard of customer service satisfaction surveys. Four people in my office have Apple products. One of them (iPhone) is happy, the other four have all had defective equipment and a serious battle with Apple to get them to accept the fact.
Want to go jogging with an iPod touch, even in a waterproof case? I wouldn't recommend it. Seems like if there's something wrong with a piece of their equipment that's been within twenty miles of a cloud, then water damage is their standard war cry...
My cheap, generic MP3 player btw? No problems.
3/ You're right, they do offer SOME services via the market. Suppose I don't want them - suppose I would rather just handle all that myself? That's right - I can't - I'm locked in.
Well, if you like it, fair play to you. Personally, it's evil. Just my opinion.
Oh, and I notice you haven't actually got any response to the other points then...
Ok then - Let's...
1) An iPhone, iPod and even the leading choice of Apple-Approved sanitary protection are all computers by any defintion that someone with a clue would give you. So, rather than just picking the one platform that Dear Leader forgot to conquer, why not face the fact they if it's Apple and Pocket-Sized, it's as restrictive as a ...... (Self moderated!)]
2) See above (re the state of surveys these days...). True, Fanboi's love them - but from my own (admittedly small) sampling of the Apple owners, I suspect the truth lies somewhere to the south of their claims.
3) You know, if you're still hearing the same cliches, maybe that ought to tell you something?
I'm not aware that Microsoft have plans to prevent me from simply installing an independently developed app without bothering with their marketing system. I can't just drop something on the phone myself? Sure about that???
4) No - I have the option of not deploying using the Market on Android, and I presume will still have this on the Microsoft platform as well. Unless you know different, in which case let me know because I would be genuinely interested to read it.
5) So because some people abuse a tool for which their is a perfectly legitimate use, you feel justified in just pulling it? Really? Congratulations - you've just killed the software industry!
6) Happy to be of some small service - http://www.theregister.co.uk/2009/05/05/iphone_devs/
7) The OS X market isn't all that lucrative - which is actually a shame, because laptops / desktops are one of the things that Apple do well. Unfortunately though, they don't have market share. And yes, I know C. I also know C# and even dabbled with C++ back in the day, all of which means I have little use for Objective C.
To be honest, things like Java, Python and Ruby are I think where we should be going as developers. Cross platform is important.
8) Unfog your glasses, and peer a little deeper into the future... A nice, servicable, open source platform. Hmm... Based on one of the most popular languages on the planet Earth today...
I think Android is eventually going to win out - it's just as capable, isn't relying on a single manufacturer, and allows for the production of cheaper handsets in these challenging times. Still - just my view...