As you have all probably experienced, it is common for some large applications to launch a 'loading' window that (usually) displays a progress indicator, etc, and then launches the application in a big window once the loader has finished.

What I am asking about is a common behavior where the application that has finished loading will then make its window the 'active' window, shoving itself out on top of whatever I am doing at the moment. While it is understandable that a smaller application, the sort that can 'launch instantly', does that (after all, you'd hardly have enough time to switch back to another task before it loads), I find it extremely irritating when, right in the middle of something, an application I launched at the beginning of my session (so it would be ready by the time I needed it) suddenly springs to life, interrupting me and demanding that I use it.

Even more irritating is when you have a multi-desktop environment (multiple monitors, or something like the workspace switcher in various Linux distros), start the loader in one workspace, switch to another workspace, and then have the application launch itself, not in the one you started it in, but right on top of the one you are currently working in. And it is especially irritating if the application is one that launches fullscreen, making it very difficult to move it back into its original workspace.

It's clearly understandable for an application to send you a dialogue box in case the loader runs into a problem that it needs operator intervention to solve (like asking you what folder to use as a workspace), and I am not talking about that.

Why is is that so many applications do this? Is there some actual reason for launching that way, or is it just sloppyness on the part of the developers? As an alternate solution, why don't applications just pop up a notifier bubble or something to tell you they are ready?

  • You are supposed to be sipping coffee waiting for the app to finish loading. After the app loads you would want to jump into work straight away. Aug 31, 2013 at 22:08
  • @DeerHunter When I launch Steam and it tells me it needs to update the client for the next hour, I will usually surf the web while I wait. (Do you really expect me to just 'sip coffee' for an hour, wasting my free time?) An hour later, BLAM! Steam pops up, right over everything, including the flash game I was playing, making me lose that game and everything, when I would have much prefered to have been able to finish what I was doing. Aug 31, 2013 at 22:42
  • If you're on sucky Windows 8 with no taskbar then I think it needs to pop up so you don't have to search for hours, but if your on a desktop OS that has a taskbar or something similar, where you can see a little icon with an indicator that it's open, it should leave you the hell alone. I agree that this feature can be of slight annoyance, but it doesn't cause me any hindrance significant enough to call it a problem.
    – Dom
    Sep 1, 2013 at 20:27
  • @AJMansfield: In the case of Steam, you're not talking about a loader dialog but an updater. Entirely different things.
    – MSalters
    Sep 2, 2013 at 9:20

2 Answers 2


Raymond Chen (legendary Microsoft dev) is renowned for his opinions on this topic. As it happens, the post I've linked to includes one case where this behavior might be considered reasonable:

This application will be run on dedicated machines which operate giant monitors in retail stores. There are already other applications running on the computer which rotate through advertisements and other display information.

The customer is writing another application which will also run on the machine. Most of the time, the application does nothing, but every so often, their application needs to come to the front and display its message, regardless of whatever the other applications are displaying. (For example, there might be a limited-time in-store promotion that needs to appear on top of the regular advertisements.)

But I imagine that in general this is just a case of narcissism on the part of the offending applications. From a user-centered design perspective, there's rarely a good reason to force an experience (such as locus of attention) to work around an implementation detail (such as when precisely the application becomes available to use).

As you suggest, a notification of some kind would probably be more appropriate; flashing the taskbar button is also a popular approach, at least in Windows. Incidentally, the Windows interface guidelines advise against flashing the taskbar button, suggesting instead that you:

  1. Pop a notification, or
  2. Do nothing. I concur with the guidelines' opinion that "this is often the best choice".
  • do nothing I think is the best choice, people open applications to perform tasks and can easily locate them when they need them, they don't need to be reminded that they have opened something a minute after they did, they will just find the application when they require it
    – Toni Leigh
    Sep 1, 2013 at 17:55
  • I would not go so far as narcissism, but yes. Is it likely an old school convention that needs to go away, for all the reasons everyone has stated. When the application is done loading, it gives focus to the portion of the application the dev team have determined the user will most likely want first, without considering the real world context where we all have several things running at a time.
    – ph33nyx
    Sep 3, 2013 at 15:03

Much of it is simply historical convention. In early multi-window systems a window didn't "belong" to a separate program, there was only one program (e.g. Smalltalk). Opening a window was relatively light and quick.

Modern very large slow-startup programs, multi-monitor systems, remote/distributed/high-latency systems (other than the ubiquitous web browser), haven't been around long enough and/or popular enough to compel idioms that alleviate these UI quirks they manifest.

Seems to me the best solution might belong in the operating system, but individual programs that have these issues are to some extent fixable, and I would chalk it up to simple design flaws that the issues exist to an irritating extent.

  • That's not really an answer. High-latency systems are far from new, and in fact modern networks generally have lower latency. There is a definite change here, and I blame it fully on laziness of application developers. There is fundamentally no OS fix for applications that start up sequentially, waiting for each initialization step to finish before commencing the next. Not just apps, though: most ATMs fail to parallelize the authentication wait and the "do you want a receipt?" prompt.
    – MSalters
    Sep 2, 2013 at 9:18

Your Answer

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

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