Thanks to iCloud, my calendars sync wirelessly and instantly across all my devices — and can be edited anywhere. This is a fantastic capability, one that I have come to depend on. But one aspect of calendar syncing is, shall we say, alarming. And it’s not even specific to iCloud, but rather a function of the way Apple’s operating systems handle calendar alerts on each platform when calendars are synced from any source.
At 3:00 PM yesterday, I had a meeting scheduled across town, and in order to ensure that I remembered in plenty of time to get there, I had set an alert to go off an hour ahead of time. Precisely as requested, at 2:00 PM, my iMac beeped and flashed a reminder on its screen. So did my MacBook Pro. And my iPhone 4S, and my old iPhone 4 that I now use for testing. And my new iPad, and my iPad 2 that’s still in use. And my wife’s Mac, and her iPhone, and her iPad, since I shared my calendar with her. That’s right: Nine devices in our household beeped and displayed reminders for the very same event! (And because the devices’ clocks aren’t perfectly in sync — another inexplicable irritation — these beeps were spread out over a period of about 30 seconds.) Yesterday was a slow day, too — just one meeting. Often this sort of thing happens numerous times a day.
And it’s not just the events on my personal calendar, my wife’s calendar, and our shared family calendar that prompt these alerts. Whenever Adam Engst has a TidBITS-related meeting or appointment for which he has (quite reasonably for him) set an alarm, all my devices remind me about that, too, because Adam has shared the TidBITS calendar with the whole staff via iCloud. Given the six-hour time difference between Adam and me, those alerts have sometimes occurred at very inconvenient times!
I grant that my situation is somewhat atypical. Owing to my profession, I accumulate Macs and iOS devices at a rather embarrassing rate. But I know lots of people with three or four Apple devices, all of which sync the same calendars via iCloud, Google Calendar, or Exchange servers. And a quick Web search revealed that many thousands of us multi-device users are getting pretty annoyed at all these redundant alerts, especially those that come from calendars shared by other people.
The Problem with Disabling Alerts — Now, hold it right there, because I know what you’re going to say. You’re going to say that I can just disable alerts for any given calendar, on any given Mac. Yep, I realize that. In iCal, I can select a calendar, choose Edit > Get Info, and select the Ignore Alerts checkbox. Or, in BusyCal, I can select a calendar, choose File > Get Info, and deselect the Alarms checkbox. Either way, that means I’ll never see alerts for that particular calendar on that particular Mac.
But that’s not what I want.
First of all, disabling alerts per calendar is a trick you can currently do only on a Mac, not on an iOS device. So at best, it would solve only part of the problem. And second, having per-calendar granularity is nice, but what I want even more is per-device granularity — a way to enable or disable alerts for all the calendars I care about on any particular device. The thing is, I usually do want to see and hear those alerts — at least those that come from my own calendars. I just don’t want to get them on all my devices. I want to get my alerts only on the device that’s nearest to me at any moment. Having to go around to many devices in many locations and dismiss alerts is not a productive use of my time.
On the other hand, sometimes the crucial decision of when to dismiss an alert is taken out of my hands! On my Mac, if I don’t dismiss an alert right away, it simply stays on the screen until I do, without interfering with anything else I’m doing. If I’m busy working on something, I might just leave the alert on the screen until I can deal with it, or I might click the Snooze button. That’s all fine. But I don’t get that option on my iOS devices. If I’m actively using a device, I can dismiss an alert or open it in Calendar, but I can’t snooze it. If the device is asleep, then I see the alert on the lock screen, but unlocking the device makes the alert disappear, so if I’m not able to deal with it immediately — for example, if I get interrupted with a message or phone call — I have to remember to perform an additional step to see what it was.
Potential Paths to Less-Alarming Calendars — Some preliminary signs give me a ray of hope that Apple may at least be on the trail to a solution.
According to a report from 9to5 Mac, the latest developer preview of OS X 10.8 Mountain Lion has a system-wide “Do Not Disturb” switch that would presumably prevent all alerts — whether from your calendars or otherwise — from interrupting you on that Mac until you turn alerts back on. If that feature does turn out to be in the final version of Mountain Lion, I’d have to say it sounds like a small but meaningful step in the right direction. It would be an improvement over what we have today in that it affects all your calendars and can be toggled with just a couple of clicks.
However, the problem that feature appears to solve is, for me, the least important aspect of my gripe. For one thing, it may reduce unwanted alerts on my Macs, but I’ve heard no rumors of an analogous option forthcoming for iOS devices. Perhaps Apple is planning exactly that for iOS 6, and if so, that would certainly be a bigger step in the right direction.
But even having a “Do Not Disturb” switch on all my devices that’s as easy to access as, say, the Airplane Mode switch would still amount to little more than a tease. It would mean I have to flip that switch off, on all my devices except one — and then, when a different device becomes the one I want to pay attention to, remember to turn off “Do Not Disturb” on the first device manually and activate it on the other one. So, instead of having alerts everywhere that I can’t get rid of, I’d have to take on the burden of constantly reminding all my devices which one(s) I want to hear from! Yeah, that’s totally going to happen.
If Apple wanted to take a big step toward solving this problem, a wiser solution would be a switch that means “Show me alerts only on this device.” In other words, if I activate that setting on my iPhone, it automatically switches all my other devices into “Do Not Disturb” mode. The information that a certain device has become primary could be pushed to all my other devices the same way calendar updates are currently.
But even that, better though it may be, would require more manual effort than I want to put into maintaining my alarms, which is zero. What I really want is for that switch to figure out, on its own, when it should be on — with an option to override it manually, of course.
That may sound like magic, but I think it’s entirely plausible. All my Apple devices can already tell when they’re being used actively, because when they are, they don’t go to sleep. If one of my devices knows it’s in use, presto, that one becomes my primary device for alerts, and stays that way until another device senses that it is being used. If I’m not actively using a device, I might still have an iPhone in my pocket or an iPad in my backpack. Those devices have sensitive motion detectors, and could infer from the fact that they’re being bumped around a bit that I’m carrying them. That fact could trigger such a device to become primary. Perhaps Apple could get even fancier and look at things like where and when I typically use various devices, and use that to make better guesses about which device should be primary at any given time. I’m not saying it would be trivial to figure this out, but it strikes me as being merely a software engineering challenge, not something that requires entirely new technology.
One Alert at a Time — Ultimately, I would like to see a system of cascading alerts. My devices make their best guess about which one is primary at the moment, and display any alerts on just that one device. If I dismiss an alert there, that’s the end of the story. If a few minutes go by without any action from me, the next-most-likely device displays the alert, and so on. But regardless of where I ultimately see that alert, explicitly dismissing it makes it disappear from all my screens.
In addition, I want to be able to snooze any alert on my iOS devices, regardless of whether the device happens to be asleep when the alert pops up. And finally, for bonus points, I’d like snoozes to follow me, too. In other words, if I snooze an alert for an hour, and during that hour switch from one device to another, I want the alert to reappear only on the newly primary device!
There are undoubtedly other possible solutions to the problem, and maybe Apple will come up with something far more elegant than what I’m imagining. But I hope something changes soon. Ironically, this constant beeping makes me less likely to set alarms at all, simply so I can avoid the excessive distraction. If alerts are to be useful — neither background noise nor an irritation to be avoided altogether — Apple needs to find a way to make them smarter.