Category Archives: GNOME

UI Design Mistakes

A common mistake of user interface design is to come up with a clever solution to a common user problem, when you should work out a way to remove that problem in the first place.

My example here is the password entry dialog, in particular the GNOME Screensaver one.

The common user problem is that their password is rejected, even when typed perfectly, because the Caps Lock key is on.

The clever solution was to display in the dialog that the Caps Lock key was on, and thus hinting to the user why it might have been rejected.

The better solution would be to ignore the state of Caps Lock in all password entry dialogs, so it doesn’t matter whether it’s on or off.

Online Desktop

Havoc’s keynote at GUADEC was extremely interesting, especially for how it polarised the people present.

Several people seemed very upset with the notion that f-spot should be replaced by flickr, but I think that was a problem with the way that Havoc presented the message, and not the underlying idea.

Instead consider f-spot and flickr as sharing the same collection of data, and being two different ways to view and manage it; with changes from one appearing in the other. The mechanism isn’t important.

Consider the following:

  • While out and about, I take a picture with my camera phone.
  • On coming home, the phone is within bluetooth range of my laptop (with both enabled).
  • The laptop sees the new picture, so announces the availability of the new picture.
  • f-spot is subscribed to those announcements, and causes the picture to be copied into my local f-spot library, with the meta-data adjusted to indicate the local cache (as well as the origin).
  • flickr is also subscribed, so the picture is automatically uploaded to my flickr account.
  • At some point in the past, a friend on Facebook changed their mobile number; this was detected and the change announced.
  • e-d-s was subscribed, so automatically adjusted my contacts.
  • And my phone sync service is subscribed, so now my phone is in range, its contact list is updated too.

Now, isn’t that cool?