This thread at least implies a basic definition of the Fediverse: Fediverse = ActivityPub.
But there's more than "uses only ActivityPub and ActivityPub all the time" and "doesn't understand ActivityPub".
For example, there is (streams). It can speak ActivityPub. But it is not based on ActivityPub. It's based on Nomad. It also speaks Zot6. And its ActivityPub support is optional, both server-wide and per channel, although it's on by default in both places.
And then there's (streams)' big ancestor, Hubzilla. It, too, can speak ActivityPub. But it is not based on ActivityPub either. It is based on Zot6. It can speak a whole lot of protocols. ActivityPub support is established by an add-on named PubCrawl which, by default, is activated at server level, but deactivated on newly created channels.
Do both count as parts of the Fediverse because they both have ActivityPub support in some way?
Do both not count as parts of the Fediverse because neither of them is based on ActivityPub?
Do both not count as parts of the Fediverse because ActivityPub is optional at server level? Or because it's optional at channel level?
Does (streams) count as part of the Fediverse because new channels support ActivityPub by default, but does Hubzilla not count as part of the Fediverse because new channels don't support ActivityPub by default?
Does (streams) count as part of the Fediverse because ActivityPub support is built into the core, and does Hubzilla not count as part of the Fediverse because ActivityPub support comes from an add-on? (Side-effect, by the way: (streams)' directory lists actors using ActivityPub, Zot6 and/or Nomad, but Hubzilla's directory only lists channels using Zot6 in some way.)
Or would you draw the line around individual servers, i.e. Hubzilla hubs and (streams) servers do not count as part of the Fediverse if the admins have turned ActivityPub off server-wide?
Or would you go as far as drawing the line around individual channels, i.e. your (streams) channel officially leaves the Fediverse when you turn ActivityPub off, or your Hubzilla channel won't be part of the Fediverse until you install PubCrawl?
Any reason why "Fediverse" means "Mastodon with some extras bolted on, but still largely only a Twitter clone" here?
Any reason why someone whom I remember as a Hubzilla veteran completely denies the existence of Hubzilla and its descendants and mostly even disregards Friendica?
At least on Hubzilla (which I know from personal experience because it's my primary daily driver, believe it or not), these UX sins are partially an integral part of their concept and partly solved by their concept.
Sin #2: I, for one, do not want any algorithm of sorts to flush stuff onto my stream that I did not explicitly subscribe to. I only want to read what I want to read. I'm already busy curating, filtering and blocking stuff from those who decided to follow me, and whom I have to follow back. Also, getting rid of uninteresting cruft outside the scope of my channel coming from those whom I do give permission to send me their posts. I don't also want to go and filter the stuff that others on my hub post or have subscribed to, especially because I can't filter it by account/channel.
Besides, I only have one feed anyway. Public Hubzilla hubs do not have a pubstream at all, full stop.
That is, I don't use my stream anyway. I vastly prefer the unread messages counter.
(Then again, Hubzilla doesn't count non-technical folks who just came from the Twitter iPhone app as part of its target audience.)
Sin #4: On Hubzilla, private messages are private. Hubzilla has a thing called permissions.
Say, I send Alice a DM. I, as the starter of the conversation, only grant Alice and myself permission to view my start post as well as any comment.
Alice mentions Bob to pull him into the conversation. But Bob won't see shit because Bob isn't permitted to see shit.
I mention Bob to pull him into the conversation. But Bob won't see shit because Bob still isn't permitted to see shit. And even I, as the conversation starter and as the owner of the whole conversation, cannot change the permissions of anything in it after the fact.
Solved since 2012.
Sin #5: Hubzilla has full support for conversations as enclosed objects.
Like, I can use Hubzilla's search to manually import some Mastodon toot from somewhere in the middle of a thread. Then Hubzilla will go and reel in the whole branch of the thread all the way back to the actual start post. And the replies to that toot. And eventually the other branches as well.
Someone replies anywhere in the conversation, and I will receive that reply.
The only things that could meddle with this are filters on my side, Superblock on my side or someone else having blocked me. Then I won't get their messages, and I won't get any follow-ups either.
This also means that, taking the same toot as an example, if someone up that branch in the conversation has fully blocked me, I can't pull in their message. I can't pull in any follow-ups either, nor can I pull in any follow-ups of these follow-ups, so I can't pull in that particular toot either.
If something has a parent, and Hubzilla can't get the parent, then Hubzilla refuses to get that something as well.
AFAIK, even Friendica has always been behaving like this. Only that Friendica is the only one in the family that hasn't adopted FEP-171b "Conversation Containers" yet. It was invented on (streams), backported to Hubzilla and inherited by Forte.
Anyway, solved since at least 2012, if not 2010.
Sin #6: The whole family has very powerful search, including full-text search, since Mistpark's inception 16 years ago. It's part of their philosophy and culture.
Also part of the philosophy and culture on Hubzilla, (streams) and Forte: You don't want your stuff to be discoverable? Then don't make it public in the first place. Likewise with quote-posts: You don't want anyone to quote-post your stuff? Then don't make it public. Public equals fair game. Deal with it, or restrict the permissions on it.
This, again, is where permissions come into play.
Solved since at least 2012.
Sin #7: This, again, implies that everyone in the Fediverse wants content to be sent to them on a silver platter while, at the same time, not having access to groups in some way or another.
I can understand that Mastodon users want that because the concept of curating their timeline is alien to them. After all, they barely have the means to do so. And in fact, many Mastodon users randomly follow thousands of Fediverse actors to get the same deluge of uninteresting stuff in their timeline that they're used to from Twitter, hoping that something interesting pops up in-between. At the same time, the uninteresting stuff drowns the interesting stuff because nobody on Mastodon will ever scroll through all their unread content.
Also, sadly, this shows that the lack of groups is the default in the Fediverse because Mastodon neither has groups of its own nor really supports groups in any way.
I dare say that (streams) could be the champion of content discovery, all without shoving unwanted content down users' throats. Not only does it have full support for groups, but it has a Facebook-style directory that lists actors from all across the Fediverse as far as it's aware of them. And I myself am surprised about just how many of them a fairly young (streams) server with about a dozen channels can know.
You can even filter for groups, and then you get them all: Lemmy communities, /kbin and Mbin magazines, PieFed communities, Friendica groups, Hubzilla forums with and without ActivityPub, (streams) groups with and without ActivityPub, Forte groups if there were any, nodeBB subforums, Flipboard magazines, you name it, it's all there. Join with 1 click, adjust the contact settings if you wish, there you go.
Essentially, what Friendica needs a centralised website for, (streams) has built into each server, reachable from each channel. On 'roids.
If that's too difficult for you, then Facebook is too difficult for you.
Solved, too, unless the declared goal is for literally everything in the Fediverse to become a better Twitter. Including the stuff that's already better than Twitter because its concept and philosophy is to not be like Twitter at all.