I’m old enough to remember the first Macintosh keyboard and the now-forgotten widespread consternation that it lacked cursor keys. At the time, critics and developers considered that lack to be as big a break with the past and obstacle to programming-as-we-know-it as the Mac’s strange, boxy mouse and bitmapped screen.
Eventually, initially guided by some examples from Apple (and eventually followed by actual published guidelines), along with boundless inventiveness from third-party developers, the point-and-click interface became accepted as the new programming-as-we-know-it paradigm. (Of course, cursor keys soon made their way back to the Mac keyboard, but that’s another story.)
We’re now just a few years into the touch-interface revolution instigated by the original iPhone. Once again, we’ve seen some programmers fail to adapt to both the limitations and the opportunities presented by the touch interface, while others have not only adopted Apple’s conventions gracefully, but have also expanded upon them in interesting and useful ways.
I was reminded of this a few days ago when, on a recommendation I saw flow by in my Twitter stream, I bought a photo-enhancement iOS app: Snapseed by Nik Software. Snapseed was an impulse purchase because I seldom bother with photo enhancement on my iPhone or iPad; for quick fixes, iPhoto on my Mac is often good enough, and, when it isn’t, I have more powerful image editing applications. Furthermore, the mouse and keyboard on my Mac make it much easier for me to home in on the parts of the image I want to change and to set an application’s various image adjustment controls precisely. But, hey, Snapseed was only $4.99, and the laudatory tweet had come from someone whose opinion I tend to trust, so why not?
Like many other photo-enhancement iOS apps (including a very nice one, Camera Plus Pro by TidBITS sponsor Global Delight), Snapseed offers a variety of separate enhancement features organized into groups. For example, Snapseed’s Details group provides filters for sharpening (edges) and structure (texture) enhancements, while its Black & White group not only removes an image’s color but also provides ways to adjust contrast, brightness, graininess, and other image characteristics. What sets Snapseed apart is its innovative interface techniques.
As a universal iOS app, Snapseed has separate interfaces for the iPhone/iPod touch and the iPad, but both use similar techniques for providing help, selecting tools, and manipulating those tools. Here are the interface techniques implemented in Snapseed that I found particularly innovative.
First, many apps commonly use an interface element known as a popover for offering options or tools: tap an icon and a panel appears with a list of options; tap the option, and the option goes into effect and the popover panel vanishes. This convention is familiar (it’s similar to drop-down menus on a Mac) and easy to use. However it has one notable drawback when screen space is limited: the popover requires a visible icon for the user to tap.
Snapseed circumvents this requirement by presenting tool choice via a swiping gesture: swipe up or down and a temporary option selection widget appears, from which you can choose an option by sliding your finger to it. The widget vanishes as soon as you lift your finger. No triggering icon is required; the widget appears only when you gesture for it.
Next, for those tools that change their intensity or characteristics in a linear way, such as adjusting contrast, brightness, or color cast, simple left or right swiping gestures are all that are needed to make changes.
In case you can’t remember how to access or operate various tools, Snapseed, by default, provides a Help overlay that appears whenever you choose a new group of tools. The overlay disappears as soon as you touch the screen, and it can be turned off once you have become familiar with the Snapseed way of doing things.
Finally, there’s a third technique that Snapseed implements for adjusting parts of an image: a movable “control point” that can be copied and pasted within an image. For example, to lighten up part of an image, you can place a control point on part of an image, adjust it to your liking, then hold down on it to get a popover that offers a copy option. Then, tap anywhere else on the image and choose Paste from the popover to put a copy of that point, along with its settings, at that location.
The range of the control point’s effect is adjusted by tapping the point to select it and then pinching to adjust its range. In most cases the control points are smart enough to limit their effects only to those parts of the image that resemble the area upon which the point is placed. For example, a control point can brighten up the backlit portion of an image without affecting the nearby brightly lit background: as you pinch, a red overlay indicates what parts of the image will, and won’t, be affected.
The interface techniques that the Snapseed developers have implemented are clever variations and expansions of the basic iOS gestural interface. They provide easy discoverability without imposing clutter, and are consistent enough among the various tool groups in the app to seem natural and obvious after very little time using them.
Like the early days of the Mac OS, iOS is seeing a creative period of interface exploration and expansion, led by third-party developers. Not all of those experiments will survive and be adopted by others, of course. But the interface designers at Nik Software have come up with a few that look like keepers.