The next clash between Mastodon and the non-Mastodon Fediverse is imminent


Mastodon culture will declare alt-texts for profile pictures mandatory Fediverse-wide, but most Fediverse software doesn't even support them; CW: long (over 3,500 characters), Fediverse meta, alt-text meta, image description meta

So there's a new attack vector for Mastodon users against non-Mastodon users in the making.

Mastodon is rolling out alt-texts for what we on Hubzilla call the profile photo and the cover photo. It won't be long until it becomes mandatory in Mastodon's culture to have alt-texts for both these pictures. Regardless of how new this feature is and how many other features that were introduced between March, 2022 and now have not made it into Mastodon's culture and Mastodon's unwritten rules, by the way.

At this point, Mastodon's alt-text activists will start attacking anyone and everyone whom they catch without alt-texts for these two pictures. At least they'll lecture them about the importance of alt-texts. Or they'll block them outright.

What they won't realise:

  • Not everyone in the Fediverse is on Mastodon. Just because you see something on your Mastodon Web UI or in your Mastodon app, doesn't mean it's on or from Mastodon itself.
  • In fact, that particular user might not be on Mastodon.
  • Just because Mastodon rolls out a new feature, doesn't mean everything in the Fediverse rolls out the same feature at the same time. This means that there's a whole lot of Fediverse server software that does not offer alt-texts for profile pictures, and that probably won't offer them for quite a while or ever.
  • Also, Mastodon's culture is not and will never be the culture of the whole Fediverse. Sorry, Mastodon fundamentalists, but some software has been here before Mastodon, its culture is older than Mastodon itself, and it's technologically incompatible with Mastodon's unwritten rules.

Here on Hubzilla, where I'm posting from right now (in case you really thought I'm on Mastodon just like you), there is no such thing as a dedicated field for alt-texts anywhere. Even if you want to post pictures, there is no alt-text entry mask, and there is no alt-text database field for the images.

Instead, both images and alt-texts are handled like on a blog: You embed the image somewhere in the post text using markup code. In a sense, you program the image into the post. And if you want the image to have alt-text, you have to program the alt-text into the image-embedding code. If you're afraid of coding, Hubzilla is not for you.

But if there's no entry mask and no database field for alt-texts in posts, there won't be either for the profile images either. That is, unless Hubzilla adopts the alt-text field from (streams) and Forte where alt-texts can be added to uploaded images in the Photo app so that they're automatically inserted whenever you embed an image in a message. Using that alt-text field for profile images should be trivial then.

If you want or need the images in my profile described: I don't have a description for my profile photo. For my cover photo, I actually have two. They're both in this post: hub.netzgemeinde.eu/display/c7…. One is in the alt-text which you probably can't open when you're on a phone; the alt-text is 1,500 characters long, a bit over 1,400 of which are visual description. The other one is in the post text itself. But you'd better have a lot of time at your hand because it's over 60,000 characters long, and it'll probably take you a few hours to read it.

#Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #AltText #AltTextMeta #CWAltTextMeta #ImageDescription #ImageDescriptions #ImageDescriptionMeta #CWImageDescriptionMeta #Fediverse #Mastodon #Hubzilla #MastodonCulture #FediverseCulture #MastodonCentricity #MastodonNormativity

Roland Häder🇩🇪 reshared this.

in reply to Jupiter Rowland
The media in this post is not displayed to visitors. To view it, please log in.

@Jupiter Rowland So how do they think it can be enforced everywhere? Here on #Friendica we use [img=https://foo.bar/image.jpg]Some image[/img] But we actually have to type it in. It isn't forced.
Here is my profile picture as I have choosen it with the web UI.

It is without an alt-text per default. While choosing the image, there could be a <input type="text" /> being shown, maybe someone takes time to add that. But why make it mandatory when you can simply remove it from the entered text?
in reply to Roland Häder🇩🇪

@Roland Häder

So how do they think it can be enforced everywhere?


Just like they try to enforce anything everywhere.

  • They'll simply tell you to do it.
  • They'll lecture you about it.
  • They'll call you out if you don't do it.
  • Once they've caught you not doing it repeatedly, they'll insult you as ableist.
  • They'll block you. Before they block you, they'll announce in public that they'll block you because you're an ableist swine who refuses to add alt-text to his images, and they'll mention you so that you can see it.
    If you're only here to get and stay in contact with a select few people, none of whom are on Mastodon, you might not care.
    But if you need a certain amount of reach especially on Mastodon, this is bad.

I've seen all the above actually happen.

#Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #AltText #AltTextMeta #CWAltTextMeta #ImageDescription #ImageDescriptions #ImageDescriptionMeta #CWImageDescriptionMeta #Fediverse #Mastodon #Ableist #Ableism #AbleismMeta #CWAbleismMeta

Roland Häder🇩🇪 reshared this.

in reply to Jupiter Rowland
re: The next clash between Mastodon and the non-Mastodon Fediverse is imminent

@Jupiter Rowland
I've not yet seen any posts, attacking or otherwise, taking this stance, but I have seen quite a few Mastodon bios lately that seem to push it; things like "will block" or "will not boost" for posts without alt-text.

I have family who have varying levels of blindness who consume media from all over the internet. All of them have been quite thrilled about the state of these new robot assistants we all now have such easy access to.

Specifically assigned "alt-text" is never necessary. If you could be bothered to type up a meaningful post that accompanies the image, instead of just lazily reposting every shit meme you find without providing any context of what it means to you or why you want people to see it, this wouldn't be an issue that anyone thought needed fixin.

I'm sure there's a better way to describe it, but the word "gentrification" always comes mind when I see this sorta shit. I say fuckem, if that's the way they wanna play here, I prolly don't care read what they post about anyhow.

in reply to eshep

@eshep

I've not yet seen any posts, attacking or otherwise, taking this stance


Not yet.

Right now, this feature is only available in a development version of Mastodon and only on mastodon.social. Next will be the daredevil servers that run development code to be ahead of release in features.

But eventually, a new stable release will be rolled out with this feature. More and more servers will be upgraded to this new version with this feature. Once typical activist servers like beige.party introduce it, my prediction will come true.

I have family who have varying levels of blindness who consume media from all over the internet. All of them have been quite thrilled about the state of these new robot assistants we all now have such easy access to.

Specifically assigned "alt-text" is never necessary.


People who aren't sighted are usually happy about image-describing AI because it's better than nothing, and without image-describing AI, they've got literally nothing.

In fact, however, image-describing AI is just barely better than nothing, if at all. It describes stuff that doesn't matter. It doesn't describe stuff that does matter. Most importantly, it's unreliable and inaccurate. It hallucinates and describes stuff wrongly. However, people who aren't sufficiently sighted don't know. They can't verify whether what the AI says is true because they can't see the image well enough to be able to compare it with the description.

100% hand-written alt-text is always more reliable, more accurate and more fit for the context than AI-generated alt-text will ever be.

I know from first-hand experience. I've tasked an image-describing AI with describing an image which I've described manually with no AI help first, and then I've analysed the AI description and compared it with both the actual image and my descriptions. I've even done that twice. The results were abysmal.

#Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #AltText #AltTextMeta #CWAltTextMeta #ImageDescription #ImageDescriptions #ImageDescriptionMeta #CWImageDescriptionMeta #Fediverse #Mastodon

Unknown parent

@Chao-c'

Also, ALT text translates with the rest of the post, which can be helpful for images which contain only foreign language text.
Hubzilla is the most incompatible ActivityPub software in Fediverse. You do just lot of things wrong, to put it mildly.


You still seem to think that Gargron invented ActivityPub and the Fediverse, that Mastodon is the one and only reference implementation of ActivityPub, and that everything that doesn't work exactly like Mastodon is broken.

Here are the facts:

Mastodon was launched in January, 2016.

Hubzilla was launched in March, 2015. Counting an earlier incarnation named Red, it was created in May, 2012, when Friendica's creator re-wrote his own fork of a Friendica fork of his own.

Mastodon implemented ActivityPub in September, 2017, when the spec wasn't finalised yet.

Hubzilla implemented ActivityPub in July, 2017. Two months before Mastodon. Hubzilla was the first software to ever implement ActivityPub.

Hubzilla implemented ActivityPub strictly by the book. It has always tried to stick as close to the official W3C ActivityPub spec as possible.

Mastodon, in stark contrast, has always been stretching the ActivityPub spec until it broke. Not only that, but it has always been adding stuff outside the spec. First it did so to take over certain features from StatusNet which was its original protocol. More recently, it did so with the very intention to break compatibility with the rest of the Fediverse and make everything that isn't Mastodon look broken. And people like you keep falling for it because they think they know for a fact that Mastodon is the ActivityPub reference implementation.

The whole Fediverse has to break the ActivityPub spec just to be able to federate with Mastodon.

yes, the Hubzilla author is writing Streams, with nomadic identity, but it also means, that he understands, that Hubzilla approach is kind of dead-end.


You know nothing. Whereas I can rattle down the whole history from Mistpark in 2010 to today.

Mike Macgirvin, creator of Friendica, Hubzilla, (streams) and Forte created his post-Hubzilla server applications because he kept advancing the Zot protocol. And he couldn't implement these advancements into Hubzilla because they bore the chance of breaking compatibility with what already existed.

(streams) is not a completely new development, nor is it a straight Hubzilla fork.

(streams) is a 2022 fork of Roadhouse.
Which was a 2022 fork of either the third Osada or Mistpark 2020 or Redmatrix 2020.
Which were 2020 forks of Zap (or each other, but at least one of them was forked from Zap).
Which was a 2018 fork of either Hubzilla itself or the first Osada, which was a 2018 fork of Hubzilla.

Osada and Zap were created to develop Zot6. In its early stages of concept, Mike expected Zot6 to be incompatible with everything else. Mind you, he didn't see that as something bad. Advancing Zot was necessary because the then-current version of Zot was less than optimal. And Mike's vision was a decentralised, nomadic network named the "Grid", entirely based on Zot. The Grid would have been vastly superior to the existing Fediverse in every way possible.

So the issue with his early draft of Zot6 was that it was quite incompatible with non-nomadic protocols. Nomadic Zot6 content could not be translated into non-nomadic protocols like the diaspora* protocol or ActivityPub.

Thus, developing Zot6 on Hubzilla was out of question. Zot6 would have broken too much on Hubzilla. Besides, Hubzilla was bad as a platform to experiment on due to its wealth of supported protocols and other features, all of which would have had to be made compatible with Zot6.

And this is the real reason why Mike created Osada and Zap. From how I see it, and how I remember what he talked about back in the day (I was there, yes), he first forked Osada from Hubzilla. Then he ripped everything out that he didn't need, including support for all protocols except for Zot itself, ActivityPub, RSS and Atom, including the CMS stuff like articles, planning cards, notes, wikis and webpages, etc. Then he modified what was left against his early version of Zot6.

Then he discovered that a cloned Osada channel couldn't properly send content via ActivityPub.

Then, shortly afterwards, he forked Osada into Zap. He removed nomadic identity from Osada which kept ActivityPub and ActivityPub support from Zap which stayed nomadic.

The idea was to have a nomadic, cloned channel on Zap as your main channel that would only connect to Hubzilla, Osada and Zap, and to have an additional, non-nomadic channel on Osada that would serve as a "gateway" between nomadic Zap and the non-nomadic ActivityPub Fediverse.

Of course, this was highly impractical. But by 2019, Mike found a way to make Zot6 compatible with non-nomadic protocols. So, in early 2019, Mike discontinued Osada and forked a new Osada from Zap which only differred from Zap by having ActivityPub support while still being nomadic. This enabled Mike to have one development platform for Zot6 in conjunction with non-nomadic protocols and another one on which ActivityPub did not stand in the way.

Later in 2019, both Osada and Zap got stable releases. At that point, Osada and Zap were identical in code. Both had ActivityPub support. It was included into their cores now and no longer an add-on like on Hubzilla. They only had two differences. One was the branding. The other one was that Osada servers had ActivityPub activated by default, and Zap servers had ActivityPub disabled by default. Keeping Osada around was unnecessary now, so ActivityPub was activated by default on Zap, and Osada was discontinued. Zot6 was so stable that it was soon backported to Hubzilla.

Mike wasn't done yet, though. He now wanted to develop Zot8. Again, he did not want to develop protocol changes on stable production software that people potentially daily-drove.

Thus, three new forks emerged in 2020: another Osada, Mistpark 2020 (a.k.a. Misty) and Redmatrix 2020 (named after the Red Matrix, the name that Hubzilla bore from late 2012 to early 2015 between being created as Red and being re-branded into Hubzilla). Mike used them to develop Zot8. They were identical in all but brand identity.

This was fully intentional on Mike's part to confuse the hell out of the brand fetishists that were growing more and more numerous in the Fediverse. His goal was for people to declare Osada or Misty or Redmatrix the best Fediverse software and superior to everything else, just for him to tell them that Osada, Misty and Redmatrix are absolutely identical. In fact, the three remained identical to Zap in features.

Zot8 never got stable because Mike kept advancing it further and further. In early 2022, he was at Zot11. But Zot11 was so incompatible with everything else, including previous Zot versions, that Mike declared it a new protocol of its own and renamed it Nomad. In order to test-drive it, he forked Osada or Misty or Redmatrix into Roadhouse. After all, there were people who were daring enough to daily-drive production channels on Osada, Misty and Redmatrix, albeit only few. Roadhouse was still identical in features to Zap, Osada, Misty and Redmatrix.

It was now possible to crossgrade between Zap, Osada, Misty, Redmatrix and Roadhouse by simply rebasing the server code.

Later in 2022, he created a new fork of Roadhouse itself. The reason for this was not further protocol advancement. No, this time, it mostly had branding and licensing reasons.

First of all, he wanted to make that fork as easy for others to fork and adopt as possible. Everything he had developed so far was under the MIT license (he himself had relicensed Friendica under the AGPLv3 in 2011, but he didn't actually develop on Friendica; he developed on a fork named Free-Friendika that was still MIT-licensed and then backported the changes to the Friendica repository, and Red was a Free-Friendika fork). This new repository was released into the public domain. At first, the whole thing was never primarily intended to be installed on servers as it was, but rather to be forked as the base of something new.

At least the core and Mike's own add-ons were. What third-party add-ons from Hubzilla times were still there got to keep their maze of licenses. This was intentional on Mike's part, too. It would make it impossible for commercial players to scoop up the whole thing and relicense it into something non-free and commercial without breaking any licenses, or without pumping tons of money into their legal department to work around that maze of licenses.

Also, Mike removed any and all naming and branding from the software. He absolutely intentionally made it nameless. You've read that right. He did this for two reasons. One, whoever wanted to fork it would have to give the fork an individual name and an individual branding. Two, this was to mess with brand fanbois and brand fetishists even more: This thing had no brand to gush over to begin with.

Furthermore, Mike removed all nodeinfo code that he could possibly get away with removing. Again, this was intentional. One intention was to stop this software from automatically joining the "my Fediverse project is bigger than yours" and "my server is bigger than yours" rat races. He intentionally did everything he could to keep this software away from The Federation, Fediverse Observer, FediDB and the like.

The other intention was for the case of commercial players looking for free code to steal. If this software had really taken off and left its stats proving its popularity everywhere, some big commercial player would have been likely to try and steal this software, make it commercial and non-free and release it as their own original creation. So his intention was for them to not even be able to find it in this case. (This, by the way, was the reason why he relicensed Friendica under the AGPLv3, and why he hardly ever spoke about Free-Friendika: Now that Friendica was growing popular, he didn't want big commercial players to scoop up code of his under a license that they could change to non-free.)

This server application became the first and only one in the Fediverse with no fixed server type identifier, in fact, with none at all by default. It has one text field for the server name, just like Mastodon and Friendica and Hubzilla and the like. But it has an additional field where the server type, i.e. the identifier for the software, can be entered. If none is entered, it's derived from the server name. Mike used to have a server that identified as "Y" because, as he said, "Y is not X."

While the application itself is nameless (for it still is), the code repository did require a name of sorts. Mike named the repository "streams".

Now, the community needed something to call that nameless software when they spoke about it. So they unofficially established "(streams)", complete with parentheses that make sure that this is not actually the name of this software. Those who say, "Streams," with a capital S and no parentheses, and who use that term as if it's an official name, usually sincerely believe that this is the official name.

Mike himself uses "streams" without the parentheses because even he needs something to call his own software by. Before Forte was made, he preferred talking about the streams repository without directly mentioning the software. And he himself denied that (streams) is even a project. It's just a bunch of code that runs.

As far as I know, it was now possible to freely crossgrade between six different server applications because they were still identical in features. Only that Mike also had six server applications to take care of now.

So on December 31st, 2022, Mike discontinued Zap, Osada, Misty, Redmatrix and Roadhouse. Admins who ran either of these on their servers were recommended to rebase their servers to the streams repository. In this case, by the way, the old branding was kept. I've seen a server that still had "zap" as its subdomain which indicated that it was set up as a Zap server, that had Misty branding, but that actually ran (streams).

From then on, Mike dedicated his time to maintaining and developing only the streams repository. He still occasionally helped Hubzilla out, though.

In 2023, the Mitra creator and developer silverpill approached Mike. The goal was to make Mitra nomadic. I guess earlier attempts using a blockchain and crypto technology didn't come to fruition, so it had to be Mike's way which had proven itself stable for more than a decade. However, Mitra was to remain based on ActivityPub.

It was in this exchange that Mike realised that ActivityPub could indeed be used for nomadic identity if a few things were added to it. One outcome was FEP-ef61 "Portable Objects" which introduced decentralised IDs (DIDs) that would not be bound to any one server domain.

Instead of creating a whole new server application to play with, Mike simply made a "nomadic" branch in the streams repository (even though the software was already nomadic) in which he implemented support for nomadic identity via ActivityPub. Support as in (streams) understanding it while internally still using Nomad for nomadicity.

In June, 2024, Mike considered the "nomadic" branch reliable enough and merged it into the "dev" branch.

In July, 2024, Mike merged the "dev" branch into the "release" branch which caused DIDs as per FEP-ef61 to be rolled out to existing production servers. On accounts created on this new version, channels would have a DID internally. On accounts greated on any previous version, even new channels would keep the old ID system for the time being. This way, existing accounts and channels weren't messed with.

However, what had worked under supervised and restricted lab conditions completely blew up under real-life conditions. Again, I was there on (streams) with a pre-DID account and two channels on it. I still have them. (streams) channels wouldn't federate with anything anymore. It had become impossible to send anything anywhere. What Mike was facing was nothing short of an enigma because not even he knew what was going in.

So he started tinkering. In mid-August, Mike forked the streams repository into something named and branded Forte. He did so so he could rip the Nomad protocol out while still keeping the entire functionality. He had to get rid of Nomad because he had discovered that (streams) got confused juggling all the many IDs it had to deal with, so he had to weed out the Nomad and Zot6 IDs to make things easier. But he couldn't possibly have done that on (streams) proper.

This way, Mike created the very first Fediverse server software that uses ActivityPub for full nomadicity, including cloning.

By the end of August, things got back to normal. But Mike, having spent every free minute in the last few weeks to get (streams) back into working condition, was burned out. He sent an open message around in which he declared that he would completely retire from Fediverse development, and both the streams repository and Forte were up for grabs.

But nobody was found who could take over either. (streams) and Forte probably had way fewer than 100 users combined. Those few who would have been able to maintain either didn't have time. One did have time and was willing to do so, but he didn't know how to code. He eventually did start teaching himself, and he occasionally contributes merge requests, but there was no way he could take over as the only dev for either, much less both. So Mike had to go on, whether he wanted or not, albeit at a somewhat slower pace.

This is why Mike is still developing (streams) and Forte to this day.

By the way: The reason why Mike "abandoned" his old software was because he needed to invest all his time into protocol development and advancement. Mike isn't the one to constantly maintain stable server software unless he absolutely has to.

In 2011, he handed Friendica over to two new developers so that he had time to create the Zot protocol.

In 2015 already, he handed Hubzilla over to two new developers so that he had time to explore the advancement of the Zot protocol. He still contributed to Hubzilla's development.

In 2019, he wanted to hand Osada and Zap over to the community, now that they were stable, so he had time to develop Zot8. But the Osada/Zap community was so tiny that he couldn't get a new dedicated developer team together.

In 2024, he wanted to hand (streams) and Forte over to the community because fixing (streams)' huge identity bug, which led to Forte's creation, had burnt him out. He wanted to quit. But, again, he couldn't because (streams) didn't have a single user who had both the time and the knowledge to take over as the new main dev.

Consider this: Gargron was a young man when he made Mastodon. I think he was still at university. Mike Macgirvin made Friendica, he had some three decades of professional work in IT and software under his belly. Gargron was at the beginning of his career. Mike had quit and moved from the USA to the western Australian outback where he has been living as a farmer ever since. He might actually be older than Gargron's parents.

while nomadic identitity would be cool thing, currently it does not exist


Take off your Mastodon glasses and look at the Fediverse and what it actually is like.

Nomadic identity does exist. Not as a vague idea, not as a concept on paper, but as a stable, production-grade feature that has been used to its full extent for well over a decade now. Just because Mastodon doesn't have it, doesn't mean the Fediverse doesn't have it. And just because Mastodon doesn't recognise it, doesn't mean it doesn't exist.

The Fediverse has loads of features which Mastodon users want "the Fediverse" to have. It has features which many Mastodon users have never wanted "the Fediverse" to have such as quote-posts, introduced by Mike Macgirvin on Mistpark in 2010. It even has features that are completely and utterly unimaginable for Mastodon users, and it has had even these since as early as 2010, 2012 or 2015.

Nomadic identity was invented by Mike Macgirvin in 2011 with the Zot protocol.

It was first implemented by him in mid-2012 when he rewrote Red against Zot. This means that Hubzilla itself has been offering full-blown nomadic identity since 2012, almost four years longer than Mastodon has existed.

This very Hubzilla channel that I'm commenting from right here, right now, is actually nomadic. It is cloned across two servers: hub.netzgemeinde.eu and hub.hubzilla.de. And it has been since before Elon Musk announced to take over Twitter in early 2022. When I sent you this comment, it was automatically sync'd over to hub.hubzilla.de. When you sent the comment that I'm replying to, it was automatically sync'd over to hub.hubzilla.de. The clone has actually been of great help at least once.

Unfortunately, non-nomadic software identifies cloned channels as fully separate accounts with fully separate identities. But rest assured: @Jupiter Rowland on hub.hubzilla.de is my clone. It's the live, hot, real-time, bidirectional backup of the main instance of my channel, @Jupiter Rowland on hub.netzgemeinde.eu that you're following now. They're both one and the same channel with one and the same identity, jupiter_rowland@hub.netzgemeinde.eu, even though Mastodon is unable to see it as such. Go check both. You'll see they've got all the same content in them, including comments from others. Including your comment. How else can jupiter_rowland@hub.hubzilla.de possibly have one of your comments under a post if you've only sent that comment to jupiter_rowland@hub.netzgemeinde.eu if it weren't for nomadic identity?

Even nomadic identity via ActivityPub is available as a stable, production-grade feature in stable, production-grade software right now as we speak. Forte was the first to be fully nomadic via nothing but ActivityPub, as of mid-August, 2024. Tootik, based on Gemini instead of the World Wide Web, is fully nomadic at server level, too. Mitra is fully nomadic by means of the Minimitra client.

#Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #Fediverse #Mastodon #MastodonCentricity #MastodonNormativity #QuotePost #QuotePosts #QuoteTweet #QuoteTweets #QuoteToot #QuoteToots #QuoteBoost #QuoteBoosts #QuotedShares #QuotePostDebate #QuoteTootDebate #ActivityPub #Zot #Zot6 #Zot8 #Nomad #Friendica #Red #RedMatrix #Hubzilla #Osada #Zap #Mistpark #Mistpark2020 #Misty #Redmatrix2020 #Roadhouse #Streams #(streams) #Forte #Tootik #Mitra #Minimitra #NomadicIdentity

in reply to Jupiter Rowland

well, I am probably in between Gargon and Mike Macgirvin, when talking about age. Anyway, I never thought Mastodon was first.

The wiki reveals even different timeline:
en.wikipedia.org/wiki/Activity…

To me, it seems, that Gargon simply was not as colossal nerd, as others, and somehow managed to create cult following of sufficient number of users, which were not really techies.

While Mastodon seems very simple and feature lacking, it is still very hard to explain to people without technical background, like journalists. And it is hard to motivate people to move from corporate platforms to alternatives.

I was thinking about need for decentralized social media since at least 2009, as I was watching the old web to slowly loose any relevance. (My Facebook account was canceled without any explanations as soon as perhaps sometimes like 2010?). I was thinking about basing it on bunch of combined RSS feeds, the publicly compatible vs. the activity stream, which is not so different from from like ActivityPub is made today, except that signing of content with public keys is more advanced concept, that what I was able to imagine.

I created first account on mastodon.social in 2018 and for two years, nothing much was happening. In 2020, I incited existence of mastodon.pirati.cz, the server of Czech Pirate Party, but I manged to get f.cz running only in 2023, year after the Twitter exodus of 2020, when most other Czech instances appeared.

The problem I have with Hubzilla is that I don't like how mentions and hashtags are handled. At least you learned, that I am aware of nomadic identity, which would make the Hubzilla status markup somehow meaningful, but without it, the context is next to useless - in most Fedi apps, not only Mastodon.

The only "breaking of ActivitPub" I am aware of is the consent based quoting.

BTW, all specs on the Internet evolved, Netscape played major role in evolution of HTTP, HTML, Javascript...

in reply to Chao-c'

@Chao-c'

The wiki reveals even different timeline:


"The wiki" sounds funny to someone who has three wikis of his own on his Hubzilla channel. Anyway...

To me, it seems, that Gargon simply was not as colossal nerd, as others, and somehow managed to create cult following of sufficient number of users, which were not really techies.


Gargron simply was lucky.

I think it was in 2016 already that German tech media got interested in decentralised alternatives to corporate silos. Mastodon caught their interest, being developed in Germany and all. Pleroma didn't, in spite of being developed in Germany, too, not to mention more feature-rich than Mastodon. Friendica was developed in Germany back then already, too, but it seemed like either tech media weren't interested in alternatives to something that needed alternatives much more than Twitter, or Friendica managed to continue to fly under the radar even then.

Anyway, Mastodon got media coverage, and nothing else did.

In 2017, right-wingers started attacking furries and queers on Twitter. They had to escape somewhere. Tumblr wasn't it, having been pretty much killed by being bought out and G-rated. But someone happened to know Mastodon due to the media coverage whereas nobody happened to know Pleroma due to no media coverage at all. So those furries and queers escaped to Mastodon. "Awoo" was briefly part of Mastodon's culture in the late 2010s due to the high furry-to-non-furry rate.

From then on, Mastodon had the two advantages of past media coverage and more users. The rest was like a snowball, essentially. The more users something has, the more users something gains by inviting them.

I guess Friendica and Hubzilla, both of which already existed back then, suffered from the same choice of mindsets: "If you build it, they will come," "We'll first need to get this and that fixed before we're ready for prime time," "Can't someone else take care of that? I'm bad at advertising stuff!" Plus, of course, people who really were bad at advertising stuff to anyone who's neither a developer nor a server admin.

I was thinking about need for decentralized social media since at least 2009, as I was watching the old web to slowly loose any relevance. (My Facebook account was canceled without any explanations as soon as perhaps sometimes like 2010?).


In 2009, there already was StatusNet. Granted, it was so obscure that vastly more people knew the "lighthouse server" Identi.ca than StatusNet itself. StatusNet supported the Twitter client API, but there were vastly more mobile apps that were hard-coded to Identi.ca than such where you could choose a StatusNet server because the huge majority of those who knew Identi.ca didn't even know it was part of a network. Identi.ca held some 90% of all StatusNet users.

By the way, what killed StatusNet was when Identi.ca changed its backend from StatusNet to pump.io and its protocol from OStatus to ActivityPump, thus becoming incompatible with the rest of StatusNet. What remained was largely unable to stand alone. What kind of helped Identi.ca (OStatus as a profile sucked so badly that Evan and Erin themselves had to whip up ActivityPump) did the opposite to StatusNet. A bit later, the FSF scooped it up, forked it to GNU social and eventually merged what was left of StatusNet into GNU social. It got ActivityPub support later on, but it's gone now, too.

Also, in 2010, Mistpark was around, and so was diaspora* (or what already existed of it at that time). diaspora* had tons of advance publicity due to its crowdfunding stunt, but then the four devs didn't manage to deliver before public interest had faded away, even with Mike's help on the protocol (not even kidding here). And speaking of Mike, he built Mistpark, but almost nobody came because he did nothing in terms of advertising. Even though Mistpark of May, 2010 was more powerful than diaspora* is today. Even though Mistpark took two months for a public alpha and four for a stable point release whereas it took diaspora* years to go beyond alpha, not to mention the entire development team being replaced.

I guess you would have been a prime Friendica user candidate. Particularly, you would have been one of those who were happy on a Friendica node without the performance-hogging Facebook connector in times when everyone was seeking out and piling onto the nodes with that connector, just to see them close registration at not even 150 accounts.

I was thinking about basing it on bunch of combined RSS feeds, the publicly compatible vs. the activity stream, which is not so different from from like ActivityPub is made today, except that signing of content with public keys is more advanced concept, that what I was able to imagine.


Well, they say that ActivityPub is glorified RSS with a rubbery spec.

#Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #Mastodon #Pleroma #StatusNet #Identi.ca #GNUsocial #Friendica #Hubzilla #OStatus #ActivityPump #ActivityPub

Unknown parent

@Chao-c'

BTW I had account on identi.ca, which was StatusNet powered (I believe).


It was. At least until Evan and Erin could no longer justify it running on that janky OStatus protocol. The result was the ActivityPump protocol, the pump.io software and Identi.ca's switch to pump.io with all hands on board.

Yes, and it should not be implemented in Ruby or PHP or something like that. I have seen one online discussion forum being rewritten from PHP to Rust few years ago, and the improvement in responsiveness of the web platform was amazing. (I do C, not Rust, but C is too oldschool now, and the performance penalty of Rust is minor, probably not noticeable at all)


This reminds me of how the Fediverse is all over the place in terms of programming languages. Everyone has their own Holy Grail.

Friendica and its descendants are written in PHP. They may not be the fastest (even though what bogged down early Friendica were its heavyweight federation connectors to everywhere, especially the one for Facebook that came in 2011). Mike either discarded or rewrote these when he rewrote Red. But they happily run on a run-of-the-mill LAMP stack.

Mastodon is written in Ruby on Rails. Hubzilla runs circles around it in terms of performance per account/channel, and that has to say something. The only thing that managed to top this was early diaspora*, written in Ruby on Rails for Mac with MongoDB as the database system.

The *omas are built in Elixir. Granted, they're utter featherweights, especially considering their features. They're legendary for their low server impact. Then again, Pleroma apparently is spaghetti code straight from hell. Its own devs often don't have a clue where to go look for bugs, much less how to fix them. (Miraculously, the Akkoma devs do manage to get ride of quite a number of them.)

The *keys are built in TypeScript and Vue.js. I guess one reason why Misskey is infamous for having so many forks and forks of forks is because there are tons of people who can code in JavaScript, the primary mobile programming language.

Iceshrimp.NET is a still very incomplete "rewrite" of old Iceshrimp in C#. It was largely tackled to get rid of all those nasty bugs inherited from Misskey that even Misskey doesn't manage to get rid of. I've heard quite some outcry: Iceshrimp.NET is a sell-out to Microsoft. I guess whoever uttered that didn't go check who owns TypeScript.

PieFed is a dead giveaway: Python. And PieFed makes more headlines in the Threadiverse for server politics than for its underlying technology, except that Lemmy pales in comparison.

GoToSocial is a dead giveaway, too: Go. And it was one of the first Fediverse server applications to not come with a Web UI. Those who use it for a single-user server often don't even bother installing one and use some Mastodon app or other instead. Besides, why drag around a Web UI if there are much better third-party Web UIs than whatever you could whip up?

#Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #Mastodon #Friendica #Hubzilla #Pleroma #Akkoma #Misskey #Forkey #Forkeys #Iceshrimp #IceshrimpJS #Iceshrimp.NET #PieFed #GoToSocial #PHP #RubyOnRails #Elixir #JavaScript #TypeScript #VueJS #C# #Python #Go

in reply to Jupiter Rowland

as I said earlier, I am fascinated by SNAC2 written i pure C :-)

At one point at time, I had a project of template processor, compiling page templates directly to C binary and then running them from fastcgi module (these days it was Apache, but fastcgi in nginx would be even faster).

I was thinking about decentralized federated social networking (or blogging, chatting) for years, but the issue I had on my mind was always the performance, not the protocols. But the web architecture got way too complicated over the years - even 20 years ago, it was already pretty complicated.

Anyway, to redirect millions of corporate users to independent federated environment, you need more than a bunch of buggy, 10 years old apps in various obsolete scripting languages. Mastodon is not ideal, but at least maintained.

For me, the issue is not "Mastodon dominance in Fediverse". The problem is rather "why people trust BlueSky, instead of us"? Currently, being as visually compatible with BlueSky, as possible, is probably the only way to persuade at least some BlueSky users, that Mastodon is actually way to go.

in reply to Chao-c'

Chao-c wrote:

The problem is rather "why people trust BlueSky, instead of us"?


marketing is another reason, they have spent money and time on marketing their platform whereas independent community driven platforms don't see value in marketing since they're not trying to sell anything.