30th
On Multitasking
[good stuff woefully excised]
But what is multitasking, really, and why does the iPhone model seem different? I mean, with some exceptions (for example, listening to music while you surf the web), you’re not really doing two things at once. In most cases you are actually doing two things sequentially, say, writing a term paper in iWork and looking up sources in Safari, not writing a term paper in iWork while looking up sources in Safari. Why does it seem like you’re doing both at once on a desktop?
Actually, Safari is one of the few iPhone apps that do run in the background. I frequently take advantage of this by requesting a page, clicking Home, and then launching another app, knowing that the page will be loaded and ready when I switch back to Safari. I’d love it if I could do the same with, say, Tweetie, or any other app that loads lots of data over an often sucky Internet connection. This shortcoming is one of the major reasons the iPhone feels (and, I assume, the iPad will feel) less efficient than a full-size computer.
In other words: no, I don’t personally multitask, strictly speaking, but it’s damn nice that my computer can.
- Memory-heavy apps. In tandem with the slow-loading issue is the fact that, with some apps, you can practically see the battery indicator draining as you’re using the application. A move toward old-school draconian memory management seems likely, as users become less and less tolerant of hoggy applications.
This is more an issue of CPU use than memory use. The iPhone is already fairly draconian when it comes to low-memory situations; if your app is using too much, you (the developer, that is) get a warning, at which point you have to start freeing RAM or be terminated. But it’s mainly games and other CPU-intensive apps that drain your battery.
- State (hat tip, Neven). This, I’d say, is the single most crucial point. By remembering where you last were in a given app, developers could easily make it appear almost exactly like multi-tasking. You open Safari; it’s on the last website you read before you closed the app. You open Notes; it’s on the blurb you’d just written. You’re pretty much multi-tasking at this point. You’re writing your term paper while researching on the web.
Yes, absolutely. Persistent state is the reason Tweetie is my favorite Twitter app and the Tumblr app is… well, not my favorite Tumblr app.
One reason so few apps store state is that the iPhone APIs don’t make it particularly easy to do so. The single best thing Apple could do to improve iPhone/iPad usability would be to provide a way to freeze an app’s entire runtime state in carbonite on exit and thaw it on the next launch, so the app wouldn’t even know it had exited (except maybe it has to reestablish network connections and oh look, suddenly it’s three hours in the future).
If every app did that, I bet no one would complain about the lack of multitasking. (Well, no one but me, but I’m a huge ass.)
