Not exactly a surprise, then. And good luck for the Russian's arm industry bouncing back, considering its performance on the battlefield and its interleaving with western tech that it hasn't managed to decouple itself from since 2014. China's only taking a reasonable stance there.
Or rather a Dunning Kruger issue: seniors having spent a significant time architecturing and debugging complex applications tend to be big proponents for things like rust.
The problem I've observed with XMPP as an outsider is the lack of a standard. Each server or client has its own supported features and I'm not sure which one to choose.
That's a valid concern, but I wouldn't call it a problem. There are practically 2 types of clients/servers: the ones which are maintained, and which work absolutely fine and well together, and the rest, the unmaintained/abandoned part of the ecosystem.
And with the protocol being so stable and backwards/forwards compatible in large parts, those unmaintained clients will just work, just not with the latest and greatest features (XMPP has the machinery to let clients and servers advertise about their supported features so the experience is at least cohesive).
Which client would you recommend?
Depends on which platform you are on and the type of usage. You should be able to pick one as advertised on https://joinjabber.org , that should keep you away from the fringe/unmaintained stuff. Personally I use gajim and monocles.
They both qualify as "open, federated messaging protocols", with XMPP being the oldest (about 25 years old) and an internet standard (IETF) but at this point we can consider Matrix to be quite old, too (10 years old). On the paper they are quite interchangeable, they both focus on bridging with established protocols, etc.
Where things differ, though, is that Matrix is practically a single vendor implementation: the same organization (Element/New Vector/ however it's called these days) develops both the reference client and the reference server. Which incidentally is super complex, not well documented (the code is the documentation), and practically not compatible with the other (semi-official) implementations. This is a red herring because it also happens that this organization was built on venture capital money with no financial stability in sight. XMPP is a much more diverse and accessible ecosystem: there are multiple independent teams and corporations implementing servers and clients, the protocol itself is very stable, versatile and extensible. This is how you can find XMPP today running the backbone of the modern internet, dispatching notifications to all Android devices, being the signaling system behind millions of IoT devices, providing messaging to billion of users (WhatsApp is, by the way, based on XMPP)
Another significant difference is that, despite 10 years of existence and millions invested into it, Matrix still has not reached stability (and probably never will): the organization recently announced Matrix 2 as the (yet another) definitive answer to the protocol's shortcomings, without changing anything to what makes the protocol so painful to work with, and the requirements (compute, memory, bandwidth) to run Matrix at even a small scale are still orders of magnitude higher than XMPP. This discouraged many organizations (even serious ones, like Mozilla, KDE, ...) from running Matrix themselves and further contributes to the de-facto centralization and single point of control federated protocols are meant to prevent.
Most containers don’t package DB programs. Precisely so you don’t have to run 10 different database programs. You can have one Postgres container or whatever.
You can typically configure the software in a docker container just as much as you could if you installed it on your host OS…
True, but how large do you estimate the intersection of "users using docker by default because it's convenient" and "users using docker and having the knowledge and putting the effort to fine-tune each and every container, optimizing/rebuilding/recomposing images as needed"?
I'm not saying it's not feasible, I'm saying that nextcloud's packaging can be quite tricky due to the breadth of its scope, and by the time you've given yourself fair chances for success, you've already thrown away most of the convenience docker brings.
See my reply to a sibling post. Nextcloud can do a great many things, are your dozen other containers really comparable? Would throwing in another "heavy" container like Gitlab not also result in the same outcome?
that endlessly duplicating services across containers causes no overhead: you probably already have a SQL server, a Redis server, a PHP daemon, a Web server, … but a docker image doesn't know, and indeed, doesn't care about redundancy and wasting storage and memory
that the sum of those individual components work as well and as efficiently as a single (highly-optimized) pooled instance: every service/database in its own container duplicates tight event loops, socket communications, JITs, caches, … instead of pooling it and optimizing globally for the whole server, wasting threads, causing CPU cache misses, missing optimization paths, and increasing CPU load in the process
that those images are configured according to your actual end-users needs, and not to some packager's conception of a "typical user": do you do mailing? A/V calling? collaborative document editing? … Your container probably includes (and runs) those things, and more, whether you want it or not
that those images are properly tuned for your hardware, by somehow betting on the packager to know in advance (and for every deployment) about your usable memory, storage layout, available cores/threads, baseline load and service prioritization
And this is even before assuming that docker abstractions are free (which they are not)
You obviously fall into the trap of believing that hard science cares about politics, and that money thrown at problems as part of national strategic planning magically solves them. But for anyone else legitimately interested in understanding the topic better and having a glimpse at its complexity, those are great resources:
Also, I never wrote that China will never get to EUV (or eventually something beyond that), just that it will take a very long time, because the complexity is spread across several very distinct scientific disciplines, integrating them is a challenge of its own (again, watch the videos), and packaging this into a system that meets the scale and reliability requirements to make it commercially viable hasn't been reproduced to date.
Except for a marginal fraction of the top YouTubers, aren't most of them getting paid to inject sponsored links and from donations/patronage these days? It seems that the deal you are referring to has been off the table for a majority of YouTubers for a very long time now, and I don't see why other platforms wouldn't be as good, or even healthier than YouTube to provide them that kind of revenue.
No better way to boost diversion, and probably a net win for the planet considering how dirty and environmentally harmful the rare earth supply chain is today.
Neither XMPP nor Matrix will ever become “the next WhatsApp”: the current internet has seen too much consolidation for the tech majors to permit it (and open and federated protocols can’t compete, do not have the marketing budget nor the platforms to promote their software, but I salute the EU’s Market Act attempt to shake-up the status quo).
But that doesn’t really matter IMO. What (I believe) is important in the grand scheme of things is that such protocols remain alive, maintained and secure, so that:
small-scale instances can flourish and contribute to a more resilient/efficient internet (think of family-/district-level providers ; this is the kind of service I personally offer: family members and friends at large appreciate that the messages and data that we exchange aren’t shared over some cloud or facebook server for no good reason)
IM identities can persist over time: if you are a business or an individual, you may want to look into having a stable/lasting contact address, that will survive the inevitable collapse of facebook/whatsapp/instagram/… If you are old enough, your current email address probably existed before facebook. Why not your IM address?
And yes, I hear you, this is rather niche, but what got me there (and on XMPP in particular) is having been long-enough on the internet to become tired of the never-ending cycle of migrations from service to service. More and more people will have a similar experience as time goes, so this niche will only grow :)
If you are curious, you should give XMPP a shot, it's equivalent to Signal in terms of encryption, but anyone can host their own. Signal is ideologically opposed to anyone but themselves being in control of your account, and because of that I don't want to trust them.
That might tell us more about how badly your php process manager and/or db connection handler is set up, seriously. I run nextcloud "natively" (no docker, no nonsense) on hardware that was modest 15y ago (Intel Atom/2GB RAM), and it's pretty good.
Not exactly a surprise, then. And good luck for the Russian's arm industry bouncing back, considering its performance on the battlefield and its interleaving with western tech that it hasn't managed to decouple itself from since 2014. China's only taking a reasonable stance there.