John Gruber has a followup to his Apps of the Year, 2004 entry with an entry showing us what these apps have in common. Basically it takes at the very least three characteristics to even be considered in the running.

  • Produce great documentation (a lot of open source apps fail miserably at this)
  • Take scripting and extensibility seriously
  • Allow for a tabbed interface

Seems simple enough to me.

My list would be:

  • Give me what I need, nothing more, nothing less
  • Stick with the HUI guidelines set by the platform
  • Make it easy to install/uninstall