views:

118

answers:

6

In a fairly graphics intsensive application the requirements state that it should default to full screen mode even though the application is running under Windows. I know many games do this but I find it annoying. The default IMO should be to open in a window rather than full screen mode. I am proposing the first time the user runs the application they should select the default behavior. Am I wrong?

+2  A: 

Before doing the opposite of what your requirements say, I'd have the requirements changed.

However, what about giving the user the choice at install time?

Mihai Limbășan
The application is installed for many users. The options are stored per user. The person installing would be making the decision for all users.
ojblass
I agree with both points. Have the requirements changed and make the behaviour a configuration item.
Arnold Spence
I see - didn't think of the multiuser scenario. In that case, I'd follow the requirements (probably better on your mental health in the short term) and give users the option of switching fullscreen off. BTW, I fully agree with your view here - default fullscreen == high annoyance factor.
Mihai Limbășan
Not to mention that an application that goes fullscreen by default is much more likely to run into trouble on multimonitor setups, making it much harder for users to pin it to a specific monitor (they'd have to un-FS the app, then move it, then FS it again.)
Mihai Limbășan
+3  A: 

I would follow the requirement the first time the application is launched. I would also provide a simple way to switch from full screen to windowed, for instance by pressing ESC (and another way to go back to full screen). Then I would store the mode when quitting the application and restore this mode at next launch.

mouviciel
The option will be configurable through options. Why default to full screen unless absolutely necessary?
ojblass
Just because it is required. Even if a requirement seems silly, as a coder I am not in position to guess what is in the customer's mind. Of course I can tell him what I think of it, but at the end he has the last word.
mouviciel
... I would add that a possible point of discussion would be to ask your customer to provide you with a second monitor for testing your full screen feature.
mouviciel
+3  A: 

I think the annoyance-factor depends a lot on what the application tries to do.

If it is some utility that I might start while working in 5 different applications and it forces its fullscreen-ness on my, then I'd get highly annoyed.

If it is a specialized application that helps me with the entire workflow of a given task (so that I never or rarely need any other apps open at the same time), then fullscreen might actually be a valid default.

Whatever you do, just make sure that toggling the startup behaviour is very discoverable. Because no matter which way you'll go, some of your users will disagree with your decision. And for them it should be very easy to change to their prefered way.

Joachim Sauer
The argument of what the intended use of the application will be is a very good one.
ojblass
+1  A: 

Go back to the requirements writers and ask them if they have considered non-traditional monitor setups, such as:

  • 30" or larger monitor. Do you really want your app hogging up all the screen real-estate?
  • Multiple monitors. Which monitor will you run on? Can the user move your app from one monitor to another? Can your app span more than one monitor?
  • Virtual desktops. Can the user move your app from one desktop to another? Can they switch desktops while your app is running? Can your app span more than one desktop?

Such setups are increasingly common, especially large monitors. IMO, full-screen mode (the default for many older Windows apps) is becoming less and less useful.

Barry Brown
+1  A: 

The window at first-start-up should default to the optimal size for the largest proportion of users. For a graphics-intensive full-featured app, that may very well be full screen.

As for individual user preferences for window size, it seems to me most users won’t know if they want full screen or not until after they’ve started to use the app and see how much screen space they need and how much they use the window in conjunction with other windows. Asking them which size they want at install or first-start-up could thus be annoying and even confusing. It’s better to put such a setting under Options/Preferences.

Perhaps the best thing to do is save the window status on exit. Users who like it non-maximized thus only have to non-maximize it (and size it) once and then forget about it. The only consideration is to have some way to reset the window to the default (e.g., Window > Standard Size menu item) for novice users who accidentally resize or reposition the window to something bizarre and don’t know how to get it back. Alternatively, you could have a Window > Keep Sizes and Positions menu item for users to explicitly save the window status across sessions.

Michael Zuschlag
A: 

The problem with presenting the user with the option of initially selecting fullscreen / vs windows is that they haven't used the software yet. How can they make a decision on which is better for them, without experience?

I would run the app in whichever mode provided the best user experience and then offer an option to change it both in the Preferences and though a hint while starting up the application for the 2nd time.

Tom