[Jaffa Software]

Saturday 8 March 2008

Improving application start-up usability

The announce of the iPhone SDK has revealed some interesting facts; including a particularly ingenious (and simple) way Apple have improved the user experience of starting applications.

It's a bit of a cheat, but with sound User experience Design (UxD) principles behind it: two small waits are better than one long one. It's why we have "please wait" messages on everything from ATMs to websites, and Hildon Desktop's own "Application loading" info messages at the top-right. The user feels the action is progressing whilst complex operations are occurring underneath.

Therefore, Apple's idea is simple: display an image of the application completely empty of content, but with the structure of its window in place as quickly as possible after launch. When the app actually opens its window, it replaces the image.

For example, the "launch image" for the iPhone's Settings app is shown on the left, with the actual app's first window on the right:

...and the Stocks app:

I've just posted to maemo-developers an idea for similar within the Hildon Desktop. For example, imagine the instant you selected File Manager from the launch menu, this image was shown:

The normal "File Manager loading" infoprint would also be shown, and then the File Manager proper would open and replace it.

Although it's "only" a few seconds we're talking about, I think it could really make ITOS feel more responsive. Given we've only got a 400MHz processor to play with, the impression of speed is just as important as the making the startup time as low as possible (but with the overhead of shared libraries etc. there's a lower bound which is achievable).

Comments, as ever, welcome.


  1. Luarvique L. Luarvique8 March 2008 at 09:36

    Do notice that iPhone only runs one application at a time. Nokia tablets do not have this limitation, so the user can just do other stuff while a new application is loading.

  2. Mhm... again, it depends on how fast the app is loading. Seeing this kind of preview image for only a little bit too long would fool me into thinking the application is already started but broken. I'd really prefer a clear indication of "please wait, it's not ready yet" over some half-hearted attempt to make me believe its already there.

  3. Good idea (the appearance of speed is more important to the user than actual speed), but I don't think an empty File Manager screenshot would convey the impression of speed. Maybe if it also had a "Loading..." message in the middle -- otherwise it looks like an extremely slow redraw.

  4. i cant say i have had any issue with ITOS feeling slow. but then i have the cpu and ram indicator in the "statusbar" so i can tell if something is being done or not...

    still, if it had a spinning "flower" on top of that, maybe i could get used to it.

    but as Luarvique said, one often launch something, move to another app, and then come back as the icon of the new app appear on the left.

    another option is to leave the "launching" indicator in the top right area until the actual app window shows up. but then that gets in the way of some menus and stuff...

    i think as it stands, taking a "page" from the ease of development in the iphone SDK is more important then working on the "usability".

  5. This would be a great improvement for the Hildon UI process. Still, developers would need to rethink a current "implementation": some apps (sort of) already do this in certain places (the Application,, for one). The Application Manager, after loading, displays a "No files available" message when waiting to Update. I can't tell you how confusing this is, usability-wise. It would have been much better to display, "No files loaded yet" -- or even a blank screen! Anyway, all this being said, a standard should be devised for the 'loading' screen/message.

  6. Jussi Kukkonen8 March 2008 at 20:22

    You say "it could really make ITOS feel more responsive", but don't really back that up -- we already have the "XYZ loading" info banner which basically fills the same need.

    The question that should be answered is "how is the iphone model better than what we currently have?". Preferably the answer should take into account the problem mentioned in comment #1.

  7. Thanks for the comments so far. In response to some of the points, here are some random thoughts.

    I don't think the multi-tasking nature of Maemo is an issue at all. At best it's a distraction: the launch image would be displayed in a normal window, created by Hildon Desktop/Task Navigator with a title of the application and a proper icon.

    Personally, the apps I use on ITOS don't start slowly enough that I can switch to something else and usefully use it before the app being launched pops up and starts stealing keypresses and key clicks.

    There also seems to be a hint of anti-iPhone snobbery combined with NIH syndrome: cool hacks shouldn't be dismissed just because Apple came up with them. Obviously the iPhone isn't the device for us - otherwise we wouldn't have Internet Tablets ;-) - but it's good some good ideas in it we can use for inspiration. Personally, this came across to me as a cool hack and an easy-win.

    The problems I can see, however are:

    Maemo apps are too consistent and visually bland for the launch image to be much more than an empty white box. On the File Manager screenshot there's a movable divider and movable column widths.
    Themes which change the window background colour could look seriously odd with a static image.
    As Marius mentions, the user could think the app has crashed. Hopefully it won't stay open too long - and the user won't get confused: we've got the infoprint and the task'll get killed if it doesn't call osso_initialise() quickly enough.

  8. thing is, im not sure its a smart hack. to me it just as well looks like a slow paint so to speak.

    hell, are we sure thats not what are seeing? im not familiar with the iphone but are any of those dialogs so that when you scroll the whole thing moves?

    that stock market one for example seems more like its loading a static background and then start painting stuff on top then loading a temporary placeholder.

    but its hard to tell from static images.

    and new window stealing forcus, thats a whole different usability problem. and one that should be fixed asap btw. focus stealing is bad, no matter what!

  9. Hi Jaffa,

    I think what made apple's strategy succeed was the fact that you have a whole bunch of animation feedback while the first screen is being shown. so it doesn't stay too much on the screen (It's quite fast)

    But in my user testing sections with the iphone, is the whole zooming into the screen (this is the trick behind the loading times for me) that really catches not the user attention but the "affection" to the software "look how cool is this when I start the application, it just comes from inside" this is a quote, just to show my point.

    So in the end, IMHO I really don't think the same strategy works nicely in maemo's hildon, because of the whole nature of the thing, and the horizontal element that will not suffer any modification (I will compare the top element to the bar in the iphone) but I don't think they should be compared.

    But, just to let clear: I agree 100% with you that is better to have fast feedback than not having it. I just don't think it fits to our platform that nicely : /

    Best regards,