The more often you use a piece of software, the more important it is that you should enjoy using it. For example, I use Emacs, Subversion and Mozilla Firefox pretty much every day, and I really do enjoy using them.
I use email frequently, but the only email client I’ve ever enjoyed using — actually, the only email client which doesn’t bug me — is Google Mail. Google Mail just gets things right. What things? Everything! The software doesn’t get in my way; I don’t spend ages sorting and filing emails, yet can always find the one I want; the interface is both clean and simple. And yet when you think about it, Google Mail is radically different from any other email client. Clearly, a lot of thought and careful design has gone into every feature, and it shows.
As a simple example, Google Mail gets holiday auto-responses right.
Recently, I was on holiday and unable to read email. I wanted anyone who sent me email to be politely informed I was away and unable to answer their message until my return. It took me just one click to reach the form I needed to fill in to set up my holiday auto-response. Another click confirmed that the auto-responder would behave itself — it wasn’t going to spam people who copied me on lots of emails, it wasn’t going to reply to mail reflectors — it would get things right. I filled in the subject and body of my auto-response, saved my changes. Job done.
What I really liked, though, was the fact that my “on-holiday” status was reflected immediately and prominently at the top of the front page of my Google Mail account. Meaning that, on my return from holiday it was immediately apparent that my auto-responder was still in effect — and it took just a single click to disable it. In so many other email clients it ends up being someone else who reminds you to turn off your auto-responder. Not the end of the world, but not what you want from software you use every day.