Progressive disclosure - techniques are available now that you should be able to show the user the data they need to see when they need to see it (i.e. tooltips are no longer limited to text, we can make them look how we want them to look).
Highlighting - lots of techniques, non-traditional include offsetting, spotlighting
Mapping - should be so obvious what an element does that any other interpretation does not occur to the user
Physical location mapping to some kind of virtual location. Leverage conceptions of the real world
Design affordances - scissors, the thumb location is smaller than the finger one. In software, drag handles in the bottom right corner.
Entry points - get the user moving in the right direction at the beginning of an interaction. i.e. click here to begin on an empty from, arrows pointing to where they should be interacting, etc.
Constraint - prevent the user from doing something that is inappropriate or impossible at that time.
One of the most frustrating flaws is denying the user an action they should be able to perform (i.e. not enabling things appropriately). A good example is a slider, which sets a max and minimum, and could set increments.
Warnings and errors
Changes in status
Position the element giving feedback close to the item it is giving feedback on
Confirmation - asking too much dilutes the value of it. Reserve it for exceptional circumstances
Forgiveness (undo) - holding area for irreversible operations
Taking context and circumstances into account
Balancing design factors against one another
Design principles are guidelines
This trash can design on the left is from Juno, AK, where there are bears nearby. It would be bad design for New York city (as it would require one to use one hand to open it (putting down your briefcase in order to open it and throw away your coffee cup), as opposed to an open design that you just toss things into it, but is perfectly acceptable in Juno because no one wants to attract bears.
Good design vs bad design depends on context.
Don't be dogmatic in applying design principles - there is no one true way.
New conditions have made certain design principles more relevant - i.e. touch interfaces.
"Gorilla arm" - don't want the interface to be vertical if the user is going to be using them for very long
Form follows function
A hallmark of a design that matches the user needs is that it tends to have an elegant feel
This is an emergent property of good design, not an initial goal
If you start with elegance as your goal, it's easy to over-invest in cosmetics, and the elegance of "form follows function" is not about cosmetics
Application of Occam's Razor - choose the simplest design
Most Advanced Yet Acceptable
To make a difference with design, you need to push into new territory
Sometimes that means radically new and different designs, especially if the older designs were either bad to begin with or are now obsolete
The limiting factor is often what users can accept
If you get too advanced, users can become uncomfortable and wary
During periods of transition designs need to push into new territory, or shelf life may be too short.
If you don't get a certain level of change, inertia may become an issue due to familiarity with the old design.