Maybe there are a million valid uses. But what is needed, then, is an elegant method of preventing a user from installing them all, rather than a method for preventing them from reaching the market.
I think you have a far higher opinion of people than Mindfield and I do.
Right. What I was asking was if I was rocking out with the iPod that is on the phone and I get a text message. By responding to the text message, will that shut off the ipod/music playing? I realize that pandora does, just wondering if the iPod was the same as well.
Yeah, I know how it works, but for me…it doesn’t. How long should I give it, exactly? I’ve had the phone for a year, use it daily, and it still has less than a 50% rate of fixing my words if I get more than maybe a single character wrong – and on the narrow (vertical) keyboard, that’s a virtual certainty with my large fingers. The wide (horizontal) keyboard of the web browser is much better, but isn’t available for most apps. Several people I know with iPhones have said the same thing: they’ve given up trying to use the “self-correcting” feature because on the balance, it takes longer than just correcting yourself as soon as you see the error. Others seem happy with it, but if the emails I’m getting from iPhone users are any example, the people who AREN’T making that choice have decided to give up on proper capitalization, punctuation, and any typo that the auto-correct didn’t catch. I can often tell at a glance what emails came from an iPhone.
I have been very happy with the self-correction feature on my 2.0. Clearly it’s an YMMV thing but I think that it’s great.
TimeWinder - I guess it’s all in how you type, I suppose, and perhaps how sensitive you are to self-adjusting your style to fit the application, and how dependent your self-adjustment is on physical feedback in the retraining process. I did have to get used to the lack of physical feedback – inasmuch as it is possible to get used to it at all – but within a couple of months I felt I was reasonably proficient enough that the auto-correction had a pretty high success rate (for me, probably 70-80%). I can’t type anywhere near as fast as I can on a real keyboard, or even as fast or as accurately as I can on a Treo, but it’s not as bad as it felt like when I originally bought the iPhone. I suppose it’s one of those YMMV situations.
BrkbButterfly - Sorry, I did misunderstand your question. Yes, the iPod app will be interrupted for any case where the iPhone needs to alert you to something. (so it can get your attention and play the alert sound) However, you can return to the springboard and launch other apps while the music is playing, so yes, it does run in the background.
Athena - Call me cynical, but there are some rules about the average user that I have come to understand over the years. Pertinent to this discussion are: 1) People do not read. 2) No mistakes or problems caused by ignorance or carelessness can be blamed on them because it is the developer’s/manufacturer’s fault for not developing/designing the item in question to handle people like them. 3) Everything is infinitely powerful. 4) Anything that is not should be. 5) Every device should do everything for them and make correct assumptions about what they want to do. 6) Any device that doesn’t is a piece of shit.
You or I would be perfectly fine with a nice, clean, easy-to-use task manager, of course. But go and ask 100 people to point out the task manager in their Windows box and then report back on how many even knew what all that geek-speak you were spouting meant. It’s a good idea. It’s just that it will never work because no matter how simple you make it, you still have to tell them that it’s there and explain what it’s for, and that invokes 7) People forget 90% of what you tell them 5 minutes after you do so, as well as 8) The 10% that is retained is out of context and either wrong, or will screw them up if they try to apply it, and then they’ll come back to you and tell you your instructions were crap.
Cynical? I’ve worked tech support. I’ve worked PC repair. Ask me again.
Mathochist - I’m sure something could be added to iTunes to help with that. Create a flag in the App Store for apps that are designed to work in the background, maybe assign them a value for how much CPU time each consumes, and have iTunes compare how many such apps are already downloaded and installed, add up approximately now much CPU time they all cumulatively consume, and then warn the user when it exceeds some preset threshold – or just prevent them from installing it until they uninstall some other CPU hogging background app. I could deal with that, and it would be no-brainer enough for Joe User to grok.
This is sort of confusing. BrknButterfly, to clarify, the iPod can run in the background almost constantly. It even continues to play when running download apps. Also, text messages only briefly interrupt the song with a quick tone indicating you have a message; it them immediately goes back to the song. But you can even prevent this by turning off the sound notify for text messages on the settings screen. allowing the song to continue uninterrupted. Finally, the only time the iPod turns itself off is when another app requires dedicated use of the speaker, such as with Pandora or taking a phone call.
And regarding not being able to run apps in the background; It’s a sacrifice I’m pretty content with. Sure, I suppose it would be nice to run Pandora, but not at the expense of a phone that gets bogged down to hell. And especially with the app store opened to practically anyone, I don’t trust them to write apps that make efficient use of the iPhone’s processing capabilities.
Nope. When a call comes in it fades down, but IIRC it fades back up again when you hang up.
Sounds like an idea.
Now the question is: why do the commenters in this thread seem so sure that Apple doesn’t have this in the works already, but wanted to get third-party apps out there along with the hardware update?
Mindfield, I’ve been in the business for going on twenty years now, and I understand your hesitation. But really, UIs have come a long way. I do believe it would be possible to create a task manager UI that wouldn’t confuse the hell out of people and would allow a few background processes.
Hell, something as simple as allowing a fixed # of applications to be running at one time - like maybe two - and coming up with a programming API that limited the amount of resources the app used while not being in the foreground would go a long way. So people get two “slots” to put background apps. Design a UI around that, it shouldn’t be hard. I’m no UI designer but I can think of a number of good visual ways to indicate that an app should stay running when a text message comes in. Voila, no “task manager” needed, no issue with background processes since they’re very limited, and people get the functionality they want.
This might be because of Steve Jobs.
Steve likes control. He likes his devices to run a particular way, and anything that could threaten to ruin the whole “experience” with the device is something Steve doesn’t want.
Remember, when the iPhone was first released, Steve declared that there would be no third party app development. He went so far as to say that the iPhone was not a SmartPhone. The only apps he originally wanted available would be Apple-designed apps available through firmware updates. It was only public pressure caused him to cave in and devise an SDK.
A similar though lesser situation exists with background processes. He doesn’t want it happening. He doesn’t want the experience marred by countless background apps bogging the whole system down – I’m quite certain that Steve is just as cynical about the average user as we are, so he knows how a lot of people are going to treat apps; they’re going to install whatever the hell they want without regard to how they actually work, and then will almost certainly complain when background processes slow things to a crawl.
I’ll grant however that it’s possible he may be currently working on ways to implement background processes in a manner that somehow maintains an equilibrium between background processes and overall system stability and performance. Plenty of developers want it – I know a ton of people who want MobileScrobbler in the App Store alone. It would be nice, anyway.
Sure, that could work too. I don’t think a task manager would work; asking users to use a widget is one thing; asking them to use a widget that controls other widgets and now you’re just confusing them.
The slots idea could work in concert with OS limitations on the amount of processor slices an app is given. That would ensure that A) No app takes more than X% of CPU time and/or consumes more than Y megabytes of physical RAM for its process/stub, and B) no user can run more than Y background apps simultaneously.
Where you will run into problems is how to handle user notification and suggested courses of action. Popping up an alert that says “This application requires more system resources than available, please stop another process before continuing” might work, even if it’s a big technical and will undoubtedly cause the average person to hand it to their resident “expert” and ask “What does this mean?” But then what? Chances are they aren’t going to have a clue as to what else is running, so no idea what they need to stop running in the first place. You could give then a dialog listing all currently running background processes, which is probably the better choice, but then they’re going to get frustrated that they have to stop one to run the other.
Remember rules 3-6. 
Well, that IS a task manager. It’s just a task manager that your standard human being understands.
I don’t think it’s too hard for the average user to “get it” that they can only run two apps at a time. There’d be no techno-speak warnings if they tried to run more; however the UI was designed, there’s be two slots or whatever and if there were two apps it them, they’d be able to see two apps in their two “run all the time” slots and they physically wouldn’t be able to drag another app in there.
On the backend, the apps would be limited to how many resources they could use while running in the background, so there’s never a question of them using too many, so no techno-garble popups needed.
I’m not saying this is the way to do the background apps - I’m just saying that if I could come up with this decent of an idea with the spare ten minutes I had to think about it today, then all those big brained Apple people oughta be able to come up with something at least as good.
See, I don’t believe that for a second. I think it was his intention all along to add third-party apps… later. Do you think the buildup for iPhone 2.0 would have been what it was without “tons and tons of all-new applications”?
(c) It will force people to use iTunes, further solidifying Apple’s control over mobile music. Plus, if people have to use iTunes they might buy songs from them.
Huh? What does music playing in the background have to do with iTunes? It doesn’t matter what program you used to load it, or whether the music came from the iTunes music store – it still plays in the background.
Ignore him. treis just wants the chance to grind his axe against Apple like a hater.
What about MMS messages? I knew going into it that they dont go to the phone and you have to go to a web site to see them. Though I can’t go to that website from my phone. I have to use an actual computer.
Any plans that in the next upgrade MMS will be enabled?
Athena - There are a number of ways it could be handled semi-transparently, and it would be nice to see them implemented. I actually find it hard to believe that something like that is not on the roadmap somewhere – it’s just a question of when.
Mathochist - It’s hard to say what Steve’s true intentions were from the outside, but at least publicly, at the original iPhone’s launch, he was quite adamant that it’s not a smartphone and there would be no third party development for it. I tend to believe that myself. What really made him change his mind was public demand for it, the exemplification of same via the jailbreak scene, and the realization that he could make boatloads of money and increase his market share thanks to said scene’s rapidly growing popularity. For this he was willing to relinquish some control over the platform, but you can certainly see that great pains were taken to make sure that what emerged as the SDK was still under his strict control from development to the solitary retail venue that it would never reach unless it passed his vetting process.
BrknButterfly - I’m sure that MMS is also on their roadmap. Apple is working from a priority list of changes, fixes and additions to the operating system. Stuff like Copy & Paste, turn-by-turn GPS support and office suite support have been on their roadmap for quite some time, but they were given lower priority than all that has turned up so far, either because they were not considered priority, or because other OS infrastructure still has to be put in place to support these features.
As I’ve posted about before regarding the iPhone, there are some physical engineering considerations at work too. Background applications suck battery life. One of the reasons Jobs didn’t want 3G in the first iPhone was that — and he explicitly stated this in an interview — the chips at the time were too power-hungry. Gruber, at the Mac-oriented blog Daring Fireball thinks that memory is an even larger consideration than battery life. There’s only 128 MB of memory available for applications to run in. That’s very tight. For what it’s worth, even the programs from Apple that do have some access to background processing are supposed to be able to be shoved out of the queue if resources are needed.
Even the newer 3G chips still suck power, and the GPS likes draining the battery too. While better than other smart phones, take a look at the battery life of this version compared to the first iPhone. The battery storage specs are better, yet expected battery life is much lower (about 3 hours less talk time than the original). Under normal use, the battery can drain in less than a day, meaning that you have to charge it pretty much every chance you get if you use a lot of the functions.
A consistent and responsive feel to the interface makes for a better user experience, which while a bit of a fuzzy term, encompassing as it does both design details like having aesthetically pleasing icons and technical things like interface responsiveness, is something that cannot be disregarded. If the phone didn’t work well and work consistently well, then people wouldn’t like to use it much. Customer satisfaction is higher on the iPhone than any other smart phone, by a huge margin. That’s a major reason for its success so far, and Apple would be stupid not to keep making the user experience a priority.
On a physical level the battery usage and form factors are also important. This version is thicker in the middle, to accommodate the very slightly larger battery and the extra chips. If you wanted to make the battery last longer, you’d either have to compromise on functions or the case design, and since making the iPhone significantly bigger obviously wasn’t something they wanted to do, and not offering functions like 3G and GPS wasn’t something they could do if they wanted to succeed, what you’re left with is the current design. So there are a few reasons to prohibit or severely restrict background processes: stability, interface performance, limits on active memory, and most importantly (IMO): battery life.