Facebook really wants you to be able to consume content on its platform, no matter the situation. The company doesn’t want anything as small as a bad Internet connection to get in your way either. That is why it rolled out “caching” last year. Well, Facebook has updated the system to ensure that the stories you get through caching, are the most interesting and relevant ones possible.
Facebook made changes to its systems last year, that served up a mixture of old, cached content and new content in case of a bad or slow Internet connection. However, it meant that while you would be able to get content regardless of the quality of the Internet, the content was drawn from a mixture of old and new — and could often lead to irrelevant or uninteresting stuff.
The company has been working to improve the system.
Over the past several months, we’ve continued working toward this goal of efficiently decoupling the News Feed experience from the strength of a network connection so that people see relevant stories more quickly without waiting for slow load times. We are now launching an update to News Feed’s client architecture that builds upon that foundation to more efficiently show people stories in feed.
The first step along this was changing the ranking system. Previously, all ranking was done on the server side, that is on Facebook’s servers themselves. By ranking, we mean deciding which content was likely to be more relevant to the user. However, since Facebook’s servers didn’t really know much about the Internet speed on your smartphone, it often ended up sending stuff that required a lot of data and thus, was invisible to you.
The company aims to remove stuff like Grey boxes (where images should be) and Spinners (where videos should play) by a change in its architecture that allowed content to be ranked on the client side itself. What’s more, stories are also required to have all necessary media available before rendering them in the News Feed.
The change in the architecture also affects how articles for the news feed are received now.
In the previous News Feed architecture, the mobile client sent a request to the server for new stories, and the server returned a batch of ranked stories to be rendered in the UI. This loop would continue as long as someone kept scrolling through their feed.
And stories that were sent to the User but not seen by him/her were then deposited in the persistent cache for use on a bad Internet day. In case of bad connectivity, Facebook let you see stories from the persistent cache first and then followed it up from new stories.
Now though, Facebook is taking steps to improve the quality of your feed. Instead of waiting to show the new stories to the user until after all the cached and ranked stories have already been seen, Facebook selects the next best story from a pool that includes both new stories from the server and unseen stories from the persistent cache. This ensures that you get the most relevant and interesting content possible under the circumstances.
Also, content that is the best suited to your Internet speeds at that particular instance receive a boost in ranking. So, if your Internet speeds are very low, Facebook may perhaps down rank videos and give preference to surfacing images or even text based content. This will ensure that the user has the best experience possible in bad connectivity scenarios.
The company also said that this new update would benefit everybody, since none of us are immune to a bad Internet day now and then.
While the impetus of this work comes from focusing on improving the News Feed experience for people in emerging markets, these updates also will benefit people who typically have strong internet connections, as we all experience less than ideal internet connections at times.