@whack wait... let me get this straight... you put the lime in the coconut...?
:-)
@whack @cks @funkylab @dotstdy No, I'm specifically referring to the byte-swap stuff. That stuff is hard and has been a source of serious bugs.
And no, it's not really a retcon. The issues with X11's design have been known since the early 90s. There have been *books* about it. It's why NeXT and later Apple Mac OS X didn't go with X11. It's why Android didn't either.
@whack @cks @funkylab @dotstdy To be clear, I think Wayland is flawed too. The flaws are different, though. Too much minimalism has hurt things more than it helped. The antipathy for collaboration that has developed in the last decade has also been a problem.
But the core design concepts and the extensibility model is *slightly* better. They still screwed up by not defining endianness and other things in a fixed manner, but it's *easier* to fix now than it would have been with X11.
@neal yeah quite honestly, I wished that ~11 years in, the wayland community (if that *really* exists – it's more than the people writing composers) would have sat back and had been like "knowing what we know now, can we a) write a better, more comprehensive core proto spec that does away with such, and b) an alliance of desktop environments would have actually agreed on a single set extensions that people work on. The protocol is turning 18 this year, and has all signs of…
@funkylab … of embracing variety in approaches and absence of clear project direction that made Perl become a niche thing, roughly when that was 18 years old (2005). "There's more than one way to do it" isn't very helpful for protocols nor helps identify which part needs fixing/extension in case of obvious or less obvious feature gaps.
(+I don't buy "not hard, just generate the (de)serialization code", as s.o. who's worked with protobuf&capnproto&ice&thrift&ASN.1)
@dotstdy "which ever way you do it, it's not particularly more difficult" does by no means imply "it's really not hard", sorry, that's just really not the case. :) and frankly, better-written specs reduce the complexity of implementing protocols in a reliable manner. So, there really *is* a difference to be made by protocol.
@dotstdy @funkylab the c-level stuff is odd and the oddness goes all the way up the stack… the ultimate problem which still isn’t being solved is that x11 centralized what is now a decentralized social problem. Freedesktop ostensibly could be leading this but instead it’s this disconnected set of groups all rolling their own protocol extensions to do the same basic things… things that were known-needed (and existed!!) 20 years ago just omitted in Wayland and (input methods, EWMH, simulated input, screenshot/cast, drag-and-drop between apps, clipboard, Remote Desktop, etc etc)
And only gradually these things get remade, but from a position that hardly coordinates efforts and often ignores historical examples? We’ve got 3 input method engine protocols and the IBus maintainer is like “these are insufficient” … who is making this mess?! Two extremely different simulated input mechanisms, etc.
We took a technology problem and turned it into a social one without any leaders, then added theater that insisted an absent feature was necessary and good because that absence meant safety.
@neal I think it was 3-5 years after Wayland was announced that anyone mentioned security, and if that were honestly true, then the "security" was to build a house with no windows, doors, plumbing, and without a roof, because that's what shipped for the first *many* years. Then folks rejoice, "Yay it's finally safe!" and nobody can actually go inside. Oops. (Yes, it's been improving since Fedora shipped it 10 years ago, but that's been a *bad* 10 years)
I'm not suggesting anything of X11, just focusing on Wayland's path since ~2008.