What Every iOS Developer Needs to Know about Facebook’s F8 Developer Conference
Get a recap of what you should know about Facebook’s 2014 F8 conference as an iOS developer! By Ryan Nystrom.
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress, bookmark, personalise your learner profile and more!
Create accountAlready a member of Kodeco? Sign in
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress, bookmark, personalise your learner profile and more!
Create accountAlready a member of Kodeco? Sign in
Contents
What Every iOS Developer Needs to Know about Facebook’s F8 Developer Conference
15 mins
API Versioning
Mark Zuckerburg started his keynote with a promise to developers that Facebook is dedicated to providing a highly performant and stable platform to power apps across the world.
On top of that, he also gave some assurances to developers who are fearful of becoming too dependent on Facebook’s platform.
Facebook will now begin versioning their APIs; this means that the app you build against the Facebook API today won’t break when Facebook launches new tools or features. They also guarantee two years of support and maintenance for all of their APIs.
If that weren’t enough, Facebook is now promising to fix any critical bugs in their APIs within 48 hours.
I hope that Facebook can follow through on these lofty goals, because I would love to integrate Facebook into more of my apps without the constant fear that each Facebook update will render my apps useless.
To learn more about API versioning, check out Facebook’s official documentation on the subject.
Facebook Login Updates
Zuckerberg admitted that users tend to fear the “Login with Facebook” button; they want more control over access permissions to ensure their personal data is kept safe. To this end, Facebook is introducing two important updates to Facebook Login.
First, the mechanism by which users give apps permission to access their personal data is changing. Previously, apps would ask for permission, in a step-by-step fashion, to use different Facebook features such as posting on your behalf or accessing your friends list.
Facebook’s modified scheme now displays a more detailed list of features the app would like to access, along with giving users the ability to toggle access to those features on and off as they please.
Second, Facebook announced a brand new feature called Anonymous Login. Instead of giving the app access to your Facebook account on login, you can now log into an app anonymously using Facebook.
This is a huge improvement over requiring Facebook, Twitter, or an email address to login and start using an app. Now you can log into an app anonymously and give it a whirl before you make the decision to surrender access to all of your data. Kudos, Facebook!
To learn more about the Facebook Login updates, check out Facebook’s announcement post.
Audience Network
Facebook is both celebrated and condemned for serving as an ad platform.
It’s a familiar scenario: each time you log in, your poor news feed ends up spattered with ads all over the place. Facebook admits that irrelevant ads create a poor user experience, so they’ve been working on some advanced tools to help make viewing ads a bit more pleasant.
At F8 they announced a new SDK called the Audience Network that allows you to integrate highly tailored ads into your apps. The goal is to allow advertisers to target people with highly customized interests, such as “Movie Lovers with iPhones”. The result is two-fold: more clicks for advertisers and a better user experience for consumers.
You can either use the Audience Network as a publisher (integrating the SDK into your apps to earn money), or as an advertiser (placing ads inside other apps).
I really hope Audience Networks lives up to its promise, because I haven’t yet found a way to make money with my own movie app, and this feature might be just the magic my app needs!
To gain a little more insight into the Facebook ad network, I attended a session that discussed increasing user engagement with your app by creating ads on Facebook that have deep links to content within your app.
It turns out it’s quite a simple process: you add the Facebook Ads SDK to your app, set up an ad campaign with specific content targeted to a group of Facebook users, and (hopefully!) drive users to your app. You can even target the subset of Facebook users that have installed your app. This is a huge opportunity for developers who want to increase user retention!
To learn more about the Audience Network or apply to join its beta, visit the official Facebook page.
FbStart
FbStart is a new program to help small startups grow their businesses. You can apply to access to tons of free tools and services, such as Parse Credit, an Adobe Creative Cloud subscription, customer service and prototyping tools, and more.
There are two tracks to the program: a bootstrap track (for those just starting out) and an accelerate track (for those trying to scale their apps to the next level).
It appears the program hasn’t launched yet, but if this sounds like something that’s interesting you can sign up to get notified when it launches here.
Making Paper
My favorite session of F8 featured a few of the team members from Facebook’s latest app, Paper.
Part of the session focused on the team’s struggles with performance issues resulting from the sheer amount of data being dynamically updated and displayed on the screen while still supporting beautiful and complex animations.
Their first step to address these issues was to offload some work to a background thread, which is usually the first thing developers do when they hit UI performance issues.
However, the Paper team took it a step further and used background threads for something I didn’t even think was possible: assembling and drawing the UI.
Most seasoned iOS developers know that Core Animation and UIKit are considered “hands off” when working on background threads. The Paper team created what I term a “virtual UIKit” that assembles and draws the interface in the background to use as the content to CALayer
.
It’s a simple solution, in theory, but I imagine it’s several thousand lines of code that took a talented team of engineers some time to make it work correctly.
An open source solution to the above issue is apparently in the works, and that’s on top of all the other open source tools that came out of Paper, including Pop, Tweaks, and Origami.
You can join the Facebook group of the Paper engineering team just as I did, where you can ask questions about their tools and processes and see what other goodies they’re working on.