Let Me Save Incomplete Files

This is a usability problem that I have run into a number of times.   A programmer writes a UI screen to receive a long list of inputs in order to create an object in system.  Save is enabled only when all the inputs are filled in and verified valid.  This is a big problem. Continue reading

Usability is like the Flavor of a Meal

We talk about usability of software as if it was something separate from the software itself.  There are usability experts, and there are programmers who openly claim to not be very good at user interface.  And yet, usability is affected by many deep aspects of the software, and it is important that all programmers on a project be aware of the usability goals of the entire project. Continue reading

Not-So-EasyChair Hints

There is a conference management system called EasyChair which many of the academic conferences use to manage the submission to the conference, the reviewing of the submissions, and the selection of the papers to be included.  It is tried and true, but it has one of the worst user interfaces you are likely to ever experience.  This post is the result of my struggle to get it set up for an event. Continue reading

Usability Means Not Jumping Through Hoops

The image of being forced to jump through hoops is one of being required to take arbitrary actions in arbitrary orders just to satisfy some goals that are either unseen or at least not in the interest of the user. Some software is like that.  You have to perform functions that you don’t want to do, that you know you are going to get rid of, in order to satisfy some internal constraint of the software. Continue reading

Usability Means Well-Behaved, even when the User Isn’t

Users of a program found that sometimes, when they went to log in, they did not get a place to enter the username & password.  Instead of the normal login prompt, they got a blank screen, and it was completely impossible to login. Sounds like a bad bug that needs to be fixed immediately, but the development team response was even more surprising: this was the user’s fault! Continue reading

The Purpose of Error Reporting

Error messages are part of every user experience, but too often these messages are poor, cryptic, and insulting.   Too often programmers do a half-hearted attempt at writing error messages, mostly because they mistakenly assume that users will never see them.  Too often programmers misunderstand the potential that results from writing correct error message.  Error messages can be the key to usability.  Error messages can help train users, and guide administrator.  All you have to do is understand the purpose of error reporting. Continue reading