ungleich-staticcms/content/u/blog/chat-app-of-2021/contents.lr

280 lines
12 KiB
Markdown

title:The chat app of 2021
---
pub_date: 2021-02-09
---
author: ungleich
---
twitter_handle: ungleich
---
_hidden: no
---
_discoverable: no
---
abstract:
Why we use Matrix and things to consider
---
body:
## Introduction
At this point we've all seen many chat apps - some very popular and
some not. Some very secure and some not. Some very centralised and
some not. The difficult thing when choosing a chat app is that the
most important differences are not something you can intuitively find
out. That is more a question of how each chat app was designed from
the beginning.
What we are going to do in this post is that we will talk about what
we have used as chat so far and why, and we will discuss what you need
to consider when making a decision for yourself. What are the
differences between the chat apps out there, and what do those
differences mean to their end-users?
## About us
Each community or individual has a different need for the chat and
what's best for others does not necessarily mean that's going to be
the best for you. Before starting we want to give you an idea about
who we are.
- Our team is rather deeply into technology probably more than most people.
- The age of our chat users is somewhere between 18-55 (with minor exceptions).
- Many of our chat users are working with laptops for a big part of the day.
- Most of our chat users are comfortable using English for communication.
- Our chat users are about 80 % male and 20 % female.
- A big part of our community values sustainability and the environment
- A big part of us is interested in software with its code publicly open - in other words, open source.
The evolution of our chat was really finding what fits us the best. We
have started our team chat at Slack many years ago, then we moved to
Rocketchat, and then we moved to Mattermost. While keeping Mattermost
running, we started our Matrix instance on the side. We have gradually
moved more to Matrix over time and now have most of our main
conversations in Matrix. There were reasons for each of our moves, we
will explain them below.
![](/u/image/ungleich-chat-evolution.jpg)
## What we based our decisions on
### Work chat
We (ungleich) are a company working with Free and Open Source and
Linux. Our work happens around many text information and we have many
parallel projects shared with people from different timezones. This
requires our chat to be as efficient and organised as possible, so
that everybody can get their work done and collaborate easily. This
was the reason why we were initially landing in Slack which has an
interface suitable for our work life. Apps designed for more casual,
mobile use such as Telegram and Signal did not fit our need.
### Self-hosted
We need to mention that for a Swiss company like ourselves
[that physically runs our servers with local hydropower,](https://datacenterlight.ch/en-us/cms/hydropower/) we knew
that it is senseless to have our chat somewhere in the U.S. (whose
privacy laws are more relaxed than ours) run by servers with fossil fuels.
![](/u/image/security-class.jpg)
That's why we soon moved away from Slack to chats that we can host on
our own. We first moved to Rocketchat, and although the transition was
easy and smooth at the beginning its mobile version was not as smooth
as we liked it to be at that time and our team would miss getting
messages often while on the run between different data center
locations.
After spending some time with Rocketchat we moved to self-hosted
Mattermost looking for a more stable experience. With its robust
performance and friendly UI (that we still think is one of the best
out there), our team became quite happy with Mattermost.
### Decentralised
You might have noticed that we are not the most typical company:
renewable-only energy driven Linux, FOSS and IPv6 aficionados in the
Alps. This means we attract quite some people who have a lot of
stories and chats to share with us. More and more over the time it
became clear that our work chat is not only for our internal work -
but it's also for a community chat, a community with very diverse
backgrounds for that matter. Hobby computer lovers, mountain lovers,
hackers and makers, climate activists, penguin lovers, you name it.
![](/u/image/ungleich-community.jpg)
While happily staying on Mattermost we started to receive requests
from our community for enabling our chat to be more decentralised:
meaning not all the chat data staying in our server only
(centralisation), but enabling others to connect from their servers
too (decentralisation).
This was a fair request and we knew it was the right way to go. As a
solution we started to phase in Matrix into our chat - we first
started it as a side chat from our main channels in Mattermost.
Over time we moved most of our conversations to it, while keeping
Mattermost on the side. Using Matterbridge to bridge between the two
chats, this dual system has been working quite well, and it is
especially useful when one of the instances experiences downtime.
## What you should consider when choosing a team chat
Above was our specific case and you probably have a different use for
the chat app. Should you consider Matrix? Mattermost? Or Slack? Some
questions need to be answered first to see what your requirements are.
### 1. Workspace or SMS
This depends on what your use case is. Are you looking for a secure
version of SMS, or are you looking for an organised place for
different groups and tasks to be handled? The former fits the use case
of Threema, Signal, Telegram, Whatsapp, and the latter is better handled
by Slack, Mattermost, Rocketchat, and Matrix. We are not implying that
all these chat apps have the 3 baselines passed, but just giving you
examples.
![](/u/image/chat-usecase.jpg)
### 2. Can you be anonymous
This is closely linked to the #1, because the chat apps that function
as SMS replacement such as Threema, Signal, Telegram, Whatsapp, need a phone
number to work. So if staying anonymous is an important factor for you
this is something you want to consider in choosing a chat. For using
Matrix or Mattermost you do not need a phone number, and in the case
of Matrix you do not even need an email address that can identify you.
### 3. Where is the chat server
This is something most people don't think about: the physical location
of the servers where the chat is running. It mostly becomes a crucial
question in two ways.
One is if you face the possibility of having to deal with
authorities - meaning you need to care which law will apply in case
you are being investigated.
Two is if you care for the environmental and ethical impact of your
servers, such as [what kind of energy source is being used and what is
the ethical stance of the
hosters.](https://ungleich.ch/en-us/cms/blog/2019/06/28/how-run-really-green-datacenter/)
![](/u/image/environment-chat.jpg)
The ability to decide where your servers will physically be, either by
running the server by yourself or by somebody you can trust is a big
difference between some chat apps and others. Chats that offer home
servers, self-hosted options such as Matrix or Mattermost give you the
ability to choose, and any chat app that does not, locks you in the
chat provider's choice.
### 4. Decentralised or centralised
Does all of our conversation only go to one company in one country, or
can it be in the different small or big streams everywhere and be
independently open to each other? Most chats out there are the former,
and federated chats are the latter.
Say there's a special house where everybody goes to for communication,
and you have to go there whenever you want to talk to anybody, and the
conversation stays only in that house. Anybody who wants to say
anything to anybody, has to go into this house. Doesn't it sound
really strange? That's what most chats are.
![](/u/image/decentralised-chat.jpg)
But what if we can stay in our own home and call each other and still
can have a conversation? And the conversation does not only stay in
one house, but in everybody's house for when it's their own
conversation? That's more like how Matrix imagined how chats should
work.
This is the single most standout identity of Matrix, that it has
built-in federation. Means you can stay on your chat and go to other
Matrix instance and talk to them.
### 5. Are you into the latest, hottest technology
It might sound silly but it is still an important factor for a lot of
early adopters and people who just gotta have their hands on the
latest groundbreaking stuff (cough). This is it. Matrix is the hottest
chat system of 2021 and hands down the most innovative project amongst
all the chat apps out there because of its federation and security
design.
## The baselines that you shouldn't compromise
A lot of us brush off the topic of privacy thinking "But I don't have
anything to hide." but it is not that simple. Even though you might
not have anything to hide now, people who you have a conversation with
might have a very different stance and you affect them with your
choices.
Using a chat app for communication involves the privacy of everybody
in your network - family, friends, colleagues, and more. That's why
whatever chat you choose, there should be some baselines you shouldn't
compromise. These are what we think is important in choosing which
chat to use in 2021.
## The baseline 1: End-to-End Encrypted
As a very base your chat should be End-to-End Encrypted (E2EE). E2EE
means even when the 3rd party (including law enforcement or the
hosting company itself) snoops into the chat data, they will just see
a series of useless encrypted texts that can not be decrypted.
![](/u/image/encrypted.jpg)
Not all chats have proper E2EE and especially not all chats have it as
default. Matrix has E2EE as a default for example, and Telegram does
not. It works quite the opposite way in fact: disabling E2EE has to be
manually opted in Matrix, whereas enabling E2EE can be done only by
choosing "Secret Chat" Function in Telegram.
## The baseline 2: Not collecting your data
Even when the chat app can not read your conversation thanks to the
encryption, some chats do access a lot of other information, such as
with whom you are talking to for how often and for how long ("meta
information"). We tend to focus on not revealing the content of our
chat and to forget that the other information can be collected while
being unnoticed.
Whatsapp is a particularly risky choice for this reason, because it
belongs to Facebook whose entire business model relies on collecting
user information for monetisation.
## The baseline 3: Is the code open for public
The thing about closed code is that nobody outside the chat app
company can see how and what is built in the chat. Is it having some
back doors users are unaware of, is it monitoring the user activity
without letting the user know, with closed code we will never know.
So for a chat (or any software for that matter) to be claimed secure,
its code has to be open for the public, so unbiased third parties can
review its sanity. If you think about it, it's quite simple - no
system can achieve robust integrity without transparency.
![](/u/image/penguin-customer-support.jpg)
## Try it yourself
When it comes to technology, the best approach is trying it
yourself. Our ungleich chat, both Matrix and Mattermost, are open for
anybody to join: we heartily invite you to give it a try. Create an
account, join rooms, say hi and ask questions you might have.
We claim our chat is one of the safest places to try a chat app you
are not sure about yet - it does not collect your data, it does not
need your phone number, it runs on 100% renewable energy.
* [Try our Matrix](https://chat.with.ungleich.ch)
* [Get in touch with ungleich](/u/contact/)
More about us and Matrix
* [Matrix for Climate](https://ungleich.ch/en-us/cms/matrix-for-climate/)
* [ungleich open infrastructure:MaaS](https://redmine.ungleich.ch/projects/open-infrastructure/wiki/Ungleich_Matrix-as-a-Service_(MaaS)
* [The Matrix foundation](https://matrix.org/foundation/)