2023-03-25

My wish list for future ActivityPub standardization and related activities in the Fediverse “commons”

By Johannes Ernst

https://reb00ted.org/tech/20230325-w3c-activitypub-wishlist/

Note: Newer version of this list is here.

There is some movement in the W3C to perhaps reactivate working on ActivityPub, the protocol that lets Fediverse apps such as Mastodon talk to each other and form a large, decentralized, social network.

I posted this to their mailing list recently. Sorry if this is a bit cryptic, it was written for a very specific technical audience. I have added a few annotations in square brackets to provide context.

What am I missing in my wish list?


Putting on my product developer hat, here’s what I want for Christmas:

A single-document basic [Fediverse] interop spec, ie.

  • when I have written code for everything it says, my code will interoperate in some basic fashion with all other software that has implemented this document
  • no need to consult or understand other implementations
  • may be quite basic, e.g. text content only, only a minimal set of activity types
  • enables implementors to have a “MVP”-style interop at lowest-possible engineering effort (including the time required to read/understand the specs!)
  • This could be done as a “minimal profile” of a stack that contains a subset of AP [ActivityPub], AS [ActivityStreams], and Webfinger

A test suite for that profile

  • suitable to add to my automated test suite
  • over time, this test suite can grow beyond the minimal profile

A branding program for products that have passed the test suite

  • As an implementor, you get to put the sticker on your product.
  • In particular, in the places in the product where users “connect” to other servers in the Fediverse, like “Visa” is displayed at the POS terminal
  • I believe this will become critical if/when larger orgs with potentially different value systems connect to the Fediverse

A set of web “intent buttons” for Like, Follow, Post, etc that work across sites

  • like they exist for centralized social media
  • as easy to use for the user
  • we can argue how this can be accomplished technically. I have opinions, but for this wish list, they are immaterial, as long as I get those buttons :-)

A standardized way to express terms under which content is provided

  • As I understand it, Bob Wyman calls that a Rights Expression Language
  • This probably should start with a use case collection

A design for search that meets the requirements of all relevant parties and points of view

  • This is probably far less a technical problem than one of successful communication

A design to reduce certain loads

  • Fan-out
  • Video
  • (Not my area of expertise, so I don’t have details)

Improved identity management across the Fediverse

  • Easy-to-use single-sign-on across servers. Use case: I use several apps for different content types (like micro blog and video). Bonus: they all post from the same identifier
  • Easy-to-use persona management. Use case: I have a personal and a work account, bonus if they can be on the same server
  • Identifiers not tied to the domain name system

Some of this squarely falls in the domain of this group [that would be the W3C’s Social Web Interest Community Group], some is adjacent. It could be pulled in, or it can be done somewhere else. I don’t particularly care about that either, as long as it gets done and done consistently with the rest.

Now I’m sure you all are going to tell me why I can’t have all those things for Christmas, and certainly not this Christmas. But I can wish, no? (More seriously, I think they are all essential for continued successful growth of the ActivityPub network as new parties connect)