Quantcast
Channel: Teaching with Free Software
Viewing all articles
Browse latest Browse all 10

My Impressions on XMPP

$
0
0

I am a Free Software user and enthusiast. I am not a software developer, but only an end-user and work as a teacher. When I talk about internet messaging, I talk solely under Software Freedom concepts. I use Telegram since 2014 (that was a long time enough) because the software runs on my computer is Free and I need Telegram for teaching about computing for Indonesian people. I do not want WhatsApp because it is proprietary software and teaching with it means teaching/causing people to use proprietary software too. Aside from Telegram, I also consider many other instant messaging choices and one of them is XMPP. This is just impressions of an end-user, not even a criticism, neither hatred at all. I myself use XMPP, like Jitsi Meet everyday, and Conversations Movim occassionally, but I cannot make it my main telecommunication. After using XMPP for years, here’s my explanation.

Definitions

In this article I will call several names:

Instant messaging: a name for all internet group chat facilities that work for users across web, desktop, and mobile. XMPP, Matrix, Telegram, Signal, WhatsApp are the examples.

XMPP: a name for all the protocol as well as the end-user applications of XMPP/Jabber. Conversations, Movim, Gajim are the examples.

Broken XMPP: a name for enhanced XMPP protocol and XMPP applications by proprietary software corporations like Facebook Messenger, Google Talk, WhatsApp, Apple (I forgot the name) which are all proprietary software and removed ability to federate outside. I don’t conside those XMPP, I consider them broken XMPP.

My explanation goes below:

1. Does not meet what modern user needs.

My general impression of XMPP as a user is that it doesn’t meet what nowadays people need in computing. When using Telegram, I and my friends have all these features below. But when using XMPP, I myself cannot have all and neither my friends.

  • Identity
  • Group chat
  • Voice call
  • Video call
  • Video conference
  • Group invite link
  • Photo sharing
  • File transfer
  • Channels
  • Forward messages and files
  • Sending messages to offline persons
  • Search for family and friends
  • Search for groups
  • Multidevice (Web, GNU/Linux, macOS, Windows, Android, iOS, BSD)
  • Readable, searchable messages across multiple devices
  • Good user interface, recognizable across devices

 

2. Group chat is not as good as expected.

My first impression to XMPP (and many of its users) is that group chat is not the first class citizen. On IRC, making a new group is as easy as typing a #name and pressing Enter. On Telegram, it is a tap. On WhatsApp and other instant messengers, it is perfectly first class citizen, the priority for users to use. Searching for groups is also easy on them. If any instant messaging makes group chat difficult for end-users, it will be a challenger for users to adopt it. On XMPP, it is not as straightforward as that (except for their modern messengers like Conversations). For a long time, historically XMPP does not have modern group chat features. And because of the many differences among XMPP servers available in the world, there are users who can create groups and users who cannot.

Feel free to enter XMPP by its easiest entrance point today, https://movim.eu, then try to search for groups and join. You will find groups are placed far below individual chats (I don’t know why). You will also notice it is strange, for a very long time instant messaging platform (XMPP predates both WhatsApp and Telegram by ten years) it has just several public groups with several hundred of members each. Even IRC is more abundant that that. On Telegram & Matrix, I found groups of Ubuntu, Debian, KDE, LibreOffice etc. On XMPP, why no one? This is a sign that group chats on XMPP are either not easy or not beneficial.

 

3. Felt too outdated, not for modern people.

My other impression is that after trying out many XMPP apps, all of them gives me the vibes of old, outdated, obsolete things as if it is created for people in 1990’s only.

I also ask myself, why? I believe the answer is that because today the other instant messengers are simply better in giving end-users impressions. You can compare Conversations, the best XMPP for mobile, with Telegram, the best FOSS chat for mobile, and you will agree with me Telegram gives better modern impressions. I bellieve there are many people out there feeling the same impressions as me.

All this means if you and your friends were Telegram, Signal or WhatsApp users, you will find switching to XMPP more difficult than not, or, switching to Matrix is easier than that.

If you are an online teacher who enjoys years teaching using Telegram, like me, you will find hesitant to switch over your course to XMPP and you might worry your students will not be able to use that especially if you live in a non-English developing country, like me.

 

4. Security hinders usability and multidevice.

All good instant messengers today are good in multidevice. Telegram is the best example. It works with one account on web, desktop, laptop, GNU/Linux, MacOS, Windows, mobile Android, and mobile iOS at the same time.

My next impression on XMPP is that its security often hinders its own usability and multidevice. I cannot get all XMPP applications work multidevice, unlike Telegram. And when I tried to, I always ended up with error messages “This message was encrypted with OMEMO/GPG, but not for your device.” This defeats its own purpose as messenger. What’s the purpose of a messenger if the user cannot read his own messages?

An ironically good example in this case is WhatsApp, which is actually based on Broken XMPP, successfully managed to implement E2EE security easily without any user difficulty at all. While using Conversations, Movim and Gajim for example, I still got hindered by the encryption and it felt confusing to me. I don’t use WhatsApp fortunately, but everybody else in my family and country use it, and they got zero difficulty or confusion although E2EE is enabled by default.

 

5. Friendly names.

Which one of the following names sound natural as telecommunication to you? Which one does not?

  • Email
  • FB Messenger
  • iMessage
  • Telegram
  • WhatsApp
  • Signal
  • XMPP
  • WeChat
  • Wire

One of my first impression of XMPP (pronounced EX-EM-PEE-PEE) is that the name does not naturally convey its meaning, an instant messaging technology, and it is not interesting at all. Compare that to names like Telegram, WhatsApp and Email, which do naturally convey the meaning of themselves — and they are interesting. Most people will say the same and most people do not make distinction between the protocol and the implementation. Once they heard the name not appealing, they will tend to ignore it and the rest from it.

As a consequences, I tend to see more natural names (buttons, features, menus, options), more friendly names used in instant messaging applications outside of XMPP. I still need to read many documentations to use XMPP, unlike with Telegram. People will need to read many documentations too, to use XMPP, while they don’t need to at all to use WhatsApp.

A good example from XMPP is Conversations, which is genius in my opinion, that shows that the name (of the application as well as the features inside) should be taken very carefully. However, once again, it is not as complete as Telegram/WhatsApp or the others as it is only available for Android, no web, no desktop, no MacOS, no iOS either. I use this great XMPP app and I wish it will be available on all other platforms soon.

 

6. Unfinished, too late to be modern.

Lastly, if XMPP was fully completed as a whole many years ago, you and me will use XMPP today. To me XMPP as a whole gives an impression like an unfinished product, which is unfortunately too late to be modern, too slow to develop, unlike its competitors today like Matrix and Telegram. One might argue the protocol is already fully completed, but I said “as a whole”, meaning the software for end-users are not. If you want to test it, feel free to ask some WhatsApp users to try out Conversations on each device and let’s see what you and they would say about it. There are efforts to modernize XMPP, like ModernXMPP, Snikket, but given today’s instant messengers and the availability of Matrix/Element, what is my reason and your reason to adopt XMPP instead?

If you think Matrix is reinventing the wheel of XMPP, Delta Chat will make you think XMPP was reinventing the wheel of Email, as now they are slowly succeeding to create a Telegram-like instant messenger with video conference and E2EE based on Email. I also regard Delta Chat a genius as it makes use of your existing email address as your identity and makes you able to chat anyone via their email addresses, too. You can conduct voice call as well as video call and conferences too via Jitsi Meet inside Delta Chat.

By saying this, I want to say that I feel XMPP is challenged from both directions past and future, in the past corner there is Delta Chat, in the future corner there is Matrix. And all of them are now competing in the present.

 

Conclusions

My final impression to XMPP is that it is not for modern people and not for general public. I think XMPP is clever but hard to be useful for me. XMPP is more suitable for a specific group of people (by selfhosting) such as Chaos Computer Club in Germany, or studying purposes or a family served by a tech person. Or if we really see the fact and history, for companies like Facebook who took away XMPP, making it Broken XMPP, renaming it as WhatsApp and FB Messenger, by cutting out the federation abilities that makes it no longer XMPP anymore. Or in a positive way, and I also rely on this one everyday, combine XMPP with another software as a new FOSS product that everyone can use, Jitsi Meet is the best example. The last one is what I am doing since 2019 successfully until today by pairing Telegram and Jitsi Meet, the former is for the classroom and the latter is for the video conference.

In comparison, I prefer Telegram for daily communication and teaching. I need to contact people solve problems, so Telegram is my choice. Other than Telegram, Matrix is more suitable than XMPP, for modern people and for general public today, if we consider federation/decentralization point of view. I believe it is enough.


Viewing all articles
Browse latest Browse all 10

Trending Articles