What makes great software?

Posted by VirtuosiMedia on Stack Overflow See other posts from Stack Overflow or by VirtuosiMedia
Published on 2010-05-18T22:41:41Z Indexed on 2010/05/18 22:50 UTC
Read the original article Hit count: 251

From the perspective of an end user, what makes a software great rather than just good or functional? What are some fundamental principles that can shift the way a software is used and perceived? What are some of the little finishing touches that help put an application over the top?

I'm in the later stages of developing a web app and I'm looking for ideas or concepts that I may have missed. If you have specific examples of software or apps that you absolutely love, please share the reasons or features that make it special. Keep in mind that I'm looking for examples that directly affect the end user, but not necessarily just UI suggestions.

Here are some of the principles and little touches I'm trying to use:

  • Keep the UI as simple as possible. Remove absolutely everything that isn't necessary.
  • Use progressive disclosure when more information can be needed sometimes but isn't needed all the time.
  • Provide inline help and useful error messages.
  • Verbs on buttons wherever possible.
  • Make anything that's clickable obvious.
  • Fast, responsive UI.
  • Accessibility (this is a work in progress).
  • Reusable UI patterns. Once a user learns a skill, they will be able to use it in multiple places.
  • Intelligent default settings.
  • Auto-focusing forms when filling out the form is the primary action to be taken on the page.
  • Clear metaphors (like tabs) and headings indicating location within the app.
  • Automating repetitive tasks (with the ability to disable the automation).
  • Use standardized or accepted metaphors for icons (like an "x" for delete).
  • Larger text sizes for improved readability.
  • High contrast so that each section is distinct.
  • Making sure that it's obvious on every page what the user is supposed to do by establishing a clear information hierarchy and drawing the eye to the call to action.
  • Most deletions can be undone.
  • Discoverability - Make it easy to learn how to do new tasks.
  • Group similar elements together.

© Stack Overflow or respective owner

Related posts about software

Related posts about user-interface