this post was submitted on 07 Jun 2023
269 points (100.0% liked)
Technology
1928 readers
7 users here now
Rumors, happenings, and innovations in the technology sphere. If it's technological news, it probably belongs here.
Subcommunities on Beehaw:
This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Apple's iChat (precursor to Messages.app) used to do XMPP, too. I don't think it federated, or if it did it was very short-lived, but all the big tech companies with chat services got their start with XMPP. It's almost like it's a great set of tools for communicating, which, sadly and ironically, open source tech seems to have moved on from. To be fair, I far prefer Matrix's JSON to XMPP's XML, but it's a little disappointing that everyone forgets about XMPP.
WhatsApp started as an isolated XMPP server as well. It was the best protocol to base a new app upon and even today it's a good place to start (if you implement the hundreds of optional extensions).
I think XMPP's protocol and federation design is better than Matrix's, but XMPP suffers from many clients not implementing all the necessary extensions to provide a decent experience. I don't really care about JSON vs XML.
The IETF is working with several services on a cross-platform protocol, probably in part because the DMA will force companies to open up their networks anyway. I think the Matrix project is working on implementing MLS as well.
Many of the things that XMPP listed as extensions really should have been part of the core protocol, in my opinion.
Many of those things couldn't be part of the standard. Modern encryption hadn't been invented yet (and exporting it across borders was illegal) and many concepts simply weren't a thing way back in the day. The extensibility of the protocol is what has kept it relevant for so long. That said, the Modern XMPP project is trying to fix the compatibility issues caused by with the Swiss cheese of extension implementations.