4 ms·
I'm not clear on what you're missing. What meme? The protocol is well documented. The basic abstraction is that there is a separation between the 'processing
by kjs3 6y ago
I'm not clear on what you're missing. What meme? The protocol is well documented. The basic abstraction is that there is a separation between the 'processing' part of an application and the 'display' part of the application and those two parts communicate using the X11 protocol. That conversation can happen over a local or a remote socket, or shared memory. The practical use cases are that I can have an application running on my local machine, or one on the other side of the world, and the 'display' portion is consistent. Not much different than, say how Citrix uses it's own protocol to draw remote displays.
It allowed a 'mainframe' model where you could have a very fast, expensive application servers that could display to less expensive local resources, and mix the display with local applications. So my heavyweight applications could run on the monster Sun or Cray in the datacenter, but my clock, calc and notepad app ran locally, but all in the same display.
Yes, over the years things like MIT-SHM and NX came along to paper over problematic issues in X11. And yes, there are other, possibly better ways so solve it now. But in the late 80s and through the 90s, it was pretty cool stuff.
- Jasper_ 6y agoIt's possible I'm a bit jaded because I spent a long time working on things like Wayland and next-generation graphics technology, where people would suddenly show up and name-drop the terminology "network transparency" as if it meant something, or solved useful problems. I just find it funny that CORBA-style RPC is now considered a dated, bad approach in the world of distributed systems, but the same thing in the X11 world is considered way ahead of its time and a design ideal.
- michaelmrose 6y agohttps://www.omg.org/gettingstarted/history_of_corba.htm https://www.omg.org/gettingstarted/history_of_corba.htm CORBA 1.1 (February 1992) This was the first widely published version of the CORBA specification. It closed many ambiguities in the original specification; added interfaces for the Basic Object Adapter and memory management; clarified the Interface Repository, and clarified ambiguities in the object model. https://en.m.wikipedia.org/wiki/X_Window_System https://en.m.wikipedia.org/wiki/X_Window_System X originated at the Project Athena at Massachusetts Institute of Technology (MIT) in 1984.[1] The X protocol has been at version 11 (hence "X11") since September 1987.
- sadfklsjlkjwt 6y ago> I spent a long time working on things like Wayland and next-generation graphics technology This is really sad. You are insulting and dismissing technology which did something well over 20 years ago that you think is not possible today. And instead of thinking "hmm maybe I should look at the older technology and see how it did it" you just dismiss it as a "meme" and tell people that the actual technology they used is impossible. So much effort is wasted in our industry because of NIH syndrome... I seriously hope that the Wayland people didn't just completely ignore the positives of Xwindows!
- Jasper_ 6y agoI wrote the linked article explaining X11's internals and design goals in a neutral manner. I've worked on X11 and Xorg ecosystem, worked on the server, I worked on the window managers, the toolkits, applications, compositors, you name it. I think I'm allowed to have opinions with 40-year hindsight saying that some design decisions have not aged well. I'm not saying X11 is a meme; I'm saying the words "network transparency" ( which never appears once in the documentation; seriously, try to find it https://www.x.org/releases/current/doc/xproto/x11protocol.html https://www.x.org/releases/current/doc/xproto/x11protocol.ht... ) are unhelpful, have unclear motivations and goals, and have a massive restraining influence on what a modern protocol can look like and do.
- mcguire 6y agoAaahh! I get it now. Network transparency: you can run a process remotely and see the same interface that you would have seen if you had (or had been able to) run it locally. Nothing more, nothing less. Mostly marketing.
- erik_seaberg 6y agoWe're so desperate for network transparency that we're abusing hypertext web browsers as application platforms, because how else can a machine in a datacenter put a GUI on an end user's screen today?
- formerly_proven 6y ago> I spent a long time working on things like Wayland and next-generation graphics technology I don't know you, so this might come off as overly aggressive. But very little that happens in the FOSS/Linux space and has to do with graphics I would describe with "next gen". Wayland for example is meant as the "ring to rule them all" as a way to drive displays, yet it doesn't even support color management, so it's increasingly useless in a world of non-sRGB displays. X11 does color management (in a cludgy way), for example.
- Jasper_ 6y agoLinux graphics is mostly driven by volunteer work. There is ongoing work to try and get color management done properly (though color management is an extraordinary difficult topic and you could make the argument no display system gets it correct) https://lists.freedesktop.org/archives/wayland-devel/2019-November/040978.html https://lists.freedesktop.org/archives/wayland-devel/2019-No...