Reducing User Interface Friction

I’ve also found, from my own experience, that if you introduce new paradigms other than:

  1. What people would naturally be used to
  2. What people have learned to accept over the years (e.g. retyping their password, saying .com at the end of a domain)

or break people’s expectations from 1) and 2), then many people will be frustrated, or scared. Much more than I thought. I consider myself to be a very aware user interface developer. In fact, designing human interfaces is one of my favorite parts of coding.

Once, I had made a program called Tabbed, which put tabs on the bottom of internet explorer windows and explorer windows, and enabled people to browse their files and websites in multiple tabs, just like with Firefox. I felt that was sorely needed by IE users at the time.

People liked the program. However, when it came time to register (it expired after 7 days), they were directed to the website I set up, tabbed.org, where they were guided through a minimalist and dead simple signup process. (Minimalist also allowed me to make the site quickly in php.)

Long story short, the idea was for them to create a username and password before paying for the program. This would enable them to use the program on ANY COMPUTER in ANY LIBRARY or at their company, after they had registered it (the program was extremely lightweight and required no installation on any windows platform, so it could be used in almost any environment – that was the point).

Well, even though I had planned these benefits for those who register, people didn’t get it. They also found it very weird that the program sent no confirmation email to them, and simply proclaimed THANK YOU FOR REGISTERING YOUR USERNAME AND PASSWORD on the site. Long story short, I got one guy ranting on download.com twice under different nicknames that the program is good “but beware! Cheap or cheat? It may cheat you of your money!” even though he had never registered it himself. Well after that almost no one downloaded the program (another 100 people over the next 2 months).

Long story short,

  1. Don’t break user expectations or introduce new paradigms without properly explaining to the users what’s going on!

  2. I’m writing a much better tabbed program now. Anyone want to help/join me? Email gregory@gregory.net :slight_smile:

I’m suprised no-one has mentioned gtalk and gmail yet. Like most good IM clients gtalk can log conversations. But it does it in an infinately more friendly way - it can place conversations in your inbox as though it were a brief flurry of email exchange (using gmails conversation threading concepts). That means that, should you need to find something you said to somebody at sometime using either email or IM you just have to search through your inbox to find it. It makes IM less transient.

“That single input box on the Google homepage starts to look more and more like an optimal user experience. It might be unrealistic to reduce your application’s UI to a single text box”

Didn’t the above just describe the DOS prompt? The single text box is easy to use IF YOU KNOW HOW TO USE IT; when there are many options it’s always better to have different boxes for different questions.

:slight_smile:

Hmm… the email example seems deliberately contrived to make the point.
Especially the use of the keyboard rather than the mouse (in my experience most novice users will use the mouse for almost everything).

Here is how I send email via my chosen web-based email:

  1. Right-click on tray notifier and choose “Compose a new email”
  2. double click recipient’s name on list
  3. click in body area
  4. type message.
  5. press Send

(That is via FastMail.fm: http://www.fastmail.fm/mail/?STKI=50734 but I imagine it is roughly the same with most modern web-based email).

I really like geni here.
www.geni.com
nothing to type in. just start. afterwards you can register what you did by entering your mail.

The IM and email comparison is not on an equal basis. The number of steps for each relates (roughly) to the purpose each addresses. IM is quick, instantaneous and thus should involve few steps; the task is very straightforward. Email is a more in-depth task, often has more permanence than IM. But there are times when we use email when IM would be more efficient.

I really like Gmail because it has less friction than, say, Outlook. I also love Google Calendar’s simple item entry. One click, enter appointment and time (haircut 12pm), and the calendar will automatically interpret the time into an actual appointment time, same as Backpack. Nice!

That’s why I hate forms that have a dozen dropdowns with Yes/No type answers instead of radio buttons. It may not seem like a lot (two clicks for a dropdown vs one for a radio button) but that’s 12 extra clicks when you add it up!

I’d prefer a more keyboard* oriented interface for any task that requires the use of keyboard*. *single method interface

Email or IM task should be entirely keyboard driven since most of the input will be characters, not mouse input. Alternative to keyboard should be voice/pen. Obviously when using voice the entire task should be voice based with no pen/mouse/keyboard.

This I think is the biggest failing of Windows UI since everything you do requires you to switch between mouse and keyboard constantly.

To accommodate this without entirely rewriting Windows Microsoft could start from the Start key such that: Press Start key - list of icons are shown: email, note, play, etc - intellisense style typing of the command - type e, press TAB - command “email” matched, depending on the program, either launch the app or expand syntax window that allows you to continue like: e(INTELLISENSE-email)s(INTELLISENSE-send)TABj(INTELLISENSE-jeff@bla.bla)TABsubjectTAB and so on.

So sort of Intellisense 2nd generation and now behind the Start key. The current behaviour where it start searching the index for everything including mails and so on at the moment you press the first key is similar to VB background compilation - whole lot of cycles and disk IO and you get 99.9% noise in the results.

Expanding this same interface to voice or pen input would be really easy too so you’d have a constant single interface and simple API to build it on.

Tantek’s example is silly. He’s smart, but here is trying to make a point, but he loses credibility. He enumerated all clicks and keys for one example, but not for the other…

In KDE 4, you should be able to just go to the Communicate menu, then pick the person’s name, then a menu pops up asking “Send this person an email” or “IM this person” or something. Much more streamlined.

I know…I completely agree with you that a good design goes a long way while a bad UI can really take your happiness away.

After reading your piece i checked out Reddit and…what a relief!!!

Great article.

You security word for entering this comment shows a good deal about friction. The maker of this page has been forced to add friction to the comment entering process for security reasons, but has minimized this friction by making the security word easily repeatable and legible. Gmail signup does the same.

I hate those pages where the security words are hardly recoqnisable by humans as well. If a human cannot enter it; who is supposed to sign up?

It really boils down to the way you’re used to use your computer. I send an e-mail this way (Microsoft Outlook 2007, but is the same for any other e-mail client I know of):

  1. window-key+R type mailto: enter - this is all too fast not to be considered just 1 step…
  2. 2-3 characters for name
  3. then quick tab thrice (I have the bcc field always visible, and it’s really just one fast step)
  4. 1-3 words in the subject (do you really have to think about it?..)
  5. quick tab to body + write whatever you want + quick CTRL+ENTER - gone!

To reply:

  1. I’m already reading the e-mail I want to reply to (don’t leave that for later!) so the first step is just to hit CTRL+R
  2. type your answer (simplified signature for replies and forwards is already there) and hit CTRL+ENTER - it’s done!

If it’s something like Hi, just to remind you to send me that pic you took of us last weekend. Cheers! (signature is already there), the whole process takes really just 10 seconds…

Plus, I find IM so distracting I make a huge effort to keep that list small and turn down many people. If you really want to get things done at work, you can’t use it too much (same with Twitter).

Of course there are those times (5-6 a day, at least), when IM becomes invaluable, but e-mail is still a VERY valuable and pratical tool.

Cheers!

Consider also the context for the use of email and IM and event the phone for business communications rather than personal communications.

“New” e-Mail’s are often replies to old subjects and the recipient has to determine if the subject line is relevant to the current message. And people forget that they actually have to explain and include details rather or else a flurry of small, inefficient messages go back and forth… which leads to IM.

IM is probably the worst “tool” for business use. Totally distracting mini-messages that may or may not include an instant response from the other end; thus sucking your time instead of allowing you to focus on what you really need to do (in most of our cases this is to program!).

A few years ago I was often reminded by a former colleague that 20 odd years ago you would have your secretary take your draft message and formally type it out before you reviewed it and it was then mailed. A response wasn’t expected for at least a week. It sounds inefficient but at least people would take the time to plan and think about what is being said. Something we are all guilty of being too impatient for these days.

Welcome to the age of instant communications. I’m still waiting on the content to catch up :wink:

Regarding Reddits simple log in screen. This works good on smaller not-for-profit web sites, but on a lot of the stuff I work with, the more data we can gather from a user, the more money that user is worth to us.

Then there is also the concept of combatting fraud. Or spam, take Captcha’s…an annoying step, but greatly effective.

Something I do in my day job is optimization testing, checking the conversion rates of different pages compared to other content. It would be a very interesting study to have a complex sign up page, and a very simple one, and A/B test them at an even 50% split of visitors.

My guess is that the actual conversation rate would not be very different, if the quality of the site itself was up to par.

I’ve been reading this blog for a while not Jeff. Good job :slight_smile: