Unifying the Fediverse

Why are there so many separate platforms in the Fediverse like Mastodon, Lemmy, PixelFed, and PeerTube? It feels like they could all be part of one unified platform.

Posts

Text, images, and videos could just be treated as posts, all with comments enabled.

  • Servers that don’t want to host videos could just have a setting to turn off video uploads.
    • That would let PeerTube function like Mastodon when video support isn’t needed.

Lemmy + Mastodon + PixelFed

They all do basically the same thing — let people post stuff. So why split them up?

Forums can still work like Lemmy. If you want your post in a forum, cool. If not, that’s fine too.

Matrix + Posts

  • As for messaging, I think Matrix could benefit from Signal-style encryption. Each message should be encrypted with a unique key, just like Signal does.
  • Add a button like “See recent posts by this user” on profiles.
    • This would make it easier for people to switch over from Instagram or Facebook.

plugin-based development

I also think the Fediverse could grow faster if it were plugin-based, kind of like how Obsidian handles plugins. Development would be more modular and flexible.

  • Servers could choose which plugins to enable.
  • Devs could collaborate instead of reinventing the wheel across platforms like Mastodon, Lemmy, PixelFed, PeerTube, etc.
  • This would create a richer, more customizable ecosystem that evolves together.

Questions

Also, just a question from someone who’s not a coder:

Why not just copy Signal’s encryption model?

Summarize

Each user can create posts (with or without a forum), follow forums, follow other users, have private chats, and join encrypted rooms.

This is just some personal rambling, so feel free to ignore it. But if any of it sounds useful, please share it with other people, especially the developers.

  • Pamasich@kbin.earth
    link
    fedilink
    arrow-up
    17
    ·
    13 hours ago

    Why are there so many separate platforms in the Fediverse like Mastodon, Lemmy, PixelFed, and PeerTube? It feels like they could all be part of one unified platform.

    Simple answer: Because people have different visions, different priorities. Expertise in different programming languages and tooling.

    Why do we have three Reddit alternatives in Lemmy, Piefed, and Mbin? Why don’t all their devs work on the same project?

    1. The Lemmy devs are highly controversial. The other projects don’t have such issues.
    2. Lemmy is written in Rust, Mbin in PHP, and Piefed in Python.
    3. The scope is different between them. Lemmy only cares about communities. Mbin targets wider compatibility with the microblogging side of the fediverse. Piefed plans to one day add microblog support iirc, but their priorities lie elsewhere.

    Some platforms care about interoperability more than others, trying to push for FEPs (basically standardization proposals for the fediverse), while others don’t. Some care about privacy even if it degrades interoperability, some believe the latter outweighs the former. Some disagree on how to implement a specific feature.

    Mbin adopted Reddit’s karma system, Lemmy didn’t. Sure you could combine both of those and give the user the choice, but this reflects a difference in design philosophies. Lemmy users don’t just lack a karma system, they outright don’t want one. It’s a system which promotes karma farming, so it’s associated with the worst of Reddit. But ironically, it also encourages contributing, which is probably why kbin (Mbin’s predecessor) originally added it. The fediverse is in need of contributors over lurkers, so whether a karma system is bad or good for it depends on your perspective. And that perspective differs between the developers of these two projects.

    Ultimately, sometimes projects are just born out of a dev wanting to challenge themselves by recreating something themselves. Iirc that’s how Minecraft was born, with its creator originally wanting to test his skills at an Infiniminer clone and that spiralled into the most successful game ever.
    So why a separate project is started isn’t always logical even. Sometimes the dev just felt like it.

    I for one like Mbin but dislike Piefed and Lemmy both. But most people seem to think differently, as Mbin is the least popular of the three. There’s a lot who have sworn off Lemmy in favor of Piefed, but there’s also a lot of people who prefer sticking with Lemmy. If there was just a single option, there’s a possibility I or others might not be here today, because we don’t like the choices that single option went with.

    Finally, there’s also the danger of a company acquiring the project and enshittifying it. They can’t really acquire an entire federation protocol and every software implementing it.


    In the first place, the fediverse is about interoperability between different social networks. If you have just one social network, you have no use for the fediverse anymore. So your question is really more like “why do we need the fediverse?”. There’s no such thing as “unifying the fediverse”, as that’s the antithesis of the fediverse. Unifying it would undo it. The fediverse is nothing without its nature of connecting different projects together.

    • Holeheadou92984@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      11 hours ago

      You right on most things. But I still have some question.

      Lemmy is written in Rust, Mbin in PHP, and Piefed in Python.

      Do you think there is a “best” most efficient programming language for building the program?

      Mbin adopted Reddit’s karma system, Lemmy didn’t. Sure you could combine both of those and give the user the choice, but this reflects a difference in design philosophies. Lemmy users don’t just lack a karma system, they outright don’t want one. It’s a system which promotes karma farming, so it’s associated with the worst of Reddit. But ironically, it also encourages contributing, which is probably why kbin (Mbin’s predecessor) originally added it. The fediverse is in need of contributors over lurkers, so whether a karma system is bad or good for it depends on your perspective. And that perspective differs between the developers of these two projects.

      What I was thinking is to implement the karma system but leave the option of enabling it to servers and users. So this one is on lemmy.

      they outright don’t want one

      If I’m talking sense, based on my previous opinions, I think adding a “plugin” to lemmy is a better option than building something entire new.

      Finally, there’s also the danger of a company acquiring the project and enshittifying it. They can’t really acquire an entire federation protocol and every software implementing it.

      I don’t think it would be a problem if the project is open source?

      interoperability

      • Pamasich@kbin.earth
        link
        fedilink
        arrow-up
        3
        ·
        10 hours ago

        Do you think there is a “best” most efficient programming language for building the program?

        I think that depends on how important performance is for large instances, which I don’t really know. Python has a huge advantage due to being notoriously easy to get into, even for non-programmers. This means it can find contributors much more easily, leading to faster bugfixing and feature development. But Python is also slow, which might be an issue for large instances that have a lot of work to do.

        In general, barrier of entry and performance act as trade-offs to each others. If you use a language with a lower barrier of entry, it tends too come with lower performance, and vice versa. So whether there’s an ideal language depends on whether performance matters and how much it does.