Rules From a User to Software Developers

Nothing special, just a bunch of things that have been bugging me lately.

  1. Blue makes for a great icon color and everyone else uses it — be the exception, not the rule.
  2. Make the name of your app/service something that a normal person can pronounce, on first try, without help.
  3. Spell the name like a normal person. Twitter works because it makes logical sense, spelled as it sounds. Tumblr is hard to explain to a non-tech user — tell your Mom to go to and see what she types in. I don’t want to remember which consonant you doubled or which vowel you dropped. Things like Digg work because you can tell people: “it has a double g” — stray from the basics too far and your service/app will confuse people.
  4. Ditto for your URL. 37signals couldn’t get, so they chose — I can remember that and so can most people, more importantly I can say that: basecamp “H-Q” dot com. Don’t make it hard on the user.
  5. If you are going to change a standard UI behavior, you better have good reason for it — looking cool doesn’t count.
  6. People look for save buttons, if you don’t need your users to worry about saving — tell them that.
  7. In fact if you change anything that a user would normally press button to do, best to tell the users that you don’t have the button and why.
  8. If I am putting data into your app/service I damned well better be able to get it back out with a click — in some sort of useable format.
  9. If you can’t come up with an innovative user interface — stick with generally accepted standards. ‘Unique’ is never a good word when a person is referring to your UI.
  10. Beta testing is free, users understand this — but please charge for your product once you launch, that is, unless you have another reliable income stream setup already (e.g. a trust fund).
  11. No one has a perfect version 1.0 product, just make it stable.
  12. Look at what other apps do wrong, more than you look at what they do right — fill the voids, don’t clutter the market.
  13. If you are replicating a stand alone product (e.g. Calculators) try to think about how it is best implemented on the particular interface you are building for — don’t focus on directly copying the device. (e.g. Soulver’s reinvention of the calculator UI)
Originally posted for members on: April 7, 2011
Follow along on RSS,, or Twitter.
~I would appreciate it if you considered becoming a member.~