WhoBuilt

Web Without Walls

Sep 26, 2024· 40 min· 27K views·Watch on YouTube

Speaker

Dan Abramov, an engineer at Bluesky, explains how the AT Protocol could let people keep control of their data while independent apps build on it, at React Universe Conf 2024 with Callstack.

Bluesky’s product points to a protocol

Abramov describes Bluesky as an open-source social app, with a front end built using Expo and a separate internet protocol underneath. Users can use a domain as their handle and add feeds built by third parties. He says the AT Protocol makes these features possible.

The web puts creators in control

Abramov contrasts publishing a website with joining a social network. Website owners can change their domain or hosting provider and edit their content, while users inside a product have less control if it changes or shuts down. He recalls exporting his old Twitter account as 100 megabytes of JSON, which was difficult to use outside the product.

Keep user data beyond the product

Abramov uses React state to show how developers extend data’s lifetime, from a function to a component, local storage, and then a server. He argues that a user’s posts should persist beyond any one product. His proposed next layer is the Atmosphere: user-controlled repositories that store application-specific records as JSON.

Repositories and relays connect apps

Abramov demonstrates that his Bluesky posts live in a repository, while a colleague hosts her data on her own server. Applications can define different record types, such as posts and event RSVPs, and records can link to one another. A relay aggregates and caches network activity; he says a similar node costs about $150 per month to run at the network’s current volume.

Independent apps can build on shared data

Abramov points to Bluesky, Smoke Signal, and Frontpage FYI as apps built on the protocol. Events are sent to consumers, which can process the record types they understand and ignore the rest. He says this could enable plugins and new apps that use existing identities or data, and that open-source repositories and relays could help keep the network usable if Bluesky shuts down.

Takeaways

  • Give users a way to move and host their data independently of your product.
  • Treat data exports as useful only if people can still interpret and use them.
  • Use application-specific record types so separate products can work with shared infrastructure.
  • A shared event stream can let independent apps react to user records without relying on each other’s APIs.
  • Consider the hosting and relay costs required to keep a user-controlled network available.

Mentioned in this talk

Search inside this talk

What was claimed 10

Show all 10 facts

Related talks

Web Without Walls, Dan Abramov · WhoBuilt