I'm responding to my own post in order to answer already-posted objections as well as to flesh out some ideas.
The X-Windows partisans -- particularly those trumpeting the use of Linux in the 1990s -- made predictions about which kind of graphical user interface would see more adoption, more innovation, and achieve greater ease of use. These predictions were consequent to the design principles of X-Windows. My point is that we should see if those predictions came true and, if not, how far they diverged from reality.
One of the design principles of X-Windows was the classic Unix tenet of "mechanism, not policy." This principle was most visible in the separation of the window system from the window manager and optional desktop manager. The prediction consequent to this principle was that this separation -- combined with the healing, cleansing power of open source -- would cause a thousand flowers to bloom. Unconstrained by the diktats of The Man, neck-bearded GNU hippies would unleash innumerable window managers and desktop managers showcasing a dizzying number and kind of user interface enhancements. These ideas would compete and combine in Darwinian frenzy faster than the suits at Redmond or Cupertino could cope with.
What actually happened? For the past fifteen years, the greater number of Linux users stuck to programs that aped the interface of Windows 95 or NeXT. This is especially hilarious in the case of Windows because Windows 95 was loudly reviled by the Slashdot crowd on release. "You have to press 'Start' to shut down? M$ is so stupid, LOL!" Then they paid Microsoft the ultimate compliment by implementing Start buttons, task bars, and even CUA keyboard shortcuts on Gnome and KDE.
When people are free to do as they please, they mostly imitate each other. And it's not just the so-called 'mundanes,' either; most nerds are no different.
Aside from Gnome, KDE, and perhaps WindowMaker, other user interfaces for X-Windows have remained in the minority. That includes wm2, ratpoison, xmonad, Symfony, and so forth. The Shell for Gnome3 came very late in the game and has received "mixed reviews" to put it charitably.
More to the point, if the prediction were true, then user-interface innovation should have been immediate, obvious, and embraced by nearly all. Didn't happen.
Now look at Microsoft and Apple. Their user interfaces were never as configurable as what Linux had. Closed source. Little separation between mechanism and policy. Everything was tightly coupled. And in 2003, RedHat advised general users to stick to Microsoft Windows. Hardy har har.
Microsoft and Apple understand that the purpose of a graphical user interfaces is not just to put pixels on a screen; it is to make computers easier to use. That requires research into human-computer interaction. That requires establishing interface guidelines and getting people to abide by them. That means that depending on "Don't Tread on Me" hackers may not be the best approach.
Another design principle -- really, a body of design principles -- was the X-Windows approach to network transparent display. It is central to X-Windows. X-Windows may have been the first software subsystem to pioneer this concept. X-Windows partisans declared that this feature put X-Windows far ahead of Microsoft Windows and the Apple Macintosh.
What actually happened? Here we are, living in the future, using applications delivered over the Internet. Almost none of them are delivered using the X-Windows protocol. Instead, they use the HyperText Transport Protocol. It's easy to see why. Elsewhere on this page, a commenter noted that Hacker News would crawl if it had to be delivered over X-Windows. What X-Windows is best at, it isn't much good at.
As Don Hopkins has noted (sorry, I don't have a link handy), the ideas behind NeWS, X-Windows' competitor, were so good that they got re-invented. The client side does the rendering and input management. The back end is often written in an entirely different programming language. This bifurcation between the front end and back end is what put off so many people from adopting NeWS, even though Sun provided tools for transitioning from PostScript to C. Here we are with a far clunkier substitute in the form of HTML+CSS+JavaScript because it's still better than making it work on X-Windows.
Once again, the Unix-Haters were right. As usual.
Go ahead. Say that X-Windows addresses problems that web pages can't. Make whatever objections you like. Come back to this: What do we observe? Are cross-network apps delivered more often by X or by HTTP? Again, go ahead and say that X-Windows is better for some critical use case. As funky as HTML+CSS+JavaScript can be, no venture capitalist will throw money at you to port it to GNOME. They haven't been that stupid since the tech bubble.
The centrality of network-transparent display has hindered the adoption of any replacement to X-Windows. The barrier to entry is simply too high. Whenever such a replacement was proposed on Slashdot, the inevitable comments got posted: "Does it do cross-network display? No? That's when I stopped reading." Don't tell me that it's a life-saver when you really need it. That's a tautology. If you "really need something," then, by the law of identity, you really need that thing. The fact remains that the overwhelming majority of people never needed cross-network display implemented in the way that X-Windows implemented it. Microsoft's and Apple's customers were not screaming for this feature.
The final prediction was adoption. The combination of the above features would make X-Windows so compelling, that Microsoft and Apple would have to concede or the time would come for "The Year of Linux on the Desktop."
What do we observe? Microsoft Windows remained the dominant desktop operating system without adopting any of those features. X-Windows clients for operating systems other than Unix never took off. Apple and Microsoft continued to refine their user interfaces. Apple practically came back from the dead, spurned X-Windows in favor of Display PDF, and cemented its reputation for ease-of-use and good design.
Most damning of all, it wasn't just "the mundanes" who voted with their wallets; it was hackers, too. Paul Graham has written about how many of his hacker friends switched from Linux to Macintosh. Go to any hacker or start-up meetup and note how many Macintosh notebooks you see. Think back to the drama that occurred when Jamie Zawinskie switched to the Macintosh. Ask yourself: Was it marketing? Was it Steve Jobs' Reality Distortion Field?
X-Windows has failed. The most parsimonious explanation for this failure is that the principles behind its design are false.
The incoherent statements you make are totally dissonant to my mind; here are short notes: Mac UI pre-OS-X failed to attract people too (though designed by a single entity). X-Windows enabled a wonderful proliferation and diversification of desktop alternatives nowhere to be in Mac or Windows world. X-Windows and Unix philosophy is not to be confused. HTTP's win is a punch in the face for Microsoft and Apple, rather than X-Windows, X-Windows is rather an inspiration, especially Xterm over SSH. Your connection between linux desktop's lack of mass adoption and X-Windows is a far to stretch; Linux desktop is working for hackers already.
X-Windows succeeded! It achieved abundance of choices for us hackers, and is hackable. In contrast, Mac OS8, Windows Vista, Windows Me failed; and if the companies behind them were able to introduce a newer model which seems more successful is to be found in elsewhere, not in their design promises or philosophy.
The X-Windows partisans -- particularly those trumpeting the use of Linux in the 1990s -- made predictions about which kind of graphical user interface would see more adoption, more innovation, and achieve greater ease of use. These predictions were consequent to the design principles of X-Windows. My point is that we should see if those predictions came true and, if not, how far they diverged from reality.
One of the design principles of X-Windows was the classic Unix tenet of "mechanism, not policy." This principle was most visible in the separation of the window system from the window manager and optional desktop manager. The prediction consequent to this principle was that this separation -- combined with the healing, cleansing power of open source -- would cause a thousand flowers to bloom. Unconstrained by the diktats of The Man, neck-bearded GNU hippies would unleash innumerable window managers and desktop managers showcasing a dizzying number and kind of user interface enhancements. These ideas would compete and combine in Darwinian frenzy faster than the suits at Redmond or Cupertino could cope with.
What actually happened? For the past fifteen years, the greater number of Linux users stuck to programs that aped the interface of Windows 95 or NeXT. This is especially hilarious in the case of Windows because Windows 95 was loudly reviled by the Slashdot crowd on release. "You have to press 'Start' to shut down? M$ is so stupid, LOL!" Then they paid Microsoft the ultimate compliment by implementing Start buttons, task bars, and even CUA keyboard shortcuts on Gnome and KDE.
When people are free to do as they please, they mostly imitate each other. And it's not just the so-called 'mundanes,' either; most nerds are no different.
Aside from Gnome, KDE, and perhaps WindowMaker, other user interfaces for X-Windows have remained in the minority. That includes wm2, ratpoison, xmonad, Symfony, and so forth. The Shell for Gnome3 came very late in the game and has received "mixed reviews" to put it charitably.
More to the point, if the prediction were true, then user-interface innovation should have been immediate, obvious, and embraced by nearly all. Didn't happen.
Now look at Microsoft and Apple. Their user interfaces were never as configurable as what Linux had. Closed source. Little separation between mechanism and policy. Everything was tightly coupled. And in 2003, RedHat advised general users to stick to Microsoft Windows. Hardy har har.
Microsoft and Apple understand that the purpose of a graphical user interfaces is not just to put pixels on a screen; it is to make computers easier to use. That requires research into human-computer interaction. That requires establishing interface guidelines and getting people to abide by them. That means that depending on "Don't Tread on Me" hackers may not be the best approach.
Another design principle -- really, a body of design principles -- was the X-Windows approach to network transparent display. It is central to X-Windows. X-Windows may have been the first software subsystem to pioneer this concept. X-Windows partisans declared that this feature put X-Windows far ahead of Microsoft Windows and the Apple Macintosh.
What actually happened? Here we are, living in the future, using applications delivered over the Internet. Almost none of them are delivered using the X-Windows protocol. Instead, they use the HyperText Transport Protocol. It's easy to see why. Elsewhere on this page, a commenter noted that Hacker News would crawl if it had to be delivered over X-Windows. What X-Windows is best at, it isn't much good at.
As Don Hopkins has noted (sorry, I don't have a link handy), the ideas behind NeWS, X-Windows' competitor, were so good that they got re-invented. The client side does the rendering and input management. The back end is often written in an entirely different programming language. This bifurcation between the front end and back end is what put off so many people from adopting NeWS, even though Sun provided tools for transitioning from PostScript to C. Here we are with a far clunkier substitute in the form of HTML+CSS+JavaScript because it's still better than making it work on X-Windows.
Once again, the Unix-Haters were right. As usual.
Go ahead. Say that X-Windows addresses problems that web pages can't. Make whatever objections you like. Come back to this: What do we observe? Are cross-network apps delivered more often by X or by HTTP? Again, go ahead and say that X-Windows is better for some critical use case. As funky as HTML+CSS+JavaScript can be, no venture capitalist will throw money at you to port it to GNOME. They haven't been that stupid since the tech bubble.
The centrality of network-transparent display has hindered the adoption of any replacement to X-Windows. The barrier to entry is simply too high. Whenever such a replacement was proposed on Slashdot, the inevitable comments got posted: "Does it do cross-network display? No? That's when I stopped reading." Don't tell me that it's a life-saver when you really need it. That's a tautology. If you "really need something," then, by the law of identity, you really need that thing. The fact remains that the overwhelming majority of people never needed cross-network display implemented in the way that X-Windows implemented it. Microsoft's and Apple's customers were not screaming for this feature.
The final prediction was adoption. The combination of the above features would make X-Windows so compelling, that Microsoft and Apple would have to concede or the time would come for "The Year of Linux on the Desktop."
What do we observe? Microsoft Windows remained the dominant desktop operating system without adopting any of those features. X-Windows clients for operating systems other than Unix never took off. Apple and Microsoft continued to refine their user interfaces. Apple practically came back from the dead, spurned X-Windows in favor of Display PDF, and cemented its reputation for ease-of-use and good design.
Most damning of all, it wasn't just "the mundanes" who voted with their wallets; it was hackers, too. Paul Graham has written about how many of his hacker friends switched from Linux to Macintosh. Go to any hacker or start-up meetup and note how many Macintosh notebooks you see. Think back to the drama that occurred when Jamie Zawinskie switched to the Macintosh. Ask yourself: Was it marketing? Was it Steve Jobs' Reality Distortion Field?
X-Windows has failed. The most parsimonious explanation for this failure is that the principles behind its design are false.