Protocols, not platforms... but the API first!


Contributor(s)

Theia Henderson


Abstract

One response to the increasing enshittification of social media has been to build "Protocols, Not Platforms." However, while protocols like ActivityPub (Mastodon), the At Protocol (BlueSky), and Matrix build on powerful technical concepts, like federation and end-to-end encryption, the interfaces they expose to developers—their APIs—are difficult to build with, can omit critical features like private messaging, expose developers to complex concepts like "instances" and "key management," and are largely limited to producing clones of centralized platforms designs. This talk overviews a design process we employed in recent work that starts from the user-centered design of a social media API before considering the protocols in support of that API. We also overview patterns that allow complexity to be hidden "below" an API and patterns that allow multiple protocols to support one API in parallel, preventing lock-in to a particular technology.