UX

GNOME power settings

Screenshot of the current design of the GNOME power settings

On this page

Introduction

The GNOME desktop is my favorite desktop environment and I have used it quite a lot since I discovered Linux in 2001. Despite having it flaws, I believe the design of the desktop and the applications is great. 

Being an enthusiastic user of the GNOME desktop, I follow the news about this desktop environment closely. When I read in October 2019 that there would be a GNOME Shell hackfest in The Netherlands, I immediately asked if I could join and meet the UX designers behind the project. They agreed and that's how I met Allan Day and Tobias Bernard. 

Because I wanted to contribute something to the GNOME desktop I asked Allan Day how I could help to bring the project forward. He answered by asking me to write a heuristic* evaluation of the power settings. 

And so I did. In the months that followed I wrote a heuristic evaluation of the power settings and gave feedback on the designs he made. Below you can find the heuristic evaluation and the feedback that I gave.

* A heuristic is nothing more than a guideline or a rule how a software system should behave.

Heuristic evaluation

1. Visibility of system status

The system should always keep users informed about what is going on, through appropriate feedback within reasonable time.

I think the power settings informs the user well enough: the status of the laptop battery is shown as well as the status of the batteries of the devices.

My feedback

  • The horizontal progress bar is quite thin. Do users recognize this as a progress bar? Maybe it should be a bit thicker?
  • There is some inconsistency: in the progress bar of the battery the percentage is shown on the right side but in the progress bars of the devices the percentage is shown on the left side. Possible solution: move the percentage of the mouse to the right side. It’s then clear that the right side always means 100%. To prevent repeating the text 100% every time, it could be shown only ones at the bottom right.
  • I’m used to the fact than Linux systems don’t report the correct battery time. In the above screenshot for example, a battery time of 43 hours is shown. That’s overly optimistic! It’s probably much less! When a system displays a certain number it should, off course, always show the correct number.
    Probably this isn’t a problem of the GNOME desktop but about the way how the Linux kernel (or another sub-component) measures the battery time. It would be great however if it would be fixed!

2. Match between system and the real world

The system should speak the users' language, with words, phrases and concepts familiar to the user, rather than system-oriented terms. Follow real-world conventions, making information appear in a natural and logical order.

My feedback

  • When I read ‘Battery’, the question that arises in my head is ‘Which battery?’. Wouldn’t it be better to write ‘Laptop battery’ or ‘Computer battery’? Then the user immediately understands which battery is meant. I don’t know if this is possible because I’m not sure if it’s possible to find out (programmatically) on what kind of computer (laptop or desktop) the desktop runs.
  • The word ‘Devices’ is a rather abstract word. It would be better to say what kind of devices will be listed. The difficulty is that a user can connect all kind of devices to his/her computer. Having said that: all those devices have probably one thing in common: they are all connected (attached) to the computer/laptop. My proposal: rename the header to ‘Connected devices’ or ‘Attached devices’.
  • Maybe rename ‘Power Savings’ to ‘Energy Savings’? To me this would sound more ‘environmentally aware’ and you prevent having the same word in the title of the settings (Power) and in the settings themselves. It better distinguishes the headers.
  • Right now the computer/laptop battery is separated visually from the batteries of the attached/connected devices. Is this really necessary? Couldn’t they all be listed under the header ‘Batteries’? After all it’s all about batteries!

3. User control and freedom

Users often choose system functions by mistake and will need a clearly marked "emergency exit" to leave the unwanted state without having to go through an extended dialogue. Support undo and redo.

Nothing to do here: there are only switches and drop-down menus. When a user makes a mistake, he/she can easily click again on the switch or on one of the options of the drop-down menu.

4. Consistency and standards

Users should not have to wonder whether different words, situations, or actions mean the same thing.

My feedback

  • What exactly is the difference between the setting ‘Dim Screen When Inactive’ and ‘Blank Screen’? Do those two functions not overlap each other? Is the option ‘Blank Screen’ not enough? Maybe rename this option to ‘Dim Screen’?
  • The Blank Screen drop-down menu has as much as 10 options to choose from! I think that’s too much and I also think the options are too close together. Does it really matter for a user if the screen goes blank after 2 or 3 minutes? My advice: cut the number of options and increase the scope. For example: Never, 5 minutes, 10 minutes, 15 minutes, 30 minutes and 1 hour.
  • Instead of using a drop-down menu the options to dim the screen could also be shown as a slider.
  • Question: what does GNOME do when you are watching a movie of two hours? Is watching a movie seen as an activity of the screen (it should be)?
  • Important note: the time a screen goes blank must always be less than the time the system goes into suspend.

5. Error prevention

Even better than good error messages is a careful design which prevents a problem from occurring in the first place. Either eliminate error-prone conditions or check for them and present users with a confirmation option before they commit to the action.

There is one possible error: the drop-down menu for changing what happens when you press the power button has the option ‘Nothing’. If it is turned on the user can’t shut down the computer anymore! Does GNOME have this option in case the computer is used as a server? If so, it’s possible a good idea to rename this option or show a warning.

6. Recognition rather than recall

Minimize the user's memory load by making objects, actions, and options visible. The user should not have to remember information from one part of the dialogue to another. Instructions for use of the system should be visible or easily retrievable whenever appropriate.

My feedback

  • By surprise, I found out that when you click on ‘Automatic Suspend’ a new window opens! I didn’t expect that! Why are those options hidden in a separate window?
    I think the solution is to split the options Automatic Suspend and Power Button (see mockup).
  • Instead of using a drop-down menu the options of Automatic Suspend could also be shown as a slider (see mockup).

7. Flexibility and efficiency of use

Accelerators — unseen by the novice user — may often speed up the interaction for the expert user such that the system can cater to both inexperienced and experienced users. Allow users to tailor frequent actions.

My feedback

The options Blank Screen and Automatic Suspend always confused me. Why? Because I was always wondering if it was possible to set the time to dim the screen higher than the time to suspend the system. Only after carefully examining the options I found out that this was not possible.

To prevent any confusing the setting to dim the screen and the setting to suspend the system could be merged.

In the mockup below the time to dim the screen can never be higher than the time to suspend the system. I’m not completely happy with this solution because it probably makes the two settings even more confusing.

8. Aesthetic and minimalist design

Dialogues should not contain information which is irrelevant or rarely needed. Every extra unit of information in a dialogue competes with the relevant units of information and diminishes their relative visibility.

My feedback

This exactly why I so much like the GNOME-desktop! It’s really well-designed! I like it’s minimal and aesthetic look & feel! The same applies for the GNOME Settings. Despite the problems it has, it’s already, in my opinion, by far the best settings panel there is (comparing it to Windows, MAC OS X, and KDE)!

Are the options to turn off the Wi-FI and Bluetooth really necessary? Do they really matter? As far as I know they only save a little bit of energy. Not only that: if the user really wants to turn off the Wi-Fi or Bluetooth, he/she can do that in the respective panels. My advice: remove the two options.

9. Help users recognize, diagnose, and recover from errors

Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution.

My feedback

The Power settings are designed in such a way that no error messages need to be shown. An exception is the option ‘Nothing’ in the Power Button Action drop-down menu. Remove this option, rename this option or show a warning.

10. Help and documentation

Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation. Any such information should be easy to search, focused on the user's task, list concrete steps to be carried out, and not be too large.

My feedback

If the GNOME-desktop wants to keep the options Suspend and Hibernate in the Power Button Action menu then somewhere the difference between the two needs to be explained.

New design Allan Day

Feedback on the new design

Feedback on the Dim Screen setting

  • You write “Reduces the screen brightness when you are inactive”.
    I think you mean when the screen is inactive?
  • The sentence also raises the following question: After how many second or minutes of inactivity is the screen going to dim? It would be great if that question was answered in the sentence below the setting.

Feedback on the Screen Blank setting

  • I wonder if everybody knows what is meant with the word Blank in the setting name Screen Blank. It’s a really old computer term. Actually, it’s quite funny that we call the function Screen Blank while in fact the screen goes black. I think it’s good to rename this setting. Maybe to Turn Off Screen?
  • I agree that it makes more send to put the value Off on the right side than on the left side. But I think that when the slide is set on Off the slider should be blank and not orange. The blank state then indicates that the slider is turned off.
  • Is it an idea to show and hide the slider with an accordion effect?
    The advantages of this would be:
    ◦ The user interface is more ‘flat’.
    ◦ The user can compare the values of the different time settings.

Feedback on the Automatic Suspend setting

As with the Screen Blank dialog the Automatic Suspend dialog could be shown and hidden with an accordion effect.

The advantages of this would be:

  • The user interface is more ‘flat’.
  • The user can compare the values of the different time settings.

Feedback on the Power button setting

In my first document I wrote that I (and I think most users) don’t know the difference between the options Suspend and Hibernate. How could we address this? Provide more information or leave out one of the two options?

I also wrote that the option Nothing is quite risky because it means that a user can’t turn off the computer anymore. This can be needed when a user uses his/her computer as a server but in that case he/she can also do this with the command-line.

Screen Blank & Automatic Suspend

Below you can find some mockups of how the Screen Blank and Automatic Suspend options could look like and behave.