76

I need to load some information on Android devices and showing a progress bar immediately came to my mind. Now here's the problem:

The time it takes to get the content ready(download/decode/buffer) is not short, but not long enough to make the user navigate away. I would say around between 8~15 seconds.

Is it good practice to also show a line of text telling the user what's going on? Do the user care? Would it confuse the user? Does it make the user feel more positive while the loading commences?

What I mean by a line(single line, nothing more): enter image description here

See the "Checking operating system version..." above the progress bar

As a developer, seeing the details make me happy, but I'm not sure about regular users.

TL;DR: I see this pattern used a lot with enterprise software and software installers, I'm not sure if using this pattern on a mobile app would be a good choice

EDIT: This is my first question on UX and it has more upvotes than my highest voted question on stackoverflow 2.5 years ago. Maybe I'm more suited for UX related stuff :)

15
  • 16
    "The time it takes to get the content ready(download/decode/buffer) is not short, but not long enough to make the user navigate away. I would say around between 8~15 seconds." - on YOUR device.
    – user11153
    Aug 5, 2014 at 13:43
  • 3
    A quote from the Windows UX Design Principles: "Don't provide unnecessary details. Generally users don't care about the details of the operation being performed. For example, users of a setup program don't care about the specific file being copied or that system components are being registered because they have no expectations about these details. Typically, a well-labeled progress bar alone provides sufficient information, so provide additional progress information only if users can do something with it."
    – and31415
    Aug 7, 2014 at 15:04
  • 16
    @and31415 It's of no great surprise to me that the Windows design principles can be basically summed up as 'assume the user is an idiot'. It makes it an incredibly frustrating system to use if you're not an idiot.
    – Miles Rout
    Aug 8, 2014 at 5:28
  • 2
    @MilesRout Interesting proof point on opinion vs fact. I find Windows easier to use than the common alternatives which I find enormously frustrating when doing some of the heavy lifting I do, especially OSX.
    – Simon
    Aug 8, 2014 at 7:58
  • 3
    By the way, I'm fairly sure that both the description and the progress bar for launching InstallShield (then one you displayed a screenshot of) are pure BS, for no purpose other than to amuse the user.
    – user541686
    Aug 8, 2014 at 8:15

9 Answers 9

72

Showing details in a form not only developers understand is fine. If you are able to write your installation details in a more funny way than just "Checking Operating System Version" this might have two advantages:

  • The user gets feedback about what's going on and that there's something going on at all. When installing e.g. a computer game you normally have to wait for while and for some seconds (or minutes) the progess bar doesn't move. In this situation with the single information line the user knows that his system is not frozen.
  • The user gets entertained. If it fits your application you might want to formulate the details in a less formal way or just in a way that fits your application: "Awaking the goblins" (if this would be a game about playing with goblins)

As an alternative to the installation detail line you could also already explain some of the key functions of your app. This way the user gets more relevant information and is entertained, too. For a mobile application that installs in less than 20 seconds as you described I personally would prefer this solution.

17
  • 75
    so, "reticulating splines" is perfectly fine? Aug 5, 2014 at 8:58
  • 11
    @JanDvorak It always depends on the audience. Sims did imho completely the right thing with "reticulating splines". The loading times of Sims are sometimes really long. However by bringing in such and similar phrases, they hide the actual technical layer in a matter of "yes, there is something big going on but don't care about it". Aug 5, 2014 at 9:35
  • 36
    It's also handy if something doesn't work. It's a bit more information when a user can report "the installer gets through 'checking hardware platform', but hangs at 'checking operating system version'", instead of "the installer hangs". Aug 5, 2014 at 14:38
  • 11
    @JoshuaTaylor "the installer is stuck at reticulating splines"
    – Bogdacutu
    Aug 5, 2014 at 15:50
  • 4
    ...the third attempt seems to match the second (to which the user paid more attention) and the fourth attempt precisely matches the third (which was written down). Having seemingly-legible messages will make it easier for users to notice that the first and second attempts seem to have died in the same place, but what's important is that identical operations on repeated attempts get the same message, and different operations get different messages.
    – supercat
    Aug 8, 2014 at 16:33
34

It can be useful for several reasons. One is that the user gets a feeling of that something is actually happening and not just a progress bar increasing. If the UI says "Checking OS Version" or "Initiating virtual processor" she gets a feeling that something good happens, even if she doesn't know the technicalities behind it.

Second, if the process would stop at a step, it would be much easier to find out what is wrong. Maybe others on the intranet had the same issue at the same step, and you may find that you need to enable unsigned code (or something else). Just make sure, messages are valid.

3
  • 5
    so, no "reticulating splines" and the like? Aug 5, 2014 at 8:57
  • 13
    As an anecdotal example of your second paragraph: quite a few years ago, while attempting (and failing) to uninstall MSN Messenger, I had to search for the percentage it failed at. It was quite fortunate that others had mentioned the same percentage - but it would have been so much easier and more reliable if I had a name for step it failed at.
    – Bob
    Aug 6, 2014 at 4:40
  • 2
    @Bob LOL! This happened white running Eclipse and trying to install on a virtual Android device. It failed and it got a name when failing :-) Aug 6, 2014 at 6:02
34

As an analogy, consider the mirrors universally installed in elevators. While these mirrors give the user a false sense of added space in the lift, they also serve as just mirrors; people tend to look at themselves and do not seem to notice how long the lift is taking to take them wherever they are going. But if they put in a countdown telling people 'xx seconds to go', they'd start complaining how slow the lifts are.

The same tactic is applied by Ubuntu, Microsoft, Apple and others. As you are installing their operating system, they talk about what you can do with your shiny new computer when the installation is over. Minor details about the installation itself? Users simply don't care about those, at least the majority of them.

5
  • 6
    I was confused reading the first words... Mirrors and elevators as analogy for install... wtf?? But after reading it completely I really like this example, kudos @humbleware :-) Aug 5, 2014 at 11:35
  • 3
    +1 the best examples of this I've seen take advantage of the opportunity to show people things that are possible with the app that they otherwise wouldn't have realised. Many video games do something similar, offering tips and "Did you know?"s Aug 5, 2014 at 14:40
  • 5
    I still remember the incredibly optimistic blurbs Microsoft put in the Windows 95 installation screens: "What you want to do, and more, is now possible" and "Whatever you do will be more fun". Sign me up!
    – Dan C
    Aug 5, 2014 at 17:01
  • 2
    @DanC You can do anything at Zombocom! Anything at all. The only limit is yourself.
    – wersimmon
    Aug 6, 2014 at 13:35
  • 1
    A very long time ago a Linux installer started installing in the background while asking the needed questions. If the user were done before the installer was finished, the installer let the user play Tetris. Aug 8, 2014 at 8:29
14

showing what the program is doing while working on a progress bar gives an additional indication of progress. There is also a nice way of doing this involving a details screen: enter image description here

This method doesn't just show the progress of the installation as a whole, it also shows what the current step is, what the previous steps is and sometimes even the progress of the current step.

Many installers using this method don't show the details screen from the start, but have a separate button you can click to display it, so people that aren't interested don't have to see it.

An additional benefit of this method is that, if your installer has any options that require more than a few lines (like a list of localizations or optional packages), you can make your installer big enough to show those options properly without having a bunch of ugly empty space beneath the progress bar, like your example has.

3
  • 2
    Oh no Vista! It burns :p.
    – TMH
    Aug 7, 2014 at 15:04
  • 1
    Personally, I do hate all the details. I changed my own NSIS setups to remove the details and even the summary and also the "Nullsoft..." in the lower right. And I made the ESC key a direct way to exit the installer, without the boring confirmation "Are you sure".
    – Uwe Keim
    Aug 11, 2014 at 5:52
  • One aspect of this is that errors and warnings may now be visible to the user. So you also need to communicate to the user exactly what their responsibilities are towards those messages, and how they are supposed to handle them. Apr 21, 2016 at 10:22
9

No, they don't care about the details. But the great thing about it is that they know exactly what is happening, it feels like he/she has control.

1
  • 3
    I don't think this has to do with control. Even the opposite can be the case if a user gets overwhelmed by foreign language.
    – phresnel
    Aug 6, 2014 at 14:57
8

I would argue that "8~15 seconds" could in fact be long enough for an impatient user to navigate away or to think the app may have crashed. Changing messages is therefore useful as an indicator that something is happening and conveys a little more "why" of waiting than a buffering circle or similar.

Whether the messages are of importance to the actual activity, are tips/features of some kind or a "reticulating splines", I think depends on the user base. For an average player of SimCity, reticulating splines was good UX because who cares what's actually happening in the background so long as it's loading. But here you say "download/decode/buffer" so I think what's happening is important. Is it taking a long time on the download for example; do I have a dodgy connection?. This is potentially useful information to the user.

1
  • +1 for mentionin slow connection. I have slow connection, and I like to know if something is loading (even if those are few kylobytes If I can see some progress is better then nothing) Aug 10, 2014 at 14:50
3

With an installation of 8-15 seconds, the user should not get the impression that the progress bar ever gets stuck (be sure to monitor the progress fine-grained enough so that processes that take more than one second or sometimes a not completely predictable amount of time - such as searching and downloading some extra files - consist of enough sub-steps to guarantee this). Fine-tune the percentage of progress that the individual steps are counted as in such a way that on typical systems/in typical situations the growth of the bar is continuous.

Apart from that, if you give the user two or three sentences to read that may not be important for him, but that keep them busy reading for 8-15 seconds, they will not really notice the time it takes to install. A surprising animation instead of text might even be better in this respect (as long as it does not lead to longer download/install times).

On the other hand, people may be used to a handful of installation interfaces (screenshots of InstallShield and NullSoft are shown in other answers), especially in the PC world such that any deviation from the general structure might confuse them (is the installation complete? Or is this alrady the program starting? Or will there still be questions left to answer and configure?)

1

I think it depends on how long you expect the load time to be. If you expect it will be ~10 seconds or less, most users probably will not care about details. If you expect it could be several minutes/hours, users might want more details than just a progress bar.

1

Really I think Marvin did a pretty good job of answering this question already. Something I'm going to add though is that, at least in some cases, Civilization games' installers tend to show exactly which file is being installed, right down to the individual pngs. They'll include the path as part of the name of the file, and since they'll basically go directory by directory, you'll see them slowly work their ways up and down the directory trees, but almost instantaneously go from file to file.

This is very informative and encouraging to the user that anything is happening, and that it's not just frozen. It also makes them feel like actual progress is being made, more so than if you just show them a progress bar and some vague text by themselves. Some users like this feel - the feel of watching progress happen continuously - which is part of the reason you have a progress bar in the first place.

It might come across as something tailored more to developers, but it really isn't at all. Normal computer users know good and well what a file is and should be able to tell what's going on.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.