Hacker News new | ask | show | jobs
by foxylion 3190 days ago
My hope is that at some point the auto sync is smart enough so we don't need any refresh button.

For example: Instagram does auto sync of new posts, but it also has a refresh functionality. So I never know if it is up to date and I must refresh. When you know about a manual refresh functionality the auto update is totally useles. You're never sure if the app tries to stay up to date or does only occasionally sync to show some (not the latest) updates.

Another example is google mail, it does auto sync pretty well and I always see the mails when they arrive. But the refresh buttons makes me suspicious if it's really up to date (in my experience it always is).

6 comments

Instagram and Facebook (at least on Android) is also a fine example of getting auto-refresh wrong. If I'm scrolling down the feed and stop for too long, or hop out of the app for a minute and then come back, often it'll refresh the feed and kick me back to the top. That's never what I want. I'd rather manual-only refresh to that.

GMail does a good job of being up to date, except when switching networks or resuming from sleep. It'll certainly eventually sync properly, but that can take minutes, and whacking the Refresh button fixes that in seconds.

I've also found that Refresh will surface very-new mail sooner than just waiting. Whacking Refresh while waiting for an email verification or password reset always makes it appear faster than just waiting.

I use the refresh button in Gmail every day. If I don't, some mails take up to 5 minutes to show up. Not so good when waiting for an automated mail (ex: password reset).
Refresh is not solely used to fetch latest data but also to reset the webapp, bringing it to clean state. Believe it or not our apps have a lot of undefined states.
You will need a refresh button as long as there are bugs in software - in particular, as long as there can be a bug in your UI code or your operating system's UI handling code.

I feel the difference between a programmer/power user and a regular user, and something that we need to start explaining to regular users, is that UI is not the true state of things. What you see is not what is really there. What you see is a representation, that is usually manipulated incrementally. A refresh is a request to rebuild the representation anew, from the true state of things.

It feels like the sign of times - the need for instant information. I like to be able to force refresh in Gmail, because sometimes I know I was just sent some notification / receipt / whatever. But normally it doesn't really matter... whether I find a new email I wasn't expecting immediately, or after an hour is irrelevant.
If you're confident enough of your auto-sync, you can always keep the manual refresh and just have it no-op. Eventually users realize that clicking refresh never actually brings in new content, and the content they expect is always there. Or maybe they don't, and think refresh is always super fast (you can't make it too fast). If you do this you'd better be certain your sync works though.