On a page which features a list of items (such as stack overflow questions or quora), the site often polls for data but instead of displaying that data it instructs the user to refresh the page to see them.

Since it's already making the request, why not just load that data with some sort of highlight to indicate that it's new.

  • 1
    I agree with the answer posted - however, consider that complexity of loading this data as opposed to loading say a label that says "X number of posts have been made...click to see them". – JonH Nov 9 '15 at 19:44
  • performance related. bad ux if you can't properly update your page without a serious lag – Jedi Commymullah Nov 11 '15 at 3:00
  • This might turn out to be a transitional problem. Todays browsers are very bad at page updates. Either they do a full page reflow, or they execute a lot of performance-degrading Javascript. A smart browser should offer an proprietary extension to extend existing pages smoothly. – MSalters Nov 11 '15 at 13:12
  • @MSalters Why on earth would you want it to be proprietary? – Daniel F Dec 30 '15 at 21:13
  • 1
    @DanielF: Most innovation starts off being proprietary before it's standardized (e.g. border-radius) . It's rather hard to innovate and standardize at the same time. – MSalters Dec 31 '15 at 13:33
up vote 103 down vote accepted

Sudden rearrangement of content is disturbing

Dynamically updating data while user is looking at it may (depending on type of data) be disturbing to the user workflow - for example, if you're reading a sentence and it changes while you're doing it, it's unwanted.

The same applies for any content changes that will re-flow or reorder other content. Appending something at the bottom may be fine depending on the scrolling behavior, but still dangerous; but inserting or updating some content in the middle (e.g. discussion threads) will cause other content - likely including some sentence that you're reading at the moment - to be moved away from where it was. This is generally bad UX, as the user is suddenly forced away from what they were doing and they'll need to find the content once again to move on with reading.

Good examples of continuous automatic content updates tend to be either in-place updates (a counter or graph with changing values but fixed size and location) or append-only content (chat, logs) if the speed of new information is limited and expected by the user.

  • 2
    Another reason is a certain percentage of users won't care. If there is a good reason to keep data up to date (stock quotes?), if some users want it updated, and some won't, you can give the user an option to "refresh data automatically" checkbox. – Mark Stewart Nov 9 '15 at 18:42
  • 21
    Having to find one's place to resume reading is one thing...clicking on the wrong link because it moved is another (and even worse UX). – El'endia Starman Nov 10 '15 at 7:22
  • 7
    If you ever want to see a prime example of this, try scrolling through a Facebook newsfeed in their mobile app. It is a fairly frequent occurrence for me at all to be in the middle of reading a post and have it suddenly disappear from the veiwport, because the stories in my feed have been auto-updated. I've spent as much as 30 seconds hunting down a post that I was readying in order to finish it, as a result of this behavior. It is a very disruptive user experience. – talemyn Nov 10 '15 at 15:35
  • 4
    We've got a bug tracking system that auto refreshes. It's extremely irritating as what I was clicking on will on occasion move while I'm clicking. That never ends well... – Brian Knoblauch Nov 10 '15 at 16:17
  • 1
    The impact of this can sometimes be lessened (though not eliminated) by a smooth glide type of motion when content is inserted above the user's current place. Then, at least, the user has a better chance to keep their place in reading, and clicking the wrong link shouldn't be an issue unless the links are very close together. – Dan Henderson Nov 10 '15 at 18:41

Additionally, it's less data intensive, and if you're designing with a mobile first philosophy, that's got to be a consideration.

  • You're going to need to consider that the screen size is constrained to smaller dimensions than a desktop machine, which means that even smaller changes are more likely to move what the user is looking at off screen.
  • Many (probably most) of your users will have limited data on their data plans, so you want to make sure that their data allowance isn't unnecessarily consumed
  • The data is often going to be slow so sluggishness leads to a feeling of poor performance.
  • The devices may not be very powerful, so sluggishness is further exaggerated.
  • 1
    If you just make a request to get the count of new items, yes. Sometimes the client-side engine just pulls the whole content, shows the count and keeps the content in memory (or in a hidden section of the interface) until the user "accepts" to see it. – Mindwin Nov 9 '15 at 19:10
  • 1
    True. I would expect that when that happens it is often down to a poor or unoptimised implementation. Obviously if it's just text that is downloaded, the data consumption is considerably lower than with images. Some level of pre-loading of images will also help with the feeling of speed/performance, which is of course another aspect of the mobile experience for many users on mobile data plans, but the tradeoff is certainly something that should be considered, and I don't feel like the tradeoff is considered as heavily as it should be in many cases. – Nathanael Nov 10 '15 at 9:59
  • Please tell us more of the considerations and mobile first filosophy by editing your answer. Thank you. – 4rchit3ct Nov 11 '15 at 5:10

If you're halfway down a long page, say here on stackoverflow and friends, and the top of the page changes without disturbing your current viewport, how will you know? Yes, it could bring up a banner "we just refreshed the top of this page with three new items", but the notice "there are N posts you haven't seen yet" gives you a chance to interact with your incoming queue when you're ready to look at them.

It's rather used that way to avoid unnecessary disturbance. Social networks are using this scheme as well.

  • Is there a name for this pattern? – Tom Nov 9 '15 at 12:19
  • 2
    To be frank with you, I'm not aware of any name. But I've got another reason to use this pattern. If the user isn't interested in the new content he isn't going to click the refresh box. You save a lot of data while it isn't loaded. – Piotr Fijalkowski Nov 9 '15 at 12:22
  • This does not provide an answer to the question. To critique or request clarification from an author, leave a comment below their post - you can always comment on your own posts, and once you have sufficient reputation you will be able to comment on any post. - From Review – Devin Nov 9 '15 at 19:04
  • @Devin Why this is not a valid answer? – rpax Nov 11 '15 at 18:34
  • This is an automated answer from the review process, someone flagged it as not an answer and some of us thought it really isn't an answer. However, it's not a valid answer because it's an opinion rather than an explained answer with factual data and or any kind of support. While I may or may not agree with these kind of answers, the idea of "because I say so" answers is not supported at UX.stackexchange. This is nothing personal, just the way reviewing works – Devin Nov 11 '15 at 18:40

Your Answer

 
discard

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.