Mastodon's Mastodon'ts.

There are a few fundamentally broken things about how Mastodon posts work that are terrible vectors for abuse, as well as being bad for basic usability. Maybe they are fixable, I don't know. To be clear: I am a fan of Mastodon....
jwz.org/b/ykC_

@jwz If your concept became reality, it'd create a third thread architecture in the #Fediverse.

#Mastodon and, AFAIK, everything else based on #ActivityPub has threads tied together from single posts more or less loosely.

#Friendica, #Hubzilla and #Streams have blog-style/Facebook-style/Tumblr-style/... threads which consist of exactly one post, the start post, and comments. Comments always inherit the access permissions of the start post. Whoever wrote the start post can delete any comment anywhere in the thread; I'm not sure if this deletion is actually being federated.

So, in addition to post-plus-post-plus-post and one-post-plus-comments, there'd be only-one-post-with-metadata. And the Fediverse projects would have to convert back and forth all the time.

@jupiter_rowland
So what?

Are you seriously saying: fixing these serious abuse and usability problems would make more work for a handful of programmers, so let's not do it?

@jwz That'd mean even more converting. Three thread formats mean that each project would use one natively and have to convert the other three.

This, in turn, would not work smoothly early on. Literally all Fediverse projects would have introduce support for this thread format the very instance it's introduced. If not, then Mastodon, after converting from post/post/post to post/metadata, would become largely incompatible with the rest of the Fediverse.

For Hubzilla and (streams) in particular, that'd mean not just a translator, but having to develop a way of tying what comes out of that translator into their very fine-grained permissions system.

And what will definitely never happen is the entire Fediverse switching from single posts or post-plus-comments respectively to post-plus-metadata natively. First of all, that's more projects than you may imagine.

Second, not all of the Fediverse is based on ActivityPub, nor was everything made after Mastodon to be compatible with Mastodon, thus ready to ape whatever Mastodon does. Especially Mario Vavti, current maintainer of Hubzilla (est. 2012, four years before Mastodon, and based on a protocol that'd wipe the floor with ActivityPub without breaking a sweat) said multiple times already that Mastodon and its devs will never bully him into anything, especially not anything that'd mean overthrowing Hubzilla's principles.

And third, especially in the cases of Hubzilla and (streams), the thread format can't just simply be changed like that. Half their permissions system is built around post-plus-comments, and their permissions system is way more extensive than someone who only knows Mastodon could possibly imagine in their wildest dreams. I wouldn't even be surprised if post-plus-comments was an integral part of the Zot protocol on which both are based.

What will definitely never happen is Hubzilla and (streams) dropping Zot for ActivityPub as their base protocol. If they did that, they'd throw away more than a decade worth of work and their unique selling point: #NomadicIdentity.
@jwz What do you expect?

Only Mastodon ripping out half its guts, switching to post-plus-metadata threads and becoming incompatible to dozens of other Fediverse projects until they introduce translators?

All ActivityPub-based projects switching to post-plus-metadata, no matter the effort?

Or all Fediverse projects switching to post-plus-metadata, no matter the effort, no matter what revolutionary killer features for 10+ years will have to be thrown in the rubbish for it?

@jupiter_rowland

In a certain way I think you have it backwards.

ActivityPub provides this metadata that Mastodon is currently ignoring and its user experience.

So in a way it’s not becoming incompatible but rather becoming more compatible, as it would be doing a better job of presenting the Fediverse stream information to its users.

But really, I don’t think any of that matters, I just think Mastodon should have the better experience for its users regardless of anything else, so when you talk about being incompatible, I’m okay with that, so long as it is being the best for its users and let other apps catch up if they need to.

@volkris The official specification for threads in the ActivityPub standard is to put comments/replies to posts, as in what are still posts themselves right now, into the metadata of posts? Because that's what the blog post suggests.

If that's the case, then everything in the Fediverse that's based on ActivityPub is doing it wrong. And not because everyone's aping Mastodon. Pleroma is based on ActivityPub, too, Pleroma is 3½ weeks older than Mastodon (I'm not even kidding), and AFAIK, Pleroma doesn't make comments metadata either.

But if Mastodon did that switch, it'd create a rift through the Fediverse. First, Mastodon itself would be split in two, in instances that run the new version with the new threads and those that have yet to upgrade. At least mutual comments wouldn't work.

Once Mastodon has largely been upgraded, the Fediverse would be split into Mastodon and everything else. Some users wouldn't even notice that their comments don't leave Mastodon. Others might wish that Mastodon finally took the step and became so incompatible that the Fediverse would finally be Mastodon only. That'd also solve the "issue" with quotes and full-text search available just about everywhere else and all those non-Mastodon projects "spamming" Mastodon timelines with posts over 500 characters.

Which of the other projects would follow suit, I don't know.

@jupiter_rowland

I think you are looking at it backwards, though.

Each UI participating in Fediverse can do its own thing. Each UI does what it needs to do for its users and its goals regardless of anything else.

So if one client does things different from another that doesn’t create a rift that is simply the way this works, with different clients displaying things differently according to different goals.

It’s not a rift. It is an entirely expected difference of application.

@volkris The belief that each Fediverse project is a different graphical front-end app for the exact same technological back-end is complete non-sense. It sounds like all Fediverse projects run the self-same back-end Web server technology and just put different Web interfaces or mobile apps on top.

#Firefish, formerly known as #CalcKey, is quite a bit different from #Mastodon. And it's still microblogging based on #ActivityPub.

#Friendica is vastly different from Mastodon, also because its base protocol is #DFRN and not ActivityPub. It has an add-on for ActivityPub connectivity.

#Hubzilla and #Streams are even more different from Mastodon. They're based on two versions of #Zot, and they even have an architecture that's extremely different from all other Fediverse projects, even Friendica included, and that wouldn't even be possible with ActivityPub.
Follow

@jupiter_rowland

I honestly don’t know what you are saying here because it sounds like you are proving my point.

It sounds like you are saying that I don’t recognize the diversity of interfaces and then you went on to talk at length about the diversity of interfaces.

@volkris And you don't seem to understand a word of what I'm writing because it goes against what you think you know for a rock-solid fact.

Namely that the #Fediverse is a standardised, unified server technology. And #Mastodon, #Pleroma, #Akkoma, #MissKey, #Firefish, #FoundKey, #Mitra, #Socialhome, #GoToSocial, #Plume, #WriteFreely, #Pixelfed, #Funkwhale, #Castopod, #PeerTube, #Owncast, #Mobilizon, #Bookwyrm and many others are just different graphical user interfaces for that self-same server technology. Like different iPhone apps for Twitter. That even #Friendica, #Hubzilla and #Streams are just alternative GUIs to Mastodon with one or two extra features.

This is completely wrong. This is so utterly wrong.

Each one of them is different server technology. In some cases less different, in some cases more different, and in the latter three cases vastly different.

Are you also convinced that everything started in 2016 when @Eugen Rochko (whom I totally have to drag into this thread now) created Mastodon? And everything in the Fediverse that isn't Mastodon was built around Mastodon?

You couldn't be wronger.

Mastodon started in 2016. ActivityPub was officially finally standardised in 2018.

But everything actually started as early as 2008 when @Evan Prodromou designed the #OStatus protocol and launched #StatusNet which was for Twitter-like microblogging already. To this day, AFAIK, nothing built around #ActivityPub federates with it directly.

#Friendica (official website), officially part of the Fediverse because it federates with Mastodon, is from 2010. Six years before Mastodon. Its underlying protocol, #DFRN, is from 2010, too. Both were designed by @Mike Macgirvin. That was long before ActivityPub was even an idea.

It was not even designed for ActivityPub. Get it?

Mike also designed the #Zot protocol in 2011, still long before ActivityPub, and invented #NomadicIdentity which ActivityPub still doesn't support.

Mike also launched #RedMatrix in 2012 as a fork of Friendica, now built around Zot. In late 2015, #Hubzilla (official website) emerged from Red Matrix. This is still before Mastodon.

Hubzilla is part of the Fediverse, too, because it federates with Mastodon etc., too. But it wasn't designed for ActivityPub either. ActivityPub is not even part of Hubzilla's core. The connector is in a separate code repository and developed separately.

Friendica and Hubzilla use add-ons to communicate through ActivityPub. In Hubzilla's case, this add-on is optional per hub (= instance) and per channel (not quite = account) and off by default in the latter case.

The current maintainer of Hubzilla, @Mario Vavti, has said that Mastodon will not pressure him into overthrowing basic design principles of Hubzilla. And "design" does not mean "UI design". "Design" may mean having to rip out Hubzilla's advanced, fine-grained permission control and security system or even giving up nomadic identity.
Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.