Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

[ Create a new account ]

iPhone's Development Limitations Could Hurt It In the Long Run

Posted by Soulskill on Friday March 28, @05:10AM
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

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.

iPhone's Development Limitations Could Hurt It In the Long Run 25 Comments More | Login | Reply /

 Full
 Abbreviated
 Hidden
More | Login | Reply
Keybindings Beta
Q W E
A S D
Loading ... Please wait.
  • Um... phone network != internet (Score:5, Interesting)

    The phone network necessarily has standards of reliability and security far higher than the Intarweb.

    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.
    • I understand the need for some sort of approval process for code, though I personally disagree with it's effectiveness. But what argument do you have against letting consumers choose to download apps with background processes?

      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?

    • Re:Um... phone network != internet (Score:5, Informative)

      by teh kurisu (701097) on Friday March 28, @06:10AM (#22891682) Homepage

      Banning uncertified code?

      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.

      Banning background processes?

      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.


      • 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.
  • by AccUser (191555) <mhg.taose@co@uk> on Friday March 28, @06:22AM (#22891748) Homepage
    Everyone is quick to point out the 'limitations' imposed by Apple on developers, but I haven't heard anyone pointing out what a rich API is available through the SDK. Why not? Probably because that sort of news doesn't generate enough traffic.

    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.
  • by Jason Pollock (45537) on Friday March 28, @06:50AM (#22891860) Homepage
    Does anyone run SSH on their iPhone? I do. It kills the battery life. Takes it down to 1/4 what it usually is. People at work complaining about battery life of their phone? They remove some nifty-new application that they just added, all of a sudden the battery life goes back to normal. Amazing. Heck, it's so common that the first words out of my mouth are, "Turn off the SSH server."

    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)

    by Zelos (1050172) on Friday March 28, @07:08AM (#22891934)
    IMHO, the truth of this lies somewhere between the two camps. Background processes have a lot of problems on phones. They stop the phone being a simple "pick up and use" device, because the user has to worry about which apps they leave running. Somebody using a phone doesn't want to have to think about memory usage, they're probably barely aware of what RAM even is. They affect reliability, performance and battery life.

    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.
    • Re:Where is the competition? (Score:5, Informative)

      by jrumney (197329) on Friday March 28, @05:25AM (#22891508) Homepage

      I wouldn't even know where to start if I wanted to develop an application for my Sony Ericsson W910,

      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.

    • Re:Where is the competition? (Score:5, Interesting)

      by teh kurisu (701097) on Friday March 28, @06:01AM (#22891636) Homepage

      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.

    • Re:Where is the competition? (Score:5, Informative)

      by nguy (1207026) on Friday March 28, @06:13AM (#22891706)
      Among the mobile phone makers, who hands out SDKs for creating applications on the phones?

      Almost every manufacturer, actually: there are SDKs for Symbian (Nokia, Motorola, Samsung), Windows Mobile (Motorola, Samsung, HTC, ...), Palm OS (Palm), etc. Symbian is a multitasking OS with Linux-like APIs. And almost all modern phones other than the iPhone can be programmed in MIDP.

      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.
    • Re:Even funnier (Score:5, Funny)

      by muffen (321442) on Friday March 28, @05:27AM (#22891512)

      If you outlaw _________, only the criminals will have _________.
      This is a tough one, but I'm guessing

      A) Apple
      B) iPhones
    • Not without their reasons (Score:5, Informative)

      by countach (534280) on Friday March 28, @07:47AM (#22892124)
      Background tasks, especially networking ones (which frankly, are the most useful type), would flatten the battery really quickly. Even more so with several of them waking up at different times and connecting the network.

      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.
      • Re:Not without their reasons (Score:5, Insightful)

        by Cereal Box (4286) on Friday March 28, @08:41AM (#22892430)
        The Reality Distortion Field is strong with this one. All the other smartphone APIs can handle backgrounding applications, why can't the iPhone? Remember that this isn't just about "background tasks", this is about not letting you switch between applications PERIOD. If you navigate away from your app, it's been closed, period. I can't imagine anyone on Slashdot giving Microsoft a pass if Windows Mobile worked the same way. The comments would either be "LOL Microsoft sucks, I can't switch between apps?!?" or "Microsoft is intentionally crippling third party development!"

        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.
        • Re:Not without their reasons (Score:5, Insightful)

          Actually the GP has a point. I have a Nokia smartphone, and whenever there is a background task the battery is drained in a day or so. Otherwise my Nokia smartphone can last about a week without recharging.

          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...
    • Re:Even funnier (Score:5, Informative)

      by Anonymous Coward on Friday March 28, @08:00AM (#22892188)
      1)- the iphone sdk DOES NOT ban background processes. it disables them by default, but people have been compiling iphone apps that run in the background for months. it's actually ridiculously easy; this is how im apps let you stay signed on while your iphone is off (or you're talking on it).
      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.
    • Re:Mod me redundant (Score:5, Funny)

      by Daimanta (1140543) on Friday March 28, @05:34AM (#22891540)
      Look over there! It's a bird! It's a plane! No, it's a reality distortion field!
    • Action and reaction, grasshopper (Score:5, Insightful)

      by Moraelin (679338) on Friday March 28, @06:22AM (#22891746) Journal
      1. It's not an "evil apple" story, it's just a financial musing that in the long run it might limit its market share.

      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.
    • Re:Let the market decide (Score:5, Insightful)

      The whole "let the market decide" isn't really so trivial when it comes to consumer electronics. Apple was granted a legal monopoly over several components of the iphone, which prevent competitors from creating a device with it's best features. There is nothing free-market about government granted monopolies.

      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.

      • Re:Let the market decide (Score:5, Interesting)

        by EvilNTUser (573674) on Friday March 28, @07:11AM (#22891954)

        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."

      • Re:Let the market decide (Score:5, Insightful)

        by nycguy (892403) on Friday March 28, @08:26AM (#22892324)
        This is one of the most overwrought comments I've read in a long time. How exactly is the inability to get iPhone features in other products really impinging on the "collective good of society?" We're not talking about an overpriced patented drug here. We're talking about a frickin' phone! If Apple wants (and is allowed) to keep features to themselves, none of us who choose not to buy an iPhone are going to die or suffer great harm because of it.

        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.

    • Re:Symbian 3rd signed is the same (Score:5, Informative)

      by Eunuchswear (210685) on Friday March 28, @06:07AM (#22891660) Journal
      You can run unsigned apps on s60v3.

      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.
    • not true (Score:5, Informative)

      by nguy (1207026) on Friday March 28, @06:16AM (#22891718)
      Symbian 3rd edition, hava also limitations to developers, for certain type of capabilities the program must be signed by nokia. And there is a license 10.000$ for developers

      That's pure fiction. I have half a dozen unsigned apps on my phone, several of them free and open source.
      • Re:not true (Score:5, Informative)

        by SteveAyre (209812) on Friday March 28, @06:49AM (#22891850)
        Unless it's like the Blackberry. They allow anyone to use most of the API calls, but require the developers to pay a fee for access to some of the API calls and sign the applications so that the Blackberry knows which programs to allow to access the licensed API calls.

        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.
      • bullshit (Score:5, Informative)

        by S3D (745318) on Friday March 28, @06:54AM (#22891884)
        Symbian 3rd edition (v 9.x) is not capable of running unsigned native application. Period.
        Some application, restricted in functionality could be signed by developer without developer certificate(LocalServices, UserEnvironment, NetworkServices,ReadUserData ,WriteUserData). User can allow application which use only those capabilities to run on his device. The rest - Network control, Multimedia driver, Communication driver, disk admi, PowerMgmt, Location, ProtServ, ReadDeviceData, Surroundings driver, SwEvent, TrustedUI, WriteDeviceData - should be signed online through Symbian website or offline by other certified body.
        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.
    • by nguy (1207026) on Friday March 28, @06:19AM (#22891730)
      Using my iPod Touch as my PDA for a while now, I can testify that the device itself (and it's brother the iPhone), is a plain revolution in terms of style, usability and class

      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?