7 ms·
Lessons learned with 3D Touch
- melling 11y agoHere are some blogs on using 3D Touch in Swift: http://www.h4labs.com/dev/ios/swift.html?q=3d+touch&age=90 http://www.h4labs.com/dev/ios/swift.html?q=3d+touch&age=90
- happyscrappy 11y agoThank you. The cocoa one where you utilize raw force values from a user's touches on a progress bar is great.
- danso 11y agoA. 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.
- conradev 11y 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 11y agoThat'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 11y agoMaybe, 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?
- tcdent 11y agoYes, 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 11y ago3D 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.
- 11y ago
- seba_dos1 11y agoThese marketing names get sillier and sillier. Pretty much every resistive touchscreen was already "3D" years ago.
- sozerberk 11y agoNo, 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 11y agoI 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 11y agoExactly; 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 11y agoThe 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.
- 11y ago
- emehrkay 11y agoSomeone 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 https://github.com/freinbichler/3d-touch
- guelo 11y agoAndroid 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 11y agoLong-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 11y agoFeedback 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 11y agoApple is fairly strict on developers when integrating new features and the gesture is simple with instant feedback.
- ksk 11y agoYou'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.
- MaysonL 11y agoAm 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 11y agoNo. 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 11y agoOkay, 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.
- phodo 11y agoNice 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.
- monkey_slap 11y agoI'm the engineer at Instagram who wrote and worked on this. Available to answer any questions you might have!
- julien_c 11y agoHi! 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 https://forums.developer.apple.com/thread/21954 Cheers!