Facebook Improve Android App Speed After Travel to Africa

Facebook this week rolled out an update to its Android app that adds some
new options for liking and tagging posts, but the social network also provided
a sneak peek into how a team trip to Africa helped boost apps speeds for users
around the globe.
Facebook engineer Alex Sourov wrote in a blog spot this week that "our
mission extends far beyond building and delivering the best experience on
high-end smartphones and LTE networks. We want Facebook to work for everyone –
no matter the region, network condition, or mobile device."
Thursday's update, Facebook added the ability to "Like" posts, photos,
and Pages when you're offline; you can remove tags you've created;you can also
remove tags of yourself that your friends have created; and turn post
notifications on and off, in addition to improvements for speed and
reliability.
Thus, Facebook sent a team of product managers and engineers to Africa,
where mobile performance doesn't quite match up with service in the U.S. - from
network connections to actual devices.
"We purchased several different
Android handsets to test the latest version of the Facebook app – and the
testing process proved to be difficult. The combination of an intermittent,
low-bandwidth network connection and a lack of memory space on the devices
resulted in slow load times and constant crashes. We even burned through our
monthly data plans in 40 minutes," Sourov wrote.
The result of Facebook's trip? Its engineers and product managers came up
with four key areas where they could tweak its mobile app a bit: Performace,
data efficiency, networking, and the size of the application.
Facebook also tweaked image compression and the image-loading process for
low-grade devices in an effort to reduce data consumption as much as possible.
In total, the company was able to cut data use by 50 percent — a boon for those
attempting to use the app in countries where data packages for mobile devices
are exceedingly expensive. Additionally, tweaks to the app's networking stack
allowed Facebook to cut reports of slow or failed image loading by nearly 90
percent compared to one year prior.
Facebook's modifications to the application's loading process involved
tweaking how features get loaded within the app — on single-core mobile
devices, this presented a bit of a bottleneck as the smartphones struggled to
churn up a bunch of processes simultaneously. Facebook also tweaked the loading
process for News Feed stories to more quickly deliver cached content (for those
on crappy networks). Together, these two modifications "reduced start
times by more than 50 percent in the six months following the trip to
Arfira," Sourov wrote also
added.
Finally, Facebook's tweaks to the very size of its mobile application
allowed it to shave off 65 percent of its previous weight, data-wise. That's
great for downloaders and, more importantly, great for mobile devices that
don't otherwise have a lot of free disk space to work with.
"The lessons learned have already impacted the development of new
features. We test all major features and changes in poor networking scenarios.
We have automated verification for various performance and efficiency
characteristics, which allows the features team to receive immediate feedback
on the impact of their code. We also expanded our playbook to other apps, such
as Messenger and Instagram," Sourov
wrote.
"We will continue to innovate to make the Facebook experience better in
emerging markets, and share tools and information that can help developers
build apps that work well on different handsets, network environments, and
operating systems." Sourov wrote.