I wish there were a standard of sorts in im space. It's not signal because it doesn't allow for saving conversations.
I wish there were a standard of sorts in im space. It's not signal because it doesn't allow for saving conversations.
As mentioned, there's XMPP.
As well as Signal, there's also Matrix.org which is used by Riot.im.
You could argue there's now too many competing standards (ActivityPub has some similarities in a way too), but without having ever implemented an XMPP client myself, seemingly people had enough issues with it for there to be significant traction given to replacements like Matrix.
Personally I was always a fan of XMPP, and the idea/concept (just not the implementation) of Wave really excited me at the time. Momentum behind XMPP seems to have slowed so I've been giving Riot.im a trial. Sofar I really love it, so I'm once again hopeful.
The major difference is that all the major players have turned off (or never enabled) federation, and dont advertise that its xmpp.
Honestly I think the non-xmpp open source projects will never succeed to the point of being ubiquitous. NIH strikes again.
Matrix is also far from ubiquitous too, but we categorically did not create it out of NIH syndrome. The whole point was to provide a protocol with entirely different primitives: history sync rather than message passing; group channels rather than 1:1; decentralisation rather than federation. And also a totally different governance model (no extensions; just a fat monolithic baseline that should “just work”). Obviously the experiment is still on and it remains to be seen if Matrix will succeed to the point of being ubiquitous, but to accuse it of being NIH is massively to miss the point.
It also has a several open implementations that have proven scalability.
I’m also not really sure what you mean about “decentralised rather than federated”. This is from the matrix.org faq:
> Matrix provides open federation - meaning that anyone on the internet can join into the Matrix ecosystem by deploying their own server.
No extensions means no customisation for the purpose at hand or for future enhancements.
So tell me again about how matrix is so different?
On the federation/decentralisation question: yes, matrix servers federate with one another networkwise. But the data they exchange is decentralised: it is equally replicated over all the servers which participate in a room, using a merkle DAG to enforce integrity (like git, or a blockchain).
> No extensions means no customisation for the purpose at hand or for future enhancements
This is not true. Matrix is extensible at the data level - you can put whatever you like into it and define whatever semantics for it, a bit like HTTP. But the API itself evolves as a single entity released by Matrix.org, and folks are very welcome to contribute their future enhancements into it.
> So tell me again about how matrix is so different?
A loose analogy could be svn versus git (architecturally, given XMPP is much higher perf than Matrix currently). Classic XMPP MUCs are centralised to a given domain like a svn repo; if you try hard enough you can decentralise them (FMUC), just like svk existed for svn. Or alternatively you could write a new system with different primitives like git.
I hasten to add that the analogy is not exact and Matrix isn’t remotely as successful as git, but it’s an example of where sometimes it doesn’t hurt for a different technology to come along and shake things up.
XMPP? Check out https://conversations.im/ and https://dino.im/
Encrypted, federated and modern.