A very common thing on the web with forms is that you have a drop down with lots of options that gets used often. It's a very convenient little widget that is used a lot on the web.
I've been thinking about a possible way to make these a big more user friendly by pushing the most popular options towards the top. By doing so, most selects will require little scrolling. Obviously the implementation depends a lot on the application. As a good example, look at the two drop downs on http://www.xe.com/ucc/ where the most common choices (EUR and USD) appear at the very top of the list.
In many cases you can't reorder the options within the drop down because the order might be alphabetic or something like "Not at all, Not very, Fairly, Very". Suppose most people select "Fairly", it would still not make sense to reorder the options to be "Fairly, Not very, Not at all, Very". But, let's instead focus on those that can be reordered to help the user.
A very common one is the font-type-selection as seen in M$ Word and OpenOffice. You see the most common choices first and then follows the rest. Here's an example of this that does not learn to reorder itself.
A less common but equally useful type is that one where every selection of an item increases its position by one no matter how popular the one above is. To test that here's an example
Last but not least is my favorite. This one remembers the popularity of each item. The problem with example 2 above is that it can change the order of the drop down to rapidly, potentially making a very popular selection pushed down. With this example, every selection is remembered so that the very popular ones can't so easily be moved. Try the last example
Conclusion None I'm afraid. You have to decide for yourself. The reason I've written this is to get feedback. What I'm interested in is what usability experts think. One has to bare in mind that usability isn't just about the first-time-use experience. It's also about the long term usability where people are using a service perhaps as much as several times per day.
The third one is potentially very interesting to me because I might use it for the "filter options" in the IssueTrackerProduct. Currently, in the IssueTrackerProduct, the second example is being used to keep track of which section is most popular when you add a new issue
Write your comments below or email me.
Very nice roundup of choices. I think that the repetition of popular items in example 1 is already widely in use, so unless visitors are *complete* beginners to computers, they won't get confused.
Also on applications where I have to repeatedly use a menu, anything that moves around on the menu is breaking my workflow a lot, since I tend to navigate to the right spot on the menu by approximate position, then zoom in and actually read the words.
Your point is valid but example 1 sucks if the list of options is very small. Imagine if the options were: Europe, North America, South America, Australia and Asian. The it would be silly to pick out the 3 most common.
Right. With that small selection I would like my list just like that, fixed and all. After a couple of uses I would find the right entry blindfolded anyway, so no use to change the order :-)
Having menu items change position (options 2 & 3) seems like a bad thing to me. It works against muscle memory (the items aren't where you last used them), and they also end up in a strange order.
Option 1, where you have a recently used / frequently used area seems much better, as the main list remains unchanged and sensibly ordered.
I would even be tempted to put the popular items into a submenu with a title like "popular choices".
This would reduce the noise in the main list to a minimum, and also make it clearer to the user why these items are duplicated in a second place. It also allows your popular items list to be a bit bigger. Slightly harder to get to the popular items of course, as submenus can be fiddly, but if the submenu is first in the menu, then it almost pops itself open.