To deliver impressive GUIs, remember—users are humans, with needs such as comfort and a limit on their mental capacities. You should follow these guidelines:
- Make buttons and other common elements perform predictably (including responses such as pinch-to-zoom) so users can unconsciously use them everywhere. Form should follow function.
- Maintain high discoverability. Clearly label icons and include well-indicated affordances: e.g., shadows for buttons.
- Keep interfaces simple (with only elements that help serve users’ purposes) and create an “invisible” feel.
- Respect the user’s eye and attention regarding layout. Focus on hierarchy and readability:
- Use proper alignment. Typically choose edge (over center) alignment.
- Draw attention to key features using:
- Color, brightness and contrast. Avoid including colors or buttons excessively.
- Text via font sizes, bold type/weighting, italics, capitals and distance between letters. Users should pick up meanings just by scanning.
- Minimize the number of actions for performing tasks but focus on one chief function per page. Guide users by indicating preferred actions. Ease complex tasks by using progressive disclosure.
- Put controls near objects that users want to control. For example, a button to submit a form should be near the form.
- Keep users informed regarding system responses/actions with feedback.
- Use appropriate UI design patterns to help guide users and reduce burdens (e.g., pre-fill forms). Beware of using dark patterns, which include hard-to-see prefilled opt-in/opt-out checkboxes and sneaking items into users’ carts.
- Maintain brand consistency.
- Always provide next steps which users can deduce naturally, whatever their context.