I guess the theory is that a list that starts displaying its results immediately will allow the user to get to what they’re looking for quicker. The problem is that most of the time this couldn’t be farther from the truth.
When you open this, you already know what you’re looking for. The list is sorted alphabetically, so you start to scroll down to the letter the game starts with. However the list only serves to frustrate because it doesn’t actually load alphabetically, so when you find the letter you’re surprised to find that your game isn’t listed. You’re not given any indication that the list is still loading, so is the game just not going to be listed? Or has the dialog simply not gotten around to loading it yet?
The fun continues when the game finally shows up. Now that you see the game listed you go to select it so you can move on, no need for the list to finish loading, right? Just as you go to click on the item you were looking for, it moves clear out of view since something was just added many items up somewhere you don’t see or care about. Thus begins a game of cat and mouse trying to find and select your game before it moves out of view again. You could just give up in frustration and just wait for the list to load, but since the only indication you have is less reliable than listening for popcorn to finish popping, it’s equally frustrating as the cat and mouse.
Worse still, this design tricks users into trying to find what they’re looking immediately for because there’s items in the list to look through. Our interactions with computers are very action-reaction oriented, we issue a command and wait for the computer to respond. With this list, the computer starts to respond immediately, so we’re prompted to issue our next command prematurely and no one likes being premature.
This experience is the same for the .NET tab of the Add Reference dialog for Visual Studio 2010, as well as that of the “Programs and Features” list of Windows Vista and 7. Someone, please tell me how this is preferable to simply waiting a second or two and then finding your item in a nice alphabetically sorted list. It usually takes no more time, and is significantly less frustrating. At the very least, provide some form of loading indicator so the user knows for sure when the least is complete. Otherwise you’re only pissing off your users and earning your place in my Hall of Shame.
