Andrew's Blfog

A while back, Reddit made some controversial changes to their API pricing scheme (going from "free" to "outrageously expensive and clearly meant to just kill competition") resulting in almost all third-party Reddit browsers to have to close up shop. This included Apollo, my personal favorite.

The fallout from this change blew fresh wind into the sails of the maintainers of Lemmy, and brought a surge of users to all federated platforms. (Elon's acquisition of Twitter and subsequent rename to X also had this same effect, but for Mastodon and other micro-blog software). The promise of a decentralized and federated system that otherwise feels the same as the walled garden of Reddit is tantalizing, after all.

"decentralization" and "federation"

I'm not going to waste much time on explaining these - I'm definitely not the right person to explain it correctly so take these definitions with a grain of salt.

Decentralization: where a service isn't hosted by one person or corporation, but instead hosted by many. Torrents, for example, are decentralized.

Federation: A fancy buzzword meaning "talks to other similar software to share information". The language that most of the federated software today uses is referred to as ActivityPub. Think Email mailing lists, with a fancy interface.

Fediverse refers to the overall group of decentralized, but federated, software making one big network.

why would you want that?

There are infinite possibilities as to why you might want that. A few follow; I specify some are theoretical because often times they either don't matter or are circumvented

  • theoretically better resilience in the face of a shutdown - it's nigh-impossible to force shut down all ActivityPub services, so even if one goes down, the rest should still stay up
  • theoretically better freedom of speech, even in restricted geographical areas.
  • theoretically better control over your own data, especially since most software is designed around the philosophy that you should have control of your own content.
  • freedom to run your own instance the way you want it, as if making your own forum or blog, but still being able to connect it to the wider "fediverse" and participate on other instances.
  • Interoperability between different classes of software (reddit-like link aggregators, facebook-like social media platforms, and twitter-like microblogging platforms can all interact in some way or another)

but there are some problems

  • better resilience, freedom to run your own instance are hampered by the cost requirements to run most of the software
  • better freedom of speech is great, until bad actors create accounts on tons of instances and use those accounts to send CSAM or hate speech far and wide, creating a headache for instance owners everywhere.
  • data that is federated outside of your own instance is out of your control, largely. There's no way to know for sure that nobody has archived your words. This is less of a new problem and more an existing reality that is made more apparent by this system.
  • while you can interact between platforms, if they're conceptually different (reddit vs twitter) your interactions will be awkward and hard to follow.
  • discoverability is painful on most of the platforms.
    • Lemmy is perhaps the least painful, because there are entire communities dedicated to regularly finding and sharing other communities, and topics are generally posted in communities they belong in.
    • I've had the most difficult time discovering things I'm interested in on the microblogging side of things. Specifically, I tried out Sharkey, and most of what I'm seeing is bot reposts and divisive political garbage that I don't care about. Even utilizing the "Antenna" feature didn't properly filter on tags, showing me things that don't have any of the tags I stuck in the filter.
  • The storage requirements for microblog-side are immense vs the longer-form alternatives. Text is tiny, but microblogs tend to include images, and even storing thumbnails grows my storage usage by 3-5GB per day, and that's only with a few small relays and a couple of followed folks from large instances.


The "fediverse" is, I think, only part of the ultimate solution to supplant the less favorable social media giants.

I've had Reddit accounts for 14 years, Twitter for 15, and Facebook for 17, and they're all still around. That kind of resiliency is impossible for the average Mastodon or Lemmy instance. The wealth of information all of those platforms historically hold, especially Reddit, is similarly nigh-impossible to match.

Federated software is confusing. I think Lemmy has it the worst because most popular instances defederate from eachother due to policy disagreements, meaning you have to be from a third, unblocked instance to see and interact content from both, registration is usually turned off or limited due to a lack of administrative and anti-spam tooling, and finding communities outside of your bubble is unintuitive at best, and impossible at worst. That said, the micro-blog format software isn't much better- it's just less obvious that there's a problem because of the higher volume of content.

I can't imagine the average reddit or twitter user would be able to figure out which instance they want to join, let alone actually sign up and contribute. What would they even call what they sign up for? Calling it Mastodon or Lemmy is reasonable, but misleading since the specific instance they sign up to could vary wildly from the rest of them.

Additionally, ActivityPub seems great, but you realize pretty quickly that it won't backfill old posts, won't always send everything you need, and uses a LOT of bandwidth even on posts that the user may never look at. Not sure what the solution there is, but the end result in a "perfect" world using this system is that every mastodon or lemmy instance would use the same exact (massive) amount of storage space and bandwidth.

more apt uses for activitypub?

As I've used federated software, I've been trying to understand the real strength of activitypub. I think I've found the ideal use-case: Blogs. Imagine, you create a blog that can be subscribed to from any other blog, and can be commented on by any activitypub service.

Posts could be large, but will mostly be text, so they'll compress well. The whole thing could be partially statically generated for presentation, making it scalable (at presentation time, anyway). Updates would be rather infrequent vs other platforms, and the quantity of content expected would be low to start with. Blogs could share who they follow/federate with to enable discoverability. Commenters wouldn't need to create an account / share their email address with a blog just to manage their own comments, and blog owners wouldn't have to worry about all that garbage.

I love this blog software, but I have been toying with the idea of running a Lemmy instance with a custom UI instead to more easily facilitate comments and whatnot. That's a lot of work and likely won't ever happen.

anyway, try out Lemmy or Mastodon if you're currently using Reddit or Twitter/X and want to move away - they take some getting used to but they're not too shabby.