According to Jakob Nielsen, these are the 10 biggest violators of standard usability in web apps, but I think they are true for all web design (and design in general):
- Non-standard interface controls - use what your users expect to see!
- Inconsistency in the way things work, appear, and are labeled - make buttons appear in consistent places, call things by the same name, just choose a system and use it throughout.
- Not providing affordances that give people visual clues about what they can do with an object - The Nielsen/Norman group are big into affordances - clues that indicate simply by their appearance, what you should do to interact with the widget, like a metal plate on a door meaning push here or a grippy appearance in the bottom right of an application window that indicates you can resize.
- Not giving feedback about what is happening - if something takes a long time, give the user some indication that you're processing their request - otherwise they might think the site is frozen.
- Bad error messages that don't tell what went wrong and how to fix it - even worse, NO error message at all!
- Asking for the same information twice - try to make your forms smart enough to populate information, and use single sign-on throughout the site.
- Not providing defaults - especially useful for the newbie who has no idea what to choose - help them out!
- Dumping users into the app without giving them an idea of how it works - always thoughtful to include a "start here" section.
- Not indicating how collected information will be used - it's about trust.
- Offering system-centric features that reflect the system's internal view rather than the users - just because something is easier to engineer doesn't mean it will make sense to the user. Always design from the end user's perspective.
And for good luck...
- Reset buttons on web forms - don't you hate those? I know I always press that button by mistake. If you must insist on having such a function, call it "clear all" or something that will really indicate to the user what the result will be if she presses it.