Facebook Takes Mobile App Native For Speed - InformationWeek

InformationWeek is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

IoT
IoT
Mobile
News
8/23/2012
06:14 PM
Connect Directly
Google+
LinkedIn
Twitter
RSS
E-Mail
50%
50%

Facebook Takes Mobile App Native For Speed

Facebook remains under pressure to prove that its social network will thrive as much on mobile devices as it has on desktop computers

Stung by user contempt for its sluggish iOS app, Facebook has turned away from the Web technology it once celebrated and toward native iOS code. The result is a much speedier version of its mobile app.

"Facebook 5.0 for iOS is twice as fast as the previous version when launching the app, scrolling through news feed and opening photos in feed," said Facebook product manager Mick Johnson in a blog post on Thursday.

Users have already noticed. A recent review of the app posted under the name Neil Lucia notes, "This newly rebuilt version is a great improvement and runs very smoothly, and the layout of [the] profile page has also changed, for the better!"

Facebook remains under pressure to prove that its social network will thrive as much on mobile devices as it has on desktop computers. Lack of a coherent mobile strategy has contributed to the company's stock woes and to its decision to acquire mobile photo sharing service Instagram. An enthusiastic reception for Facebook 5.0 for iOS could help the company regain its stride.

Johnson says that Facebook engineers "rebuilt the app from the ground up" to make it launch and load content faster. Much of the app is now written in native iOS code, Objective-C, primarily for the sake of speed.

This is being seen as a rejection of HTML5, a Web technology that was hyped too soon and has since seen early adopters moderate their initial enthusiasm. Facebook itself has been one of the more vocal boosters of HTML5.

[ Read Tent Promises Open, Distributed Social Networking. ]

"We have high hopes for HTML5 and have already begun to use it in our products," noted Facebook engineering manager David Recordon in early 2011. "We hope HTML5 will help developers everywhere address one significant engineering challenge we face daily: the need to support different platforms across the Web, desktop and mobile devices."

The company's HTML5 developer webpage still proclaims, "Build the Future with HTML5."

However, Facebook 5.0's speed gain isn't simply a matter of turning to native code. As engineer Jonathan Dann explains in a separate blog post, the revised iOS app is faster not only because there's less use of HTML5, which had been used for various modules inside of an Objective-C wrapper, but also because Facebook has stopped using Three20, an open source Objective-C library that it had been developing since the early days of the iPhone.

"The new Facebook for iOS marks our first release in years without the Three20 framework," said Dann.

In addition, Facebook's iOS app has benefited from more efficient coding. As Dann explains, this involved moving computationally intensive tasks off the main thread, to be processed in the background, so the main thread can handle touch events and other user interactions immediately. In another instance, Facebook engineers found that calculations to layout text on the app display page created a bottleneck. So they shifted to downloading new text strings and calculating their sizes for layout asynchronously while caching text frames for later display.

Facebook does not address what aspects of HTML5 slowed down previous versions of its mobile apps the most, but one reason for the lack of speed should be laid at the feet of Apple rather than Facebook. To display Web content in a native iOS app--a Facebook timeline, for example--a developer typically uses the UIWebView element. But Apple, as a security precaution, will not let UIWebView access its Nitro JavaScript engine, which accelerates the processing of JavaScript. As a consequence, Facebook's old iOS app processed JavaScript more slowly than a Web app viewed through mobile Safari.

In any event, the new Faceook app for iOS may mark a shift away from HTML5 for certain tasks, but it's not a repudiation of the technology. In fact, the app will continue to use HTML5. "For areas within the app where we anticipate making changes more often, we will continue to utilize HTML5 code, as we can push updates server side without requiring people to download a new version of the app," explains Dann.

We welcome your comments on this topic on our social media channels, or [contact us directly] with questions about the site.
Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
GAProgrammer
50%
50%
GAProgrammer,
User Rank: Ninja
8/24/2012 | 5:31:14 PM
re: Facebook Takes Mobile App Native For Speed
Hey Facebook - here's an idea - let us SHARE stories and links from our friends on our iOS and Android apps. It's easy to do on Windows\OSX but not in mobile apps. I can't think of a good reason to have left it out.

If you are trying to capture mobile space, duplicate the experience from PC to mobile.
News
COVID-19: Using Data to Map Infections, Hospital Beds, and More
Jessica Davis, Senior Editor, Enterprise Apps,  3/25/2020
Commentary
Enterprise Guide to Robotic Process Automation
Cathleen Gagne, Managing Editor, InformationWeek,  3/23/2020
Slideshows
How Startup Innovation Can Help Enterprises Face COVID-19
Joao-Pierre S. Ruth, Senior Writer,  3/24/2020
White Papers
Register for InformationWeek Newsletters
State of the Cloud
State of the Cloud
Cloud has drastically changed how IT organizations consume and deploy services in the digital age. This research report will delve into public, private and hybrid cloud adoption trends, with a special focus on infrastructure as a service and its role in the enterprise. Find out the challenges organizations are experiencing, and the technologies and strategies they are using to manage and mitigate those challenges today.
Video
Current Issue
IT Careers: Tech Drives Constant Change
Advances in information technology and management concepts mean that IT professionals must update their skill sets, even their career goals on an almost yearly basis. In this IT Trend Report, experts share advice on how IT pros can keep up with this every-changing job market. Read it today!
Slideshows
Flash Poll