Slashdot Log In
iPhone's Development Limitations Could Hurt It In the Long Run
Posted by
Soulskill
on Fri Mar 28, 2008 04:10 AM
from the my-way-or-the-iway dept.
from the my-way-or-the-iway dept.
ZDOne writes "Apple might have finally come around to allowing third party developers to create applications for the iPhone, but only up to a point. ZDNet UK claims Apple is leaving itself vulnerable to the competition and to a loss of lustre
by blocking background tasks on the device. The author notes, 'Perhaps it doesn't trust application designers or users very much. Perhaps it wants the best software for itself, where it can limit what it can do in order not to upset its telco friends. Whatever the reason, it reflects badly on Apple. The iPhone is not an iPod; it's a smartphone connecting to a universe of fast-changing data on behalf of innovation-hungry users. The sooner it stops pretending to be a 1981 IBM PC, the better it will be for everyone.'"
Related Stories
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Bad apple tag? (Score:4, Insightful)
Re:Bad apple tag? (Score:4, Informative)
These restrictions are here to artificially limit competition between advanced communication applications and the telcos. It keeps you dependent on the old phone voice communications and the old SMS system which are obsolete and extremely expensive comparing to any IM and SIP solution.
This way you are banned from using any innovative communication technology while paying for the (artificially) crippled internet connection plus the expensive call rates.
Parent
Let the market decide (Score:4, Insightful)
There's no monopoly here, so we should let the market decide. If you don't like it, don't buy it. If they've really got things wrong, the market will kick Apple where it hurts. If consumers don't care about background apps, they'll carry on spending.
Me? The beautiful shiny toy is so compromised that I wouldn't touch it with a bargepole.
Re:Let the market decide (Score:5, Insightful)
Because of this, if Apple abuses customers by crippling it's device, it is acting against the public interest for it's own gain. I don't blame them for this, their shareholders would be pissed otherwise, but the point of government is to make sure that the selfish interest of individuals does not clash with the collective good of society.
Our regulators should do something about this.
Parent
Re:Let the market decide (Score:5, Interesting)
I'm tired of hearing "let the market decide" in general. Nowadays it's almost always used in defense of companies that prey on consumer ignorance, the very definition of something that the market will never solve. At the very least, if the market is to select a solution, someone has to start campaigning for one instead of just sitting on our asses. It's really a justification for inaction, nothing more.
I'm tired of replying to people defending lock in for various reasons, so I'll just suggest that those posters reread the book about one of the greatest people of our time [oreilly.com]:
"Although previous events had raised Stallman's ire, he says it wasn't until his Carnegie Mellon encounter that he realized the events were beginning to intrude on a culture he had long considered sacrosanct. As an elite programmer at one of the world's elite institutions, Stallman had been perfectly willing to ignore the compromises and bargains of his fellow programmers just so long as they didn't interfere with his own work. Until the arrival of the Xerox laser printer, Stallman had been content to look down on the machines and programs other computer users grimly tolerated. On the rare occasion that such a program breached the AI Lab's walls-when the lab replaced its venerable Incompatible Time Sharing operating system with a commercial variant, the TOPS 20, for example-Stallman and his hacker colleagues had been free to rewrite, reshape, and rename the software according to personal taste.
Now that the laser printer had insinuated itself within the AI Lab's network, however, something had changed. The machine worked fine, barring the occasional paper jam, but the ability to modify according to personal taste had disappeared. From the viewpoint of the entire software industry, the printer was a wake-up call. Software had become such a valuable asset that companies no longer felt the need to publicize source code, especially when publication meant giving potential competitors a chance to duplicate something cheaply. From Stallman's viewpoint, the printer was a Trojan Horse. After a decade of failure, privately owned software-future hackers would use the term " proprietary" software-had gained a foothold inside the AI Lab through the sneakiest of methods. It had come disguised as a gift."
Parent
Re:Let the market decide (Score:5, Insightful)
In terms of "background tasks," I think at least part of Apple's goal is to maintain a quality user experience. People have different expectations from a device like a phone than they do from a computer. Most people expect their computers to occasionally freeze (whether Windows, OSX, Linux or otherwise) due to some background process kicking off and monopolizing resources for a few seconds. When it happens, hit Control-Alt-Delete, run "top", or whatever, and figure out what's taking the CPU. People expect their phones to respond instantly all the time, and I don't think many want to bring up a process manager and click "kill process" while they're walking down the street trying to make a call.
Given the amount of sketchy, useless junk that one sees "freely downloadable" on most PCs and Macs, I don't think that Apple should necessarily want to export that same environment to the iPhone right away. The first application that everyone installs and which secretly launches a DoS attack on the mobile phone network at some predetermined time in the future is going to be a PR disaster for Apple. And that's a scenario way beyond some junk application that just locks up or slows down people's iPhones.
In the end, Apple should probably have a "power user" mode on their phones, the activation of which forces you to sign a disclaimer or non-indemnifation agreement that protects them if you screw your iPhone up installing unverified apps, run up your bill because some background process was doing data access thoughout the day while you were in Europe, etc. Many of those things could be "protected" against of course, if Apple put safeguards in their software (e.g., block any automatic data access when on a roaming network where data access might be charged), but I don't expect Apple to have thought of every possible bad outcome yet, but I do expect people to complain/sue like crazy if one of those bad outcomes occurs.
Either way, though, regulators are not the solution here. Any government (Democratic or Republican) is just going to screw things up even more, because they'll have their own set of interests--namely self-perpetuation--at heart.
Parent
One one limitation, easily overcome (Score:4, Interesting)
Even if they didn't, the device itself could pack more than enough Cocoa Touch enabled power-apps that will not depend on this function to stay ahead of the competition for a long time. I'm personalty waiting for iWork Touch, which it would greatly surprise me if didn't show up by the end of the year.
A bit unrealted: how brilliant of Apple to sneak in a PDA through it's iPod market. For most consumers, it's easier to buy an iPod with PDA features, than a PDA which can play a bit of music. This will be Apple's next step in the digital lifestyle philosophy. You can no longer only carry around your music and photos, but also your docs and planner.
Re:One one limitation, easily overcome (Score:5, Insightful)
Compared to what? In my experience, the iPod Touch makes a poor PDA even compared to an old Palm, both in terms of functionality and in terms of usability.
Can't argue with the iPod Touch having "style" or "class", but... who cares?
Parent
Re:One one limitation, easily overcome (Score:4, Insightful)
You could say that the iPod Touch/iPhone is a better calculator than my old Casio FX-1200 (circa 1979) for the same reasons, except, of course, the core functionality of the calculator on the iPod touch isn't there and it's not scientific unlike the FX-1200.
Now, the Palm III has a good calendar, addressbook etc. and i easily expandable with 3rd party appications.. and you can write your own and compile them with the free, GCC based SDK and have full functionality and as much access as the other applications. They fit the capability of the hardware as well.
Now, the iP{od Touch,hone} now have a reasonable calendar and address book but that's only part of the functionality. There's no way of beaming the information to another person's device, for example and the calendar doesn't have multiple categories etc. The functionality still has some way to go on this front, which may be addressed to some degree by the version 2.0 firmware but it can't overcome some of the hardware deficiencies.
Parent
Um... phone network != internet (Score:5, Interesting)
Banning uncertified code? Banning background processes?
That sounds pretty damned prudent to me.
The last damned thing I want to see on the phone network is an iPhone worm getting it's hooks into the core of every iPhone in the default settings, PHONE SPAMMING half the planet, and generally turning the phone network into the same power-hungry firewalled, bloaty security nightmare that the Internet is.
I may hate the way Apple does OS X, but when it comes to the iPhone, if they can keep worms off the phone network and prevent background crapware that will drop my battery life down to 12 hours, I say good on them.
Re:Um... phone network != internet (Score:5, Insightful)
That is nothing but a transparent block toward the network specific apps, like IM and VOIP, that Apple either does not want to exist, or wants to monopolize for itself. Remember how much trouble Microsoft got in when they gave their programs special treatment over competitors?
Parent
Re:Um... phone network != internet (Score:5, Informative)
The way J2ME operates is far more sensible than a total ban. Every time an unsigned program wants to make use of a 'restricted' API, the user is prompted. This stops anything malicious from happening.
If you're doing the above, then this additional step is completely pointless and only serves to limit the usefulness of your platform. It's not like the backgrounding abilities of Symbian phones have brought down the phone networks yet.
Parent
Re:Um... phone network != internet (Score:5, Insightful)
Hi Kurisu, this is mom.
There's this box thingy that popped up on my iPhone, and it says
Program 'Super Fun Value Discounts! Press Yes Now!' wants to run a restricted function? Allow?
Yes/No/Cancel
What should I do? I tried to press No, but it just pops up again 1 minute later...
In the same way I don't want battery-leaching Adobe Update 3.1 background processes, or the iMorris Worm on the phone network, I ALSO don't want the hellish disaster of security popup boxes on my PHONE either.
Parent
stupidity (Score:4, Informative)
Smart phones have had background processes and uncertified code for many years, and there have been almost no problems with it in practice. Half of Nokia's phone lineup are fully programmable, multi-tasking machines, capable of running ssh, BitTorrent, Python, VNC client and server, Apache web server, and anything else you can think of. There's even software for turning Symbian phones into WiFi access points for sharing the 3G connection.
Anybody who claims that one needs to ban uncertified code and background processes to avert disaster simply doesn't know the mobile phone business... or is lying through their teeth.
Parent
Re:Um... phone network != internet (Score:4, Insightful)
AT&T has been around a long longer than Apple and possibly outlives you.
They have been through the worst decades of phone spamming, bot dialing, switch resets, network takedowns due to faulty software, etc.,
Heck, their manuals for a single router chip are 893 pages long (not including index and glossary).
AT&T or any other cell network is NOT stupid.
Your puny iPhone app can do harm to the phone probably, but would be detected and burnt down long before it tries to harm the network.
The amount of robustness that goes into a telephone network and switching comes with 100 years of telephony and telegraphs.
You are a new kid who thinks OS X is the greatest OS and can take down the entire defense network as depicted in War games...
Sheesh...
Parent
bad comparison? (Score:3, Insightful)
then again.. the clones did well, they reverse engineered the BIOS, the all ran DOS and IBM did not get that much of the profit - so perhaps there is a long term message for Apple here about short term versus long term gains. they have everything in place here to be the proud owners of a new standard in interface, layout, design and overall system - if only they would relax their grip to allow a few systems^h^h^h^h^h^h^h^h grains of sand out.
Look at the good stuff, not just the bad... (Score:5, Insightful)
Personally, I have downloaded the SDK. I have an iPhone that I use for business (and fun!) purposes, and I can think of a couple of applications that I would like to see developed, and as an Objective-C/Cocoa developer, I am in good stead to do so. I was amazed at both the quality and quantity of the features available on the iPhone through the SDK, and how simple and straightforward the development process was. As a veteran WinCE developer (and I did wince, lots) I know how not to go about development for resource limited devices, and I can only say that the whole experience so far has been very rewarding.
Thinking about the 'limitations', I can only say that the iPhone is not a desktop computer. It is not tethered to the wall by a power cord, and as a user, I really do put battery life over and above some background task that may or may not add to the quality of my use. I think Apple is right to be concerned about the type and quality of applications installed on these devices, because they care about the user experience.
So, does anyone run SSH on their iPhone? (Score:5, Interesting)
The iPhone goes into deep sleep at the drop of a hat to extend battery life. Polling connections, doing anything in the background will keep the CPU from throttling down.
From the customer's and Apple's point of views, this is a bad thing. Mostly because Apple will take the heat for the misbehaving application. For more evidence of this, check out the other slashdot story about the number of crashes caused by NVIDIA. Did NVIDIA catch the heat? No, Microsoft did.
It's a reasonable limitation until they come up with an application that the user can ask,
"Hey, my battery life sucks, where is it all going?"
and the application will say,
"The SSH server".
Middle way (Score:5, Insightful)
Almost all apps on PalmOS run in the same way - they save state and exit when you switch to another app. By optimising application startup speed, they give the illusion of multi-tasking. Anyone who's used a Symbian UIQ phone knows how slow application startup is on a lot of smartphones. IIRC, there are some phones that allow background tasks until you start the web browser, at which point all other non-system tasks are killed to save memory.
That said, multi-tasking has some very important uses - background polling for messages etc. The solution is probably a system framework with which applications can register small helper programs to perform specific tasks. The framework can then ensure they don't use too much CPU or RAM and optimise their network access to reduce the amount of time the radio is on.
Background Task Limitations and Battery Life (Score:4, Interesting)
In a mobile device, everything you do drains the battery. Remember also that most of the time the user is not looking at the screen and often has the device muted. Consequently, is there really a need for an application to pop up dialogs or sound alarms that will go unnoticed? Similarly, does it really have to do gather data constantly and not, say, during a sync or when the app is actually run by the user? Apple weighed those slim probabilities against the much larger probability that poorly written apps would needlessly waste battery power and put a sensible limitation on developers in order to protect users.
One last point: users don't know which app is draining all of their battery power. Once apps become available, users may well install several all at once. If their battery life suddenly went to hell, it would be a difficult process of trial and error to figure out which app(s) was/were the culprit(s).
distort this reality, steve (Score:4, Insightful)
Apple locked me out of linux with it -- it won't sync on my computer. I can't add 3rd party apps. And now when I sync it, I keep seeing ads for a $20 upgrade they want to sell me. Whenever I see people who have a touch, I ask them -- and we all feel the same way. We're all kind of offended by that nickel and dime $20 pitch.
It's a beautiful device. As an object, it's pretty much the best gadget I've ever owned. But apple is really making it suck for me, to the point where I don't think I'd buy another iPod.
And it's dumb. They're not going to sell me that $20 upgrade, and not only that, but by pushing it, they're going to lose the next $400 iPod sale. And I can't use the thing if it won't sync on linux. I can't sync my podcasts. I carry my old iPod with me, and leave the touch at home. Seriously.
And again, this is pretty much the coolest object I've ever owned. They've started out with that, and made it crummy and negative.
For nothing.
It's a sane request, and not a requirement. (Score:5, Informative)
It should also be noted that while the HIG asks you not to make your app run in the background, neither the phone nor the SDK enforce it. You can, in fact, do it.
If you want to sell your app through Apple's service, you probably need to communicate to them that there's a good reason for it (for example, implementing hands-free voice-dialing might require it). Apple reserves the right to not carry applications that don't meet the HIG, but there's no reason to think that they won't make exceptions when a reasonable request is made to do so. Certainly, a good hands-free voice-dialing app would be a good candidate for such a thing.
Re:Where is the competition? (Score:5, Informative)
developer.sonyericsson.com would be a good start, which is linked directly on the front page of www.sonyericsson.com, so you can't have looked very hard in your rush to defend the iPhone.
Parent
Re:Where is the competition? (Score:5, Interesting)
Everybody. The iPhone is the only modern phone I can think of that doesn't support J2ME, and most smartphones (Symbian, Blackberry) have their own APIs for creating native apps.
Admittedly, most J2ME-only phones don't support multitasking and, like the iPhone, are incapable of running in the background, so TFA is wrong to say that "That's a limitation nobody's had to contend with for a couple of decades". But this isn't the case for most smartphones. This is a restriction that I can see being restricted relatively soon, once developers start to realise just how limiting this restriction is.
Parent
Re:Where is the competition? (Score:5, Informative)
Almost every manufacturer, actually: there are SDKs for Symbian (Nokia, Motorola, Samsung), Windows Mobile (Motorola, Samsung, HTC,
I wouldn't even know where to start if I wanted to develop an application for my Sony Ericsson W910,
The W910 runs J2ME and MIPD, just like most phones these days. There are thousands of applications for that and it's easy to develop for.
call me clueless but I don't see anything comparable to the iPhone SDK for any other phone.
Yup, you're clueless. In terms of SDK, the iPhone is about the worst there is among modern phone platforms.
Parent
Re:Even funnier (Score:5, Funny)
A) Apple
B) iPhones
Parent
Not without their reasons (Score:5, Informative)
On the other hand, making the rule hard and fast is a bit tough. And Apple could provide some means of minimizing drain (waking every task up every few hours for example), but don't damn Apple totally on this one.
Parent
Re:Not without their reasons (Score:5, Insightful)
Apple's been hiding behind the battery thing too much. No 3G? No, it's not because we want to stick you for another model, it's because it just drains too much battery! Nevermind that numerous other phones have 3G radios and can keep respectable battery life. Won't let user-created apps go into the background? It's that darn battery again! Forget that all other smartphones can do this and have even figured out that sending a "suspend" notification to applications when they go out of the foreground helps nullify battery usage by, you know, SUSPENDING the application until it is resumed.
Apple just wants to lock down the platform as much as possible, that's all there is to it.
Parent
Re:Not without their reasons (Score:5, Insightful)
What was bothersome is that I did not know at first why my phone needed a daily recharge. Then it dawned onto me that it was a background task running. And the irony here is that it was a poorly written Java applet that was causing the problems.
On this I have to give Apple quite a bit of credit...
Parent
Re:Not without their reasons (Score:5, Insightful)
Parent
Re:Not without their reasons (Score:4, Interesting)
Parent
Re:Not without their reasons (Score:4, Insightful)
I've been damning Windows Mobile for years because of its shitty memory management and difficulty managing open applications.
If the Mobile OS X platform (right now iPhone and iPod Touch) actually solves this problem I'm all for it.
Parent
Re:Not without their reasons (Score:5, Insightful)
One thing TFA neglects to mention is that there is a suspend process notification that apps get when they lose focus. They have 20 seconds to save their state and quit, which is plenty of time. There's really no need for most apps to run in the background - things like games, productivity apps, etc only respond to user input. When it's not in the foreground, there is no user input, and no need for the process to continue to run.
Network connected apps are the only things that are hurt by this, and this is where Apple uses background helper processes. What Apple should do is add a network-connected notification to the API. Say the user connects to the network in another app. The iPhone should wake up other apps that have registered themselves for this notification, allow them to download a reasonable amount of data, notify the user of new IMs or tweets or whatever, and shut them back down.
Parent
Re:Not without their reasons (Score:5, Interesting)
They actually did a decent job with WinMo 6...cleaned up a lot of the memory issues 5 had. Too bad they screwed up IE in the process, but that's where Opera, Skyfire, Mozilla, etc come in.
Parent
Re:Umm...Mod parent down? (Score:5, Informative)
Battery life sucks for any smartphone, not just WinMo though. I charge my phone every night, otherwise it lasts maybe 36 hours through regular use. A bit more if I turn off data to disable the 3 email accounts, weather info, web browsing, etc, that I do normally.
Parent
Re:Not without their reasons (Score:4, Informative)
Parent
Re:Even funnier (Score:5, Informative)
2)- the official iphone os may ban uncertified code, but people have been running uncertified code on iphones for months. since the number of "hacked" iphones is almost as great as the number of "boring" iphones, this is rather significant.
i'm not a fanboy- personally, i don't like iphones, or people who like iphones. i just don't like misinformation.
Parent
Re:Even funnier (Score:5, Informative)
Parent
Re:Mod me redundant (Score:5, Funny)
Parent
Understand... (Score:4, Insightful)
Parent
Action and reaction, grasshopper (Score:5, Insightful)
But it's this kind of fanboyish reactions ("OMG, they said that something Apple does is less then perfect, so they must be evil, sworn enemies of Apple and all that's good and holy") that brings me to the next point. In truth, such stories are written equally about any other company and corporation, by people who don't really give a fuck about whether that company even lives or dies. That's the job of financial analysts and magazine pundits. They scratch their heads and go, "Hmm, ya know, maybe Sun won't take over the world this year" or "I think Intel is going to lose a couple of percent of market share to AMD's Phenom". Talking out of the arse, maybe, but it doesn't make them enemies of Sun, Intel or Apple. But that seems to be lost on a whole slew of True Believers, who can't seem to see any shades between "you're 100% in Apple's camp and singing praise to it" and "you're 100% the sworn enemy of Apple and have an axe to grind." And if god forbid you even mention an apple vulnerability once a year, then that's positive proof that you're biased against Apple and pro-MS.
But, at any rate, it helps fuel the next point:
2. It's, if you will, a case of action and reaction. Apple hypes every fart as if it's the second cumming of Christ, especially if it's Steve Jobs. You know, it will revolutionize this, redefine that, it's the thing that noone else ever thought or dared, etc.
And it also has an annoying army of fanboys to carry the Word, and try to convert everyone to The One True Faith. Not even too skillfully, I'd add. If you look at where, Christian missionaries succeeded, they never went around telling people "OMG, you're all stupid sheep and brainwashed by the competition". It doesn't get people in a mood to listen, you know.
So it just _begs_ to have its stuff put under a microscope and dissected, and the results don't always come as "yep, it's 100% pure perfection." In fact, they usually reveal a fair share of shortcomings that just beg to be pointed out in return.
3. And if you keep pushing, or push too hard, hype builds resentment or even a backlash. Daikatana, for example, was merely a mediocre game, that would have otherwise been quietly forgotten, but the unskilled hype created a rather spectacular backlash. Apple so far managed to avoid creating a backlash, and kudos to Steve for managing to spew this much hype without that. He's good. But it did get a bunch of people annoyed.
You know, it's like if I came to you daily to tell you about how great I am at CounterStrike. (I actually had the mis-fortune of working with someone like that.) And maybe sent a few more people to. What maybe started as "I couldn't care less, let's nod politely and hope he goes away" eventually gets to the point of "Oh, ffs, not again. Go fuck yourself with a cactus already."
Briefly, if you will, the few people who do hate Apple, don't hate it for its perfection, they hate for the unrelenting annoyance that Apple's hype and Apple's fanboys can be.
Parent
Re:Symbian 3rd signed is the same (Score:5, Informative)
Unsigned apps can access the network (see for example putty), play run stuff on the screen (see for example quake, dooom), run in the background, read & write files and so on.
I can't seem to find this famous list of things an unsigned app can't do.
Parent
Re:Symbian 3rd signed is the same (Score:4, Informative)
Parent
not true (Score:5, Informative)
That's pure fiction. I have half a dozen unsigned apps on my phone, several of them free and open source.
Parent
Re:not true (Score:5, Informative)
In their case it's more to control the riskier functions, so you can make a free unsigned game which only really needs graphics and the keypad without signing the code but anything that runs a risk of doing something like making a call, eavesdropping or deleting your data needs to be signed.
http://na.blackberry.com/eng/developers/downloads/api.jsp [blackberry.com]
The fee's tiny ($20) for access, but that's tiny really so it's more about being able to control the programs using those API calls.
Symbian might be similar since the GP said for "certain type of capabilities". The fee's huge by comparison though, so perhaps they want the revenue more than the security benefits.
Parent
bullshit (Score:5, Informative)
Some application, restricted in functionality could be signed by developer without developer certificate(LocalServices, UserEnvironment, NetworkServices,ReadUserData
The situation is quite heated right now, after Symbian introduced some more restrictions recently (removed free developer certificates, which allow sign application for single phone - IMEI numebr). Symbian signed forum turning to flamefeast between moderator interventions. http://developer.symbian.com/forum/forum.jspa?forumID=2&start=0 [symbian.com]
Of cause all this only from legal point of view. Many devices (all FP1 and Nokia N95-1, not 8GB) have their platform security hacked already.
Parent
Re:ZDNet Writers Lack Technical Expertise (Score:4, Informative)
Parent
How many third party background apps? (Score:4, Funny)
Parent
Re:Bad analogy (Score:4, Informative)
Who modded this insightful?
Parent
Re:Android is Hungry (Score:4, Insightful)
Parent