Inside Facebook: iOS Development  

This is an absolutely fantastic inside look at how Facebook builds their iOS app, and the path they took from web to native. I have summarized some of the standout info, but encourage everyone who’s interested in native iOS development to watch the entire talk.

Facebook for iOS was originally created by a single developer. Later, they converted to a web app, using HTML5 and javascript in a native wrapper, a hybrid solution:

Facebook was growing really fast… [the] web was in our DNA, so we decided to use HTML5 and javascript in a native wrapper.

After suffering with the issues which come with a web app in a native wrapper, they moved to a native implementation. This required a rewrite of the app:

We started Facebook for iOS as an experiment. We wanted to see, could we achieve better results with native code and could we scale the team?

Facebook takes pride in moving fast, with quality. But how do they pull this off on iOS?

Overall, I think Facebook has done a superb job of learning from their early mistakes and refocusing their entire engineering effort around building their mobile apps with user experience and quality at the center of everything. You may not love the Facebook app, but the approach taken above means that they’ll be moving quickly to respond to user feedback, and will be shipping software that is likely much more stable than it once was. A great model to follow for any mobile app team.

 
16
Kudos
 
16
Kudos

Now read this

 Watch App and Core Data

This post will be a little more technical than most on this site. I wanted to explore how to create a Watch App which shares data with its companion Phone App via Core Data. Though this seems reasonably straight forward to achieve, I... Continue →