I Can’t Even Tell
Some UIs are just so confounding, so defying of common sense that you can’t even guess what they were going for.

Courtesy of Fry’s online presence - outpost.com
- Enter “Palo Alto” in the City field.
- <Press TAB>.
- The screen redraws with the red message, “City modified to match zip code” except, since you didn’t yet enter the new zip code, it changes the city name back to what it was.
If you want to change the city, you have to edit the fields in reverse order.
Let’s take a look and see what’s wrong:
- The message is red, which looks like an error (it’s not).
- Display inertia - while programmers think in terms of “onclick,” “onfocus,” and “blur”, nobody else does. Interrupting flow in response to these events is confusing at best, alarming at worst.
- There’s a full page refresh that axes your keyboard focus, so when the page refreshes while I’m glancing at my numpad thinking I’m putting in my zip code, I’m filling “33322″ in the First Name field.
I’m taking a shot in the dark here when I guess that Fry’s is dealing with a lot of returns based off bad zip codes. Since you know where you live, if a strange city appears you’re more likely to notice that than the difference between 33322 and 33323.
The real solution is for the application to stop whining. In the case where I get it right, don’t tell me anything - take my order and be quiet. If the city name and zip don’t validate, are they close enough that the application can figure it out? The chance that I would get my city name wrong seem infinitesimal, unless this is the first time I’ve ever had to fill it out.
What’s surprising about all this is that I’m in the process of giving money to Fry’s. If there’s one “use case” that should be bulletproof, it’s the checkout process.
Unless of course, you’re not interested in making money.