I've just re-read that post, and I don't see any ranting in it. Some unpleasant truths, certainly, but nothing emotional, rude, or personal [...]
Please point out where you think the abuse is so that I can rephrase or remove it.
If you want me to point it out, I will sent you a personal mail.
This forum is not the place for that.
I'm sure you noticed, but the video you linked is from early 2013, nearly 10 years ago. 10 years later, Wayland is not only still unusable for an awful lot of cases, but has only just recently started work on HDR, which is hardly "new technology" that just appeared days ago and took everyone by surprise.
Gimp changed their pixelengine from fixed 8bits (A)RGB to variable up to 32 bit FP because demand. Good move.
So if Wayland incorporates High Dynamic Range in the standard because demand. Good move.
So what exactly is your point ?
I don't think an appeal to authority helps there, as it still presents quite a paradox: either the "authority" was somehow unaware of a topic that had been discussed at length since the mid-90s, in which case they are far from authoritative; or they were aware of it but unwilling or unable to deal with it for 14 years, in which case you can take your pick of any number of options, but none of them are particularly encouraging or flattering.
You are definitely wrong with this last sentence
It is obvious to anyone versed in this matter that it would take at least 10 to 20 years to get a full or at least general switch to a wayland implementation deployed and tested and above all integrated in desktopsystems worldwide.
The "authority" in the video was completely aware and willing and able to deal with it for many years and many years to come. You completely missed the point or you meant to say something completely different than what I understood from your writing which would imply that you haven't watched the video yet
The reason it takes such a long time has several root causes:
- Code for the compositors is not written by the Wayland developers
The Wayland developers have only designed the protocol* (both compositorside and clientside). because Wayland is only a protocol (and nothing more).
*They actually published a reference library and a reference-compositor many years ago.
These were intended as examples more than actual implementations, although they do work well as demonstrated by several small distros (AFAIK Rebecca Black OS was the first to do that).
The implementation is up to the compositor builders:
Gnome has created mutter (a.k.a. stutter, a well earned nickname) and they took their sweet time
KDE has Kwin extended with the wayland protocol (and it supports serverside decorations)
MATE will adopt the MIR compositor which fully supports wayland (thank deity...no mutter)
and Enlightenment has its own wayland enabled EFL compositor.
If we are being honest: The loud part of the internet is never looking further than gnome,
and if mutter was the reference, I would be not only sceptical but also downright depressed.
A lot of changes have been done in the kernel, like moving the drivers kernelside, the introduction of libinput, kdbus etc. It is much more than simply exchange Xorg for another compositor and just bullying users.
- The implementation is slow because, contrary to the GNOME/GTK devs, most don't want to break userspace. Also, only lots of use in the real world is capable of revealing designflaws which is another reason to take it slow. In this case it is better to have a perfect API late than a crappy API early because you can not do this sisyphus-undertaking a second time. So it better be good when the API is frozen.
If, as a project, Gnome3 would be as serious as most wayland implementing devs about not breaking userspace it would have been much much slower in developement. Timewise, implementation of GNOME3 in this case would easily exceed the implementation time of Wayland twice (probably much longer even)
But Gnome3 can get away with breaking userspace every time because it is a toy . That means: Contrary to wayland, Gnome3 is not relevant for the industry.
Wayland is important for industries, especially embedded applications.
Actually, the desktop-world is the slowest in the uptake of wayland just as it is the slowest in the uptake of Linux as a whole.
Wayland is also important to get a working networked desktop back (without hundereds of roundtrips and corresponding latencies up to sometimes minutes). Ever done a remote thunderbird session ? It is a very frustrating experience.
X11 (the network protocol) has been hell on wheels for the past 15 years and outlived its welcome because every application (through toolkit-libs) sends its output as uncompressed bitmaps instead as drawing commands and we are already on 4k screens. Network transparent ? It hasn't been that for more than 15 years. Network capable ? Theoretically: yes. Practically: Hell no!
A client-side wayland buffer could easily be video-compressed (H263/H264) and send over network (and libinput can remote) which will make remoting snappy again. To transport that over 'ssh' would be a no brainer. That is not only more network capable than X11, it is also better for integration.
Many remote serversolutions at this moment work around the limitations by implementing the clientside rendering on the serverside (which is IMHO pretty horrendous but the only way to work around this kludge) and send compressed bitmaps already.
Wayland straightens out a lot of the kludge that X has become. A lot of applications do implement a lot of workarounds to cope with that kludge, and reverting to something sane takes time.
- There are still a lot of people that think that wayland is the graphical-backend (just like Xorg)
It's very hard to defend a project like this taking 15 years in the first place,
I just did that
but even that aspect isn't really my main issue with it: there are large chunks of functionality in X that people depend on, which the Wayland team is explicitly opposed to, and their position is "f**k those users".
And they are right. Most of the demanded functionality that X offered doesn't belong in the displayserver in the first place. They don't want to repeat the same featurecreep they had with X which absolutely helped a lot to land us in this mess in the first place.
(and don't get me started about the idiots that don't care at all about the security issues of X)
People can be egotistical jerks and rightout refuse to understand what's at stake. So yeah "F**k those users". If you need that extra functionality, do it in a (preferrably desktop agnostic) GUI toolkit where it belongs.
There were also large chunks of GTK that applications/people depended on which were kicked out from under their backside ( I have several GTK applications that no longer work on GTK3. Even GTK3 applications that after a GTK3 update no longer worked ) but nobody complains because that is obviously allright because 'progress'. I call that 'double standards'
(There are also numerous python 2 apps that don't work anymore because python 3 is not backwards compatible and a lot of python 2 stuff is just bitrotting away. Again, most people don't seem to care.)
The impossible position of having to either burn resources that they don't have supporting two backends
No, people who need X have the Xwayland libraries as needed.
You, as a developer, can keep on targeting X as long as you like.
You don't have to support two backends.
Being harassed over "Wayland support" ?
You already support it by means of an install dependency on either X or Xwayland.
To the people who keep on nagging because "it's not real wayland (sob sob cry cry)"
it's either "pay up" or "shut up".
Only applications that depend on X but simultaneously work around X because of shortcomings in X will have trouble. Those are the applications you are talking about.
You, as a developer, are usually targeting a graphical toolkit so you don't have to target the backends.
You might, however, have to target several toolkits like GTK, Qt, Efl or Tk.
Even in that case you can choose to use WxWidgets (which will adapt to any toolkit that the system offers)
Developers of DEs are especially bearing the brunt of this,
I absolutely agree, and that is why it takes so long, that is why everyone working on it is feeling the pain. But everybody also knows that the user-demands will rise to a level that Xorg won't be able to cope with in the near future so it must be done.
It is a system wide structural change with repercussions everywhere. Nobody really likes that, neither OS-devs nor users. But it is crucial. It's not something to hurry up and get it over with.
Actually, the application-devs that use GUI-toolkits have the least of the brunt.
because Wayland goes out of its way to maximize the development costs for everyone that isn't Red Hat.
I highly disagree with that.
RedHat is 'Gnome' and therefore 'mutter' and therefore something to get depressed about.
But Wayland is not a RedHat product. There is no central institution buiding 'the backend'.
It is the single threaded stuttery implementation of that protocol by Gnome/RedHat, together with their intentional breaking of applications (again) with every GTK update that is maximizing the development costs for everyone. That has little to do with the wayland protocol itself.
My opinion:
Wayland is highly needed, X will survive another ten years, but if devs don't work on wayland implementations now (which at the moment means getting the last wrinkles out), we will be stuck without a suitable graphical backend when those years passed us by because user demands as well as application demands as well as hardware demands keep on rising.
Take some time to work this out and let it sink in:
Compare the state of the art from 20 years ago to now and extrapolate that to what it will be 20 years from now.
Scary isn't it ?