Emergency account of a not-so-average OpenSim avatar. Mostly active on Hubzilla.

  • 2 Posts
  • 65 Comments
Joined 1 year ago
cake
Cake day: June 25th, 2023

help-circle

  • Still, the issue would be to find all instances of all Fediverse server applications.

    I mean, the idea was to cover the whole Fediverse with that search. Literally everything.

    Like, imagine I spin up my own instance of Forte on a home server to try it out and see if it already works.

    How’s a Fediverse search engine supposed to know about my brand-new Forte instance? Clairvoyance? Hah. A crawler? Yeah, right, as if any crawler out there was fast enough to discover a brand-new instance of something that doesn’t have a running instance at all yet. At least not beyond enclosed, experimental instances detached from the rest of the Fediverse.

    I mean, instead of Forte, I could also install what Forte was forked from, namely something colloquially referred to as (streams). Something that intentionally doesn’t have a name, doesn’t have a brand identity, doesn’t have a unified server identifier. Unlike Mastodon whose instances all identify as “mastodon” and Lemmy whose instances all identify as “lemmy” and Hubzilla whose instances all identify as “hubzilla”, (streams) instances don’t all identify the same. That field is customisable. And it has been customised for as long as (streams) has been around. You can’t reliably crawl (streams) instances. Instead of “streams”, they can identify as “y” (because Y is not X) or “get ready to rumbly” (public instance actually) or “bunny of doom” or “diversi spiritus”.

    In fact, crawlers would have to be able to identify any kind of Fediverse server software. Even if someone has only just forked something, a crawler would be able to recognise it as Fediverse server software. If you hard-code server identifiers into the crawler, it’d be out-of-date as soon as someone decides to fork Mastodon or Misskey or Firefish or Sharkey or whatever again. And, as mentioned above, you can’t crawl (streams) instances by identifier.

    It simply is impossible to discover and index the whole Fediverse by crawling, Google-style. And if a Fediverse search engine can’t discover a (streams) instance that identifies as “y”, it can’t index the content coming from the man who created (streams) and Forte and still occasionally develops both. The man who created the oldest still existing Fediverse project, Friendica, as well as the Swiss Army knife of the Fediverse, Hubzilla, and the very concept of nomadic identity. One of the most competent and experienced Fediverse devs ever. A crawler couldn’t find him.

    Still, the search engine needs to know all Fediverse instances, right?

    Well, if crawling fails, and crawling does fail, there’s only one way to achieve that: Each instance would have to announce its presence to anything that’s supposed to be able to search the Fediverse.

    But in order to be able that, each instance would have to know everything that can search the Fediverse. And all instances of it. Every single one of them.

    And if it shall announce its existence when it spins up for the first time, it will have to know all these search instances immediately before spinning up.

    How can it possibly know them all before even going online itself?

    Two options. Either a centralised list of all search instance that’s being updated as soon as a new one is spun up.

    But you said, “federated.” As in not centralised.

    Or the list would have to be built into the source code as it’s being git pulled from the code repository. In fact, the list would have to be git pulled from the code repository immediately before the server spins up so that it’s up-to-date when the server spins up. This would mean that the whole server software would have to be updated before start-up.

    Of course, each Fediverse server software project that’s started from scratch would have to implement this list, otherwise its instances couldn’t be found.

    But how is this list supposed to be kept up-to-date?

    I mean, let’s suppose what has been spun up here is something that has Fediverse search built in. It itself would have to be added to this list so that other new instances can announce themselves to this new instance, so that it can find them and index their content.

    So how is this new search-equipped instance supposed to be added to the list of search instances?

    Shall it add itself to the list by manipulating the production code of all Fediverse server applications that have Fediverse search built in? Past the maintainers and without their consent?

    Perfect search that covers 100% of the Fediverse has to rely on lists of some kind, that’s clear. The Fediverse changes too quickly to be crawlable. It’s too diverse to be crawlable. And it has server software which itself is inherently uncrawlable because it’s undiscoverable by design.

    But such lists are impossible to always be kept up-to-date, too.


  • Feels like the A.1 issue of Mastadon as a platform. If person A on instance Q wants to follow person B on instance R, there’s no straight line easy path to do that. Compared to Twitter or BlueSky or Threads, where its all one ecosystem and you just say “I’d like to follow @LieutenantDickweasel” and now you’ve got their posts in your stream, Mastadon is byzantine and not worth the effort to explore.

    You do know that the Fediverse is more than just Mastodon, Truth Social and the Threadiverse?

    Search that covers 100% of the Fediverse is technologically impossible. Any Fediverse-wide search would need to know all of the Fediverse. All of it.

    Like, let’s suppose R is B’s personal instance. Let’s suppose B spins up the instance for the first time. Any all-encompassing Fediverse search would have to know about it immediately. The very millisecond Apache or nginx or whatever comes to life, that search would have to know it’s there to be able to always cover exactly 100% of the Fediverse.

    How’s that supposed to work?

    If it’s one centralised search engine, it would have to be hard-coded into the source code of every last Fediverse project out there so all new instances can automatically announce their existence to the search engine.

    And that’s not four projects or so. It’s over 100. Not only Mastodon, Lemmy, Mbin and PieFed. It’s also Ecko and Hometown and Glitch and many other Mastodon forks. And Pleroma and Akkoma and other Pleroma forks. And Misskey and Firefish and Iceshrimp and Iceshrimp.NET and Sharkey and CherryPick and Catodon and Meisskey and Tanukey and Neko and dozens upon dozens of other Misskey forks. And Mitra. And Socialhome. And GoToSocial. And micro.blog which, by the way, is closed-source. And Friendica and Hubzilla and the streams repository and Forte. And Pixelfed. And Funkwhale. And Bandwagon. And Castopod. And PeerTube. And Owncast. And Mobilizon. And Gancio. And BookWyrm. And Flohmarkt. And so forth.

    It’d be even worse if it was supposed to be built into the Fediverse projects themself. Like, you could search the whole Fediverse from Lemmy’s Web interface or any one Mastodon app.

    That’d require each new instance to announce its instance to each running instance.

    That’d require each new instance to know all running instances immediately.

    That’d only be possible by building a list of 20,000++ Fediverse instances into every last Fediverse server software repository so that it’s installed along with new instances.

    And that list would always have to be up-to-date.

    So when B spins up R, the following would have to happen:

    • R git pulls the most recent version of the main branch of Mastodon’s source code to have a most up-to-date list of active instances possible.
    • R starts up.
    • R announces its existence to the 20,000++ Fediverse instances on the list.
    • R goes through a list of all Fediverse server application code repositories which it has pulled from the Mastodon code repository as well.
    • R announces its existence to every last one of these repositories by creating a new branch, editing the list of active Fediverse instances, submitting the edit as a pull request and merging its own new branch into the main/stable/release/… branches of all these code repositories.

    Any Fediverse server out there would be able to hack into any Fediverse server code repository and manipulate the production code. Otherwise, this whole thing couldn’t work.

    Fediverse server code repositories would be flooded with automated pull requests plus mergers. Oh, and if Mastodon can add a new instance to a list in the Mastodon production source code, anything could remote-manipulate anything in the Mastodon production source code.




  • If you really want entire lemmy instances to be 100% meme-free, the mods would have a lot to do because they’d have to read through every last post and comment.

    Just like not every picture with text in white Impact with black outlines is a meme (it has to be established as such), memes aren’t only pictures with text in white Impact font with black outlines. In fact, they aren’t always pictures. They can just as well be text, embedded in other text.

    Any catchphrase can be a meme. Snowclones are memes, too. Snowclones are the memes of the analogue era. They date back to the analogue era, to the mainstream media of the 1970s, the 1960, the 1950s, as far back as William Shakespeare, as far back as ancient Rome, and I’m pretty sure there are snowclones from ancient Greece.

    I can’t imagine the mods of any one Lemmy instance reading through all posts and all comments and sanctioning everyone who has dared to use a decades-old snowclone in it.

    (Whoever finds a meme in this comment may keep it.)


  • They’re all about saying as little as possible using a slightly altered version of a scripted scene.
    

    More like using as few words as possible while relying on the scene for the context.

    Exactly that. And especially in social media, this is of imminent importance. Always remember that the Fediverse is not only Lemmy.

    I’m mostly active outside the Threadiverse. The Fediverse outside the Threadiverse is dominated by Mastodon and thus by people who refuse to read anything that’s over 500 characters long.

    But I’m not on Mastodon myself. I’m on something that doesn’t have a character limit. So the thoughts that I pour into posts are not necessarily simple enough for 500 characters. They don’t have to.

    So I could write an essay about them. Thousands of characters. But many Fediverse users (remember that Mastodon is 70% of the Fediverse) will ignore it because it’s too long, because it’s over 500 characters long.

    Or I could pick an appropriate meme template that’s best at expressing my thoughts and feelings and make an image macro out of it, adding my own text. By the way, I mostly hand-craft my image macros in GIMP. And then I post that.

    Sure, I do add some explanation afterwards where explanation is due. I link to the KnowYourMeme entry that explains the used template(s), and I link to what my image macro is about. If I can’t link to the latter, I explain it in my own words. But I do so after the image. If you don’t need these explanations, if the image macro works for you without these explanations, you can skip them without having to skip the image macro.

    A few examples (content warning: all these links lead to meme content):

    You could ramble on and on about how tricky and difficult something is. Or you can let Boromir speak for yourself: One does not simply implement FEP-ef61. If you think I’m just too lazy to type, check out the 25,000 characters of explanations right below. That was before I was told that linking to external sources is actually more convenient for readers than having such a massive pile of infodumps within the post iself.

    Here, I’ve commented on the bleak future (or total lack thereof) of three Fediverse server applications in only one fully hand-crafted image with only few words. This time, the templates weren’t images but phrases (“That’s cute”, “Bitch, please”). For comparison, the whole situation is explained below. Notice what a wall of text it is. Imagine exposing someone who’s used to Twitter to so much text.

    Another example: I could say that the history of Mike Macgirvin’s Fediverse creations is pretty complex. You wouldn’t have an idea of how complex it is. Or I could use the Pepe Silvia template to illustrate it. That’d give you more of an idea of how complex it is without me having to ramble about it and give you details that you haven’t even asked for.

    I could also have written an essay on the current spam wave on Mastodon, how it’s bad, but how I don’t care, and I don’t pity Mastodon because Mastodon had it coming with its self-imposed weaknesses, and Fediverse server software with reasonable safety features are not and can’t be affected by this kind of spam. Instead, I resorted to having Jeremy Clarkson of Top Gear and The Grand Tour speak for myself, using an image macro which I had made as a response to an earlier spam wave a while ago. Easier to understand with much fewer words.



  • It’s technologically impossible for any search to cover all of the Fediverse. Like, absolutely 100% of it.

    That’s because it’s technologically impossible for anything in or outside the Fediverse to be aware of the full extent of the Fediverse and know all its instances, all its actors, all its (public) content in real-time.

    It would only be possible if there was a fully centralised search engine. And that search engine had been hard-coded into all Fediverse server apps for years so that even instances that haven’t been upgraded in two or three years know it.

    If Joe Übergeek spun up his own personal CherryPick or (streams) or Forte instance or whatever on his own Raspi, that instance would immediately have to announce its existence to that centralised search engine. Otherwise, the search engine wouldn’t have any way of knowing this new instance exists. If Joe Übergeek sent his first test post into the void because he has no connections yet, it would immediately have to be pushed to that search engine. And if Joe Übergeek decided to turn off ActivityPub on his (streams) channel, his instance would immediately have to notify the search engine which would immediately have to list that channel as formerly but no longer available.

    Now imagine such a search being decentralised, e.g. built into Fediverse server apps like Mastodon or Lemmy. In this case, all server apps would have to know all instances out there with Fediverse-wide search. And immediately so.

    Imagine Mastodon had such search built-in. Imagine Alice started up her own personal Mastodon instance with this search at 10:30. Imagine Bob installed his own personal (streams) instance from source at 10:31.

    In order for the search on Alice’s Mastodon instance to actually cover 100% of the Fediverse, it would require Bob’s (streams) instance to push all necessary information to it. In order for this to work, Bob’s (streams) instance would have to know of the existence of Alice’s Mastodon instance from the moment it’s installed.

    This couldn’t be done via any form of discovery, for where would (streams) go look for search instances?

    So an automatically-generated list of search instances would have to be necessary. It would have to be delivered with the code upon installation.

    This means that Alice’s Mastodon instance would have to add itself to the list of search instances in the streams repository (https://codeberg.org/streams/streams) as a pull request and then immediately merge that PR into both dev and release, the latter past dev, both without Mike Macgirvin’s permission, so that Bob’s new (streams) instance knows about Alice’s less-than-a-minute-old Mastodon instance with search the very moment that Bob installs it, so that Bob’s (streams) instance knows that it will have to report everything that happens to it in public to Alice’s Mastodon instance with built-in Fediverse search.

    Whenever someone spins up a new instance that has Fediverse search built in, this would cause a PR in the code repositories of all Fediverse server applications that adds this instance to the initial list of search instances, and it’d cause that PR to immediately be merged into all active branches with no consent by the maintainers. And each shutdown of an instance with Fediverse search would cause a PR and an automated merge because that instance would have to be removed from the initial list of search instances.

    I guess it should be obvious what an outlandish idea this is.



  • Mastodon wasn’t launched by a VC-backed Silicon Valley startup to become the phone app that replaces Twitter.

    It was created by a German high school graduate and metalhead all alone as not much more than StatusNet with a different UI and some features cut for simplicity. It was designed by a nerd for nerds, nerds who didn’t rely on phone apps for everything. At this level, and back in 2016, not even an official native iPhone app was mandatory.


  • Luckily, Mastodon is working on a discorvery protocol that should offer a way to find people across the board, which will hopefully make the Fediverse “appear” centralized to the average Joe while maintaining all the benefits of decentralization to the advanced users.

    I’d bet that this will be so proprietary and non-standard again that it’ll only work within Mastodon, maybe plus a few of its own soft-forks, effectively ignoring 30% of the Fediverse.


  • Decentralisation and having multiple instances isn’t even that much of an issue. 99.999% of all Twitter refugees were railroaded to Mastodon and what seems like 99% of these straight to mastodon.social. They genuinely thought mastodon.social was “the Mastodon website”, just like twitter.com was the Twitter website. It took many of them months to even notice that Mastodon is decentralised. And it took some of them even longer to notice that the Fediverse is, in fact, more than just Mastodon while half of them think that Fediverse = Mastodon after almost two years.

    No, the biggest issue is: What they were looking for was not something radically different from Twitter, now that Twitter sucked. They were looking for a Twitter without Musk. Like, a drop-in replacement that doesn’t require them to adjust in any way. A 1:1, 100% identical clone of Twitter how it was the day before Musk took over with the same UI and the same UX and the same culture.

    When they were railroaded to mastodon.social, they were told that Mastodon is “literally Twitter without Musk”. And they took it as literally. By face value. And then they ended up on something that looked and felt nothing like Twitter. No matter how many of Twitter’s limitations Gargron arbitrarily and unnecessarily implemented into Mastodon, he never got close enough to Twitter itself.

    People would stick around because Mastodon felt like the only alternative to Twitter there was. Of course, they kept using Mastodon exactly like Twitter, not adopting to Mastodon’s culture and relying on their toots being delivered to people by an algorithm that Mastodon simply doesn’t have. Hashtag? Fuck hashtags, I didn’t need no hashtags on Twitter, so I ain’t gonna use none on Mastodon. And then they wondered why so few people discovered them and their content.

    They didn’t want to adapt. They were waiting for Mastodon to finally “fix the bugs” that made it different from Twitter. Which it didn’t.

    Instead, Mastodon developed its own culture (which is a story of its own). And they were pressured to adopt Mastodon’s culture. CWs for sensitive content for any definition of “sensitive”. Twitter ain’t got no CW field. Alt-texts for all images, and it had to be actually useful and informative. They ain’t never done no alt-texts on Twitter. Of course, the right hashtags. See above.

    Also, Mastodon-the-app is lack-lustre. Whereas the official apps for just about everything else are fully-featured, the Mastodon mobile app is only there for there to be a mobile app named “Mastodon” for those people who join a new online service by grabbing their iPhones and loading the app with the same name as the service from the App Store. Especially newbies often can’t wrap their minds around using an online service with an app that doesn’t have the same name. But the official Mastodon app is actually just about the worst Mastodon app out there. At the same time, for many Mastodon users, this app IS Mastodon. They’ve never seen the Web interface. What the app can’t do, Mastodon can’t do.

    Lastly, Mastodon was probably also way too techy. Like, you had people talking about Linux and Open Source and Web design and whatnot all over the place, something that they themselves knew nothing about and weren’t interested in. On top came those people with their weird-looking monster posts that said the Fediverse is not only Mastodon, and they were posting from something that is not and has never even been affiliated with Mastodon.

    And then Bluesky came along. And Bluesky looked exactly like what they’ve been wanting all the time: a 1:1 Twitter clone. One big reason for Bluesky’s success is that it shamelessly ripped off the UI of immediately-pre-Musk-takeover Twitter, both the website and the mobile app. A fully-featured, well-polished mobile app with all the same features as the website. And at first glance, it feels like the same monolithic walled-garden silo as Twitter with the same kinds of users as Twitter, minus the Nazis. At least not as ripe with übergeeks as Mastodon.

    Also, Bluesky grew faster and quickly had more users than Mastodon. Which sounded like more followers in less time. Exactly what all those famewhores that brag about their Twitter follower counts were craving.

    People wanted a pre-Musk Twitter clone. Mastodon isn’t one. Everything else in the Fediverse is one even less. Bluesky is just that. Bluesky is what people had wanted all the time.


  • Careful, though: WriteFreely is solid, but limited.

    For example, it has no comments. Like, there’s no way you can interact with a WriteFreely post, at least none that the author would notice. Comments are planned, but way down the to-do list.

    Also, while you can embed images, you have to host them externally and then hotlink them. I think this is one of the next things that WriteFreely will tackle. It’s possible; Plume has its own built-in image hoster, but Plume is so underdeveloped that its devs recommend WriteFreely instead.


  • Microblog is Twitter-like, normally plain-text only, normally limited in characters, no titles, no summaries because unnecessary for not even 1,000 characters per post. Also, conversations/threads consist of posts, posts and more posts that are loosely connected via mentions.

    Blog is like WordPress or Blogger or Medium. With titles, with summaries, no character limits and the whole shebang of formatting.

    Headlines

    in

    multiple

    levels,

    bold type, italics, code,

    • bullet-point lists,
    1. numbered lists,

    images embedded in-line within the post (with text above the image and more text below the image), nicely embedded links instead of URLs in plain sight and so on. Also, conversations consist of exactly one (1) post, and replies are comments that aren’t posts and work differently from posts.



  • Do you explain the Internet to your grandparents by explaining HTTP first?

    Sorry to say, but the Fediverse would be a great deal smaller if it wasn’t for millions of Twitter users who were railroaded straight to mastodon.social, not knowing anything about it except that it’s allegedly “literally twitter without musk”.

    There are still people who have been on Mastodon since shortly after Musk bought Twitter out, and who shit brix upon discovering for the first time that the Fediverse is, in fact, surprisingly, who woulda thunk it, not only Mastodon.

    These people wouldn’t be here, had their introduction to the Fediverse started with an explanation of ActivityPub.




  • The Fediverse is not only Lemmy and Mastodon. Even the microblogging side is not only Mastodon.

    Mastodon itself has a whole bunch of forks such as Ecko, Hometown and the very popular Glitch.

    There’s also Pleroma with its probably even more popular fork Akkoma.

    There’s Misskey with literally dozens of forks, including but not limited to Firefish (formerly Calckey), Iceshrimp (its rewrite Iceshrimp.NET won’t be a fork anymore, though), Sharkey, CherryPick, Catodon etc. etc.

    If you want something with more power, something that’s much more like Facebook, there’s Friendica and has been since 2010.

    If you want something with vastly more power, think Facebook meets WordPress meets Google Cloud Services meets Fandom etc., there’s Hubzilla. Whenever someone thinks “the Fediverse” needs to introduce a certain new feature just because Mastodon doesn’t have it, chances are Hubzilla has had it for longer than Mastodon has even been around.

    And so forth.