Design Decision: Tags

Sometimes a slicker ajax-y UI is not the best choice. For instance, every LeadsOnRails contact can be tagged with an unlimitted number of tags. To add a tag, users either enter a new one in a text box or select an existing one from a drop-down box. An alternative design would have been to use auto-complete to show users existing tags as they start to type in the text box.

Auto-complete is a great design choice when it does not matter that two people might use slightly different spelling of the same thing. Auto-complete is a great choice when it is used as a convenience to prevent users from, for example, entering their own name over and over. But with tags the point is tag similar items with the same tags. So it is important that users easily see how others have previously tagged items.

Tags are so free-form that it is easy to forget what existing tags are already entered. With auto-complete prompts, users have to remember their existing tag choices. With an old-fashioned drop-down menu, users can simply select from a list. Certainly, sometimes that list gets very long. Yet it is sorted in alphabetical order and has not been unmanageable to navigate.

Just one example where we need to be careful when designing applications to not always take advantage of ajax interfaces.