Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

Is it a good practice to give keyboard shortcuts to web apps that allows a user to do tasks that are repeated often. In my personal experience, I've rarely used keyboard shortcuts offered by GMail to do anything. So I was wondering, whether keyboard shortcuts in a web app are as effective as the ones on a desktop app?

Are there any known research which shows its usage/ effectiveness etc?

share|improve this question

3 Answers 3

up vote 18 down vote accepted
+50

In general, yes, keyboard shortcuts have been shown to be effective. Some research suggests (1) that having keyboard shortcuts in a web app improves revisitation. In general, keyboard shortcuts enable power user activity. Keyboard shortcuts also improve accessibility. (2)

You also have the evidence of what the major players in the field are doing (i.e., GMail supports keyboard shortcuts). There are some drawbacks, however - shortcuts are still not a common practice and sometimes they can override common system shortcuts.

Edit: I found an interesting article about using common web applications with no mouse. It's not research quality, but some of the observations are interesting:

Some apps have really intuitive shortcuts that eventually become like reflexes, and some apps require mouse maneuvers that are simply repetitive and painful...I was also annoyed at the quirks I found at the margins, and a bit dismayed at the seeming trend toward modern, minimalist web sites--with almost not keyboard functionality. There are programmers that can do all their work in a terminal, or an editor like Vim, and never need for a cursor. For the rest of us, cutting-edge webapps and software, and our personal mixes of productivity tools, leaves us halfway between two distinct systems of screen navigation.

(1): Cockburn, Andy, et al. Improving Web page revisitation: Analysis, design, and evaluation. Department of Computer Science & Software Engineering, University of Canterbury, 2002.

(2): Thatcher, Jim, Cynthia Waddell, and Michael Burks. Constructing accessible web sites. Vol. 34. Birmingham: Glasshaus, 2002.

share|improve this answer
    
I agree with your answer. But I read the paper (1) and could not find the a reference to keyboard shorts in the context of this question. The paper talks about Back and forward being mapped to a keyboard shortcut, and their usage being a factor in user retention. Am I missing something here? –  edocetirwi Apr 24 '13 at 20:01
    
+1 for the UsabilityPost link. –  edocetirwi Apr 24 '13 at 20:05
1  
The link is to a survey paper summarizing a bunch of research. Back and forward may be useful in a broad sense but they still improve revisitation when enabled as keyboard shortcuts. Let me see if I can dig up a more specific reference (this one came out of my annotated bibliography)... –  Joshua Barron Apr 24 '13 at 20:06

Keyboard shortcuts are most often used by 'power users' as they take time to learn, and unless you use the software a lot, you are unlikely to gain any benefit from it.

So most users will likely not want or need keyboard shortcuts, but those that do are usually your early adopters and make up the group that is (arguably) most critical to initial success. It's not very difficult to add keyboard shortcuts, but it has a big upside, so I would strongly suggest adding them.


For the record, I don't touch my mouse when using gmail, and wouldn't be nearly as productive if there weren't keyboard shortcuts.

share|improve this answer

As users become more proficient, you want them to keep using your service, not start looking for something better and faster. Keyboard shortcuts allow frequent users to become more proficient in your application.

While the mouse is easy to use and a mouse base GUI is easy to learn to use, it is not perfect. One challenge of the mouse interface is that it requires accurate motor skills for placing the mouse of (usually) small targets. Because the mouse is free to move anywhere, these motor skills cannot be learned except for hitting targets in the four corners of the screen (they're of "infinite size" per Fitts law).

When the mouse was introduced, there were many opponents who felt that productivity would suffer. Productivity is of course also influenced by the amount of errors made by the user, and GUI's have proven to be successful in reducing errors. Still, power users can become incredibly efficient using only a keyboard.

A keyboard interface's main challenge is remembering the combinations. Since the keys are in fixed positions, one can learn to hit the right one without looking. An expert user, given time, will be able to remember the shortcuts. I.e. you can learn to be fast and efficient with the keyboard, but it's much more difficult to become better at using a mouse.

Expert users of your system will have their error rate reduced by experience and it's normal for them to want to become faster and more efficient at using your system. Especially when your application requires a lot text input, constant switching between mouse and keyboard seriously hinders your (sense of) efficiency. One reason for the design of the rubber mouse-"dot" in between the keys of a laptop keyboard (still commonly found in Thinkpads) was to reduce the time required for making this switch. Not having to switch "modes" at all would be even better.

See also http://www.ncbi.nlm.nih.gov/pmc/articles/PMC61470/. Google says they've found it useful and they have the data to prove it I'm sure. Taken from UX.SE: http://webaim.org/techniques/keyboard/accesskey and http://konigi.com/notebook/shneidermans-eight-golden-rules-interface-design/: "As the frequency of use increases, so do the user's desires to reduce the number of interactions and to increase the pace of interaction"

Personal anecdotal "evidence": my manual therapist absolutely flies through the administration GUI that they use. It's been the same for decades so he's had time to learn, and he doesn't even give the machine enough time to render each screen as he's hitting the commands on the keyboard.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.