“X is the only windowing system that went from barbarism to decadence without civilisation in between.”
“The X server has to be the biggest program I've ever seen that doesn't do anything for you.”
“Oh yeah!? Like you understand the binary video driver interface implemented back in '68, motherfucker!”
X-Windows (colloquially known as X11V2R7.2.2p77a or just the X Window System, Protocol 11 Version 2 Release 7.2.2 Patch 77a) is the standard graphical interface for computers running Unix and its "Leengux" knockoffs. It is a technological marvel, constructed by geeks far deeper than thou. It does amazing and wonderful things that you wouldn't have thought possible. It runs on every operating system you can think of and several you wish it hadn't. It will display your applications to the same computer, the one next to you or one running on the friggin' moon.
It doesn't run your new video card, though it might next year or the year after. Maybe. Why don't you write a driver for it?
X-Windows completely determines the look, smell and feel of applications running on it in such a strict way that all application windows look exactly the same. Although this makes it look far better than Mac OS X and even Windows XP, some users find it hard to distinguish between their applications when they all have the same title.
An interface smörgåsbord!
X-Windows (spelt with an X, hyphen, S on the end, and Window in between) works on the basis of "mechanism, not policy." This means that no application quite works with any other, and each one shows the artistic flair and graphic design skills of a furry-toothed programmer whose computer permanently displays a screen full of green-on-black terminal windows and a minimised Opera for his porn. But this is a feature, not a problem.
Just as X-Windows reverses the meaning of "feature" and "problem", it reverses the meanings of "server" and "client" (your screen serves resources to programs, making them the clients. You have to be a very deep geek with amazing powers of contemplation indeed to see why this is obviously and elegantly sensible), "black" and "white", "up" and "down" and "good idea" and "bad idea."
Every X application looks different to every other X application. This is less of a problem now that everyone programs to GNOME or KDE, so now you only have to choose between two completely different and clashing interface styles instead of ten. Yay. But, as mentioned above, this is a feature rather than a problem.
There's not one but two clipboards, and three if you're using GNOME or KDE. They're reasonably easy to keep separate unless you're using Firefox or Opera — which everyone does — because both of those deliberately mangle them. HA-ha!
Design principles of X-Windows
In 1984, two mad scientists at MIT set out the early principles of X. We here translate these into modern terms for your convenience:
- Do not add new functionality until an implementor threatens to pull your funding without it.
- It is as important to decide what a system is not as to decide what it is. Do not serve all the world's needs; rather, support what you feel like and tell them they just need to write extensions themselves if they want to actually do anything useful. (See Mozilla Firefox.)
- Worse is Better leads to faster ship dates. (See Windows Vista.)
- Speed and performance are not important. (See Java.)
- Just because it looks like Windows doesn't mean it should behave as such. Barriers to entry are essential here.
- If a problem is not completely understood, don't bother solving it.
- Make complexity someone else's problem if at all possible. If not, see the above principle.
- Provide mechanism rather than policy. Dammit, Jim, I'm a programmer, not a graphic designer! (Though why we're presuming other deep geeks are is a mystery for the ages.)
- They laughed at us in user interface design class ... but who's laughing NOW!!1!!elvene!!
X has largely kept to these principles since. This combination of perennial inadequacy and theoretical fixability is the same stick-and-carrot addictive formula that's made the Microsoft Window System the hit it is today. Every attempt to fix or replace X-Windows has failed for this reason: to replace X, a new thing would need to become X, and it could not become X without being as crap as X. Thus the virus perpetuates itself.
Have gone completely batshit insane now. Really. They've become the open source equivalent of the homeless guy with the tinfoil hat screaming at invisible alien tormentors. Just ask them about X.Org and watch 'em go. "YOU! YOU'VE BEEN TALKING TO THEM, HAVEN'T YOU! YOU'RE CONSPIRING WITH THEM! THOSE GUYS! THEY STOLE IT ALL! THEY PUT A RADIO IN MY HEAD! LINUX/BSD WEENIES! I'LL SHOW 'EM! HELL YES!" The Cathedral and the Bizarre. The best theory anyone's come up with is that David Dawes finally lost it trying to fix his own broken modeline configuration.
The X.org Foundation
Professor Charles Xavier started this foundation with money earned from licensing his name and likeness to Marvel Comics Group. He is very, very sorry for everything to do with X-Windows and is working very hard indeed to fix it, with the help of everyone else who was kicked out of XFree86 for not being completely batshit insane. Sorry. Sorry. Sorry.
X.org is currently in a lard-ass competition with Mac OS X, but should end up about as shiny eventually. Possibly by October 2004.
Xfire marketing campaign
Xfire is a marketing campaign launched by the X.org foundation to spread word about the new edition of X Window System, codename 'Compiz'. The campaign allows users to signup and install a program that monitors their use of Compiz. In return, users can get a dynamically generated image that displays various stats on their use, which are often found in forum signatures.
This campaign has proven to be widely successful, and word of the procrastinating power of Compiz has spread rapidly around the Internet. Additionally, various education studies have reported significant increase interest in geometry.
See Also: Voluntary Big Brother
[Enter two X hackers]
* clee kicks ajax
[clee] dammit, man. I really want a usable Expose feature. Like, yesterday would have been good.
[ajax] oh yeah, totally my fault
* clee blames you.
[ajax] why yesterday?
[clee] ajax: well, yesterday would have been good. today would have been acceptable. but if it gets here tomorrow, that's not soon enough.
* clee sighs
[ajax] i was thinking maybe there was some event yesterday
[ajax] like you were trying to show off X to some hottie in the coffee shop or something
[clee] and she whips out a Mac and she's like "Let's see your network-transparent windowing system do THIS!" and hits F9?
[ajax] but then she's all "shit boy, five year old acceleration architectures ain't gonna get you any poon"
[clee] yeah, happens to me all the time
The Xorg Server
What we need now, right, is a new version of xlogo that does an animated X.Org Foundation logo in OpenGL. Spinning ring, flashing lens flare. I realise it's late in the release cycle, but you know that one mention of this on the list and we'll have three working demos ready for 7.3. It also has to use the Render extension. I'm not sure how, but it just does, OK.
The screensaver is a killer app. It's the best thing about X-Windows. It's better than drugs. You'll want to have a spare computer running X just to run the screensaver.
The most important question in X user design
Which is the better porn browser: Opera or Firefox? And did paying your Opera registration fee count as rebellion against open source conformity? And how pissed off were you when they made it free?
- The X Window System Disaster (UNIX-HATERS Handbook — but don't worry, all the stuff they were complaining about in 1994 will still apply in 2014.)