Yup, it's a big shame. XMPP promised for quite a while, but then stagnated and failed to deliver what most users were expecting (mostly due to implementations, not lack of protocol features).
I've recently given up on IM, and written about it recently:
It would require changes to the core of the protocol itself, and that all deployments update to a version of the app that implements those changes. Pretty hard, yet possible.
I've recently given up on IM, and written about it recently:
https://hugo.barrera.io/journal/2015/09/21/giving-up-on-im/
If only zulip were federated. :(