But the current iPhone is slow and sluggish at times. It certainly isn't near-instantaneous are as smooth as butter. So by your reckoning, Apple's chances are already dead and burried!
No, we know they made UI responsiveness a priority and they still couldn't get every bit of what they wanted. How much worse would it be if they had allowed third party multitasking?
Apple waited until there was hardware to support the OS and UI they wanted, but just barely. With each hardware iteration, the software will fit more comfortably within resource envelope, and responsiveness will get better and better.
When there are sufficient resources to do third party multitasking without unduly impacting the UI, I imagine Apple will allow it to happen.
No, we know they made UI responsiveness a priority and they still couldn't get every bit of what they wanted. How much worse would it be if they had allowed third party multitasking?
Apple waited until there was hardware to support the OS and UI they wanted, but just barely. With each hardware iteration, the software will fit more comfortably within resource envelope, and responsiveness will get better and better.
When there are sufficient resources to do third party multitasking without unduly impacting the UI, I imagine Apple will allow it to happen.
Which fits it nearly with my idea that Apple shoehorned the iPhone OS onto hardware that wasn't really powerful enough. The 3GS hardware is what the iPhone should have been 2 years ago, or the OS should have been more streamlined.
Which fits it nearly with my idea that Apple shoehorned the iPhone OS onto hardware that wasn't really powerful enough. The 3GS hardware is what the iPhone should have been 2 years ago, or the OS should have been more streamlined.
Except I don't know what "should have" has to do with it.
Apple certainly wouldn't have been better off waiting to release a phone until now, the hardware that's going to be released on Friday wasn't available 2 years ago, and I believe the OS is as streamlined as Apple could possibly make it and still deliver the functionality and UI they wanted.
So, Apple made the phone they wanted when they needed as best they could, it was hugely popular, it allowed them to get the SDK out, which led to the app store, and here they are, about to deliver a phone that will further enhance the user experience into a market that already has a thriving ecosystem and huge amounts of mindshare.
But the current iPhone is slow and sluggish at times. It certainly isn't near-instantaneous are as smooth as butter. So by your reckoning, Apple's chances are already dead and burried!
That's at times.
For the most part it is near-instantaneous and as smooth as butter. Not perfect, but relative to the competition, it sure is. When the iPhone came out in 2007, mobile nerds were saying that Apple was rigging the demos because there was no way the interface would be that fast. That's testament to the job Apple did in making the UI really responsive, and how bad the state of cell phone UIs were.
It's taken 2 years for someone to really catch up, and the Palm Pre is doing it with hardware that is twice as fast and has two times the memory. The Pre's UI responsiveness is also the reason it is getting a lot of mind share.
Given the input, battery, screen-size, and processing power constraints of the iPhone... I'm mostly interesting in quick task switching at this point.
It seems that many "multitasking" discussions revolve around this topic. While multitasking is valuable and worthy of discussion, some of the people lamenting it's absence are actually lamenting the slow speed of task switching. The distinction is fairly minor but quite important IMHO.
It's taken 2 years for someone to really catch up, and the Palm Pre is doing it with hardware that is twice as fast and has two times the memory. The Pre's UI responsiveness is also the reason it is getting a lot of mind share.
You mean for what less than a week? Because the Pre is certainly not twice as fast nor offers twice the memory over the 3G S
Given the input, battery, screen-size, and processing power constraints of the iPhone... I'm mostly interesting in quick task switching at this point.
You push the home-button, then touch the new app you want, that's quick enough for most people. Anyone who listens to radio, like Pandora, simply wants to run it in the background while they use their phone, just like the iPod app. Yes it will use more battery, yes to a lot of things - but Apple is exaggerating, and they are holding off on the inevitable.
Given the input, battery, screen-size, and processing power constraints of the iPhone... I'm mostly interesting in quick task switching at this point.
It seems that many "multitasking" discussions revolve around this topic. While multitasking is valuable and worthy of discussion, some of the people lamenting it's absence are actually lamenting the slow speed of task switching. The distinction is fairly minor but quite important IMHO.
I agree 100%.
Running apps in the background has limited value on a handheld.
But fast (or instant) task swapping would be very valuable.
Currently pressing home quits the current application - freeing memory for the next.
My proposal is "lazy quitting". Pressing the home key would suspend but quit the application. The suspended app could then remain in memory.
Suspended apps would be able to resume instantly. The least recently used app would eventually quit if memory was needed to launch new apps.
Such a scheme would benefit dramatically from (say) a doubling of system RAM.
Also mind that push notification is being viewed as stop-gap or a duct tape solution to multitasking on the iPhone. This is really the wrong point of view. In the future, devices will have both multitasking and push notification, as push notification is an elegant solution that really scales. Palm's WebOS will definitely have similar push notification system.
There's no magic to this. Cell phones have to operate in limited power, CPU, and memory situations for the next 2 to 3 years (<512 MB memory, <1 GHz CPU). In the case of batteries, probably decades. This means multitasking will be limited to 4 or 5 applications, especially those that have to have a constant internet connection or a constantly running process. With push notification, all data is fed through one pipe, instead of independently. This means, the iPhone can have tens, even hundreds, of apps doing push notification at the same time. With multitasking, you will be memory bound or CPU-bound. There's always advantages and disadvantages, and push notification does have advantages.
So, Apple's tradeoff is to limit multitasking apps to those they control, basically many of the 1st party iPhone apps, have push notification for its 3rd party apps, and essentially give up the functionality like 3rd party radio streaming.
You push the home-button, then touch the new app you want, that's quick enough for most people. Anyone who listens to radio, like Pandora, simply wants to run it in the background while they use their phone, just like the iPod app. Yes it will use more battery, yes to a lot of things - but Apple is exaggerating, and they are holding off on the inevitable.
The sequence of steps used to switch between tasks on the iPhone is fairly good. At least when switching between apps on the same page of apps. But if those apps are on different screens, it is necessary to swipe and do more visual scans of the icons and names. For instance, clicking on a web-link from the facebook app takes you directly into safari. However switching back requires a click of the home button, a couple swipes, and an icon click. It would be nice to be able to return to the other app quicker with fewer steps.
But mostly the problem lies in how quickly the iphone can process the task switching. It is quite common for the iphone to lag for multiple seconds when returning to the home screen or invoking an application. 10 seconds to switch tasks is fairly common. In my opinion, this obviously is something that can be improved. The good news is that the lag can be at least partially addressed with faster hardware and more ram, aka: the iPhone 3GS.
Yet that still leaves the desire to require fewer clicks and visual scans by the user when switching tasks. Granted, I'm not sure how to accomplish this in a manner that would be in fitting with the rest of the iPhone interface. Something like Command-Tab comes to mind but admittedly I haven't thought through all the ramifications.
Actually, with a Palm Pre, since it is currently and exclusively a CDMA device, it can't have voice and data at the same time unless it is also on Wifi. So if it only has a EVDO connection only, people can't do anything involving data while on a call. They can't browse the web at the same time, have a message sent.
Gotta say, as weird as it sounds, that's a bummer. I can totally imagine myself saying, "Hold on a sec, I'll google it" while I'm talking on the phone. Stupid EVDO.
Gotta say, as weird as it sounds, that's a bummer. I can totally imagine myself saying, "Hold on a sec, I'll google it" while I'm talking on the phone. Stupid EVDO.
Yeah, it's funny it doesn't get mentioned more as a deal breaker. I'd have to assume that if this were Apple and the iPhone there would be a great deal of bwa-ha-ha-ing over how lame such a limitation is.
Yeah, it's funny it doesn't get mentioned more as a deal breaker. I'd have to assume that if this were Apple and the iPhone there would be a great deal of bwa-ha-ha-ing over how lame such a limitation is.
I know! I'm glad I heard about this now. I'm still thinking Pre is better for my needs (free GPS nav, nights start at 7 pm, strong browser, keyboard), but this hurts a bit.
I take it the same is true of Verizon - they are also EVDO, right?
An app that actually performs a function in the background, such as playing music or transmitting your GPS location to a server, needs proper multitasking. Nothing else will do.
Apps that respond to network events
Push notification solves this. This is for things like IM software. Of course, full multitasking would let the app have more control over what happened when the event did, but that's not a big deal.
Apps that respond to non-network events
The best example is apps with timed alarms, but there are also things where the app needs to respond to a change in location. It would be possible to solve this problem without multitasking, but Apple hasn't done it yet.
Speed of workflow when using multiple apps
If the user is, for example, composing an email, and needs to look up information from a calendar, get an image off the internet, and make a few To-Do notes, this is needed. There's two issues here: the time it takes to switch apps, and ensuring the apps are in the same state you left them in. To solve the problem without multitasking, all apps would need to save complete state on quit. (Many do this now, but many do not. It's easy but not trivial to program.) Also, some form of quick app switching would be needed: maybe holding down the 'home' button displays an overlay of the 6 most recently launched apps. With multitasking, the saving state is not an issue, and there would just need to be a UI which showed all the currently running apps.
Apps that perform time consuming operations
Suppose an app is downloading video, and it will take 30 minutes. If there is multitasking, like for the App Store, the user can go and do something else. If not, they have to leave the app open. The only way this could be solved without multitasking is with a couple of new APIs: firstly, a download manager, so the app can request the OS download something in the background. But there are other things that take a while besides downloading... so how about porting Grand Central to the iPhone. Then apps could submit jobs to Grand Central, which could optionally keep running in the background. Obviously this would still have battery life issues, but less so than also keeping a full GUI in memory.
My suggestion is that Apple does include multitasking, but also includes all the other APIs needed to allow most of these cases to not require multitasking. That way, it only gets used if it's needed, and most of the time there's a better solution. Of course, the OS should manage running apps and quit them if resources are limited.
Yeah, it's funny it doesn't get mentioned more as a deal breaker. I'd have to assume that if this were Apple and the iPhone there would be a great deal of bwa-ha-ha-ing over how lame such a limitation is.
Apple did have that limitation with the first iPhone. They blamed it on the state of 2G networks, but here in the UK I had Symbian 2G phones that were perfectly happy to talk and browse the net at the same time.
It was an embuggrance. I'm glad that that's not the case with the iPhone 3G
I mostly want multi-tasking in order to run Pandora in the background, but it serves several other purposes as well. I think the OP confused multi-tasking with simple app switching.
For example, if I were playing a game and I received a text message, I would have to quit the game to respond to the text. The game app would literally shut down. If multi-tasking were enabled, the game could be paused and left open, the text answered, and the game returned to just as you left it. I find it most annoying while playing Crash Racing. I get a text, quit the game, answer the text, and open the game only to see that I have to restart the race.
If we don't see multitasking/background apps in an update for 3.0, we'll most certainly see it in 4.0 with the 2010 iPhone.
Comments
But the current iPhone is slow and sluggish at times. It certainly isn't near-instantaneous are as smooth as butter. So by your reckoning, Apple's chances are already dead and burried!
No, we know they made UI responsiveness a priority and they still couldn't get every bit of what they wanted. How much worse would it be if they had allowed third party multitasking?
Apple waited until there was hardware to support the OS and UI they wanted, but just barely. With each hardware iteration, the software will fit more comfortably within resource envelope, and responsiveness will get better and better.
When there are sufficient resources to do third party multitasking without unduly impacting the UI, I imagine Apple will allow it to happen.
No, we know they made UI responsiveness a priority and they still couldn't get every bit of what they wanted. How much worse would it be if they had allowed third party multitasking?
Apple waited until there was hardware to support the OS and UI they wanted, but just barely. With each hardware iteration, the software will fit more comfortably within resource envelope, and responsiveness will get better and better.
When there are sufficient resources to do third party multitasking without unduly impacting the UI, I imagine Apple will allow it to happen.
Which fits it nearly with my idea that Apple shoehorned the iPhone OS onto hardware that wasn't really powerful enough. The 3GS hardware is what the iPhone should have been 2 years ago, or the OS should have been more streamlined.
Which fits it nearly with my idea that Apple shoehorned the iPhone OS onto hardware that wasn't really powerful enough. The 3GS hardware is what the iPhone should have been 2 years ago, or the OS should have been more streamlined.
Except I don't know what "should have" has to do with it.
Apple certainly wouldn't have been better off waiting to release a phone until now, the hardware that's going to be released on Friday wasn't available 2 years ago, and I believe the OS is as streamlined as Apple could possibly make it and still deliver the functionality and UI they wanted.
So, Apple made the phone they wanted when they needed as best they could, it was hugely popular, it allowed them to get the SDK out, which led to the app store, and here they are, about to deliver a phone that will further enhance the user experience into a market that already has a thriving ecosystem and huge amounts of mindshare.
Hard to see the downside, for Apple.
But the current iPhone is slow and sluggish at times. It certainly isn't near-instantaneous are as smooth as butter. So by your reckoning, Apple's chances are already dead and burried!
That's at times.
For the most part it is near-instantaneous and as smooth as butter. Not perfect, but relative to the competition, it sure is. When the iPhone came out in 2007, mobile nerds were saying that Apple was rigging the demos because there was no way the interface would be that fast. That's testament to the job Apple did in making the UI really responsive, and how bad the state of cell phone UIs were.
It's taken 2 years for someone to really catch up, and the Palm Pre is doing it with hardware that is twice as fast and has two times the memory. The Pre's UI responsiveness is also the reason it is getting a lot of mind share.
It seems that many "multitasking" discussions revolve around this topic. While multitasking is valuable and worthy of discussion, some of the people lamenting it's absence are actually lamenting the slow speed of task switching. The distinction is fairly minor but quite important IMHO.
That's at times.
It's taken 2 years for someone to really catch up, and the Palm Pre is doing it with hardware that is twice as fast and has two times the memory. The Pre's UI responsiveness is also the reason it is getting a lot of mind share.
You mean for what less than a week? Because the Pre is certainly not twice as fast nor offers twice the memory over the 3G S
Given the input, battery, screen-size, and processing power constraints of the iPhone... I'm mostly interesting in quick task switching at this point.
You push the home-button, then touch the new app you want, that's quick enough for most people. Anyone who listens to radio, like Pandora, simply wants to run it in the background while they use their phone, just like the iPod app. Yes it will use more battery, yes to a lot of things - but Apple is exaggerating, and they are holding off on the inevitable.
Given the input, battery, screen-size, and processing power constraints of the iPhone... I'm mostly interesting in quick task switching at this point.
It seems that many "multitasking" discussions revolve around this topic. While multitasking is valuable and worthy of discussion, some of the people lamenting it's absence are actually lamenting the slow speed of task switching. The distinction is fairly minor but quite important IMHO.
I agree 100%.
Running apps in the background has limited value on a handheld.
But fast (or instant) task swapping would be very valuable.
Currently pressing home quits the current application - freeing memory for the next.
My proposal is "lazy quitting". Pressing the home key would suspend but quit the application. The suspended app could then remain in memory.
Suspended apps would be able to resume instantly. The least recently used app would eventually quit if memory was needed to launch new apps.
Such a scheme would benefit dramatically from (say) a doubling of system RAM.
C.
There's no magic to this. Cell phones have to operate in limited power, CPU, and memory situations for the next 2 to 3 years (<512 MB memory, <1 GHz CPU). In the case of batteries, probably decades. This means multitasking will be limited to 4 or 5 applications, especially those that have to have a constant internet connection or a constantly running process. With push notification, all data is fed through one pipe, instead of independently. This means, the iPhone can have tens, even hundreds, of apps doing push notification at the same time. With multitasking, you will be memory bound or CPU-bound. There's always advantages and disadvantages, and push notification does have advantages.
So, Apple's tradeoff is to limit multitasking apps to those they control, basically many of the 1st party iPhone apps, have push notification for its 3rd party apps, and essentially give up the functionality like 3rd party radio streaming.
You push the home-button, then touch the new app you want, that's quick enough for most people. Anyone who listens to radio, like Pandora, simply wants to run it in the background while they use their phone, just like the iPod app. Yes it will use more battery, yes to a lot of things - but Apple is exaggerating, and they are holding off on the inevitable.
The sequence of steps used to switch between tasks on the iPhone is fairly good. At least when switching between apps on the same page of apps. But if those apps are on different screens, it is necessary to swipe and do more visual scans of the icons and names. For instance, clicking on a web-link from the facebook app takes you directly into safari. However switching back requires a click of the home button, a couple swipes, and an icon click. It would be nice to be able to return to the other app quicker with fewer steps.
But mostly the problem lies in how quickly the iphone can process the task switching. It is quite common for the iphone to lag for multiple seconds when returning to the home screen or invoking an application. 10 seconds to switch tasks is fairly common. In my opinion, this obviously is something that can be improved. The good news is that the lag can be at least partially addressed with faster hardware and more ram, aka: the iPhone 3GS.
Yet that still leaves the desire to require fewer clicks and visual scans by the user when switching tasks. Granted, I'm not sure how to accomplish this in a manner that would be in fitting with the rest of the iPhone interface. Something like Command-Tab comes to mind but admittedly I haven't thought through all the ramifications.
Actually, with a Palm Pre, since it is currently and exclusively a CDMA device, it can't have voice and data at the same time unless it is also on Wifi. So if it only has a EVDO connection only, people can't do anything involving data while on a call. They can't browse the web at the same time, have a message sent.
I'm not doubting you, but can you verify this?
But mostly the problem lies in how quickly the iphone can process the task switching.
[S] is for SPEED!
Discussed here.
Gotta say, as weird as it sounds, that's a bummer. I can totally imagine myself saying, "Hold on a sec, I'll google it" while I'm talking on the phone. Stupid EVDO.
Gotta say, as weird as it sounds, that's a bummer. I can totally imagine myself saying, "Hold on a sec, I'll google it" while I'm talking on the phone. Stupid EVDO.
Yeah, it's funny it doesn't get mentioned more as a deal breaker. I'd have to assume that if this were Apple and the iPhone there would be a great deal of bwa-ha-ha-ing over how lame such a limitation is.
Yeah, it's funny it doesn't get mentioned more as a deal breaker. I'd have to assume that if this were Apple and the iPhone there would be a great deal of bwa-ha-ha-ing over how lame such a limitation is.
I know! I'm glad I heard about this now. I'm still thinking Pre is better for my needs (free GPS nav, nights start at 7 pm, strong browser, keyboard), but this hurts a bit.
I take it the same is true of Verizon - they are also EVDO, right?
- Apps that do something in the background
- Apps that respond to network events
- Apps that respond to non-network events
- Speed of workflow when using multiple apps
- Apps that perform time consuming operations
My suggestion is that Apple does include multitasking, but also includes all the other APIs needed to allow most of these cases to not require multitasking. That way, it only gets used if it's needed, and most of the time there's a better solution. Of course, the OS should manage running apps and quit them if resources are limited.An app that actually performs a function in the background, such as playing music or transmitting your GPS location to a server, needs proper multitasking. Nothing else will do.
Push notification solves this. This is for things like IM software. Of course, full multitasking would let the app have more control over what happened when the event did, but that's not a big deal.
The best example is apps with timed alarms, but there are also things where the app needs to respond to a change in location. It would be possible to solve this problem without multitasking, but Apple hasn't done it yet.
If the user is, for example, composing an email, and needs to look up information from a calendar, get an image off the internet, and make a few To-Do notes, this is needed. There's two issues here: the time it takes to switch apps, and ensuring the apps are in the same state you left them in. To solve the problem without multitasking, all apps would need to save complete state on quit. (Many do this now, but many do not. It's easy but not trivial to program.) Also, some form of quick app switching would be needed: maybe holding down the 'home' button displays an overlay of the 6 most recently launched apps. With multitasking, the saving state is not an issue, and there would just need to be a UI which showed all the currently running apps.
Suppose an app is downloading video, and it will take 30 minutes. If there is multitasking, like for the App Store, the user can go and do something else. If not, they have to leave the app open. The only way this could be solved without multitasking is with a couple of new APIs: firstly, a download manager, so the app can request the OS download something in the background. But there are other things that take a while besides downloading... so how about porting Grand Central to the iPhone. Then apps could submit jobs to Grand Central, which could optionally keep running in the background. Obviously this would still have battery life issues, but less so than also keeping a full GUI in memory.
Yeah, it's funny it doesn't get mentioned more as a deal breaker. I'd have to assume that if this were Apple and the iPhone there would be a great deal of bwa-ha-ha-ing over how lame such a limitation is.
Apple did have that limitation with the first iPhone. They blamed it on the state of 2G networks, but here in the UK I had Symbian 2G phones that were perfectly happy to talk and browse the net at the same time.
It was an embuggrance. I'm glad that that's not the case with the iPhone 3G
For example, if I were playing a game and I received a text message, I would have to quit the game to respond to the text. The game app would literally shut down. If multi-tasking were enabled, the game could be paused and left open, the text answered, and the game returned to just as you left it. I find it most annoying while playing Crash Racing. I get a text, quit the game, answer the text, and open the game only to see that I have to restart the race.
If we don't see multitasking/background apps in an update for 3.0, we'll most certainly see it in 4.0 with the 2010 iPhone.