I’m leaving WhatsApp tomorrow. Now, the privacy-community on the web features countless discussions, blogs, videos, and comments on whether XMPP or Matrix would be the better protocol, whether people should use Signal or not and why - but I’ve been missing one thing: A simple and short article to send to my friends where the main differences between centralized, federated, and distributed messaging services are outlined.

So I wrote one! I thought it might be useful for others too, so I’m sharing it here. Please feel free to bookmark it and share it with your family and friends!

Link to the article in the geminispace: gemini://gemlog.blue/users/yellow/1612715438.gmi

Notice anything missing? Anything wrong and needs to be fixed? Happy to hear and integrate some feedback! :)

  • vegai@lemmy.ml
    link
    fedilink
    arrow-up
    6
    ·
    edit-2
    4 years ago

    A significant difference between Matrix and XMPP (and many other classical protocols) is an architectural detail. Gladly correct me if I’m wrong here, I’m working on my educated assumptions here based on limited and quick reading of many of these protocols.

    XMPP and (say) IRC are message transmission protocols. A payload consists of a message. There’s lots of details on top of this (especially with XMPP and its extensions), but that’s the core idea.

    Matrix is a log synchronization protocol. Its purpose essentially is to make sure every patricipant in the network is reaching towards identical state. This is an important difference in terms of reliability, because (barring software bugs of course) it means that being off-line cannot cause any disruption in message flow. But it’s also bit more difficult to implement well.

    I assume many other modern messaging applications work like Matrix as well, but I’ve paid even less attention for those.