Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
X GUI Software

Y: A Successor to the X Window System 666

impto writes "Whenever someone brings up the topic of replacing X, everyone always says that's nice, but where's the code? Well, Mark Thomas put his money where his mouth is and produced a replacement that maintains network transparency while adding many of the features that people desire from X such as alpha blending and a built-in toolkit. It still needs a bit of work to be as featureful as X but it's a fresh start that takes advantage of current technology and ideas. Read the paper here in PDF (1.7MB) or PS or grab the source and start hacking."
This discussion has been archived. No new comments can be posted.

Y: A Successor to the X Window System

Comments Filter:
  • more info please (Score:2, Insightful)

    by tannhaus ( 152710 )
    The website (available by clicking his name) should really include more information. It tells us that Y is the replacement for X, but offers NO reasoning. What problems does it solve? What features does it have? Can I install it alongside X? With this little bit of information, it makes me not even want to download it. Sorry.

    Also, it should be noted development has stalled on this project. He says it should start up again in November.

    • by Anonymous Coward
      I havent read the pdf, but I got the impression that information about that could be found there.
    • There's a big paper on it at http://www.doc.ic.ac.uk/~mbt99/Y/report/MarkThomas .pdf

    • Well, I guess this is slashdot and people feel the need to post opinions without even reading the subject material. Almost ALL of the parents questions were answered in the PDF file both linked above and in the hosts website.
    • Re:more info please (Score:5, Informative)

      by David McBride ( 183571 ) <david+slashdot AT dwm DOT me DOT uk> on Sunday September 28, 2003 @12:06PM (#7078171) Homepage
      Read the paper. (I went to his project presentation and helped review the paper before it was submitted, so I don't need to. :) All of the details you want are clearly presented there.

      And development has stalled until November because he's just finished his 4-yr Masters degree and is taking a well-deserved holiday before starting his new job. :-)

      Cheers,

      David
  • Built in toolkit (Score:5, Interesting)

    by Michael Hunt ( 585391 ) on Sunday September 28, 2003 @07:49AM (#7076688) Homepage
    That's all well and good, but one of the reasons that X is so successful is that you can use whatever toolkit you want, and all X really is is a network-aware framebuffer.

    This leads to toolkit darwinism, which has left us with essentially GTK and QT as the two dominant toolkits. Imagine if X had been shipped with Motif as its native toolkit? Who the hell would use that in 2003?
    • Re:Built in toolkit (Score:3, Interesting)

      by SkArcher ( 676201 )

      UNIX desktop environments are a mess. The proliferation of incompatible and inconsistent user interface toolkits is now the primary factor in the failure of enterprises to adopt UNIX as a desktop solution.

      The arguement here seems to be not that the inconsistency between who puts what tools onto a given system puts off the casual users, which tbh is a fair point. Use the custom tools for those that need them, but a generic interface makes the norms happy, which is what breaks market share monopolies

      • by ivan256 ( 17499 ) *
        The choice in a tradeoff between flexability and marketshare in a product that doesn't require marketshare to survive should be obvious.
        • Re:Built in toolkit (Score:3, Interesting)

          by John Allsup ( 987 )
          Nice soundbyte... clear, simple, and wrong.

          The fallacy is to assume that it is indeed a simple marketshare vs flexibility tradeoff. It is not.

          The problem with flexibility is always a question of 'how much'. It is not a case of more=better (for then surely a simple framebuffer in which every application can write at will is the best option, allowing every possible graphical behaviour.) On the other hand, not flexibility is another losing hand. The problem as I see it with X is: too much flexibility in
      • by 0x0d0a ( 568518 )
        The arguement here seems to be not that the inconsistency between who puts what tools onto a given system puts off the casual users, which tbh is a fair point.

        Frankly, OSS is generally not about making Joe Sixpack happy. Most OSS software is far better than the closed-source equivalent...for techies.

        I'm not really broken-hearted about the state of affairs, either.
    • by CausticWindow ( 632215 ) on Sunday September 28, 2003 @08:00AM (#7076736)

      I agree to some extent.

      However, the state of toolkits under X is now quite a mess. How many of them are there again? 15? 20? All with their own look and feel, and all with their own pain in the ass dependencies. It's not enough that GTK and QT is somewhat of a standard. That's still one toolkit too many.

      Ideally, there should be one standard toolkit api that is easily extensible by developers (ie a very flexible widget system), easily reconfigurable by the users (one standard look and feel, that "power users" can change).

    • by IamTheRealMike ( 537420 ) on Sunday September 28, 2003 @08:22AM (#7076809)
      This leads to toolkit darwinism, which has left us with essentially GTK and QT as the two dominant toolkits. Imagine if X had been shipped with Motif as its native toolkit? Who the hell would use that in 2003?

      Come now. Windows has shipped with a standard widget toolkit since its very first version, yet it has definately evolved since then.

      Don't assume that had X got a built in toolkit, it would never have evolved. Given the extensibility of X it probably would have evolved nicely, in fact.

      However, likewise you shouldn't assume that if X had a built in toolkit everything would use it. Of course, this would not be the case. Mozilla would still use XUL. OpenOffice would still use the VCL. Wine would still use its clone of win32 widgets. Some apps would still reinvent widgets for whatever reason (just as they do on Windows and MacOS X).

      Toolkit compatability is best dealt with by standards, IMHO, rather than just moving them around....

      • Re:Built in toolkit (Score:5, Interesting)

        by Spoing ( 152917 ) on Sunday September 28, 2003 @08:56AM (#7076947) Homepage
        Come now. Windows has shipped with a standard widget toolkit since its very first version, yet it has definately evolved since then.

        Yes, though enhancements show up much more slowly in Windows. Except for the icon and interface whitewash with XP, it's not much different from what was shipping with Windows 3x.

        To drive this point home: I've been showing off Linux at work using Knoppix and a USB pen and have had people astounded...to the point I'm starting to temper thier expectations. Simple things like tabs, and complex things such as ioslaves (with a real world example) leave them saying Microsoft doesn't stand a chance against Linux. Well, that's too much enthusiasm but I hope this gets the point across;

        Windows itself has improved the base widget set, though most Windows apps still look like they were designed for Windows 95 and very few of these new widgets are used there.

    • Re:Built in toolkit (Score:5, Informative)

      by 0x0d0a ( 568518 ) on Sunday September 28, 2003 @10:59AM (#7077652) Journal
      all X really is is a network-aware framebuffer.

      I disagree. VNC could reasonably be called a network-aware framebuffer. X, however, provides drawing primitives, color management, font rendering, windowing...
    • Imagine if X had been shipped with Motif as its native toolkit? Who the hell would use that in 2003?

      Absolutely everybody, that's who.

      The only reason that GTK and Qt exist is that Motif was expensive, and therefore not widely available on free Unixen. Lesstif was not usable until several years too late.

      It remains one of the classic, tragic, colossal wastes of time that so many people put so much work into building GTK and Qt from scratch, instead of sinking that same amount of effort into fixing L

      • Object Oriented (Score:3, Informative)

        by jbolden ( 176878 )
        QT was developed after object oriented methodology was well understood. Its far easier to learn than Motif. There is genuine progress.
  • Yeah but... (Score:3, Funny)

    by Sir Haxalot ( 693401 ) on Sunday September 28, 2003 @07:49AM (#7076689)
    What will they do after they've finished with Y and Z, they'll have no more letters of the alphabet then. It'll be a disaster
  • Depends. (Score:4, Interesting)

    by termos ( 634980 ) on Sunday September 28, 2003 @07:49AM (#7076690) Homepage
    According to the webpage:
    Y depends on:

    * libSDL 1.2 (available at www.libsdl.org)


    Now, doesn't libSDL again depend on X? ;-)
    • Re:Depends. (Score:5, Informative)

      by Leffe ( 686621 ) on Sunday September 28, 2003 @07:57AM (#7076724)
      ./configure --without-x
    • Re:Depends. (Score:5, Informative)

      by Sentry21 ( 8183 ) on Sunday September 28, 2003 @09:58AM (#7077212) Journal

      Now, doesn't libSDL again depend on X? ;-)

      No, it doesn't. There is an X backend to SDL, but it can also do the fun stuff on its own, as well, and runs on many platforms. From the FAQ [libsdl.org]:

      Q: How do I choose a specific video driver?
      A: You can set the environment variable "SDL_VIDEODRIVER" to the name of the driver you want to use. The drivers available depend on the platform and SDL compile-time options. Here is a partial list for some platforms:

      • Linux:
      • x11 - (default) Use the X11 windowing system
      • dga - Use XFree86 DGA 2.0 for fullscreen hardware acceleration
      • fbcon - Use the framebuffer console
      • directfb - Use the DirectFB API
      • svgalib - Use the SVGAlib API
      • ggi - Use the General Graphics Interface API
      • aalib - Use the Ascii Art library
      Win32:
      • directx - (default) Use the DirectDraw API
      • windib - Use the standard Win32 GDI

      And from the website:

      Simple DirectMedia Layer supports Linux, Windows, BeOS, MacOS Classic, MacOS X, FreeBSD, OpenBSD, BSD/OS, Solaris, IRIX, and QNX. There is also code, but no official support, for Windows CE, AmigaOS, Dreamcast, Atari, NetBSD, AIX, OSF/Tru64, and SymbianOS.

      Thus, not only can his example be made to work under X (theoretically), but it will also work on pretty much every other OS you'd want to use it on, and some you wouldn't. Also, in addition to being runnable anywhere, it can also run directly on the Linux framebuffer, which means that all that needs doing is hardware acceleration for the framebuffer, and then Y, as well as many other SDL apps (perhaps with slight modification), will run quite well without having to have X loaded. That, to me, sounds like a good thing.

      --Dan

  • So... (Score:5, Funny)

    by segfault7375 ( 135849 ) on Sunday September 28, 2003 @07:51AM (#7076695)
    UNIX desktop environments are a mess. The proliferation of incompatible and inconsistent user interface toolkits is now the primary factor in the failure of enterprises to adopt UNIX as a desktop solution.

    So what do we do to solve this mess of user interfaces? Let's create yet another one! I love the way that geeks think :-)
    • Something like that... maybe vy? (-: asbestos suit, check; grin, duck, run :-)
    • If you wanted consistency and all that, you'd buy a mandrake, redhat or suse distribution.

      The thing about OSS is choice, of course, but it's also innovation as well. Yeah, X/*nix may suffer from TOO many clocks, but how many times have you seen a really cool clock that's implemented on X vs windows? I'm not talking about the importance of "the clock" but the cool factor and the possibilities.

      Inovations in unix? Well.. lesse.. kerberos, window transparancy in X, themes.. all ideas that have been porte
    • Re:So... (Score:5, Insightful)

      by Quixote ( 154172 ) on Sunday September 28, 2003 @08:12AM (#7076773) Homepage Journal
      Sometimes you need to step back and reimplement things from scratch. X has been a monumental achievement, no doubt; but it never hurts to take a fresh look and see if you can do it better.

      This is the strength of the Open Source model. The source is out there for everyone to see; think you can do it better? Step up to the plate and take a swing!

  • Y, eh? (Score:4, Insightful)

    by Leffe ( 686621 ) on Sunday September 28, 2003 @07:51AM (#7076696)
    I don't really like this... X is mature and popular, replacing it will take a *lot* of time, and most people will not switch unless the major distributions do.

    And anyway, alpha blending and an official toolkit? No. The unofficial X toolkits work well enough, and alpha blending is not very hard to hack in - it's also quite useless for anything other than eyecandy.

    I doubt this project will get much highlight after this initial slashdotting.
  • by revividus ( 643168 ) <phil...crissman@@@gmail...com> on Sunday September 28, 2003 @07:55AM (#7076717) Homepage
    ...wouldn't it be more in keeping with tradition to call it X++?
  • License? (Score:2, Interesting)

    by Hythlodaeus ( 411441 )
    What's the license?
  • by Rosco P. Coltrane ( 209368 ) on Sunday September 28, 2003 @08:02AM (#7076740)
    Everybody says X sucks, that it's bloated, that it's slow, ... and everybody wants to replace it. The best effort I've seen so far it Qt (especially Qtopia for palm devices).

    I think X is like Unix : it was inadequate and bloated but computers have caught up with their demands, in terms of power and disk capacity.

    Computers get more and more powerful, networks are faster and faster, and X is more and more lightweight comparatively. Combine that with decades of testing and millions of developers who have experience with it, and I can guarantee X is there to stay and evolve.
    • What are you talking about? QT is a toolkit that runs on top of X, and if Trolltech were to change this they'd have a bit fight on their hands. Basically, it ain't going to happen.
    • by quigonn ( 80360 ) on Sunday September 28, 2003 @08:36AM (#7076860) Homepage
      I think X is like Unix : it was inadequate and bloated but computers have caught up with their demands, in terms of power and disk capacity.

      Could you please stop these inadequate comparisons that are totally false? When Unix was developed, it was a lightweight and powerful operating system. Regarding lightweightness, some derivations and incarnations of Unix still are.
    • by aussersterne ( 212916 ) on Sunday September 28, 2003 @09:09AM (#7077001) Homepage
      Everyone says that X is so bloated, yet I used to run X on a Sun 3/80 with 16MB memory and a 68030 (think Mac SE/30) processor. In its day it ran circles around PCs and Macs. A little later when I finally "gave in" and switched to PC hardware, I bought a 386DX/25 with 8MB memory and a massive 600MB ESDI hard drive, and ran Linux+X on that. I used FVWM as my window manager and often made use of applications like emacs and NCSA Mosaic. The hardware was much faster under Linux+X than under Windows 3.1. Yes, X on an 8MB, 25MHz PC.

      Today X still compares favorably to Mac OS and Windows in terms of functionality and even in terms of things like 3D game frame rate. I don't think X has ever been slow and bloated compared to simultaneous "alternative" technologies like Mac OS or Windows.

      I think the new rush of Linux users in the late '90s and early '00s just happened to get a bum driver or two thanks to the "newness" of X to commodity PC hardware and the longtime lack of manufacturer support for X on such hardware. No matter how many times I read it, I just don't buy the notion that X is slow and bloated in comparison to the alternatives.
      • The hardware was much faster under Linux+X than under Windows 3.1. Yes, X on an 8MB, 25MHz PC.

        I first ran Windows 3.1 on an XT. It was a 10MHz 8088 with a Hercules card. It was responsive enough to be useful. I upgraded to a 286 after awhile (I think it was a 12 MHz.) Eventually I upgraded to a 386, because then I could (cooperatively) multitask.

        I still have Windows 3.1 on an old laptop (a 386SX with 4 megs of RAM). Believe me, Linux and X run far more bloated on such hardware. I have NetBSD and X
      • by Arker ( 91948 ) on Sunday September 28, 2003 @11:23AM (#7077843) Homepage

        I first ran X on a 386-25 with 8mb ram too. I agree with almost everything you said. People that think X is slow are trying to run GNOME, KDE, or maybe E with a bloated configuration, a crappy video driver, and quite probably all their libraries compiled with debugging on. X is a wonderful thing, lightweight, fast, powerful, and it runs fine on hardware that any recent version of Windows (or Mac OSX) wouldn't even attempt to run on.

      • by 0x0d0a ( 568518 ) on Sunday September 28, 2003 @11:36AM (#7077938) Journal
        Thank you *very* much for pointing this out.

        For some reason, people (generally folks new to X) consistently manage to completely misunderstand how X works, and happily rant about it. Among the issues:

        Problem: X has bad 3d support.

        Answer: No, it doesn't. Manufacturers have just barely put out drivers, and still don't have great install procedures. Starting with a new system would make this problem orders of magnitude worse.

        Problem: X uses lots of memory.

        Answer: No, it doesn't. Try running pixmap_mem (and the analyze script that comes in the same package) on your system. Unlike Windows apps, X11 apps store pixmaps in the server. X11 newbies frequently confuse this with X using a lot of memory. Combine this with the fact that Unix memory utils multiple-report memory usage of shared libraries, and report device mapping as memory usage, and people look at X and say ("Oh, it's blowing 30MB of memory in overhead."). No, it isn't. Trust me.

        Problem: X11 is inefficient.

        Answer: No, it isn't. X11 is pretty damned efficient. Today's pixmap-laden interfaces can run much more slowly over a network than the original interfaces, whicch were mostly big, flat-color rectangles, but the same is true of VNC and similar.

        Problem: X's multiple-widget set system is a bad idea.

        Answer: No, it isn't. People look at X and think "Gosh, I don't want to use Athena apps." The thing is, the widget-independent design of X has been a huge boon. X11 dates to 1987. If we had been unable to advance through widget sets, we'd still be using ugly, grotty Athena. But, you say, this ignores the fact that Windows and Mac OS have advanced through the years! Nope. First, Windows widget sets *have* broken user-level compatibility on a regular basis. Menus in Office XP now work a lot differently than menus in 1987 did. Second, some widget sets are hamstrung by initial design flaws. The classic MacOS widget set does not include a slider widget, for example. As a result, years of application developers misued the scrollbar widget, made up their own widget (which led to even worse user interface problems), or just went without. The ability of X11 to evolve has let things like KDE's tearable panes come to the fore. Also, when it comes to APIs...the modern, easy-to-use APIs of GTK and Qt blow away the horrific Macintosh Toolbox API (note: I am not a Cocoa developer, so things may have improved) or the almost-as-grotty Win32.

        Problem: X11 is hard to use.

        Answer: No, it really isn't. Occasionally, piss-poor setup on the part of distro makers has made things more of a pain than it should be. If a user isn't interested in remote windowing, he shouldn't have to worry about xauth or xhost. This is largely a problem of the past.

        The main "problem" with X11 is actually newbies to it making a bunch of claims about software that they haven't used and don't understand. They've frequently just come off of a decade of Windows use, and expect things to work in precisely the same way, and are horrified when there are differences.

        The majority of people I've seen complaining about X11 are Johnny-come-lately types. Most of the older folks who have been using it for a while just don't care enough to respond to the complaints, which they see as pretty uninformed.

        Now, there are things about X11 that aren't that great. X11 supports an *extremely* rich color model. If you're using Xlib (which you shouldn't be doing unless you're writing a widget set), it is a royal pain in the butt to support every color model available. This was done to handle the vast array of hardware that X11 has been run on.

        X11 doesn't support a great way to share identical pixmaps from different apps. This is really hard to do in a secure way.

        Basically, I'm reminded of the SSL discussion that came up recently. Everyone wants to run out and rewrite SSL to be simpler, faster, easier. They don't understand that the stuff in SSL is there because it *needs*
        • >Problem: X11 is inefficient.
          >
          >Answer: No, it isn't. X11 is pretty damned
          >efficient. Today's pixmap-laden interfaces can
          >run much more slowly over a network than the
          >original interfaces, whicch were mostly big,
          >flat-color rectangles, but the same is true of
          >VNC and similar.

          Do you mean that X is efficient for flat-color rectangles but inefficient for pixmap-laden interfaces?

          If so, the definition of efficiency needs to be updated. Today, efficiency means efficiency dealing with pixm
  • by penguin7of9 ( 697383 ) on Sunday September 28, 2003 @08:04AM (#7076746)
    People think that if they just put the toolkit into the server, things will get consistent:
    UNIX desktop environments are a mess. The proliferation of incompatible and inconsistent user interface toolkits is now the primary factor in the failure of enterprises to adopt UNIX as a desktop solution.

    There is no way to get consistency in a window system. People will port their favorite window managers and toolkits to whatever window system you create. MS Windows runs many of the same toolkits that X11 does. Apple is even worse, officially supporting OS 9, Carbon, Swing, and Cocoa-based applications on the same desktop, and now also X11; and in addition to all that, toolkits like Gtk+, FLTK, Swing are also being ported to native Quartz backends.

    If you want consistency on your desktop, just choose to use a consistent set of applications. Most non-computer experts can't even tell the difference between an MFC, Gnome, KDE, and wxWindows application: they all look equally flaky and confusing to them. And most people incorrectly think that something is an OS X native application if it has shiny gumdrop buttons. In short, most people neither know nor care.

    • Indeed. I also find it highly amusing when people talk about Windows having a consistent look and feel, when MS changes its widgets every time it releases a new version of Office. What the hell is that all about? We've had flat, 3D, 3D on mouseover, .NET style... have I missed any?

  • Read the paper. (Score:5, Insightful)

    by Futurepower(R) ( 558542 ) on Sunday September 28, 2003 @08:06AM (#7076755) Homepage

    Read the paper. It is of shockingly good quality, both in the writing and the completeness of ideas. The writer is a college senior!
    • Re:Read the paper. (Score:2, Interesting)

      by more ( 452266 )
      The paper is written around one idea, simplifying the internal structure of X. However, it is against the simplicity of X by claiming xlib's level of abstraction too low. One should start from the requirements, like the internal simplicity, and modern features. One should also specify the scope of the windowing system; mobile systems need other type of solutions from zillion-pixel worksations. Y lacks the obvious new features needed, such as subpixel cursor positioning, anti-aliasing, and 3d. IMHO, the pa
  • The name.. (Score:5, Funny)

    by eniu!uine ( 317250 ) on Sunday September 28, 2003 @08:14AM (#7076782)
    Some people don't like the name Y. I say hey, Y leaves us with Y Windows.. which is a good question.. why windows? Use Linux.

    • Re:The name.. (Score:3, Informative)

      by IM6100 ( 692796 )
      There is no such thing as X Windows, except in the mind of the ignorant. It is called 'The X Window System' or 'X'.

      'X Windows' is what illiterate journalists call it, and the people whose main experience with X is reading their inaccurate prose.
  • by Qbertino ( 265505 ) <moiraNO@SPAMmodparlor.com> on Sunday September 28, 2003 @08:21AM (#7076806)
    This guy seems to know what he's talking about and as far as I can tell he's got a proof of concept to show allready. Along with solid research and design.

    I wouldn't be to fast at hand with bashing this guy - he lists all the other XFree replacements and for some like Berlin/Fresco he can clearly state why they failed and what you have to aviod to not fail the same way. And he also acknowleges XFrees benefits and sees no point in overthrowing them.

    Keep an eye on this project, this could be something really interessting.
  • I was planning to do something very similar for my final year project this year. I think I'll have to stay well away from his source in case I get "inspired" by any of it and get in trouble for plagarism...

  • Blah blah X needs this and X needs that.

    When you lay it all out, it's not all the BIG stuff that needs to be rewritten for X. The network code? Yeah, it slows things down in some cases.

    But all I want is:

    1.) Alpha blending
    2.) A standardized menu system for applications.
    3.) The ability to cut and paste between applications.

    That's it.

    ~Will
  • Anyone who thinks that everything is hunky-dorey in X land is smoking something. Remember that thread about Keith Packard getting turfed from the X team and the whole mess about X people being too slow to accept patches and drivers. Maybe this is the step in the right direction to fix that. I'd like not to have to wait for the next X release to see my new shiny video card work. I am sick of X not being able to handle five button mice some five years after these have been put out to market (even Apple which
    • The X Window System [control-escape.com] is a set of libraries and header files which implement the X11 protocol. There has been support at the library level for 5-button mice since at least 1993, version X11R6. The X11/X.h header file defines Button1Mask, ..., Button5Mask.

      The XFree86 server [xfree86.org] is (mainly) a set of drivers for various graphics hardware. It is possible XFree86 may not support your particular 5-button mouse. Without further information it's not possible to know. Please give the exact model name of your 5-bu

  • Some of us out here dont want X replaced, its efficent, its universal, its network aware, its the standard.

    If you want to extend X, sure..thats nice... wheres the code.. but replace? No thanks.
  • I'd be curious if somebody in the know commented on how this compares with the Plan 9 project?
  • Which is why I choose to go with X. X windows does just fine iand is fast enough. The only ones I hear bitching are the gamers and why the hell do you want to run X when your running a GAME! What is really needed is a non X lib that virtualizes the graphics and sound hardware but has no need for windowing and the like. This whay your game launch script can just launch the game on another VT and then switch back when the game exits. For 2D stuff it's fine.

    Having the choice of running different widget
  • by truth_revealed ( 593493 ) on Sunday September 28, 2003 @10:01AM (#7077224)
    This is not particularly important since Y is a work in progress, but you can see use of a GCC C extension in Y's button.c:

    static struct WidgetTable buttonTable =
    {
    c: &buttonClass,
    reconfigure: buttonReconfigure,
    paint: buttonPaint,
    pointerButton: buttonPointerButton,
    pointerMotion: buttonPointerMotion,
    pointerEnter: buttonPointerEnter,
    pointerLeave: buttonPointerLeave
    };

    That's not necessarily a bad thing - I think GCC is one of the best compilers around. The only issue here is that that particular named struct member syntax construct [gnu.org] has been deprecated since GCC 2.5 and may be dropped in the future. If I understand the GCC docs correctly I think the alternate C99 syntax would be:

    static struct WidgetTable buttonTable =
    { .c = &buttonClass, .reconfigure = buttonReconfigure, .paint = buttonPaint, .pointerButton = buttonPointerButton, .pointerMotion = buttonPointerMotion, .pointerEnter = buttonPointerEnter, .pointerLeave = buttonPointerLeave
    };

    But I could be mistaken.
  • by po8 ( 187055 ) on Sunday September 28, 2003 @12:42PM (#7078427)

    Well, I've only gotten as far as the critique of X at the start of Thomas' paper. This critique is a classic /. "X sucks" troll in academically semi-polished form.

    Point by point:

    • X has too much latency: See Packard's paper [keithp.com] in Freenix 2003: high latency is not an inherent X attribute, even over high-latency connections.
    • X requires a toolkit for ease of programming: Duh. As opposed to what, exactly?
    • X needs standardized UI semantics: This is moot. You may use X+Gnome or X+KDE if this is what you desire. Either is a fairly good and fairly complete system with standard UI semantics. The existence of two such systems is no more troublesome than the simultaneous coexistence of Windows and MacOS.
    • X is "an incoherent mess": When making this argument, it is always useful to confuse the protocol with the implementation. The existence of Kdrive is a nice example of how much the latter can be cleaned up. The protocol hasn't changed in 20 years except for extensions: the argument that the extensions don't work together is supremely unconvincing, supported by one lame example. freedesktop.org [freedesktop.org] has made a lot of progress in a short time in refactoring and standardizing X.
    • X is complex: It is. Unfortunately, it is a response to complex application requirements. Again, one lame example involving perhaps the most demanding application running is cited. And again, freedesktop.org is standardizing mechanism for dealing with the cited problems.
    All of this would have been easy to avoid. Just talk to an X developer before publishing the paper. Many are quite accessible, and would undoubtedly have been happy to correct the critique.

    It's perfectly valid to want to write a new window system. I can think of a variety of justifications, starting with "it's nice to try something different" and "I wanted to learn some things". Trolling is hardly necessary, and hardly welcome.

  • by miguel ( 7116 ) on Sunday September 28, 2003 @03:38PM (#7079645) Homepage
    I see some flaws in the document posted.

    I love research, and more than anything I love the people involved in doing research: those who create, explore and can give us future direction. But I also believe that the research must be truthful if we want to build on it.

    The Y presentation paper is interesting on the ideas it introduced (we could argue whether they are new or not, since NeWS did did before, in fact, with a more extensible system) but it fails on presenting X correctly.

    The document goes on to show that the X-based approach has lead to major GUI fragmentation, and how the MacOS and Windows do not have this problem.

    On the screenshots where X looks bad, the author shows some old graphics program running together:, xpdf and two modern apps: mozilla/xul and gnome calculator. All of those programs have Gtk-based or Qt-based equivalents that would have made the whole experience consistent.

    The screenshot should instead be presented as a proof that X can still run applications that were developed 12 years ago.

    Then he shows the Mac and Windows. Again, not really honest screenshots, because even Apple is shipping two different GUI views: the brushed metal theme and the aqua theme (this combination kills me) and Microsoft is not exactly known for keeping their GUI look consistent across their product line: Office, MSN and the rest of the desktop use different styles and widgets.

    So summing it up: the screenshots are presented to prove a point which happens to not be there.

    Now, to make things even more interesting, here is a little bit that the author of Y might not be aware of: widget rendering on MacOS X happens on the client side, and the operation that the server supports is basically "uptade-rectangle-with-this-RGB-buffer", there is no magic of server-side widget rendering on MacOS X.

    Also, doing an X protocol translator is not an easy job, but I wish them good luck pursuing this new adventure, it defintely sounds interesting.

    Miguel.

Prediction is very difficult, especially of the future. - Niels Bohr

Working...