In X11, the problem was Xserver. Now, X11's design philosophy was hopelessly broken and needed to be replaced, but it wasn't replaced. As you correctly point out, there is no "Wayland", Wayland is a methodology, a description, of how one might implement the technologies necessary to replace X11.
This has led to hopeless fracturing and replication of effort. Every WM is forced to become an entire compositor and partial desktop environment, which they inevitably fail at. In turn application developers cannot rely on protocol extensions which represent necessary desktop program behavior being available or working consistently.
This manifests in users feeling the ecosystem is forever broken, because for them, on their machine, some part of it is.
There is no longer one central broken component to be fixed. There are hundreds of scattered, slightly broken components.
I maintain Red Hat backed it as part of a play to make it harder to develop competing distros that aren’t basically identical to Red Hat’s product.
Their actions on systemd, Wayland, plus gnome and associated tech, sure look like classic “fire and motion”. Everyone else has to play catch-up, and they steer enough incompatible-with-alternatives default choices that it’s a ton of work and may involve serious compromises to resist just doing whatever they do.
Wayland is far more aligned with the Unix philosophy than Xorg ever was. Xorg was a giant, monolithic, do everything app.
The Unix philosophy is fragmentation into tiny pieces, each doing one thing and hoping everyone else conforms to the same interfaces. Piping commands between processes and hoping for the best. That's exactly how Wayland works, although not in plain text because that would be a step too far even for Wayland.
Some stuff should not follow the Unix philosophy, PID 1 and the compositor are chief examples of things that should not. It is better to have everything centralized for these processes.
In X you have server, window manager, compositing manager, and clients and all is scoupled by a very flexible protocol. This seems nicely split and aligned with Unix philosophy to me. It also works very well, so I do not think this should be monolithic.
This is quite wrong? There are some features that get blocked from being implemented because Wayland refused to define a protocol for everyone to implement. Window positioning being a recent example of how progress can get blocked for many years due to Wayland.
This is same cop out people use to talk about "Linux."
"No, Linux isn't bad, your distro/DE is bad, if you used XYZ then you wouldn't have this problem." And then you waste your time switching to XYZ and you just find new problems in XYZ that you didn't have in your original distro.
I'm genuinely tired of this in the Linux community. You can't use the "Wayland" label only for the good stuff like "Wayland is good for security!" and "Wayland is the future" and then every time someone complains about Wayland, it is "no, that's not true Wayland, because Wayland isn't real."
But that's what we signed up for in the Linux wirld. Linux systems are smorgasbord of different components by design, and that means being specific. I'm using KDE Plasma 6, that's a different experience than someone using Cosmic or Sway.
Furthermore, Wayland is, first and foremost, a protocol, not a standalone software like the Linux kernel. Wayland is no more than an API format transmitted over the Wire protocol. So properly criticizing Wayland is about criticizing the abstraction this API creates and the constraints introduced by it.
Could you briefly explain in simple terms, why I as a user would care about any of that? I want stuff to work. With Wayland, it largely doesn't. I don't terribly care about the semantics of it.
Wayland is a protocol with multiple different implementations.