iCloud is great. And this is not an article about how iCloud doesn't always work — for me, I never seem to have that problem. Rather, I'd like to share an experience that I've had a few times now because of the way that iCloud sync works.
You see, iCloud does not sync without having an explicit reason to do so. What I mean by this is as follows: things don't sync in the background, instead they have to refresh when you decide you want to look at them. For example, if you add a new calendar entry to Calendar on your Mac, when you then go to Calendar on your iPad, that entry will not be there for a few seconds until iCloud refreshes. Now, say you didn't get a chance to open up the calendar on your iPad until you were on a plane. Well, too bad for you. You're out of luck. You won't see that new entry until you have an internet connection again. Basically, iCloud will not update the information for any given app until you open that app. iCloud will not do anything in the background.
Now, I've passively known this before. But it didn't quite hit me about how annoying this could be until the other day. I opened Due on my iPhone and added a reminder for something. It so happened I next found myself on my iPad when I wanted to add another reminder (only after waiting for the iPad app to sync with iCloud and update to the state I last left it on my iPhone, of course). The time came for that first reminder, and both my iPad an iPhone buzzed to alert me. I took care of whatever it was, opened up the app on my iPhone, and checked the reminder off. All was swell. That is, until an hour later. See, what makes Due so great is that it will pester you and pester you until you do whatever it is you told Due to remind you about. And it will remind you every hour, on the hour, until you finally do it. But while my iPhone stopped reminding me after I checked it off, Due on my iPad had not since been opened. And so my iPad kept buzzing. Every hour. Until I came home at the end of the day to see Notification Center on my lock screen filled with reminders to do something I had already done.
Of course, at this point the solution to the problem — that is, to have my iPad cease it's incessant buzzing — was simple: open the iPad app and have iCloud sync everything right up. And so that is what I did.
But that shouldn't, in an ideal world, be necessary. Ideally, iCloud should have pushed that update without me having ti open up the app and thus tell it to do so.
Now again, I understand the battery concerns here. And I understand that there is no easy way to delineate what iCloud needs to sync in the background versus what can wait until the app is opened. But that doesn't make this whole situation any less of a problem. The truth is, I can't see iCloud working the way that it does currently forever. Because when it comes to apps like Due, or getting on a plane only to realize that nothing is up to date, iCloud's current sync behavior makes for a pretty bad experience.
I'd also like to make the point that while the "plane" scenario is indeed an edge case and can be written off as saying that Apple clearly assumes you are going to have internet wherever you are, the scenario that apps like Due present cannot be written off as easily. Despite having a perfectly fine internet connection, you still need to open an app to get your iPad to stop buzzing at you. And that's just not as magical as iCloud could and should be, and usually is.
I'm curious what you all think about this. Be sure to leave your thoughts in the comments section below.