The theme for today’s f8 Facebook conference is “stable mobile platform,” an effort to give developers an assurance Facebook won’t change and break things like it used to. Mark Zuckerberg joked on stage that Facebook’s mantra has changed from “Move Fast And Break Things” to “Move Fast With Stable Infra” and announced a two-year core API stability guarantee, noting it will give developers plenty of notice before pushing breaking changes.
The API guarantee will extend to Login, Sharing, Requests, SDKs and other popular Graph API endpoints. Facebook also announced version 2 of the Graph API, including issuing app-scoped user IDs instead of original IDs for added security, a test app framework for easily building places to try out functionality, a Social Context API that can surface a user’s friend activity in apps, a Tagged Places API for building apps using where someone has been, and better ways to tag and invite friends inside stories and app publishes.
Zuckerberg explained that the “break things” idea was great for when it was a smaller company needing to rapidly prototype. As it grew, fixing everything that broke took more time than the speed increase the philosophy provided. With 1.28 billion users relying on the social network, a shaky infrastructure with confusing bugs just doesn’t cut it anymore.
With the two-year core API stability guarantee, Facebook is extending that same principle to all its developers. For years, Facebook would rapidly deploy and kill off API functionality, breaking apps that relied on them. When a Facebook app breaks, people don’t just blame the developer, they blame Facebook. Even when Facebook began giving several months’ notice about changes, developers were unsure whether it was worth integrating a new piece of functionality because it could disappear. Now they’ll be able to build with confidence knowing that a core API will be available for at least two years.
By making it easier to keep apps working, Facebook will endear the developer community to it while also improving its perception amongst users.