In all honesty, it's not that awesome. It took XMPP over a decade to get features expected from modern protocols such as not requiring persistent connections, client notifications, conversation syncing between clients, file uploads, E2EE...
10 years is not agile.
> Imagine what could be if people focused on XMPP instead of constantly re-inventing the wheel.
We could try and imagine. As it stands, it's XMPP which is reinventing the wheel, continuously. The primary reason being: it was developed at a time when non-persistent internet connection, multi-device synchronisation, video calls, ubiquitous file sharing and other wonders of the modern world didn't exist, and retrofitting it was a multi-year struggle. Undoubtedly prolonged by the very same people who decried the modern world and claimed that XMPP was enough: https://news.ycombinator.com/item?id=38497839
I've been using XMPP since I had a smartphone (I was late to the party, around 2015) and never needed a persistent connection or had issues with multi-device use. https://xmpp.org/extensions/xep-0313.html solves both and the first version is from 2012.
E2EE via opengpg has been there since the beginning of XMPP, and via OMEMO (signal-like) for 7 years now, just like HTTP file upload.
I don't. I know what I'm talking about: https://news.ycombinator.com/item?id=38497839
> solves both and the first version is from 2012.
The question is: when it stopped being experimental and supported by most servers and clients.
IRC probably has a similar level of requirements, but I haven't heard of its mobile capabilities. Most others seem to be completely new developments and in the case of Matrix e.g. they seem to have solved some issues by reducing the scalability (higher server load).
So yes, it took a while for XMPP to solve those issues, and you can say it took too long. But at the same time having done that at all, is an achievement in itself.