Live data from Hacker News

XMPP: The Gem of Instant Messaging

adele.pages.casa

31–40 of 138 posts

Re: XMPP: The Gem of Instant Messaging

#32
post #6

XMPP lost because the spec is overcomplicated and hard to implement. As a result, good clients never materialized and innovation was really hard to do. Everything in this article is an offshoot of the overcomplicated spec.

Not sure I buy that explanation. More likely is thst there's too little business advantage to being compatible with others and too much business advantage to having people inside your own ecosystem. Simple as that. There's just very little motivation for compatibility between these systems unless you are open source.

This 100%. It’s hard to serve ads to someone using your service through a text based irc client running 24/7 on a vps

Re: XMPP: The Gem of Instant Messaging

#34
post #6

XMPP lost because the spec is overcomplicated and hard to implement. As a result, good clients never materialized and innovation was really hard to do. Everything in this article is an offshoot of the overcomplicated spec.

I've done a lot of work on XMPP related projects and some specs, and I'm not sure that this is true. I mean, it's definitely complicated, that part is true, but of course it is, it's a protocol and it's not more complicated than other specs as far as I can see. Not to mention that, like the various clients for different platforms that this article mentions, one of the big benefits of XMPP over other protocols is that it has libraries for every major platform, so most developers will never need to implement the spec.

TL;DR most people don't implement HTTP when they want to make a request, they add a dependency on whatever their languages HTTP library is. XMPP is the same.

Re: XMPP: The Gem of Instant Messaging

#35
post #24

Earlier quoted context omitted.

These days I can't even use pidgin for xmpp, because the omemo plugin is too wonky. Now someone I'm sure will say I'm just holding it wrong and that may be so.. but I doesn't work for me despite trying for a reasonable amount of time to get it working. And regarding other protocols I'm too scared these days. Every company is running algorithms looking for deviants to perma-shadow-ban and I just can't risk something l…

The problem here is that Pidgin's development didn't manage to keep up with the changing times. Stable branch is 10-15 years behind XMPP features. The developers are working on a Pidgin 3.0 (rewrite?) but that still has quite some way to go. Unfortunately Pidgin was one of the most popular ways to use XMPP back in the day, and this had a knock-on effect on XMPP's reputation as an out-of-date technology. People still…

Was it that pidgin didn’t keep up with features, or more likely that one by one the major platforms pulled xmpp support to the point where there was no reason for a normal person to use pidgin?

Re: XMPP: The Gem of Instant Messaging

#36
post #26

Earlier quoted context omitted.

The modern equivalent to XMPP is XMPP. Like every other healthy and alive protocol it evolves over time to meet new needs.

Is it actually "alive" still?

Yes, definitely! Latest edition of the monthly newsletter highlighting various stuff in the community and ecosystem: https://xmpp.org/2024/11/the-xmpp-newsletter-october-2024/

Re: XMPP: The Gem of Instant Messaging

#40
post #6

XMPP lost because the spec is overcomplicated and hard to implement. As a result, good clients never materialized and innovation was really hard to do. Everything in this article is an offshoot of the overcomplicated spec.

Is there a “modern” equivalent to XMPP? How does it compare to the matrix protocol?

Matrix and XMPP operate in very different ways Matrix is a graph database synchronization protocol, whereas XMPP is event based.

Let's use group chats as an example: with Matrix if you join a group chat hosted on another server, the entire history of the chat gets synced to your server. This means it's very resource intensive to scale, but very reliable since you pretty much always have chat history available and if one server goes offline you can keep the group chat alive on one of the other servers (let's ignore netsplit style concerns for now, it's not really relevant to the high-level nature of the question). XMPP on the other hand is event based, this makes it much less resource intensive, but means that if the server you're trying to communicate goes down you don't have access to that chat room anymore (some servers mitigate this by using traditional high-availability techniques like clustering, but that's not really a protocol thing, I'm sure some Matrix servers also do clustering as part of their scaling strategy).

As far as features specifically related to IM, both support most of the same things, it's just a question of whether clients have implemented them or not in either protocol.

Post reply on HN