what is a protocol?

- an agreed about set of rules or instruction
- think social protocols: only works if people actually use them
- difference between protocol vs. API? a protocol might be an API, but anyone can implement a protocol.
- examples in computing are HTTP (hypertext transfer protocol), TCP (transmission control protocol), IP (internet protocol!)
a history of alternative protocols
ActivityPub
federated, server to server
projects: mastodon, bookwyrm.social
Scuttlebutt
peer to peer, using pubs as relays, offline-first, transport agnostic (sneaker net, bluetooth, wifi), unlimited free identities, append-only-log
limitations: no delete, single device per identity, no groups
projects: patchwork, git-ssb, manyverse, planetary, ahau
NOSTR
grew out of scuttlebutt. makes delete possible. perhaps append-only log was unecessary for social media?
projects: planetary, many crypto things
ATProto
also grew out of scuttlebutt
focused on supporting "global town square" (global indexes)
"pragmatic decentralization"
concepts: pds, relay, firehose, labeler, feed, appview, plc directory
projects: bluesky, blacksy, leaflet, tangled, habitat
references: