Question

GUI design techniques to enhance user experience

What techniques do you know\use to create user-friendly GUI ?

I can name following techniques that I find especially useful:

  • Non-blocking notifications (floating dialogs like in Firefox3 or Vista's pop-up messages in tray area)
  • Absence of "Save" button
    MS OneNote as an example.
    IM clients can save conversation history automatically
  • Integrated search
    Search not only through help files but rather make UI elements searchable.
    Vista made a good step toward such GUI.
    Scout addin Microsoft Office was a really great idea.
  • Context oriented UI (Ribbon bar in MS Office 2007)

Do you implement something like listed techniques in your software?

Edit:
As Ryan P mentioned, one of the best way to create usable app is to put yourself in user's place. I totally agree with it, but what I want to see in this topic is specific techniques (like those I mentioned above) rather than general recommendations.

 45  5891  45
1 Jan 1970

Solution

 32

If you do give the user a question, don't make it a yes/no question. Take the time to make a new form and put the verbs as choices like in mac.

For example:

 Would you like to save?    
     Yes        No

Should Be:

  Would you like to save?
    Save        Don't Save 

There is a more detailed explanation here.

2008-09-04