Designing a User Interface for Credit Card Expiry Dates

Designing a user interface for capturing credit card expiry dates is an interesting, multifaceted problem. To work though this problem, we need to ask three questions:

  1. What default values should be used for the expiry date?
  2. What are the opportunities for users to make errors when transcribing the expiry date from the card to the user interface?
  3. How can we support data entry by reducing the cognitive load on users to help prevent errors?
Read more...

Using Transparency to Visualize Information Density

This posts explains how to use transparency to visualize information density. When visualizing geocoded data points on a map, for example, it’s common to plot each location with a marker. When many data points are located in the same geographical area, the markers drawn later will overlay the markers drawn earlier. When the markers are opaque, it’s difficult to tell at a glance how many data points are located in each region. The following example shows geocoded tweets authored about the Boston marathon.

Read more...

Use Animation to Help Users Notice User Interface Changes

This post explains why you should use animation to help users notice changes in your user interface. When interacting with software, users focus on the task they want to perform, not on the software itself. As a result, some users just don’t notice UI changes that occur in one discrete step, even if they caused those changes. For example, I’ve been at usability tests where users didn’t realize that a sidebar pane was opening or closing even when those users repeatedly clicked on the toggle button to open and close the pane.

Read more...

The Hidden Functionality of Elevator Toggle Buttons

It’s always nice to discover new functionality in interactive systems, especially when watching people use such systems in the wild. When travelling in an elevator, I recently saw a nice solution to the main problem with elevator user interfaces: how to deselect a mistakenly pressed floor button.

Read more...

Learning Through Natural Feedback on the London Underground

One of the best ways of teaching users how a software or physical product works is through feedback. Some types of feedback are explicit, such as a well-placed error message presented when we fill out an online form field incorrectly, or a supportive tick when we fill out the field correctly. Other types of feedback are implicit and require us to learn a connection between the feedback and the correct way to use an object or system. Regardless of type, the best feedback occurs naturally and at just the right time.

Read more...

Poorly-Written Error Messages Trump Crashes

The quality of an application’s error messages comes under close scrutiny during an expert usability review. Well-written error messages inform users about the steps they should take next to move on with their task. Many poorly-written error messages simply report the internal state of the application in the unrealistic hope that users will understand the problem and therefore be able to correct it. However, detecting that an error has occurred and presenting some warning to users is far better than simply crashing.

Read more...

Timetables Are Best For Browsing, Not Searching

Timetables are a familiar and, if well designed, easy-to-use way to find the times of regularly occurring events such as films, public transport and museum tours. The interaction is simple: the timetable presents the time of each event in a grid indexed horizontally and vertically by time and date. Timetables on paper work well because they enable us to browse the complete set of available information. We can see at a glance on which days a particular film is showing, the intervals between buses, or the time of the last museum tour of the day.

Read more...

Power Edit Your Writing with my FREE eBook

Like most people, I prefer to read writing that is punchy, concise and easy-to-read. Also like most people, I found it hard to give my own writing the same snap. So one day I decided to learn the tricks that my favorite authors use to produce the kind of writing I love to read.

Read more...

Guidelines for Chaining iOS Apps

A long-standing design goal for iPhone apps is that they support a very specific style of interaction: users take out their device, open an app, perform a task quickly and then they’re done—either because they take an incoming call or because they pocket their device to get on with other things. To enable this get-in-get-out interaction style, every app must have a well-defined purpose. App developers are encouraged to implement only the functionality required to perform the purpose of their apps. This development style pares down apps to keep them focused and avoids featuritis.

Read more...

Match User Interface Terminology With Tasks, Not User Ability

It’s not often that I’m stopped in my tracks by a user interface element in Mac OS X, which is the reason for this post. I was using the Activity Monitor application to show which processes were consuming the most memory when I spotted HPShortcutManager, the process highlighted in the following screenshot.

Read more...