Teaching Gestures to Users of Touch Interfaces

iOS may be the fastest-growing operating system in history, and I believe it represents the future of mainstream computing. It won’t be long before most work done with computing devices will be done with touch interfaces. And for good reason: they radically simplify the human-computer interaction model, and make computing safer, simpler, more intuitive, and more reliable.

People love working with their iPads because the interface is radically simpler than a traditional WIMP system: only a single app is on the screen at any moment; many apps show only one view at a time; and most or all relevant actions/commands are immediately visible right on the screen at all times. This makes the system highly accessible and a pleasure to use — but there’s a downside. There are some workflows which require a lot of navigation; this navigation interrupts the user’s flow and forces them to pay attention to what is essentially irrelevant interstitial work, “computer administrative debris” (à la Tufte). Interestingly, iOS supports certain “advanced gestures” which circumvent these problems — but those gestures are not easily discoverable. I’ll describe some examples and then a way that iOS could make these gestures unobtrusively and easily discoverable.

This proposal is equally applicable to any touch interface; I’m only using iOS for these examples and illustrations because it’s the platform with which I’m most familiar.

Some Examples of Advanced Gestures

Switching Between Apps

Let’s say you’re composing a brilliant tweet in Tweetbot. To do so, however, you need to refer to a web page loaded in Safari. So you’re switching back and forth between Tweetbot and Safari, over and over again.

Most people would do this by pressing the home button to return to the home screen, then tapping the icon of the app they’re switching to — unless the two apps are on different pages of the home screen, in which case they’d press the home button, swipe N times to get to the right page, and then tap on the icon of the other app.

Fortunately, iOS includes a faster, simpler, more direct, and less distracting way to switch apps — two ways, if you’re using an iPad.

The approach that works on all iOS devices is to double-click the home button to display the multitasking bar. This raises the current app to show a bar at the bottom of the screen that displays recently used apps. The apps are sorted by the order in which they were most recently used, so it’s quick and easy to switch back and forth between two apps: you simply double-click on the home button and then tap the left-most app in the multitasking bar.

The iOS 6 multitasking bar on an iPhone 5
The iOS 6 multitasking bar on an iPhone 5

If you have an iPad (any model except the original iPad), you can turn on a feature named “Multitasking Gestures” in the Settings app. Once this setting is active, you can switch between apps quickly and fluidly by simply swiping left and right on the screen with four or five fingers. This is radically better than either of the other two methods — it makes multitasking on the iPad more of a pleasure than a chore.

iPad Four Finger Swipe Demo

Switching Between a Reference Email and a Draft Email

Another common case is needing to refer to an email while writing another one. This is similar to the prior example, in that you’re switching back and forth between two views, except this time both views are in the same app.

The only obvious way to do this requires a lot of navigation, and it’s quite a drag. To switch from writing a message to reviewing a message and back to writing a message, one needs to:

  1. Tap the “Cancel” button
  2. Tap “Save Draft”
  3. In the ideal case, the email to which you wish to refer is right there
  4. To return to your draft, you need to:
    1. Navigate out of the email you’re viewing, out of the mailbox you’re viewing, and into the “Drafts” mailbox
    2. Tap the draft email
To refer to the reference email again, you need to:
  1. Tap the “Cancel” button
  2. Tap “Save Draft”
  3. Navigate out of the “Drafts” mailbox and to the mailbox containing the reference email
  4. Tap the reference email
— that’s quite onerous, and it’s a huge amount of cognitive overhead.

Thankfully, iOS includes a great gesture for avoiding all that navigation. When you’re viewing a message and want to resume writing a draft email, all you need to do is tap-and-hold on the ever-present “Compose” button, and a list of your drafts pops up right there. Just tap on the draft you wish to resume writing, and it opens right up. When you want to refer to the reference email again, just close the draft and the reference email is right there — no navigation required.

Screenshot of the iOS 6 Drafts Selector on an iPhone 5
The iOS 6 Drafts Selector on an iPhone 5
Screenshot of the iOS 6 Drafts Popover on an iPad
The iOS 6 Drafts Popover on an iPad

Jumping Multiple Steps in Safari’s History

Let’s say you’ve tapped 5 or 6 links while browsing, and want to go back to where you started. Sure, you could just tap the back button over and over again, causing each intermediate page to load — and use unnecessary battery life and bandwidth. But if you tap-and-hold the back button, you’ll get a popover containing a list of the pages you’ve navigated through within that tab. Just tap the page you want and Safari will jump directly to it. (This also works with the forward button, if you’ve jumped back and then want to jump forward.)

Screenshot of the iOS 6 Safari Tab History Popover on iPad
iOS 6 Safari Tab History Popover on iPad

Re-opening an Accidentally Closed Browser Tab

It’s all too easy to accidentally close a browser tab in Safari on iPad. And it can be a pain to reopen the tab, if you don’t know the URL — you need to tap “+” to create a new tab, then navigate around in your history until you find the page, then tap it. And your browsing history from that tab is lost.

A better way to reopen that tab is to tap-and-hold “+” — you’ll see a popover containing a list of all recently closed tabs. Tap the tab you want and it’s reopened instantly — and not only does it reload the page you were last using, it also reloads the browsing history for that tab, so you can use the tap-and-hold technique on the back button to jump back in your session.

Screenshot of the Recently Closed Tabs Popover on iPad with iOS 6
The iOS 6 Recently Closed Tabs Popover on an iPad

Currently, this example applies only to iPad, as Safari in iOS 6 on iPhone doesn’t use tabs, but rather “pages” (an unfortunate overloaded name). I’m not sure whether this will change with iOS 7.

There are plenty of other examples in plenty of other apps — especially sophisticated productivity apps such as Apple’s iWork suite, or the Omni Group’s impressive apps — but hopefully these are sufficient to illustrate my point: that iOS and many iOS apps support powerful advanced gestures which enable a much easier, more fluid, and more efficient experience, but that none of them are easily discoverable. On to the proposed solution!

The Proposal

In a nutshell: the OS and apps should monitor the user’s behavior, and if they observe the user performing a task “the long way” for which an advanced gesture exists, they should display an unobtrusive notification to inform the user that there’s a faster, easier way to do what they’re doing. If the user taps on the notification, they should see a simple, direct, and visual popup which teaches the gesture.

Some Examples

Switching Between Apps

If the OS observes the user switching between apps by using the home button to go to the home screen, then it should display an unobtrusive notification at the top of the screen, like so:

Screenshot of iOS Four-finger Swipe Gesture Notification
iOS Four-finger Swipe Gesture Notification

If the user taps the notification, the OS would display a view which would teach the shortcut in a simple, direct, and visual way. Maybe it’d be some illustrations, maybe some animations — I’m not an expert in this sort of thing, and I’ll leave this up to those who are.

Jumping Multiple Steps in Safari’s History

If Safari observes the user tapping the “Back” button repeatedly, it should display an unobtrusive notification at the top of the screen, like so:

Screenshot of Safari History Jump Gesture Notification
Safari History Jump Gesture Notification

If the user taps the notification, the app would display a view… well, you get the idea.

I’d love to see Apple or Google implement this idea at the OS level and in their apps, and provide APIs for this approach, but in the meantime any app developer can add this to their apps right now.

Finally, my colleague Timothy Meaney has pointed out that this idea assumes that touch apps have already crossed the threshold of making powerful functionality accessible to a broad audience, and that the next challenge is for app developers to provide more thoughtful interactions to their users — to create apps which anticipate their users’ needs, support them towards their goals, and generally strive to delight their users by constantly helping and supporting them. This rings true for me and I appreciate Tim pointing it out.

Thanks for reading! I’d love to hear what you think of this idea, and especially if you try implementing it! Feel free to contact me via email or Twitter.