HACKER Q&A
📣 zduniusz

Best way to communicate in Q4 2024 internet?


There’s been a noticeable trend over the past few years towards the fragmentation of chat networks.

Every major company is pushing users toward its own proprietary chat service. As a result, people are often forced to create multiple accounts across different platforms to stay connected with friends, relatives, and colleagues who all use different services.

For technical people, what are the best approaches for connecting across different chat networks?

Here are some options I’ve been considering as a "main" protocol:

- IRC: While IRC still has a loyal user base, its popularity has steadily declined. It also lacks modern features like voice/video calling.

- XMPP: I don't know much about it. XMPP's community support seems less widespread compared to other alternatives.

- Matrix: Matrix offers a modern and feature-rich protocol, but it can feel heavy. Synapse, the most common home server implementation, on different occasions I've seen it to be quite slow (For example when joining a room).

My idea is to set up a server with bridges that puppet connections to various chat services, so I can manage all communication from a single place.

Is this plan feasible? Has anyone successfully implemented such setup?


  👤 Ramiro Accepted Answer ✓
XMPP was supposed to be this. There was a boom in the early to mid-2010s (I worked at HipChat back then, and it was built on top of XMPP). IMO, it works well; it scales, but none of the commercial solutions picked up for whatever reason. In the end, as you say, proprietary protocols like WhatsApp or Slack won the market.

I've heard great things about Matrix. Peeble's founder, Eric, was building Beeper, a chat app with a similar purpose to what you describe (it recently got acquired by Wordpress). I believe that the core was built on top of Matrix, so you might be up to something there.


👤 3np
One piece of advice: Regardless how you do your bridging, I advice to abandon "the holy grail" of single-account-and-app-for-all-your-chat-networks, at least initially.

What I mean by this is that if you bridge using Matrix while also chat using Matrix, to set up two accounts: one for all your bridged chats (fine to mix networks here) and one for all your actual Matrix usage. Bridge chat state can get messy in some cases and keeping it separate keeps your public account and state db "clean".


👤 timokoesters
I hope that MIMI (More Instant Messaging Interoperability) will get more attention when it's ready.

https://datatracker.ietf.org/group/mimi/about/