40 years later, X Window System is much more relevant than anyone could imagine

fake images

Many times, when I’m researching something about computers or coding that’s been around for a long time, I come across a document on a university’s website that tells me more about that topic than any Wikipedia page or file.

It is usually a PDF, although sometimes it is a plain text file, in a .edu subdirectory that begins with a username preceded by a tilde character (~). It is usually a document that a professor, facing the same questions semester after semester, has put together to save as much time as possible and get back to his or her work. I recently came across such a document within the astrophysics department at Princeton University: “Introduction to the X Window System”, written by Robert Lupton.

The They shared space in the university’s computer labs. As a member of Princeton’s Department of Astrophysical Sciences who knew the most about computers at the time, it fell to Lupton to fix things and answer questions.

“I first wrote the X10r4 server code, which eventually became X11,” Lupton said in a phone interview. “Anything that needed graphical code, where you wanted a button or some kind of screen for something, that was X… People would probably bother me when I was trying to work in the basement, so I probably wrote this for that reason.”

fake images

Where did X come from (after W)

Robert W. Scheifler and Jim Gettys of MIT spent “the last two weeks writing a windowing system for VS100” back in 1984. As part of Project Athena’s goals of creating campus-wide computing with distributed resources and multiple computing platforms hardware, X fit the bill, being independent of platforms and vendors and able to draw on remote resources. Scheifler “stole a good amount of code from W”, made his interface asynchronous and therefore much faster, and “called it X” (back when that was still a cool thing to do).

That kind of cross-platform compatibility made X work for Princeton, and therefore for Lupton. He notes in his guide that X provides “tools, not rules,” allowing for “a large number of confusing ways.” After explaining the three-part nature of X (the server, the clients, and the window manager), he goes on to provide some advice:

  • Modifier keys are key for X; “This sensitivity extends to things like mouse buttons that are not normally considered case sensitive.”
  • “To start X, type xinit; do not type X unless you have defined an alias. “X itself starts the server but not the clients, resulting in an empty screen.”
  • “All programs running under X are equal, but one, the window manager, is most equal.”
  • Using the “--zaphod“The flag prevents the mouse from entering a screen you can’t see; “Someone should be able to explain the etymology to you” (link mine).
  • “If you say so kill 5 -9 12345 You will regret it because the console will appear hopelessly confused. Go back to your other terminal, say kbd mode -aand take note not to use -9 without proper reason.”

I asked Lupton, whom I met on the last day before he headed to Chile to help with a very large telescope, how he felt about X, 40 years later. Why had he survived?

“It worked, at least compared to the other options we had,” Lupton said. He noted that Princeton’s systems weren’t “very networked in those days,” so the network traffic problems some had with X weren’t a problem back then. “People didn’t expect many GUIs either; they expected command lines, maybe some buttons… it was the most portable version of a window system, running on both a VAX and the Suns at the time… not bad “

Leave a Comment