3-Stage Standards Process: Guaranteeing an open and decentralized ecosystem

FEP-a4ed: What is Fediverse?

TLDR: FEP Process should just scope itself, be unopinionated on what Fediverse is.


(Copied from FEP Process PR #544 comment thread to reach a broader audience.)

The proposed text by @silverpill to be added to “Scope and Objectives” of the FEP Process:

The Fediverse includes applications, services and communities using the ActivityPub protocol, its predecessors, and other historically related protocols that foster decentralized and diverse social media and culture.

Technically there is nothing wrong with the description itself. Fediverse indeed includes ActivityPub. However, what else does it include, right? Here I fully agree with @trwnh stating that:

i really don’t think that it serves anyone to draw a narrow scope of what is or is not “fediverse”, as the boundaries are a lot fuzzier than this. asking “what is part of the fediverse” is about as fraught as asking “what is a tree” or “what is a chair”, and we can’t exactly depend on an “i know it when i see it” approach.

And I think trying to define Fediverse is a fruitless exercise. The grassroots movement will decide what it means, and you cannot / should not dictate that. Also if we all create our own ‘spheres of influence’ based on protocol, then it is not much better than centralized platforms. The fediverse, the atmosphere, the veiliverse, the scuttlebuttiverse, mastodontoverse, threadiverse. People may choose these ‘pet names’ as they wish, but we shouldn’t formalise the folksonomy.

My pet definition of “fediverse” (note: no capital), now I have opportunity to throw it in:

  • Fediverse is a common category name, just like ‘web’ and ‘internet’.
  • It encompasses the installed base of social web technologies. Relates to the future of social networking.
  • It may also refer to the people that can be found via the social graph, fedizens.
  • The social web protocols are tech details lower down the stack, and irrelevant to the average fedizen.
  • And I also use “fedi” as a petname to refer to a subset of the fediverse, where an uplifting culture thrives.

Solution for the FEP

@silverpill’s worry is that it becomes very vague what is applicable to become a FEP. And that is a valid concern. The paragraph “Scope and Objectives” refers to the FEP Process, and NOT in my honest opinion to the Fediverse. And there is the solution.

  1. Who is the FEP Process targeting? What is the audience?
  2. What is the FEP Process for? What is the mission? Do we have a vision?

Re. 1) the audience we attracted to participate until now, are all ‘stakeholders’ of the AS/AP et al fediverse. Conform @silverpill’s description. And I think that for this FEP Process that should remain the audience. It does not just involve ActivityPub, but this set of closely affiliated open standards. We might explicitly list what is definitely in scope in terms of technologies, and we might extend the process where people can request that other technologies also become part of the scope. And leave that decision to discussion and review by the process itself.

On this basis we can filter what is and isn’t acceptible as a FEP. Best-practice is to discuss first, before writing the FEP document, if there is any doubt.

Re. 2) The objective is to mature and evolve open standards and enabling technologies - within our scope - so they support a healthy ecosystem of interoperable apps and services. For the FEP Process there is an important role to facilitate (together with other independent initiatives across the fediverse) a bottom-up grassroots standardization process, where eventually things become robust formal standards (at the W3C SocialCG and/or other standards bodies).

Did we ever define or revisit our (technology) vision of “the future of social networking”, and what that entails?

I think we have steps to make here, and the FEP Process should align to this vision. Currently there is a huge discrepancy to the promise of ActivityPub in terms of its conceptual design (“actors exchange activities”) and what we find on the wire (protocol decay, tech debt, whack-a-mole driven development, and ‘follow the leader’ post-facto interoperability). My old notes on major fediverse challenges are still as relevant today as they were in 2022.

So, if we restrict this FEP Process to a bounded set of open standards and technologies, how do we relate ourselves to other social web technologies that are also part of the fediverse (or the pet name you use for the same concept)?

It does not make sense to collect FEP’s for Bluesky, or Veilid, or XMPP, or Matrix. Though they may all be considered part of the fediverse. The FEP Process has no opinion on what is and isn’t part of the fediverse. It does have an opinion on what is to be part of the process.

If someone wants to submit the FEP document “Bridging to XMPP”, then that is perfectly in scope. “XMPP vNext” is out of scope.

TLDR: What is FEP Process?

The sentence may become something like:

The Fediverse includes applications, services and communities using the ActivityPub protocol, its predecessors, and other historically related protocols that foster decentralized and diverse social media and culture. The FEP Process aims to evolve the ActivityPub open standard and related technologies as listed below, with the express purpose to increase interopability, access and openness of the entire ecoystem and interfaces with other social web technologies (like XMPP, Matrix, etc.)

An explicit “Not in scope” paragraph might be added.


Update: Also cross-referenced to SWICG on Github so we can focus on alignment.

I think a three stage process just describes reality. There are a lot of technologies out there that have existed for 5, 10, or even 15 years, used daily in production, and yet are not well documented, much less presented as an FEP. Looking at the current FEPs, there is a lot of reinventing the wheel because people may not realize there is prior art.

It would be nice if there was a database of various implementations, just so that others know that they exist. Whether projects adopt them or not is up to each developer or team, but at least they could, if they wanted to, look at existing implementations before creating their own as inspiration. Plus, if they like what they see, they might be able to save themselves a lot of work by borrowing concepts from an existing implementation.

And having a database of existing work may also lead to more FEPs being created.

1 Like

For the reason of devs having access to existing work I created the 3 (and now 4) fedi-related delightful curated lists:

:gem: delightful fediverse clients (repo)
:gem: delightful fediverse apps (repo)
:gem: delightful activitypub development (repo)

I am making updates to these lists as we speak. I’d welcome co-maintainers from this community. At Social coding commons we are discussing some ideas for the ‘Delightful commons’ project as a whole, but for these fedi lists in particular I am thinking on reorganising to highlight more the fedi innovation areas.

Here’s how I see it (from There are many fediverses, which goes into more detail):

  • a fediverse is a decentralized social network of federated (i.e. interconnected) servers, and the people, communities, and organizations with accounts on them, that communicate through one or more protocols, bridges, and hubs.
  • “the Fediverse” is a fediverse whose boundaries, culture, software, protocols, change over time. and mean different things to different people but typically include a network organization based on instances, a specific kind of server . Since 2018 or so most people have used “the Fediverse” to refer to an ActivityPub-centric fediverse.
  • “the fediverse” can be a synonym for “the fediverses,” “today’s Fediverse”, or “the Fediverse”
  • "fedi culture" is a set of cultural attributes that came to the pre-ActivityPub Fediverse with the 2016-7 Mastodon/Glitch wave (although others use it more generally as “the culture of the fediverse”)
  • “fedi” can be a synonym for “the Fediverse”, “the fediverse”, “fedi culture”, the community aspects of the fediverse(s), or (less frequently) “the fediverses”

So fairly similar, although I’d use “fediverses” for the installed base of social web technologies. I think it’s important to keep the multiplicity and distinctiveness of different fediverses in mind.

1 Like

While I agree with all these definitions, for me they give to much wriggle room to have constructive talks about the future of the fediverse in large groups. It’ll cause too much vagueness and context collapse in discussions throughout the commons, imho..

On a personal basis, and for anyone coming along in Social coding commons I’m creating more precise definitions e.g. some below:

(Just typed on-the-fly this morning in chat. New coding.social website will keep a Glossary of Terms).

Similar to “America” versus “the Americas.”

1 Like