Internet communication channels

If you want to provide a communication channel for a community over the Internet and you are considering options such as:

, then please read this article and consider an alternative.

Because such channels are often convenient, cheap, and easy, they are natural choices.

However, companies are about maximizing their benefits first. Certainly, providing convenient, cheap, and easy services often help companies make money. But I believe we have seen enough examples of companies putting their benefits first in detriment of their users.

Using these alternatives will always require more effort. This text is long, and just reading and processing it might take more time than setting up a channel on the services mentioned above. The alternatives I describe certainly have drawbacks compared to the services I am asking you to avoid. However, in the long run I think making an extra effort to make an informed choice pays off.

A quick litmus test

If you only thing about a single thing, then think about this: how many independent clients are for this communication channel?

How tightly the people behind the channel control clients is a good indicator of how much they want to maximize profits.

Alternatives

IRC

IRC is a real-time chat protocol created in 1988 that is still in use. Many perceive flaws in IRC that seem to make it a bad choice. However, many IRC flaws have been addressed in recent times and I believe it is a good choice in many (but not all) scenarios.

The biggest traditional issue with IRC is channels without history, where you cannot see messages posted while you were offline. (If you suspend or turn off your laptop, you will be offline in IRC. Even if you run your IRC client continuously on your client, if your phone goes out of coverage or your phone suspends your IRC client, you will be offline.) However, nowadays you can create channels with history.

Channels without history are frequently confusing for new users, because most chat systems have history. Heavy IRC users are either used to having no history [this might seem surprising, but for some this is even a benefit] or have means to be permanently connected to IRC. However, users new to IRC might join a channel, post a question and go offline without anyone having a chance to see their message and reply. Then, unless people remember to answer when they are back, or other means are used, answers will not be visible to the person who asked.

The chathistory extension addresses this problem. As far as I know, only the Ergo IRC server and their network support this extension.

Some advantages of IRC are:

Some drawbacks of IRC are:

Interesting projects:

ObsidianIRC (web client)
Kiwi IRC (web client)
Gamja (web client)
Soju (bouncer)
Halloy (graphical desktop client)
Senpai (terminal client)

Delta Chat

Delta Chat is an instant messaging system that tries to be very similar to the most popular instant messaging systems.

However, there are multiple clients and anyone can run a server.

The strangest thing about Delta Chat is that is uses email underneath. However, I would recommend ignoring this fact.

XMPP

XMPP is younger than IRC, but older than Matrix. Compared to Matrix:

For some scenarios, if you find the right combination of XMPP server and clients, XMPP can be a great option.

Historically, XMPP was not well-suited to mobile usage. Nowadays, mobile usage is better, but finding the right clients to use is still a challenge.

Matrix

Matrix is a more modern chat protocol that addresses some of the drawbacks of IRC:

But also some disadvantages compared to IRC:

Other alternatives to consider

Zulip offers instant messaging, but has some characteristics from forums. (For example, Zulip uses threads with subjects.)

Mattermost and Rocketchat are designed for communication within organizations.

And lastly, because all the technologies mentioned in this text allow integrations, there are bridges to join different technologies.

For example, IRC channels can be bridged to Matrix rooms.

Although bridges are not ideal, in some cases you can use them to make one channel available over different technologies, which might address the limitations of specific technologies.

Although my perception is that most communities nowadays communicate over instant messaging, many communities use successfully more asynchronous communication channels. In some cases, providing both instant messaging and an asynchronous channel can also work well.

Mailing lists (and their sibling, newsgroups) are older than IRC. Although mailing lists are far less popular than in the past, many communities still use mailing lists.

Mailing lists have several advantages:

However, they also have many advantages:

In my opinion, mailing lists are good, but they have become foreign to most people.

Forums used to be very popular.

Compared to mailing lists:

Social networks tend to be slightly different communication channels than instant messaging or asynchronous messaging. Alternatives to social networks also exist. However, in my opinion, social network-style communication is not optimal for "communities" in most cases. Still, you might want to explore alternatives. The Fediverse (or ActivityPub) has many different varieties of communication channels that might suit your needs.