How can we fix messaging?

Proprietary, centralized chat protocols are the problem and XMPP is the solution

by spitemim, 2022-12-02


Table of Contents

The problem

Normie chat platforms like Discord and Telegram have been a disaster for the human race. Back in the 90s when the internet was a bunch of nerds, people made sane choices for what technology to use. The most widely used technologies and protocols were ones that made sense from a technical standpoint, because the majority of the internet were nerds who cared about that kind of stuff. But as the internet was democratized and overrun with (1) normies and (2) companies looking to profit off of said normies, the set of widely used technologies has shifted from the most ethical, extensible, practical, and useful ones towards the flashiest and easiest ones. A prime example of this is messaging platforms: the nerds of the 90s used IRC and BBSs to communicate. Modern day normies use platforms like Discord, Snapchat, Telegram, or Whatsapp to do instant messaging. These platforms have pretty much nothing to offer other than convenience. Problems include:

The common normie cope is “But! All my friends use <PLATFORM>, so I have to use it too!”

No, you don’t. If they are your real friends, they will sacrifice some convenience to message you on an alternate platform. If they’re a REALLY good friend or exceptionally rational (or autistic) they will listen to your arguments against centralized platforms, consider them, and possibly make their own decision to reject these platforms and use something less egregious.

The solution

The solution to modern instant messaging woes is simple: XMPP

What is XMPP?

XMPP stands for Extensible Messaging and Presence Protocol. It’s a simple, extensible, decentralized, and secure messaging protocol that’s been around since the late 90s. Allow me to explain how each of these adjectives applies to XMPP:

Okay, I’m convinced. How do I use it?

To get started with XMPP, you need:

  1. an XMPP client, and
  2. an account on an XMPP server

Client

An extensive list of clients for different platforms is available on the Shadow Wiki, but if you just want to get started, let me list a couple top picks for each platform:

Linux

Windows

Android

iOS

Web

Account

Once you install a client, you need to register an account with an XMPP server. You have two options:

  1. Host an XMPP server yourself (Recommended)
  2. Register an account on a public XMPP server

Hosting a server yourself

Landchad.net has some great information on setting up a server and hosting various services, like XMPP, Matrix, Searx, Email, Mumble, etc.

Using a public server

There are a lot of public servers to choose from. You can find extended lists on providers.xmpp.net, list.jabber.at, and the XMPP Compliance Tester’s Server Overview.

My word is not gospel and you should do your own research, but here are some decent ones I know of:

Public servers will either have a web form to register an account, or will allow in-band registration from within your client.

XMPP sounds awesome. What’s the catch?

There are a few problems with XMPP (operative word being “few”). Allow me to outline the ones that I’m familiar with:

Conclusion

Everyone should use XMPP for instant messaging. If you’re a Discord user, ditch that bloated web-based platform and install XMPP. If you’re a boomer and you have it out for LE BIG TECH because they censor and ban with impunity, embrace decentralization/federation instead of fleeing to centralized alt-tech platforms which have the capacity to become just as bad as what you’re running from.

Other decentralized things you should check out: