Settings

Theme

Lessons learned with 3D Touch

engineering.instagram.com

44 points by mikeyk 10 years ago · 31 comments

Reader

danso 10 years ago

A. Great guide, and thanks to Instagram for doing a writeup of the new API.

B. I don't have a new iOS device, but hearing about 3D touch makes me immediately think of right-click, and how Apple traditionally eschewed such an interaction. Or at least made it difficult with one-button mice.

This comment from the OP was particularly interesting:

> For Instagram, 3D Touch is much more than a 2015 version of the “right click”. The interaction adds another level of depth and carries a different intent. You aren’t yet committed to navigating to the content, but it's clear that you are interested. With this in mind, Peek and Pop gives you a glimpse of what lies ahead and lets you quickly back out to continue browsing.

Isn't a "3D Touch" a physically more demanding action than just a traditional tap? Why should the former be associated with a "quick peek" and the latter with a committed selection, rather than vice versa? (Besides the fact that 3D touch isn't yet available to the majority of iOS users?). Not a criticism of Instagram's decision here, just funny how things can seem counter-intuitive in the written description of them. Though in practice, it makes sense...a deep-click to preview, then a release to back out of the modal, is easier than a single-click to preview, than another single click to close the modal.

In a traditional OS interface, a single-click was used to signify a non-committal selection, and a double-click signified action. And that makes more sense as a double-click, like a "3D touch", takes more time and physical pressure. Of course the problem with a double-click is that double-click speeds among users can vary quite drastically, resulting in false positives and negatives. Will 3D touch mitigate these issues or fall into the same trap? Again, haven't experienced it but everytime I hear of the description of 3D touch, it doesn't sound much different than "click-and-hold"...which more or less worked OK in such apps as Kindle on IOS (for highlighting).

Is there a distinction between a traditional click-and-hold, versus a singular 3D deep click, and then a 3D-deep-click-and-hold? Seems like there could be more ambiguity there than there was in the slow-single-clicks vs double-click problem.

  • monkey_slap 10 years ago

    > Isn't a "3D Touch" a physically more demanding action than just a traditional tap? Why should the former be associated with a "quick peek" and the latter with a committed selection, rather than vice versa?

    Physically, it is. You use more energy to activate it. But after using it for a while, the real benefit comes from browsing a list of stuff by only peeking and then backing out. You can consume a ton of thumbnails much, much faster since you don't have to reach the back button or swipe to go back. Instead, you just let go of the screen and it returns to where you were.

    I actually really like your analogy of single-click and double-click. 3D touch sort of fills the single-click void.

    Avoiding the trap is a real issue. 3D Touch should absolutely not be applied to every single element in every single interface. Challenge is how do you teach someone what can use a 3D Touch and what can't? Not sure we have the answer yet.

    Full disclosure, I work on this at Instagram and wrote the post.

  • robinson7d 10 years ago

    The difference that I see between 3D touch and right click is that one adds functionality to the same input mechanism, and the other adds a new button. Assuming that every action can be done with only standard (non-3D) touches, or only left click, a nontechnical user navigating an app is basically simplified into:

    - Touch screen users use the app, and never/worry know the shortcuts that they're missing,

    - Mouse (w/ two buttons) users first wonder which button the have to use, then learn to use the left one. They stick to clicking that leftmost button, but occasionally look, confused, at that other button.

    (Ignoring power users with the assumption that they get used to either.)

    On the other hand (as a counter-point against my own thesis), I've never noticed them shying from cmd, ctrl, alt, fn buttons on keyboard, which seem to present the same issue. Perhaps that's just because keyboards have so many keys already?

  • threeseed 10 years ago

    > Why should the former be associated with a "quick peek" and the latter with a committed selection, rather than vice versa?

    So you think Apple et al should completely upend the entire interaction model of iOS i.e. make clicks force touches and vice versa. That's an interesting take on introducing a new input method.

    > Seems like there could be more ambiguity there than there was in the slow-single-clicks vs double-click problem.

    One of the commentators is right. You really need to use the feature.

    There is very little ambiguity when you try it especially when the haptic feedback reinforces your action.

  • conradev 10 years ago

    > Why should the former be associated with a "quick peek" and the latter with a committed selection, rather than vice versa?

    That particular interaction was defined by Apple and Instagram is merely implementing it. Not implying that "because Apple created it, then it must be correct", just clarifying the source.

  • eevilspock 10 years ago

    That's a lot of premature analysis and questioning given you haven't even physically tried 3D touch and have no real basis for your assumption that it is more demanding.

    • danso 10 years ago

      Maybe, but I'm a current iOS user and I've tried the new Macbook's Force Touch, which AFAIK has the same basic concept of pressure-sensitive actions. What nuances of 3D Touch do you think aren't easy to anticipate without actually trying it on a new iPhone?

      • majormajor 10 years ago

        The second levels are pretty similar - push harder than you would normally, pushing "through" your usual action, get haptic feedback, something else happens. One difference that helps discoverability, though, is that 3D touch for stuff like app shortcuts and "live photo" replays has UI-based feedback to tell you there's more if you push harder, whereas the second level push on the MacBook trackpad feels less rewarding to experiment with (or maybe that's just a function of it being used far less in OS X than in iOS).

      • tcdent 10 years ago

        Yes, there are nuances that most people, myself included, don't understand because we have not used it extensively. This is human interaction with physical objects; there are literally infinite possible nuances.

        It doesn't take much effort to look around and see people comparing this to a long press and totally missing the point. I think the pace of Apple's marketing video confused many. So, again, first-hand experience is necessary for me to take any assessment seriously.

      • threeseed 10 years ago

        3D Touch is completely different to the MacBook's Force Touch.

        It's the combination of (a) the effect of pushing through the screen, (b) the haptic feedback when you do so and (c) the way the UI responds to it i.e. by blurring the screen.

        Your argument is akin to saying you can appreciate music by reading notes on a piece of paper. Physical nuances can rarely be explained in words.

  • wingerlang 10 years ago

    A normal tap would require a second tap to remove the peeked view. 3D touch solves this.

monkey_slap 10 years ago

I'm the engineer at Instagram who wrote and worked on this. Available to answer any questions you might have!

  • julien_c 10 years ago

    Hi! Thanks for sharing.

    I'm looking into implementing Peek and Pop into my app as well. One thing that was not clear from your article was, do you use two different View Controllers for Peek and Pop (as the Peek VC is way simpler, though functionally related to the Pop one)?

    From the Apple documentation this looked like it was meant to be one and the same VC (though displayed in a "responsive" way).

    FYI, I've asked the same question on the dev forum here: https://forums.developer.apple.com/thread/21954

    Cheers!

emehrkay 10 years ago

Someone wrote up an example in Javascript. It is fairly simple, the event object has a force member which seems to range from 0-1.

This should be a standard, it really does change the way touch devices are used. I'm starting to dislike apps that don't have the "peek/pop" functionality (Instagram is the third party app that I use that has implemented it)

https://github.com/freinbichler/3d-touch

melling 10 years ago

Here are some blogs on using 3D Touch in Swift: http://www.h4labs.com/dev/ios/swift.html?q=3d+touch&age=90

  • happyscrappy 10 years ago

    Thank you. The cocoa one where you utilize raw force values from a user's touches on a progress bar is great.

phodo 10 years ago

Nice writeup. I'm glad we have moved beyond skeumorphism, because a skeumorphic peek and pop would have been disastrous (like the 'curl up' transition of yesteryear, seen in apps like maps). The current interaction, motion and visual models are clean and fast.

guelo 10 years ago

Android started out with a long-press gesture being prominent throughout the platform but it was eventually deprecated because designers felt that it wasn't very discoverable by users. It's interesting to see Apple going in the other direction, but I'm not sure discoverability will be much better. One of the problems is that even if the majority of apps implement the gesture action consistently it's still very annoying when you come across the random app that doesn't implement it and your 3d-touches are ignored. That forces the user to memorize which apps in which situations obey the gesture which increases the cognitive load.

  • nacs 10 years ago

    Long-press has existed on iOS for a long time as well (deleting apps from your homescreen is an example).

    "3d touch" works and feels different because of the feedback you get via vibrations and the fact that it feels like you're actually pushing the whole screen down. It's hard to explain but feels natural when you use it.

    • guelo 10 years ago

      Feedback doesn't improve discoverability. Apple will try to guide developers as to when and where they should implement the gesture. But not all developers will do it consistently so users will always be guessing if the gesture will do anything.

      • happyscrappy 10 years ago

        Apple is fairly strict on developers when integrating new features and the gesture is simple with instant feedback.

  • ksk 10 years ago

    You're talking about a tiny sliver of people who are savvy enough to try out this stuff. Most people I know never "try out stuff" when it comes to computers or phones or any other sufficiently complex electronic device. Heck, there is no desire to explore the interface as it exists now. Sure, if you show them some new feature, they might go - that's cool, and never think about it again. They see these things as simple patterns - To do this operation I do that and that's that. And whats interesting is this applies to highly intelligent people. I work with scientists who are extremely intelligent people, and they have trouble with email or installing software.

seba_dos1 10 years ago

These marketing names get sillier and sillier. Pretty much every resistive touchscreen was already "3D" years ago.

  • sozerberk 10 years ago

    No, actually resistive touchscreen is not 3D touch at all. You cannot do multi touch with resistive touchscreens; they don't respond to slight touches. They are just 2 dimensional screens activated by pressure. I agree that 3D touch is not the best name but this is because everybody tends to name everything 3D. In this case, it is very good name because it adds the 3rd dimension to the devices with 2 dimensional screens. Swipe actions are all in 2 dimension (x and y-axis) and 3D touch adds the z-axis (only positive or negative, though).

    • galvan 10 years ago

      I don't think the OC was referring to multitouch, but rather how resistive touchscreens can measure different levels of pressure applied to them. For example, I have a Nokia N900 with a resistive touchscreen that I can draw with, pressing harder for a thick stroke and lightly for a thin one.

      • seba_dos1 10 years ago

        Exactly; however, if we're on it - it's a myth that multitouch is not possible on resistive screens. There exist resistive screens that support up to 10 touch points, and two-point gestures (swipe, pinch) without exact coordinates are very easy to get on most resistive screens.

  • threeseed 10 years ago

    The only thing silly are people such as yourself who have a problem with naming new concepts.

    What do you expect Apple to call it ? Pressure sensitive input method with haptic feedback ?

    You really think the average punter on the street is going to remember that.

    • seba_dos1 10 years ago

      When you lend your phone to my mom and she asks how to do something, will you say "just 3D touch that" to her?

      The name is just a silly attempt to create a hype, "firm press" or something similar would be just fine. But yeah, it wouldn't pretend that it's a "new concept" then. It's just like it was with "retina" - my phone had "retina" screen years before Apple started to use that word.

MaysonL 10 years ago

Am I correct in thinking that "3D Touch" is the first thing that Apple has ever brought out that wasn't a part of Xerox PARC's "Office of the Future" back in the 70's?

  • Someone 10 years ago

    No. To mention a few, Xerox had a verb-object interface (you selected 'Copy', selected what to copy and then where to copy it), not the object-verb one, didn't have the concept of dragging, didn't automatically repaint partially uncovered Windows, didn't have a laptop with a keyboard that's close to the screen so that you can use your palms to prevent it from falling from your lap, and didn't do a click wheel or a touch screen. Xerox also, AFAIK, didn't do a hockey-puck mouse or a phone that bends :-)

    What makes you think so?

    • MaysonL 10 years ago

      Okay, I should have said the first significant thing that advanced the state of the art. None of the things you mention, especially the snarky bs, are anywhere near as big, IMHO.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection