139 comments

[ 4.9 ms ] story [ 204 ms ] thread
This seems to me to be a special case of a more general problem which we've been seeing for decades, which is that unexpected dialogues can manifest themselves and then respond to user input intended for whatever application they were interacting with before the dialogue showed up.

I've never been able to understand why the operating system does not manage this case and ignore input that occurs within say 0.25 seconds of the dialogue's appearance, on the grounds that humans generally can't react so quickly to something they just saw, so they must not have really meant it.

>I've never been able to understand why the operating system does not manage this case and ignore input that occurs within say 0.25 seconds of the dialogue's appearance

That's why Firefox save file dialog is inactive for the first few seconds.

I was thinking about this yesterday. Dozens of times I type a search into cortana - see my item - click on it, and milliseconds before I click (but before I can avert the action) the item changes. I have at times almost felt the electrons racing down the nerves in my arm in my attempt to not click.

I like your idea of a .25 second delay. I can normally send a movement request to my hand in about .13 seconds (fastest time I can click twice on a stopwatch is .13 seconds), so .25 is good for me.

Exactly, I think this is the best (minor change) solution to the problem, not changing the width.
This is maddening and makes me pine for the days before dynamic search result lists.
Some window managers like KWin implement some measures to deal with that, called "focus stealing protection".
Focus stealing prevention is one of these things that's so pleasantly invisible that you only start to appreciate it when using a window manager that lacks it.
>humans generally can't react so quickly to something they just saw

I feel like Facebook does this in their app when you post something to a page and it pisses me off to no end. I know as soon as I post something it's going to pop up a full-screen confirmation so I'm hovering over the X to close it and as soon as it pops up I tap it... and tap. And tap. And tap tap tap tap tap tap come on I have other stuff to do and tap tap tap tap and now finally it closes.

This is exactly what I was going to suggest. It would also be nice to signal what's happening to the user by fading in the notification, so that only when it's solid does it intercept your tap.
A few years ago I was using Adium, and clicked on my girlfriends named, "Jenn" and said, "Hello sexpot!"

Except that's not what happened. My friend James logged in, a moment before I clicked and his name replaced hers where my mouse was. I absentmindedly typed "Hello sexpot!"

Well, we laughed it off eventually... but yea.

Conversely, you’ve now put notifications in the most difficult to reach position on the screen.
That might be fine. They'll continue to live in the notification tray, waiting for you.
This is why I like Ubuntu Unity's notifications:

- you can't click on them

- if you hover them with the mouse, they go transparent

- if you do try to click, the click will pass-through to the GUI element underneath.

They never ever get in the way. And you can find them again if you miss one. I like 'em.

and I thought this behavior (which drove me crazy) was a bug: you try to click them and they fade away. what were they thinking?
MacOS's notifications drive me crazy like that... when I'm listening to music on iTunes and using my browser, I reach up to click a tab as the song changes and now I'm suddenly clicking iTunes instead.
> If only 0.002% of the 700M+ iPhone users have a similar experience on a daily basis, collectively these notifications are causing over 8400 hours a year of pain to users.

This echoes the Saving Lives[1] anecdote:

> "Well, let's say you can shave 10 seconds off of the boot time. Multiply that by five million users and thats 50 million seconds, every single day. Over a year, that's probably dozens of lifetimes. So if you make it boot ten seconds faster, you've saved a dozen lives. That's really worth it, don't you think?"

    [1] http://www.folklore.org/StoryView.py?story=Saving_Lives.txt
The problem with such calculations is the assumption (often incorrect) that those little bits of "wasted" time would have been used for something more productive and are anything more than statistical noise.

While my home machine came out of hibernation yesterday evening I stroked the cat. I would have probably done that anyway while the authentication screen waited for me, had it started up faster.

While my work machine started up this morning I discussed the outcome of one of yesterday's problems with a colleague. This took several minutes so the PC starting in 20 seconds instead of 30 would have made no difference at all.

That's my reaction to that argument as well, whenever I hear it. "Over X amount of time you're saving X minutes/hours/whatever". It's nonsense, especially when we get into the seconds or microseconds, amounts of time hardly worth saving.

There are far more important reasons to not interrupt someone's workflow than "closing the notification takes precious seconds from my life". It's not the 2 seconds it takes to switch back to the other app, it's the 1 minute 45 seconds it takes to get my mind back to my original task or the 23 minutes that I'm distracted by whatever the attention-thief was.

Or worse yet, it's the lifetime and several hundred dollars when I become so frustrated that I switch to another phone. It's the $3 and hours of use that I've wasted when I switch to an app that doesn't demand push notifications.

Complaining about seconds wasted is ridiculous. If a second is "wasted", you're losing a lot more than just that one second. Don't make your argument based on the least impactful point.

I've always wondered why Apple doesn't put navigation items on the bottom of the screen much the way Android has soft keys on the bottom. It would solve this problem and also make one handed navigation easier (or possible at all).
Well, that’s no longer an easy fix now that Apple removed the home button and uses that area for gestures that replace it.
Completely agree. Had hoped with iPhone X they would move to have interactions at the bottom, since constantly involving reachability (which is now disabled by default) to go to the top menus (since not all apps allow you to swipe from the left to go back consistently). Several apps like Instapaper work great the main navigation actions in the bottom. They have items in the top but those are ones you won't need to access often. And they leave space at the bottom to not interfere with the home button line area. Maybe we will see a push to this UI direction from Apple officially in iOS12 as I imagine iPhone screens will only get larger.
While I completely understand the problem, I do not like your solution. To me it doesn’t look as good as the original and takes away a lot of space for information within the notification itself.

I’d rather build in a hidden timer, so taps on a notification only trigger an app change after a certain amount of time. E.g. 0.5 seconds after it popped up.

Another problem they didn't consider for this solution, is the people that tap the midde of the status bar to scroll to the top. With that solution, I still go into "agony"-mode.

They didn't think of that. I guess in the same way that Apple didn't think of the problem presented in that post.

Still, a solution is needed.

But one can argue about clicking the top while doing things like scrolling upward and ready to click on an article on the page. There is a better fix then shuffling the notification elsewhere. I argue a temporary freeze is better - if there is no response from the user after one second, the user is free to swipe up to hide the notification. This will prevent accidental click. Yes, there is a possibility of in-between temporal display-and-click, but will probably yield a better result. This needs research. One has to identify common hotspot. This can be, however, at the expense of user experience. But we can find a common ground or offer it as an option.

Another possibility is snoozing notification by learning how often a user will read notification immediately, so that notifications will not display for sometime.

So you're saying that on a 4 inch screen, notifications should be made even smaller. Hm.

Not everyone has the Plus model.

Smaller screens can keep it full width. The iPad (in some previous iteration, don't know what it looks like now) already has notifications that don't span the whole width. Seems reasonable other large screen non-iPad devices might do the same thing.
I just block all notifications. Phones are much more pleasant that way.
Same. I allow lock-screen notifications from important things (mail, messages) and disable every other notification. Getting constant notifications would be my nightmare
It seems like not accepting any user interaction within the first 500ms for popup dialogues / notifications like this would be a better solution than crushing the notification into the middle of the screen.
Apple customer care: "We absolutely can help you! Please deactivate notifications for the apps which bother you. Nothing as easy as that!"
Except what if it’s an application I care about, but just not this 0.25 seconds?

Also, why the implied snark?

Here's an alternate solution: Have the sound for the notification play before the popup actually appears on the screen, say 0.25 seconds.
I never have the sound turned up on my phone. Most people I know are the same.
Of course, in such a case, the vibration should be before the popup...
How would that help? Not saying you are wrong, just not seeing how it would help so would like you to explain your theory more.
It's easy to get our brains used to frequent gestures, I haven't tested, but I'd guess after a while, our brains would get programmed to just swipe away the dialog before continuing with the original task
Disagree, human reaction time isn’t fast enough. This literally happens when my finger is millimeters from touching the screen to perform my intended action.
My phone is permanently on mute. How would that help me?
It does vibrate on notifications still, right?

I'd be willing to guess users who have vibrate turned off as well are a very small percentage.

I have all sounds and vibrations turned off. Works great in conjunction with an Apple watch that has vibrations turned on. Not arguing with your percentage guess; I'd guess the same thing... just saying there are some of us :-).

Edit: BTW the described idea probably wouldn't work with my Apple watch setup, because it seems there can be some latency between the iPhone and the watch with respect to notifications. I wouldn't want to get a vibration on the watch then be wondering for a few seconds "when is something going to pop up on my phone?" I realize technically the notification comes to the phone first under the hood... but where it is displayed first is a matter of programming.

Very interesting. Slightly unrelated, but since this seems to be the primary motive behind an Apple Watch(notification improvements), I'm curious how your workflow works out for you?

Having seen how often the bluetooth/wifi calling and messaging fails b/w my iPhone and Mac, I decided against trying an Apple Watch. Is it any better?

There's not much workflow to it. Unfortunately I don't use the watch for much other than two very useful functions: 1) getting bumped when there's an incoming notification, or getting a hard to ignore vibration when I have an incoming call; 2) using the "find my phone" feature, which is super convenient compared to logging on to icloud.com, and makes your phone play a ping sound even if it's otherwise silent.

Sometimes I have to turn on sound on the phone for things like Waze or for playing videos or music. But the ringer stays off (due to settings).

The connection with the iPhone and Mac seems fine. However, with my watch (1st generation) a couple of updates ago the lost phone ping feature got a new unwelcome degree of latency. It can now take up to 30 seconds for the phone to ping, where it used to be immediate. I don't know if this is the case for newer models. Nor could I say whether the problem is on the watch side, or the phone side (doesn't matter, I guess). But at least it still works.

> It does vibrate on notifications still, right?

Not all - I'd say that probably 80% of them are only allowed to show the banner with no sound or vibrate. Perfect example just arrived - Patreon. Handy to see the banner/lock screen because it's normally a new video to watch but it's nowhere near important enough to distract me.

What I'd like to see is a sort of queue for notifications while in quiet mode.

Just put them all in a queue similar to a twitter feed, that can be reviewed later. This would be the best way imho to handle the need for focus.

Then people can decide to review these once a day, or multiple times a day, but when it actually makes sense for them.

This would also require the ability to specify an exclusion for some apps (ie. "notifiy always" vs "queue notification").

ps: the notification area is a sort of queue, but I don't want to see it on the homescreen as it still is begging for attention. Put it away in a separate app or area that can be reviewed intentionally.

Feature idea: allow the user to change the app permissions directly in the push notification.
I have this problem more often on the Mac than on iOS. In particular, Mail notifications only have “Reply” and “Delete” actions.

Anyone know how to quickly dismiss these without taking an action?

I think you don't need to dismiss these notifications as they will go away in few seconds anyways.
You can swipe (with the trackpad or magic mouse, only works when the cursor is hovering over the notification) or drag the notification to the right to make it go away.
> By the time I’ve navigated back to the Notes app and performed the originally intended action, I’ve experienced pure agony for about 2 seconds.

Is this a parody? Don’t people have real problems? This level of petty self–indulgence is almost worrying.

I‘m not disputing that this may be a minor annoyance. But to invoke „agony“ is an insult to anyone who has ever experienced real suffering or existential dread.

And to slap on the old „Dear Apple“ cliché just to get your 15 minutes of (limited) attention is somewhat sad.

Cool observation - not as bad on Android due to a hardware back button, but it still happens.

Or another option to solve it??? Just don't show notifications when the user is "obviously" using their phone. e.g. if there's been any tap in the last 5s, make the noise but don't show the pop-up until the screen has gone untouched for 5s (the user can still swipe down from the top to see it).

Good idea. Also, obviously using the phone could include when the front-facing camera or sensor array (iPhone X) can clearly see that there is a finger hovering close to the screen.
iOS has a software back-link when you follow a link or notification out of another app.

And FWIW I (and I presume others) like getting notifications when I'm in other apps.

Maybe the option to double tap on the notification to open them? Thats simple and doesnt break layout
This isn't something bothering me. What is bothering me is more than I get the same notifications on different devices. I get Read This Email on my phone. I read the email, 2 hours later I pickup my iPad and I see the same notification while I already dealt with the email.
Android simply lets you swipe the notification left to make it vanish - can you not do something similar with Apple?

I guess its still an issue if you just want to ignore the notification for a moment and not get rid of it yet however.

Swipe up on iOS, but that doesn’t help when you were milliseconds away from touching an onscreen control and it appeared. I heavily control what apps can show notifications, yet I seem to have this happen multiple times a day like the article author.
Yes, you swipe it up. This is a nonissue.
It is an issue, because as your finger is making its way to tap "Back" or "Done" the notification pops under it. It's like when an ad loads directly under your mouse cursor, overlaying something you want to click on, as the neural signal to your click-muscle is already halfway down your arm.
Its actually a huge issue. Please read the original post.
Dear Apple, please disable notifications. Nobody needs them.
This would be a good change for them to make.

I wish they’d also force apps to differentiate between functional notifications to actually use the app (eg “Your Uber has arrived!”) vs advertising notifications (“Discounted Ubers today!!”) I want the former but not the latter. Currently I don’t have that choice though, it’s all or none.

The latter is actually forbidden per the App Store guidelines:

4.5.3 Do not use Apple Services to spam, phish, or send unsolicited messages to customers, including Game Center, Push Notifications, etc. Do not attempt to reverse lookup, trace, relate, associate, mine, harvest, or otherwise exploit Player IDs, aliases, or other information obtained through Game Center, or you will be removed from the Developer Program.

4.5.4 Push Notifications must not be required for the app to function, and should not be used for advertising, promotions, or direct marketing purposes or to send sensitive personal or confidential information.

Where can you report abuses ?
Oh cool thanks for sharing, didn’t know that. Doesn’t seem to have done much unfortunately.
Except they never enforce those rules.
Related beef: Apple wants me to update something on MacOS, and the pops a notification with the options "Install Now" and "Details" - meaning "Yes" or "Tell me more!"

What about "No" and "Not right now"?

I think they tried that, and found fewer people were updating.

No solution is perfect for everybody. There are tradeoffs. If you read between the lines you can see that in this tradeoff, they are optimizing for getting more people to stay up to date. Which has many benefits which arguably outweigh the annoyance you experience.

I definitely hit this. Perhaps a size update would help, but I also feel that there should be a slight invulnerability period so to say where taps on it do nothing for half a second. Not noticeable for most intended use cases, but provides a less agonizing context switching experience.
Another annoying failure mode is when you notice a notification and go to dismiss it ... just as it disappears and now you're accidentally phoning someone at 3am via WhatsApp/Viber/Messenger.