> Sure, Matrix is a thing, but every time I look at it, all I see is criticism of its specifications and poor interoperability between implementations?
Not sure what you're talking about. Everything is working fine for me, and they even conduct a whole conference about it annually: https://2024.matrix.org/
With a large number of clients and servers and the lack of a walled garden (like with Signal), you will always find something non-interoperable. It doesn't mean that you have to use it.
I'm not talking about the client ecosystem. I'm talking about the server ecosystem. There is only one fully-featured one, Synapse, everything else is in Alpha or Beta, feature-incomplete, or abandoned.
When I looked into writing my own implementation, the protocol seemed underspecified to me. "Do what synapse does" seemed to be the concensus.
This was a few years ago, so maybe things have improved. But given that no new feature complete servers have appeared, I doubt it.
Is it really an open ecosystem if there's only one real implementation? Is there really a specification if the reference implementation is the real specification? Do we want to put all of our eggs into one basket? YMMV, but for me the answer to all those questions is "no".
Not sure what you're talking about. Everything is working fine for me, and they even conduct a whole conference about it annually: https://2024.matrix.org/
With a large number of clients and servers and the lack of a walled garden (like with Signal), you will always find something non-interoperable. It doesn't mean that you have to use it.