0 iCloud Sync and NetNewsWire: Where We’re Stuck
Brent Simmons edited this page 2022-08-31 18:53:35 -07:00
This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

31 Aug 2022 - Brent

We need to figure out what to do about iCloud syncing before we can ship NetNewsWire 6.1 for iOS.

The Problem: Extremely Slow Syncing in Certain Cases

When setting up syncing on a new device, or when returning to NetNewsWire on a given device after a long absence, the amount of data to be synced may be very large.

And — to make things much, much worse — iCloud applies throttling, slowing down the sync even beyond what youd expect.

When that happens, that sync can take an exceptionally long time. An hour is not unheard-off, and weve heard of at least one case that took about half a day.

iCloud syncing is otherwise great for our users: it doesnt cost extra (free-ish); it keeps private data such as subscription lists stored with Apple rather than with another third party (private-ish). It is fast all the rest of the time.

And it helps further our goal of getting more people using RSS readers — a free-ish, private-ish system that doesnt require yet another account reduces friction for NetNewsWire users.

However, when its not fast, its a terrible experience. Bad enough that people often think its just broken. Some of those people surely just give up.

Secondary Problem: Support

One of our goals with NetNewsWire is to create a high-quality, bug-free, easy-to-use app that requires the least amount of support possible. Ideally nobody would ever need support (outside of feature requests, of course).

But this issue requires support. And the problem with support is that we dont have a support team — and Im the only person who has to do it. People besides me very often do do support — thank you! — but its my name on the app, and the issue of support keeps me up at night.

Two Main Ideas for How to Proceed

Mitigation

One argument says that iCloud syncing is so good that we should keep it as-is and do our best to mitigate the other issues.

Users could be made aware that iCloud syncing has this drawback. This could be done in the setup screen in the app. It could be done in our Help site. We could have a page to link people to every time this issue comes up — a page that explains whats going on, and why, and how to recover.

In other words: iCloud sync is so good and beneficial for our users that we have to find a way to live with this.

Migration

We could do a version of iCloud sync that syncs far less data by not syncing the content of unread items. The pathological performance issue should be largely gone.

However, this means that two instances of NetNewsWire may not have the same articles, and thus may not have the same unread counts, resulting in a sub-par sync experience. (And it would also result in support issues.)

Also, wed probably have to migrate people to this — it would be a second iCloud sync rather than a modification of our current iCloud sync. There are technical and user-communication issues.n (And, again, support issues.)

In other words: the sometimes-terrible performance is so bad that we have to do a less-comprehensive sync, even though it would have its own support issues.

What to do?

Mitigate or migrate?

Or something else I havent thought of?

Or is there some modification of either of the above that would make that idea less awful?

Feedback is definitely sought! Because this is where were stuck, and we need to be able to move on. Theres so much more cool stuff to do!

Please discuss on the #work channel on the NetNewsWire Slack group.