Channels ▼

Christopher Diggins

Dr. Dobb's Bloggers

Too Many Buttons

September 26, 2008

Software usability is broken. Good design is the key to the financial success of companies like Apple and Google, and it is inevitable that the software industry as a whole will start doing product design properly.

I have been a Windows programmer for over 12 years, and I recently have had to start using Vista for reasons beyond my control. I am pretty furious at how badly designed the software is. I am not talking about the engineering of the product, I mean the user experience. Some of the poor design choices in Vista and recent Microsoft products include:

  • putting buttons on every corner of a UI.
  • nesting toolbars, and tabs, so that the user no longer know what they are doing 
  • hiding the menu
  • changing the options on the menu each time it is opened
  • mixing and matching fonts and colors
  • too many different kinds of controls
  • completely changing the UI when a user navigates a directory structure
  • nagging the user incessantly about downloading every incremental release whether they need to or not
  • property dialogs with a list of nearly a hundred options
  • making strange things happen when you accidentally hit shift or ctrl twice in a row.
  • not allowing undo to work in a text entry box
  • displaying error codes
  • telling users to contact a non-existent administrator 
  • asking "are you sure" three or more times in a row
  • grabbing the keyboard input for a dialog, while the user is typing  

The problems that Microsoft encountered, is the same as for every other software company:

  • Engineers have too much say in product design
  • Good software design is expensive
  • Planning and design is done primarily at a feature level rather than product level.

So for those making the decisions at a corporate level, having better design requires two things:

  1. Accept that good product design is going to have a significant cost. You are going to have conduct lots of tests, and create design teams. A design team should consist of a mixture of design specialists and engineers. This can help keep the group realistic, and prevent the development team from revolting.
  2. Remove some of the decision making from the development teams. When they have the power to veto or modify designs, things quickly deteriorate into the path of least resistance (e.g. Friday afternoon features).  
  3. Encourage the design teams to take a whole picture view of how all the features in the product fit together.

The end result should be happier customers and bigger market-share.

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.