Slashdot Mirror


picoGUI: An X Alternative?

bockman writes "While started as a PDA-oriented project, the picoGUI people seem to be implementing many ideas which I think would be good also for a desktop graphics server ( high-level client/server protocol, presentation layer in the server _but_ modular, application management also modular,...). So I wonder: what would it take (apart porting tons of applications) to make it a suitable alternative to X+[your toolkit of choice]+[your window manager of choice]?"

511 comments

  1. For the SI prefix challenged by Anonymous Coward · · Score: 4, Funny

    pico == 1e-12. So if your average GUI takes 1 GB, this one should take 1/1000 byte.

    1. Re:For the SI prefix challenged by PhysicsScholar · · Score: 3, Funny

      Let's see, so if a byte is 8 bits, and picoGUI is supposed to take 1/1000 of a byte, then the code for the entire graphical user interface subsystem has been compressed into 0.008 bits.

      The entire source probably looks something like the following: .

      I didn't realize DNA computing had arrived so quickly. God bless those researchers!

      --

      Department of Physics and Atmospheric Science, Dalhousie University, Halifax, N.S., Canada, B3H 3J5
    2. Re:For the SI prefix challenged by Anonymous Coward · · Score: 0

      wait, but red bull tastes exactly like ham and pineapple

    3. Re:For the SI prefix challenged by BlueGecko · · Score: 3, Informative

      I would point out that on Linux, the picoGUI server and shared library, together, take under half a meg (487 kB) at their maximum size. Sure, it's not 1/1000th of a byte, but I've not seen an X server do that in a loooooooong time.

    4. Re:For the SI prefix challenged by Anonymous Coward · · Score: 0

      TinyX isn't vastly than this, though. (But it is bigger.)

    5. Re:For the SI prefix challenged by micahjd · · Score: 5, Informative
      The name "PicoGUI" originated as a pun against other GUIs like Photon microGUI, Nano-X, and Microwindows :)

      --
      -- 2 + 2 = 5, for very large values of 2
    6. Re:For the SI prefix challenged by Anonymous Coward · · Score: 0

      But shouldn't this be done in a base 2 numbering system? (1 GB==2^30) and (1 PB == 2^-40), so it should be 1/1024 rather than 1/1000 (which of course is also impossible). :-)

    7. Re:For the SI prefix challenged by spac · · Score: 1

      On 32 bit machines, 4 bytes is needed to represent the ascii value of '.'

      You have to rethink your design, your code is far too bloated as it stands.

    8. Re:For the SI prefix challenged by Sivar · · Score: 2

      On 32 bit machines, 4 bytes is needed to represent the ascii value of '.'

      No, on x86 you can store just 8 bits of it into a register segment like AL. You can even do this on the 64-bit Opteron.

      Only on Slashdot would this kind of argument go on... :)

      --
      Computer Science is no more about computers than astronomy is about telescopes. --E. W. Dijkstra
    9. Re:For the SI prefix challenged by MoogMan · · Score: 1
      The entire source probably looks something like the following: .


      No, for that would be one byte ;)
    10. Re:For the SI prefix challenged by milquetoast · · Score: 0, Flamebait

      i don't think you know what a pun is.

    11. Re:For the SI prefix challenged by twoslice · · Score: 3, Funny

      Let's see, so if a byte is 8 bits...

      and if 25 cents is 2-bits then a byte is worth a dollar!

      --

      From excellent karma to terible karma with a single +5 funny post...
    12. Re:For the SI prefix challenged by jellybear · · Score: 2

      Yeah?? Want a PUN-ch to the face?

    13. Re:For the SI prefix challenged by Sri+Lumpa · · Score: 2, Funny

      "pico == 1e-12 [wikipedia.org]. So if your average GUI takes 1 GB, this one should take 1/1000 byte."

      That's because you are approaching the problem from the wrong angle.

      The picoGUI takes at most (so I am told) about half a megabyte.

      This means that it has the equivalent functionality of an average GUI taking 1/2*1e12 or 5e11 megabytes. That is the picoGUI packs up in half a megabyte the functionality of a GUI of approximatively 500 petabyte!!!

      Certainly such a GUI must put to shame the Star Trek LCARS and AUI (Acoustic user interface, when they alk to the computer directly), let alone such puny GUIs as what Windows Blackcomb isn't yet and MacOS X.

      --
      "The obvious mathematical breakthrough would be development of an easy way to factor large prime numbers." Bill Gates,
    14. Re:For the SI prefix challenged by duck_prime · · Score: 2
      The entire source probably looks something like the following: .
      Yes, and web servers running on such a machine are unstable, subject to the dreaded "dot effect". Beware!
  2. A good alternative! by coene · · Score: 2, Interesting

    Without having used it, the screenshots are pretty impressive -- especially for such a young project (compared to X). Personally, I *HATE* X.

    If this project can get it right, and avoid a lot of the pitfalls X has, and could run all the apps I needed to (flexible, back-ported API is a MUST to avoid tail-chasing), I would use it.

    I'm interested to hear if anyone with significant experience using it could comment to its usability and compatibility?

    1. Re:A good alternative! by Anonymous Coward · · Score: 0

      You hate X and i hate python

    2. Re:A good alternative! by Arandir · · Score: 5, Insightful

      The entrenched X API is the biggest roadblock to projects like these. It's almost easier to put picoGUI into a new OS rather than trying to make it replace X in Linux/BSD/UNIX.

      But if the X API can be put on picoGUI, then it's something to think about. Otherwise I'll stick with XFree86, which is getting faster and smaller with each release.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    3. Re:A good alternative! by BJH · · Score: 2, Insightful

      I'd love to hear exactly what it is you "hate" about X, and where you think its "pitfalls" lie.

    4. Re:A good alternative! by BrookHarty · · Score: 2

      ..It's almost easier to put picoGUI into a new OS rather than trying to make it replace X in Linux/BSD/UNIX.

      No matter what OS you want to develop for, you need good development tools, and knowledge about the OS. Linux/BSD are perfect for this. I dont blame Xfree for the problems in X, driver support is what makes it suck.

    5. Re:A good alternative! by quantaman · · Score: 2

      I feel one major pitfall of X is the inability to change the resolution of the X-Server without shutting it down. This is also a major problem of games in Linux as many games simply don't run well at resolutions most people like to work at. Either way with alternatives if thay can achieve compatibility over networks I think some competition could be a great bonus to the *nix community.

      --
      I stole this Sig
    6. Re:A good alternative! by Anonymous Coward · · Score: 0
      I feel one major pitfall of X is the inability to change the resolution of the X-Server without shutting it down.


      Games can already change resolution to lower resolution. (Wine does this routinely for Windows games running on Linux.)

      You can change the resolution of X in Red Hat Linux via a a cute little GUI tool. (Machinery to make this even more elegant, the Resize and Rotate Extension, is already in the development version of XFree86, and will be widely deployed once XFree86 4.3 is released.)
    7. Re:A good alternative! by Anonymous Coward · · Score: 0, Flamebait
      The entrenched X API is the biggest roadblock to projects like these. It's almost easier to put picoGUI into a new OS rather than trying to make it replace X in Linux/BSD/UNIX.


      The major toolkits (GTK+, Qt, etc.) have backend abstraction layers, so they can run in multiple environments (for example, GDK has been ported to DirectFB, Qt runs on embedded platforms and Windows, etc.). For other apps, implementing a tiny X server over the system is *that* hard (relatively speaking); this is what DirectFB have done.

      So far as porting... DirectFB may actually be a better idea (not sure on its portability, tho). The only thing it's missing atm is 3D acceleration (which would involve porting the XFree86 Mesa drivers, and/or getting support from the people who make actually useful 3D drivers, i.e., ATi and nVidia).

      ...I'll stick with XFree86, which is getting faster and smaller with each release...


      And no less unstable. Speed is pretty useless when my desktop crashes at least twice a day (on any number of chipsets, I might add; especially on my laptop).
    8. Re:A good alternative! by jedie · · Score: 1
      Otherwise I'll stick with XFree86, which is getting faster and smaller with each release.

      They've been at it for almost 20 years... 20 more years and it will be acceptably small and fast..
      ofcourse it could be acceptably small and fast by then, because CPU speed and data storage capacities will be much better in 20 years ;)

      --
      "The majority is always sane, Louis." -- Nessus
      http://slashdot.jp
    9. Re:A good alternative! by be-fan · · Score: 2

      XRandR. Already in CVS, GNOME and KDE both of support for it. Next?

      --
      A deep unwavering belief is a sure sign you're missing something...
    10. Re:A good alternative! by p00ya · · Score: 1

      MacOS X anyone - haven't they already implemented a (much better) alternative to X on a BSD(ish) kernel? I believe the underlying architecture is called quartz.

      I don't personally use MacOS X but just looking at the blurb [apple.com] it has some quite intuitive features: PDF-style vector rendering, GPU and video memory usage.

    11. Re:A good alternative! by Dialithis · · Score: 2, Informative

      Thankfully X has already fixed that problem. The new RandR extension will allow for this kind of resizing, and it is only a matter of time before all the apps that need to support it do (and there are a lot of ways to make it usable in the meantime).

      Check out the slashdot story: RandR Extension

    12. Re:A good alternative! by p00ya · · Score: 1

      eek... link was meant to be blurb

    13. Re:A good alternative! by Anonymous Coward · · Score: 0
      The font rendering sucks sweaty donkey balls. Fonts look like shit. Windows just looks so much better.

      And why do you need a freakin server for every tiny piece of bullshit? Font server, sound server (oh wait - there are actually about 10 different sound servers), etc. Fuck this. I don't want it.

      Then there's the bastardized Frankenstein GUI. The twenty different toolkits. Both KDE and Gnome are heaps of steaming shit. Windows isn't perfect, but much better. BeOS is perfect. Or maybe AmigaOS. But instead of programming a nice GUI these dorks program another text editor for KDE or a Tic Tac Toe game for Gnome. Clusterfuck.

    14. Re:A good alternative! by jbester1 · · Score: 1

      """I feel one major pitfall of X is the inability to change the resolution of the X-Server without shutting it down."""

      Commercial X servers have been doing this for a long time. It's an XFree issue not an X issue (See metrolink, or X implementations on commercial Unices).

    15. Re:A good alternative! by npietraniec · · Score: 2

      I don't understand those who *HATE* X. Is it because you people are running pentium 100's? X always ran fine on my PentiumII 366, and now with the recent enhancements added to (what will be) XFree 4.3, I'm not complaining about anything. I'm currently running a CVS snapshot and it's sweet. If you *HATE* Xfree, don't run it. Run something else. Run Windows or OSX... or maybe do something constructive like emailing the developers and asking how you can help since you think it sucks so much.

    16. Re:A good alternative! by Anonymous Coward · · Score: 0

      WARNING!!!

      Do NOT run the file in the parent post. It contains a VIRUS!! Moderators, mod it down please.

    17. Re:A good alternative! by facelessnumber · · Score: 2, Insightful

      And why do you need a freakin server for every tiny piece of bullshit?

      Modularity. One of the nicest things about a true multitasking *NIX environment. If something doesn't work the way you want it to, you can take a piece of it, the piece you don't like, change it, and contribute it. Or install someone else's contribution. I'm actually glad there are a million complete little programs running around on this machine doing things that could be handled by one piece of software with everything integrated. Do you want about ten different sound servers, or do you want about ten slightly different versions of X to choose from? Make that twenty if there are even two different font servers. That would be the clusterfuck. I'll venture to guess that the modular nature of Linux is one of the major reasons people like it. Screw the idea of everyone agreeing on how it should be, even if that were possible. I love my Frankenstein GUI, and if I decide one day that I don't I'll log out and pick another one. Stupid Linux geeks don't have to work with whatever Microsoft or Apple (Or GNOME, or KDE) thinks their desktops should behave like. It's not for everybody; if you conform to Microsoft's market research, or Apple's, or that of the BeOS or Amiga folks, then their desktop is made for you. Mine is made for me, but only because I could customize the unholy hell out of it, and if I wanted something to be different then somebody, somewhere had written the code for me to change it. Yeah, keep a freakin' server for every tiny piece of bullshit, and God forbid it should ever be any other way.

    18. Re:A good alternative! by NortWind · · Score: 1

      Is 4NT.EXE a virus, or is it a trojan of some sort? It seems to be from JP Software, which looks legit.

    19. Re:A good alternative! by ahaning · · Score: 1

      Like the other two people said, your problem with not being able to change resolution/refresh doesn't matter because it's in development code.

      (I'm kidding, of course.)

      Actually, that is a big problem with X. And they are right -- the code to resolve it is in development. However, that doesn't solve your problem now, which would be better.

      Anyway, just thought say that the response to someone's complaining about a missing feature shouldn't be "Ah, the solution to your problem is in development, and therefore your problem is moot!" It just seems -- incourteous.

      Ah well.. I've done nothing but add to the static.

      Unfortunately, you're just going to have to wait for X 4.3 and support from your window manager of choice.

      --
      Withdrawal before climax is very ineffective and those who try this are usually called "parents."
    20. Re:A good alternative! by Bytal · · Score: 1

      Wine doesn't actually change the resolution. It does the same thing you can do by pressing Alt Ctrl -/+, except that it captures the mouse and keyboard and doesn't let you scroll out of the window that your game is running in.

    21. Re:A good alternative! by Luke-Jr · · Score: 1

      Infact, that's the main problem with KDE. You can't just run Konqueror w/o KDE. Nor can you run KDE w/ Mozilla instead of Konqueror. Of course, the CVS Konqueror is competitive with Mozilla (need anti-popup/banner tho), but I still would prefer Mozilla right now.

      --
      Luke-Jr
    22. Re:A good alternative! by Anonymous Coward · · Score: 0

      When do you change resolution. Never i guess. It is a red hering

    23. Re:A good alternative! by statichead · · Score: 1

      Are we not changing resolutions when you "ctrl, alt, keypad +|-??????

      Certainly seems to work for me considering the resolutions that you want to jump to need to be in the XF86Config-4 file. I dont need to restart the x server after a resolution change.

      Winders peoples mouths drop open when I switch from 1200x1600 to 640x480 to check out a small image on a web page, with 3 key strokes, and then match the resolution close to the size of the pic.

      Return to Castle Wolfenstein filps to the res its set for. other games do the same bzflag for instance.

      Am I missing something here?

      I find X to be extremely flexible, yes there is some learning curve if you want/need to tweak it, but I see no real limitations.

    24. Re:A good alternative! by Minna+Kirai · · Score: 3, Interesting

      Are we not changing resolutions when you "ctrl, alt, keypad +|-??????

      No. Ok, maybe the monitor changes resolutions. Your desktop and all applications aren't aware of any change (like they would be in MS Windows for instance). Once you press Alt+/- in Xfree86 your entire UI experient is degraded by the constant need to shove around the viewport with the mouse cursor.
      That feature is worthless for anything but a quick zoom-in on an image, or for testing refresh-rate configurations.

    25. Re:A good alternative! by Anonymous Coward · · Score: 0

      ? What are you talking about? Yes, you need the base kdelibs, but I frequently run KDE apps - including Konqueror - under GNOME, and vice-versa. I don't know what's stopping you from running Mozilla under KDE; I do so all the time, and since I've got it set to remember my desktop on logout, when I log back in, Mozilla starts along with the konsoles, kmail, etc.

    26. Re:A good alternative! by BJH · · Score: 1

      Font rendering? Check out the Xrender extension (Xft). Gives nice AA fonts (if you like that sort of thing), and there's some good utilities these days to make setting up new fonts pretty painless.
      What on earth does sound have to do with the GUI, BTW?

    27. Re:A good alternative! by jejones · · Score: 2

      Perhaps a good starting place would be the chapter on X in the Unix-Haters Handbook. That's been around for some time; is there a definitive discussion/refutation of it somewhere?

    28. Re:A good alternative! by Anonymous Coward · · Score: 0

      They've been at it for almost 20 years...

      I don't know when XF86 started, but there is no mention of XFree86 on usenet until 1992. I don't know what kind of math you are using, but here 2002 - 1992 != 20. Remember, XFree86 is not X! There are plenty of different X implementiations. If all the X bashers would try an X system like IRIX, I think they'd change their stance in an instant.

    29. Re:A good alternative! by the+gnat · · Score: 4, Interesting

      Anyone who's ever used an SGI would agree that they've made about as slick an X server as possible, largely because they've done such a good job integrating with hardware. It's smooth even on older computers, and the widgets (modified from Motif) look great. However, the underlying problems in X go way beyond the issues of specific implementations which shall remain nameless. Try reading the O'Reilly books like "Xlib Programming Manual" sometime, and see how long it takes for your brains to leak out your ears. Apple, on the other hand, has come out with a relatively consistent and polished API. Personally, I think Aqua is a bitch to actually use and prefer to deal with the clumsiness of Linux/XFree86 for running apps, but based on what I've read I'd much rather develop for OS X than Linux. I suppose I could use one of the many toolkits, but it'd be nice if I had one to choose from that didn't suck.

    30. Re:A good alternative! by Anonymous Coward · · Score: 0

      I'd love to hear exactly what it is you "hate" about X, and where you think its "pitfalls" lie.

      Everyone who complains about X think that X is the same thing as XFree86. Don't get me wrong, XFree is a nice peice of work, but it isn't at the same level as some other commercial offerings (not to mention the x86 PC doesn't help).

    31. Re:A good alternative! by statichead · · Score: 1

      OK I see the point now but the arguement escapes me. I thank god that all my windows are not re-arranged when I change resolutions. Now if we could change resolutions and have the server remember where we put all our windows for EVERY resolution there may be an arguement here, but neither Macs nor winders handle resolution switching this gracefully. Winders drives me nuts when you switch resolutions and lose the ability to click on a button or move a window. That degrades my user experience. Personally I find the way X handles the resolution switching enhances my U.I. experience, certainly more than any other OS.

      Your desktop and all applications aren't aware of any change (like they would be in MS Windows...

      winders itself is not even aware of the change. Did you ever lose the ability to close the resolution control panel window after changing resolutions? That just ain't right!

    32. Re:A good alternative! by Anonymous Coward · · Score: 0

      Why contribute to something you don't like? That's like maintaining a Ford Pinto when you have a Mercedes in your garage.

    33. Re:A good alternative! by Jeremiah+Cornelius · · Score: 5, Insightful
      They've been at it for almost 20 years... 20 more years and it will be acceptably small and fast..
      "They?"

      You got complaints with XFree development, then "throw your stone into the soup," with your own ineffable coding skills -- or hold your criticism. To work a weary truism, you look a gift horse in the mouth!

      The XFree86 effort is about 10 years old. Twenty years ago (I was there) we had dedicated, proprietary VECTOR graphics terminals, one per PDP-11, please! Raster graphics were a dream, waiting for advances in (gasp!) bubble-memory... Never happened that way.

      The XFree VOLUNTEERS took the X11r5-6 standard and reproduced it for free commodity systems. In six or seven years, they equaled proprietary vendor efforts, without the benefit of proprietary access to hardware! In the past three years, these developers have been working to advance X11 beyond any earlier realization.

      X is a good design, and extensible enough to be with us still today. Sure, I would have been ecstatic if NeWS had prevailed politically in the 80's Unix wars, or that NeXT's DP had grown up - but the DEC committee won out for openness, and number of players invited to the table. The downside of comittee design: Xlib sucked, and every toolkit ontop of Xlib perprtrated the crimes. It's still just a library - better ones are here and arriving - if nonstandard. Even JZW's famous excoriation of X11 is based on Xlib and Motif toolkits, not X11 architecture or design features. These are not dismissable any easier than is Unix.

      Paraphrasing the truism, I would advance that "Those ignorant of X11 are doomed to re-invent it -- badly."

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    34. Re:A good alternative! by Jeremiah+Cornelius · · Score: 2
      I feel one major pitfall of X is the inability to change the resolution of the X-Server without shutting it down.
      CTL-ALT-+

      That said, this is an implementation specific limitation, not an intrinsic barrier established by X11. In fact, X11's high degree of display-device independance ensures rendering on-the-fly at all kinds of resolutions.

      I can access my 1600-1280 capable SGI Octane from a crappy, 1024-768 laptop with Exceed on Winders, and the Desktop is sized for the target display, without alteration of the layout. DPS is necessary for the IndigoMagic features, but Exceed does this, too.

      Switch Windows resolution to 640x480, then back to 1280x1024. What happened to your icon placement, window sizes, etc? I leave it to you to perform the comparitive exercise.

      I wish to god that people who so easily denegrate X would take the time to learn what it is and is not.

      PicoGui is really cool - and designed for a good niche - not a genreal purpose windowing system. Good features from Pico, which can be implemented on XFree, will certainly find their way into XFree. The reverse has certainly happened. Viva la Source Libre!

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    35. Re:A good alternative! by Jeremiah+Cornelius · · Score: 2
      Perhaps a good starting place would be the chapter on X in the Unix-Haters Handbook. That's been around for some time; is there a definitive discussion/refutation of it somewhere?
      See my earlier posting, where I refer to JZW's scathing criticism... It refers mostwise to Xlib, and the quality of the toolkits which referenced it.

      the bulk of Unix-Hater's Handbook dates to the mid 80's to early 90's, and is culled from the relevant USENET groups of the time. Most of this is a time-capsule that relates to Unix implementations of that vintage, and were produced by staunch MULTICS adherents and by DEC-heads, who didn't "get" Unix, any more than Berkeley folk didn't "get" VMS.

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    36. Re:A good alternative! by FooBarWidget · · Score: 2

      Well, people seem to love Win98's speed even though it crashes a few times a day. Obviously average users don't care about stability.

    37. Re:A good alternative! by bockman · · Score: 5, Interesting
      picoGUI follows the road of the Berlin Project: the client-server protocol is at an higher level that X-protocol. It is at the level of a GUI toolkit, almost.

      To explain:

      • with X protocol, in order to draw, say, a pushbutton, the client says to the server things like : make a rectangle filled with color X, draw a line, etc... (the application programmers don't see this because this is what the GUI toolkits are for)
      • with picoGUI, the client only says: draw a button. It's the server that take cares of details, according to the currently loaded theme.
      This brings a couple of advantages:
      • low-bandwith protocol
      • uniqueness of look-and-feel among applications.

      To come to your point, no, picoGUI cannont embed the X protocol (it would be against its basic approach). But il could be possible (though not easy) to make 'compatible library' that traslates GTK+ API (or QT API) into the picoGUI API/protocol.

      --
      Ciao

      ----

      FB

    38. Re:A good alternative! by FooBarWidget · · Score: 2

      If you don't contribute then stop bitching about it and go use the "ooh so ultra-slick and userfriendly Microsoft(r) Windows(tm) XP(c)", which you DO like.

    39. Re:A good alternative! by Anonymous Coward · · Score: 0

      Why do you hate X? I'm asking because the common reasons are not really valid. To quickly enumerate them:

      - Ugly. Yes, X is ugly, but that is because it was always meant to support multiple widget sets, without forcing a specific look. While I agree that something needs fixing in this general area, the area that needs fixing is not X but the layer on top of that. Two good attempts at fixing are KDE and Gnome.

      - Slow. Yes, X is slow, but so is *anything* running over a network (pico-gui won't be any quicker). It might be worth it to implement a version using a faster communication mechanism if the client and server happen to be running on the same machine, but otherwise you cannot make it any faster - unless of course you want to drop network support completely.

      So what other problems are there with X?

    40. Re:A good alternative! by Anonymous Coward · · Score: 0

      yes, at the rate Xfree86 is shrinking will there be anything left in 200 years??? Or even in 5? I hope not. This picoGUI sounds like exactly what I've been waiting for. I'll give Linux another shot only when: drivers are as easy to install as Windows, the GUI is as fast as Windows, and Xfree is gone.

    41. Re:A good alternative! by blincoln · · Score: 2

      I don't understand those who *HATE* X.

      X - and the rest of the GUI - is one of the main things keeping me from using *ix on my desktop.

      The idea of it being a server is really cool, but I have never seen X running with any window manager that I liked the looks of enough to use on a daily basis.

      I can learn to use pretty much any interface - I even have to deal with OS/390s every once in awhile. But on my desktop, I'll only use one that I find intuitive and elegant. X is neither to me.

      If PicoGUI is as good as the screenshots on their site make it look, IMO the Linux community would be wise to integrate it into some (or all) of the standard distributions. A polished, intuitive, and pretty GUI is one of the best ways to win people over, and keep them once they're there.

      --
      "...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
    42. Re:A good alternative! by Bunji+X · · Score: 1

      Hey, you seem to like truisms, here is another one: A bad gift is still free, but nevertheless, still bad.

      --
      ---
      The combined human population is enough to feed every living tiger for app. 28000 years.
    43. Re:A good alternative! by Jeremiah+Cornelius · · Score: 2
      Ingratitude drags the station of men lower than that of beasts. Even a dog will remember someone who gave it an gnawed bone, and still wag it's tail.

      You are spoiled. If you cultivate a reputation for ungraciousness, do not expect many good gifts to come yur way - software or otherwise.

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    44. Re:A good alternative! by Simon+Kongshoj · · Score: 1

      "Cheap beer is good, because it is cheap and good."
      --Polish proverb

      --
      Six sick .sigs, the Number of the Beast!
    45. Re:A good alternative! by BigSven · · Score: 1

      DirectFB has support for OpenGL for quite some time now. Check out this page.

    46. Re:A good alternative! by Anonymous Coward · · Score: 0

      Are you american. this is a typical yank meme - if you dont like something then FUCK OFF. Criticism is a good thing you know, it helps make things better.

    47. Re:A good alternative! by d2002xx · · Score: 0

      uniqueness of look-and-feel among applications.

      Hey!! That's the problem -- If all applications have the same look-and-feel, using linux is not cool anymore. This feature would make it as plain as MacOS/X and Windows (I HATE them).

    48. Re:A good alternative! by Anonymous Coward · · Score: 0

      Why isnt there a subset of X? X-mobile or something like that.

    49. Re:A good alternative! by GooberToo · · Score: 2

      X - and the rest of the GUI - is one of the main things keeping me from using *ix on my desktop.

      Ahh...okay....that really doesn't make such sense but I'll hear ya out...

      But on my desktop, I'll only use one that I find intuitive and elegant. X is neither to me.

      Ummm...X isn't your "desktop" The fact that you seem to think it is only shows that you're either biased or ignorant of the facts.

      A polished, intuitive, and pretty GUI is one of the best ways to win people over, and keep them once they're there.

      Except that modern desktops that use X already can be configured to allow for just about anything you can imagine. The simple fact of the matter is, if you haven't found something you like that sits on top of X, you simply never looked.

      AFAIC, your post is a troll, but I'm giving you the benefit of the doubt. Which is to say,I'm betting you're simply uninformed about the facts.

    50. Re:A good alternative! by Anonymous Coward · · Score: 0

      They ought to be able to add on an Xlib proxy so that the standard X clients can run. It would probably be easier to do than making it work with vnc!

    51. Re:A good alternative! by Anonymous Coward · · Score: 0

      I agree that it is an attractive approach. While many here want the latest greatest feature, I'd say more of us users are more interested in consistency. For more sophisticated users, there are other choices.

    52. Re:A good alternative! by Anonymous Coward · · Score: 0

      Something is either seriously wrong with your configuration, your choice of driver (sounds like alpha-ware to me), or your OS. The latest XFree86 has been a lot more stable than releases from years past. Of course, I don't have advanced features like DRI enabled on my machine.

    53. Re:A good alternative! by Anonymous Coward · · Score: 0

      And no less unstable. Speed is pretty useless when my desktop crashes at least twice a day (on any number of chipsets, I might add; especially on my laptop).

      That sucks for you, but might I say my X server stays up with daily usage at work for weeks at a time. The main problem I have is if the network goes down. X (or something) seems too dependent on DNS.

    54. Re:A good alternative! by ichimunki · · Score: 1

      um, you can run KDE with Mozilla instead of Konqueror.

      And you can technically run Konqueror fine without a full-blown KDE desktop going, but it does rely on KDE services, so many of them get started. Which isn't any different from having all that code stuffed into one executable (i.e. Mozilla).

      --
      I do not have a signature
    55. Re:A good alternative! by AvitarX · · Score: 1

      dood, use opera.

      CTRL+mouse up

      So much more graceful then playing with resolution.

      --
      Wow, sent an e-mail as suggested when clicking on "use classic" banner, and got a fast response that addressed my msg
    56. Re:A good alternative! by FooBarWidget · · Score: 2

      "Are you american."

      Nope, I'm European.

      "this is a typical yank meme"

      I'm not American.

      "if you dont like something then FUCK OFF. Criticism is a good thing you know, it helps make things better."

      Wrong. Constructive critism may help things become better. That is just bitching, nothing more, and helps XFree86 in no way whatsoever.
      Constructive critism is good. Bitching and whining is bad!

    57. Re:A good alternative! by basiles · · Score: 1

      Of course NeWS had interesting ideas (but wasn't opensource, so died).

      The Berlin server could have been an interesting alternative. Unfortunately, it seems stalled, and the design around CORBA might be wrong. I definitely think that a GUI server should be protocol based (like PicoGUI and X11)!

      An alternative could be to write a widget server running under X11. I actually did code (under GPL) such a stuff see Guis and Guis page for details and downloading. Please send me any feedbacks!

      Guis's main ideas are: requests from client to GUIS are on a pipe, carrying Lua script for GTK2. replies from GUIS to client are either XML or Lispy syntax.

      Xemacs might claim to be (also) a widget server.

      Actually, I also think that the current widgets available in toolkits are unappropriate. I am missing a generic structured editor widget (able to edit generic syntax trees, perhaps with an XML representation).

    58. Re:A good alternative! by Arandir · · Score: 2, Insightful

      To come to your point, no, picoGUI cannont embed the X protocol (it would be against its basic approach). But il could be possible (though not easy) to make 'compatible library' that traslates GTK+ API (or QT API) into the picoGUI

      Another solution, perhaps better, is to make an X toolkit that uses the picoGUI API. Then an application won't care if the system has picoGUI, or is administered by an old fart with X.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    59. Re:A good alternative! by Bunji+X · · Score: 1

      Hear, hear!

      I would be ungrateful, if I was given a gift and used it, while still complaining about its poor merits (Like, "they should have given me something better").

      I am not.

      I am waiting for something better to appear, maybe something like PicoGUI. XFree might have merits, but beeing a good desktop enviroment is none of them. ("picoGUI: An X Alternative?", remember?)

      And, no. I do not expect good gifts to come my way. I expect to "earn" them by beeing a good friend or, like in this case, by helping out developing alternatives.

      Btw:

      Your parallell about grateful dogs, which I guess was supposed to show that a dog has more brains than I do, just shows your own stupidity.

      Dogs are stupid, that much I can give you. But reading into them complex emotions like gratitude just proves how little you understand about these creatures. It is just a simple association bond, much like Pavlov's famous experiments. The dog associates you with food, a pat on the head, or something else which gives it sensations of pleasure.

      --
      ---
      The combined human population is enough to feed every living tiger for app. 28000 years.
    60. Re:A good alternative! by Anonymous Coward · · Score: 0

      Acceptible to who? Plenty of people use it, so it must be acceptible to someone. Certainly, I have no problem with it - even on an old P133, it ran as well as I could want.

    61. Re:A good alternative! by hemanman · · Score: 1

      XFree86 is rock solid, if you only ditch the crappy KDE/GNOME desktop environments, they only suck up ram and processor time.

      I run XFree86/twm on a Compaq Armada 1750 right now, it never breaks down.

      -H

    62. Re:A good alternative! by hemanman · · Score: 1

      Don't blame X for the shortcommings of the desktop environments!

      -H

    63. Re:A good alternative! by blincoln · · Score: 2

      The simple fact of the matter is, if you haven't found something you like that sits on top of X, you simply never looked.

      That's actually not true. The first time I used X was about twelve years ago. Since then I've tried it with all kinds of window managers on top - Gnome, KDE, IceWM, etc. Although there were some aspects of them that I liked, the interface in general just never felt right to me.

      Maybe I'm blaming the wrong layer of the interface, but like I said in my original post it's something that has effected every system running X I've used in my life.

      --
      "...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
    64. Re:A good alternative! by GooberToo · · Score: 2

      In other words, even though there are thousands, if not millions of possible combinations, none are good enough for you.

      It sounds like the problem is with you. Even at worse, I can't possibly imagine how this is a failing of X.

    65. Re:A good alternative! by Anonymous Coward · · Score: 0

      Actually it does change the screen resolution. However it cannot cause X to change it's "logical desktop resolution." It is a "physical" resolution change, even if it's not a "logical" one for X.

    66. Re:A good alternative! by snofla · · Score: 1

      For XFree86 there is Tiny-X.

      --
      i don't like style guides
    67. Re:A good alternative! by blincoln · · Score: 2

      In other words, even though there are thousands, if not millions of possible combinations, none are good enough for you.

      The key concept here is combinations. I don't mind tweaking a few settings to get an interface I like, but I don't have the patience to track a bunch of different components down and put them together to get something that's intuitive and pleasing for me to look at, and then have to set those components up on every machine I use.

      Like many other aspects of Linux, I *love* the idea of being able to customize it extensively. OTOH, I don't want to be *forced* to. AmigaOS, every version of Windows since 95, MacOS - all of these have nice-looking GUIs right out of the box. I don't think it's asking a lot for the same from X.

      *That* is why when I saw the screenshots of PicoGUI, I thought "hey, if Linux had an interface like that, I would be a lot more likely to use it since it looks nice and I know where everything is on that screen."

      You obviously think I'm just doing this to be a jerk, though, so I guess I'll stop trying to explain my line of thinking.

      --
      "...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
    68. Re:A good alternative! by GooberToo · · Score: 2

      No, I don't think you're trying to be a jerk, however, I do believe that you're being unreasonable. Most distros come with a half dozen window managers....and maybe a half dozen different themes for each. Furthermore, sites like themes.org make obtaining new themes a no brainer (mostly).

      With the number of options available out of the box (with tons of room for tweaking of each) and the number of possibilities that can be downloaded and tested in a matter of minutes, I just can't see how anyone can complain that their Unix/Linux/X desktop isn't usable.

      I've never actually met anyone that didn't find something they liked out of the box. That doesn't mean they didn't later go to to customize and/or tweak...but as a rule of thumb, the options that simply come out of the box should be enough to satisfy any reasonable person.

  3. Speed by di0s · · Score: 1

    My only problem with XWindows is that it isn't as fast as it could be (any tweaking hints are welcome). If this is faster, I'll give it a try.

    1. Re:Speed by slasher999 · · Score: 2, Interesting

      Is the issue that XWindows isn't as fast as it could be, or that the implementation you are using isn't as fast as it could be? I'm not looking to get flamed here, nor am I pushing one product over another. However I did recently try a commercial X product on my Linux machine and the difference between it and the default server shipped with Mandrake (not mentioning names on purpose here) was tremendous. The commercial product, while not cheap, was noticably faster and "prettier" than the default one.

    2. Re:Speed by g4dget · · Score: 3, Informative
      My only problem with XWindows is that it isn't as fast as it could be

      And how fast "could it be"? X11 seems to be faster than both GDI and Cocoa/Quartz on comparable hardware in my experience.

      (any tweaking hints are welcome)

      Most supposed performance problems with X11 seem to be due to the toolkits and desktop environment used. Gnome or KDE on X11 can be a bit sluggish on low-end machines Tweaking hint: use a different desktop environment.

      Of course, you can also enable backing store by default in your X11 server, which is how a lot of other window systems achieve their slick look; backing store is disabled in XFree86 by default because well-behaved X11 clients shouldn't rely on it.

    3. Re:Speed by inode_buddha · · Score: 1

      near the bottom of /etc/X11/XF86Config there should be a line called VideoRam... make sure it is uncommented

      --
      C|N>K
    4. Re:Speed by statichead · · Score: 2, Insightful

      I have to agree, do a "ps aux" and take a gander of whats running when you run gnome.

      I'd like to take this opportunity to plug windowmaker here;-)

      I'm not trying to put down gnome here, some people love it, hey if it works for you cool.

      This is what makes x cool, you run gnome I run wmaker and we can do it on the same machine running the same apps, at the same time if we get trickey and have the horse power.

      X runs pretty damn fast on my dual celery 500

    5. Re:Speed by norweigiantroll · · Score: 1

      What I don't like about X is it's big, slow on older hardware, and bloated. I like the idea of quick, small software that is able to run and old computers and PDAs alike. And another thing about X (and KDE and other stuff) is the memory needed. I've heard great things about Linux like "it runs in only 4 megs of RAM!" only to find out you can't use most mainstream distros nor X. I like the idea of being able to run something on my box I got for $1 at the garage sale ;)

    6. Re:Speed by GooberToo · · Score: 2

      Most supposed performance problems with X11 seem to be due to the toolkits and desktop environment used. Gnome or KDE on X11 can be a bit sluggish on low-end machines Tweaking hint: use a different desktop environment.

      This is very true. Remember, GTK+ sits on top of a device abstration layer. So, as an example, you have:

      Gnome
      GTK+
      GDK
      GDK Abstraction
      Xt
      X - protocol

      That's a lot of layers and overhead there.

      I always wondered how worth while it would be for someone to create a replacement or Xt. That is, something that wasn't as low level.

    7. Re:Speed by Anonymous Coward · · Score: 0

      Thanks! I just found out my card is one of the few that the mga driver won't autodetect the Video RAM size. Of course it defaults to half of what I have.

      Although, it looks like your original comment needs a YMMV.

    8. Re:Speed by Anonymous Coward · · Score: 0

      What do you expect with 4 MEGS? What is the minimum required for windows 95+? 32MB? Take the same and run X - you'll see it will work. I've gotten Enlightenment to work with 16MB (though it was slow as nuts) on a Pentium 100 MHZ.

  4. X translation layer? by jimm · · Score: 1

    Would it be possible to create a translation or emulation for X code?

    --
    Transcript show: self sigs atRandom.
    1. Re:X translation layer? by Anonymous Coward · · Score: 0

      Yeah, I think this is it... There needs to be a way to run everything that already exists or people won't start using it. I think it will still be hard to get it going anywhere (cross platform or there's still a deterent)?

    2. Re:X translation layer? by nial-in-a-box · · Score: 0

      Why bother building a translation layer? If trying to move to a new system, then go all out. Trying to achieve backward compatibility on a project like this which is not likely to catch on easily would probably be a waste of effort. Not to say it was their sole fault, but remember how long it took Apple to get a modern OS out the door with backward compatibility? Sure, this is only one aspect, but why do we need a less efficient implementation of X? If you want X, use X. If you want to try something new then go all out. Perhaps it would be possible to run both simultaneously, similar to Mac OS X, but again is it worth the effort? This is an intriguing idea, but emulation is usually a bad idea unless absolutely necessary.

      Peace.

      --
      I am feeling fat and sassy
    3. Re:X translation layer? by mamba-mamba · · Score: 4, Insightful

      If you provide the X-windows service, then you are an X-server, whether you call yourself one or not. So I'm not sure what it would mean to emulate X. If you somehow support X plus some other features, then that would be more like extending X than emulating it.

      Personally I don't have any problem with X. I like it. Most of the sensible complaints I hear about it seem to be coming from people who want features that aren't there yet, or who feel the performance isn't up to snuff. These are almost drowned out by people who don't really seem to understand what X does.

      I mean, X is a fairly generic display system, as witnessed by the fact that blackbox, matchbox, twm, fvwm, enlightenment, etc, which all look very different, are all just X clients.

      Anyway, it might be possible to address the features issue and still have emulation, but I don't think that performance issues will be solved by emulation. And, when you look at all the graphical programs that use X, it seems kind of hopeless to expect that X will go away and be replaced by something else.

      Although, if you could port, say, motif and gtk to some new, non-X system, then you could probably leverage a lot of other stuff over to that system relatively quickly.

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
    4. Re:X translation layer? by Anonymous Coward · · Score: 0

      First, let's translate the submission into English, OK?

    5. Re:X translation layer? by Fembot · · Score: 2

      X has a lot of apps for it... people bitch about the lack ok apps for linux, but X actualy has a supprisingly large number when you think about it.

      And I think what the parent was trying to say was would it be possible to rewrite the X client libraries so that they map all of the X11 protocol to whatever protocol picoGUI uses, so there is no emultation in picoGUI anywhere, but X apps can still run through the modified X client libraries

    6. Re:X translation layer? by Kashif+Shaikh · · Score: 1

      "or who feel the performance isn't up to snuff."

      I'd like to see such people face to face. Lot of people complain the 2D performance is really bad compared to X, yadda yadda yadda.

      Then ask these clueless individuals how come flash renders faster in my remote xwin32 server than on my local IE browser. Also, if X is so slow, how come Quake3 fps in Linux is on par with Windows?

      The beauty of X windows generality is also its weakness: all WMs and desktop managers use X differently. Such that getting basic things like proper smooth fonts configuration is such a hassle. Right now, smooth fonts depends on whether qt or gtk have them compiled in and enabled AND if apps get compiled with such fonts.

      If X had a layer *directly* above it, providing higher level features(standard WM, font config, standard cut-copy-paste system(and not just for text for but generic objects like bitmaps),etc), then we could at least have some interopability between desktop managers.

      I guess you get my point.

  5. My thoughts by PhysicsScholar · · Score: 1, Troll

    So I wonder: what would it take (apart porting tons of applications) to make it a suitable alternative to X+[your toolkit of choice]+[your window manager of choice]?"

    Why the Microsoft ads on Slashdot of course!

    Oops, that was the answer to the last question ;-)

    --

    Department of Physics and Atmospheric Science, Dalhousie University, Halifax, N.S., Canada, B3H 3J5
    1. Re:My thoughts by ignorant_newbie · · Score: 1

      not much: kde on qt-embedded should be able to handle 90% of what i use X for... except for the cool freedom-of-choice factor. untill i can use nedit on it, i'll just stick with X

    2. Re:My thoughts by fobbman · · Score: 2

      I say ride it until it starts to get modded down -1 Troll. ;)

  6. In a word... by Anonymous Coward · · Score: 0

    No.

  7. To answer your question by Clue4All · · Score: 5, Insightful

    So I wonder: what would it take (apart porting tons of applications) to make it a suitable alternative to X+[your toolkit of choice]+[your window manager of choice]?

    It would take a reason to replace X. Sure, there's plenty of papers on how X is atrocious and should be scrapped, but it's a protocol that works well. It's been in use for many years and most implementations are pretty fast. In all my years, I still haven't come across a reason to move away from it. If an alternative comes along that offers something X doesn't, then I'd consider it, but it doesn't look like that will be anytime soon. X meets all my needs.

    --

    Is your browser retarded?
    1. Re:To answer your question by Anonymous Coward · · Score: 0

      Besides speed? :)

    2. Re:To answer your question by Anonymous Coward · · Score: 0

      Commercial X servers are exceptionally fast. Hell, even XFree86 4 is pretty sweet.

    3. Re:To answer your question by fireboy1919 · · Score: 5, Interesting

      It would take a reason to replace X.

      I don't understand. You mentioned plenty of papers of how X is atrocious and that it should be scrapped. Perhaps you haven't come away with a reason, but doesn't the fact that said papers exist mean that there are plenty of people who have one?

      And doesn't that mean that perhaps an alternative should be considered?

      My reason is that net connections require too much bandwidth. We use Citrix at school and get connection rates from Windows servers with than 2kbps needed. And it appears as though there is no latency in the connection, even though there is - i.e. it seems as though its running on my machine. Another big reason is that X requires so much from the clients. They have to be SERVERS themselves.

      Also, the way it stands, if I want to share my X apps with my Windows friends, I have to get them to either
      1) Pay a lot for a decent X server for Windows (by decent, I mean that it doesn't put all X connections inside one Window with a fixed size, but rather creates Windows each time a call is made - unlike Cywgin xfree86).
      2) Download, install and configure xfree86 with cygwin (assuming they've got the 200MB free for it). By the way, I know there is a version that is supposed to work without cygwin. It doesn't work yet, at least not right out of the box, and not with any instructions they give you.
      3) Get them to use a non-windowing solution, i.e. VNC.

      I don't really like any of those options, and that is why, for instance, there aren't a lot of X applications whose primary function is to be run remotely. Its why I won't develop any such applications - why I'm still sticking to using those less powerful gui kits like tcl/tk, swing and awt.

      I yearn for something better than X, whether it meets your needs or not. If I could get a third of the functionality I get with a windowing environment, but also get those things, I'd be all over that in a heartbeat.

      --
      Mod me down and I will become more powerful than you can possibly imagine!
    4. Re:To answer your question by Clue4All · · Score: 5, Informative

      I don't understand. You mentioned plenty of papers of how X is atrocious and that it should be scrapped. Perhaps you haven't come away with a reason, but doesn't the fact that said papers exist mean that there are plenty of people who have one?

      Sure, and after reading them, it becomes very clear that they site problems that are either no longer true or are just plain wrong. I was unimpressed with such papers.

      1) Pay a lot for a decent X server for Windows (by decent, I mean that it doesn't put all X connections inside one Window with a fixed size, but rather creates Windows each time a call is made - unlike Cywgin xfree86).
      2) Download, install and configure xfree86 with cygwin (assuming they've got the 200MB free for it). By the way, I know there is a version that is supposed to work without cygwin. It doesn't work yet, at least not right out of the box, and not with any instructions they give you.


      You haven't done very much research, I see. XFree86 for Cygwin is excellent (90-95 MB, actually), and it features both a windowed mode and a rootless mode, which was added a couple months ago. I replaced 40 clients at work over the past two weeks that had been running an outdated version of Reflection X on NT 4 with Win2k and Cygwin/XFree86 (the Reflection version wouldn't even function on Win2k, requiring a $350 purchase per PC for the latest verison).

      --

      Is your browser retarded?
    5. Re:To answer your question by micahjd · · Score: 2
      Unfortunately this is the same attitude that the X developers seem to have. As it is, X is the only project that has usable drivers for desktop video cards. (I know about DirectFB, but it's level of card support is nowhere near X's)

      IMHO this gives X a responsibility to write the drivers in a way that other GUIs can use them, but as it is, the developers just don't care.

      --
      -- 2 + 2 = 5, for very large values of 2
    6. Re:To answer your question by DeadMeat+(TM) · · Score: 5, Informative

      Have you tried WeirdX? Free, GPLed, and only 210K in size. It even runs on the crippled Java VM that ships with Windows.

    7. Re:To answer your question by Minna+Kirai · · Score: 5, Insightful

      As always, what you should use depends on your needs. If X works perfectly for you, then great. As a "frame-buffer oriented network-transparent graphics API" it'd be hard to beat. As the foundation for kits like Gtk and Qt (and even PicoGui sometimes) it works well.

      However, as a platform (a standard for application creation) X is sub-optimal for users and developers.

      The value of a standard comes not only from what it allows you to do, but what it forbids.

      Suppose I write 3 programs to perform the same tasks under different GUIs: Microsoft's, Apple's OS X Quartz/Aqua, and X11R6. A Mac user can sit down without looking at the instructions and use his familiar old mouse motions, menu commands, and keystrokes with hardly a glance at the new stuff. A Windows(tm) user has nearly the same advantages. The icons for the same feature (Save, Print) look exactly the same, regardless of the program.
      Of course that's not the case for X programs. Whenever I sit down at a new X11 program, I have to spend a few minutes recalibrating the basics ("How to I copy/paste, again?")

      Because X allows the developer so much freedom, it deprives the user of the ability to anticipate how a program will operate. "The program can do nearly anything" sounds like an advantage, until you try to predict what a program will actually do!

      Note that a weakness of Apple and Microsoft's GUI systems is that the "forbidding" part of their standard often comes in the form of "law" instead of "code". The taboos are enforced by developers getting chastised by the GUI vendor or the public when a non-ituitive program is released.

      A weak method- the lag time for feedback is long, and if the offending developer works for the GUI vendor, he might insert loopholes into the rules.). But it produces superior results to X programs, where the users lack an imposing rulebook to point to as formal justification for their complaints. Improvements may happen, but there's nothing forcing them to converge on one way of doing things.

      Some common responses to this argument:
      "You want a toolkit, not X"
      Maybe so. If a user's desktop could only run one toolkit, she'd never see an unfamiliar interface. This has the problem of discarding pre-existing programs, but argument-by-popularity is a logical fallacy (I'm talking about what solution would be best, not cheapest short-term). Better than using a single toolkit, though, is somehow allowing the application to be written independent of toolkit, and obeying whatever HCI conventions a particular user enjoys. PicoGui tries to do this.

      "No one can be sure what the best interface is. Keeping flexibility gives us power."
      In theory it does, but at the expense of accessibility. Too often it means that developers who don't want to be "HCI Researchers" find themselves wrestling with UI code that's entangled their applications.
      PicoGui (and other "next-generation" UI systems) attempt to resolve this by keeping the application programmer further from the UI code than is traditional. (They haven't been totally successful yet)
      He can't mess with the per-pixel alignment of buttons, because that's outside of the application's control.
      This is fundamentally better than the way Apple and Microsoft's traditional Human Interface manuals have worked, because enforcement of the rules is done not by humans (punishing programs that act wrongly) but by software (doing the work for you, so it's guaranteed to do it right).

    8. Re:To answer your question by MagPulse · · Score: 4, Interesting

      Rootless mode doesn't seem ready for general use. It's only available in a server test version. Where Exceed effectively makes Windows the window manager, Cygwin/XFree86 has no window manager, at least by default, so I can't move the windows I create. Also the X server shows up in the task bar and non-intuitively only works if maximized, which you can't tell unless you click on it to see if it's maximized or not. I am sure these will all be fixed in time, but it can't be used as an alternative today.

    9. Re:To answer your question by iabervon · · Score: 2

      X does a bit more than be a frame buffer, but I agree that that's essentially the level it is at; many people's problems with X come from misunderstanding what it does and what is properly X, because other desktops don't have a separate component at that level. It's really good to have, so that it's possible to have, for example, a Windows program and a Mac program both appearing on the same monitor.

      Ideally, there would be multiple layers: the application uses a single API which describes the functionality of the program without any real reference to what the user interface is like; that API is implemented by HCI researchers who make a good interface out of this information and the user's settings (It's the user who deserves the flexibility, not the programmer. The programmer shouldn't need to specify that stuff.); that implementation uses X to actually interact with the user (X's flexibility allows the implementation to offer flexibility to the user, and allows there to be different implementations as desired by different users).

      The main problem with Apple's and Microsoft's HI manuals is that they still don't give you a way to say, "here is what my program does; present it to the user in the local style."

      I think PicoGUI is on the right track, but doesn't go far enough to be useful. It has widgets like "menu item" (and a bunch of other variants on buttons). In order for this to really work, you have to at least allow the same code to run with native style on Windows, Mac, Gecko, gtk, and qt, with no changes. That means that the program can't be specifying what menu something is in, or whether it's in a toolbar or something.

    10. Re:To answer your question by SN74S181 · · Score: 2

      Cygwin/XFree86 has no window manager, at least by default, so I can't move the windows I create

      So install a Window Manager. You can build FVWM or something else of it's type and use that. If you've got a 'standard' port of X, type 'twm &' inside an Xterm, without doing anything more.

    11. Re:To answer your question by timeOday · · Score: 2
      As it is, X is the only project that has usable drivers for desktop video cards.... IMHO this gives X a responsibility to write the drivers in a way that other GUIs can use them
      That is ridiculous.
    12. Re:To answer your question by nathanh · · Score: 4, Interesting
      Suppose I write 3 programs to perform the same tasks under different GUIs: Microsoft's, Apple's OS X Quartz/Aqua, and X11R6.

      Suppose you pick a non-biassed example and choose Microsoft GDI, Display Postscript, and X11R6. Comparing a high-level GUI toolkit to a low-level windowing system is an ineffective way to prove your point.

    13. Re:To answer your question by dvdeug · · Score: 2

      The main problem with Apple's and Microsoft's HI manuals is that they still don't give you a way to say, "here is what my program does; present it to the user in the local style."

      That's part of the point. They don't want someone to have to play with a system for an hour or two to get it working right for them; they want them to just sit down and be able to use it. For the 1% of people who could and would tweak their user interface to enhance their experience, there's the 4% who will spend more time messing around then doing anything producive, and the 95% who will never touch anything. It's just not a win for them.

    14. Re:To answer your question by Anonymous Coward · · Score: 0

      Copy and paste? How about using the middle mouse button that is pretty much the standard in X?

    15. Re:To answer your question by Anonymous Coward · · Score: 1, Informative

      > Cygwin/XFree86 has no window manager, at least by default, so I can't move the windows I create.

      ? twm is the default window manager, and it moves/resizes windows just fine. (I run cygwin & XFree86 under WinNT4.0)

    16. Re:To answer your question by mini+me · · Score: 1

      Also, the way it stands, if I want to share my X apps with my Windows friends, I have to get them to either
      1) Pay a lot for a decent X server for Windows (by decent, I mean that it doesn't put all X connections inside one Window with a fixed size, but rather creates Windows each time a call is made - unlike Cywgin xfree86).
      2) Download, install and configure xfree86 with cygwin (assuming they've got the 200MB free for it). By the way, I know there is a version that is supposed to work without cygwin. It doesn't work yet, at least not right out of the box, and not with any instructions they give you.
      3) Get them to use a non-windowing solution, i.e. VNC.


      Why not just use WiredX? It's as simple as visiting a web page, and you have a nice X server up and running that will work rootless.

    17. Re:To answer your question by Anonymous Coward · · Score: 0

      "How to I copy/paste, again?"

      Highlight/Middle mouse button.

      There seems to be a lot of ignorance about X around here. No wonder it gets a bad rap! It may not be perfect, but it is nowhere near as bad as everyone makes it out to be! Also X11 != XFree86.

    18. Re:To answer your question by steveha · · Score: 2

      Because X allows the developer so much freedom, it deprives the user of the ability to anticipate how a program will operate.

      This is true. But it is not a reason to replace X. Rather, it is a reason to run a layer over X, and that is what GNOME and KDE are.

      GNOME and KDE make consistent environments for users.

      For most people, X is overkill, and a "thinner" layer under GNOME and KDE would be enough. Yet X works well and we have it now. Talk to me when there is something a lot faster and smaller than X, and GNOME runs on it.

      steveha

      --
      lf(1): it's like ls(1) but sorts filenames by extension, tersely
    19. Re:To answer your question by Minna+Kirai · · Score: 5, Interesting

      Here we see a common pitfall of debates about the quality of X- an overloaded word. "X11R6" strictly means just a low level drawing protocol. But, in the absence of anything better, it is also means the GUI system that runs ontop of that protocol.

      This same problem happens in discussions about Linux. The strict definition is an OS kernel, but "Linux" has also come to be a blanket term for the whole family of Open Source operating systems that use that kernel. "Operating System based on the Linux kernel" is too long to use in everyday speech, so it gets abbreviated down to "Linux". ("GNU/Linux" is also too long, apparently)

      So then, when someone attacks Linux (the broad definition), defenders can point to the specific definiton and dismiss the complainer on the basis that he's uninformed. When this happens, the debate is cut short, without a fruitful discussion of the merits of the problem.

      Back to your point. You mention that for Apple's Aqua and Microsoft's GUI there are corresponding lower level APIs: DPS and GDI respectively. But this raises the question: What higher-level system corresponds to X11R6?

      There isn't one. Or there's much more than one (Xt, Athena, Motif, Qt, Gtk, XUL, Fltk, WxWindows, TK...). Neither of those answers is useful as a starting point of discussing new GUI enhancements. You can pick any one of those toolkits and consider improving it, but then you're just addressing a fraction of all users (although maybe hoping that your favorite toolkit will rise to dominance above the others).

      GDI and DPS are each found inside of one and only one GUI framework (architexturally a stack of blocks, instead of the branching tree of stuff that builds on X11R6). That's a consequence of monolithic developement instead of open systems, but it makes many things simpler on the users. How do you resize a window in Microsoft Windows? The answer is straightforward. How do you close a program in MacOS X? Another simple answer.
      Neither of those operations is defined for X.

      Only application developers are ever aware that DPS and GDI exist- they're completely hidden under the GUI. But users of X11R6 are frequently reminded of its presence. "Why isn't your program working? Did you check the DISPLAY variable? How about the xhosts? Ok, lets look at the MIT Magic Cookie..."

      The world of Unix-like software can never have really great GUIs until X is invisible to average users. Maybe this means X has been supplanted by another system, or that it's just been relgated to the status of a device driver.

      It's true that the competitor to PicoGui isn't X, but higher-level protocols. However the headline "An X Alternative" is not incorrect. Someday X's position as the premire "Unix GUI Application Development Platform" will be supplanted by something like Gtk, Fresco, or PicoGui. Then developers will begin to release software which runs on $NEW_DISPLAY_LAYER, rather than X directly. (Even though $NEW_DISPLAY_LAYER might still use X11R6 as a backend)

      Someday a better UI environment will come around, when the only program allowed to connect to my X server is a single process from $NEW_DISPLAY_LAYER. It will enforce on applications the appearance and behavior that I want them to have, rather than leaving it up to individual authors.

    20. Re:To answer your question by micahjd · · Score: 2
      Care to say why, or do you not know?

      --
      -- 2 + 2 = 5, for very large values of 2
    21. Re:To answer your question by dvdeug · · Score: 2

      As it is, X is the only project that has usable drivers for desktop video cards.... IMHO this gives X a responsibility to write the drivers in a way that other GUIs can use them

      That is ridiculous.

      Care to say why, or do you not know?

      It's ridiculous because it implies an obligation for the X developers that doesn't exist. If you want the code, it's available (for most X implementations.) But there's no reason they should have to put extra work in to support other GUIs if they don't want to.

    22. Re:To answer your question by nathanh · · Score: 2, Insightful
      Back to your point. You mention that for Apple's Aqua and Microsoft's GUI there are corresponding lower level APIs: DPS and GDI respectively.

      I've got no idea what Aqua uses, but it's probably not DPS. I mentioned GDI and DPS because they are comparative tools for building windowing systems.

      There isn't one. Or there's much more than one (Xt, Athena, Motif, Qt, Gtk, XUL, Fltk, WxWindows, TK...).

      Other systems also have more than one. I don't know MacOS but on Windows you've got OWL and MFC for starters. They look and behave completely differently, and the users easily spot the difference.

      How do you resize a window in Microsoft Windows? The answer is straightforward. How do you close a program in MacOS X? Another simple answer. Neither of those operations is defined for X.

      The first one is XResizeWindow(3X).

      The second one is XDestroyWindow(3X).

      If you're talking about the visual elements that the user clicks upon, then you're misunderstanding the scope of X11. You might as well argue that glibc must define the layout of your configuration files.

      It's true that the competitor to PicoGui isn't X, but higher-level protocols. However the headline "An X Alternative" is not incorrect. Someday X's position as the premire "Unix GUI Application Development Platform" will be supplanted by something like Gtk, Fresco, or PicoGui.

      I don't disagree with the point you're inexpertly trying to make, but you're doing a terrible job. You could argue that X11 needs to be supplanted by DPS, or by Berlin, or by whatever. But you can't argue that X11 needs to be supplanted by GTK. That is like saying UNIX needs to be supplanted by Bash, or NT needs to be supplanted by Word. It's nonsensical.

      And before you think I've not understood your point of view: what you want to say is that application programmers should never write directly to X, but instead should write to a single higher-level widget set (be it PicoGUI, or GTK, or Fresco). I'm going to tell you flat-out this will never happen. You aren't ever going to have a single higher-level widget set. It's not the fault of X11 either: it's this nasty thing called Freedom Of Choice.

      The proper solution is to make all the higher-level widget sets interoperable. That's a harder problem.

    23. Re:To answer your question by micahjd · · Score: 2
      t's ridiculous because it implies an obligation for the X developers that doesn't exist. If you want the code, it's available (for most X implementations.) But there's no reason they should have to put extra work in to support other GUIs if they don't want to.

      I said that it was my opinion. As far as I can tell from looking at the X source code, the architecture is close to what would have been required to implement the drivers separately from the rest of X, but they failed to make some design decisions that would allow this.

      But maybe I'm just bitter that sometime in the future I'll be digging through the bowels of XAA to patch together an interface for dlopen()'ing X video drivers, when they could have just designed it a bit better :)

      --
      -- 2 + 2 = 5, for very large values of 2
    24. Re:To answer your question by Anonymous Coward · · Score: 0

      Friends don't let friends run Windows. Or at least they give them a bootable Linux CD and quit whining on Slashdot that their friends can't run various free apps.

    25. Re:To answer your question by scm · · Score: 1

      ...there aren't a lot of X applications whose primary function is to be run remotely.

      That depends on what you mean by "running remotely"

      When I first stared using Unix and X (circa 94), at least in the places I saw it, nearly all applications where being run remotely. My first job working with Unix/X, I only had a terminal, but in the second, the whole group I worked with used X terminals, meaning everything but the X server itself was running on another machine.

      Granted, this was over a 10 Mb/s ethernet, so that may not fit your definition of "running remotely"

      These days an x86 box running Linux or BSD is cheaper than the Xterms where then and faster than many servers then too... So more things are probably run localy.

    26. Re:To answer your question by PurpleBob · · Score: 2

      Egad. Seeing two parallel comments referring to WeirdX and WiredX led me to believe that one of them had to be spelling it wrong, and it was only curiosity at where wiredx.net (what I thought was the wrong link) would lead that led me to click on the link and see that WiredX is indeed something different.

      And I had the pointless spelling correction post all planned, too.

      --
      Win dain a lotica, en vai tu ri silota
    27. Re:To answer your question by Minna+Kirai · · Score: 3, Insightful

      I don't disagree with the point you're inexpertly trying to make, but you're doing a terrible job.

      No one else was making the point. True, I didn't have time to write much. But a barrage of "X is fine! You just don't understand X" posts had already started, and there was nothing better up to defend the idea of a next-generation GUI.

      on Windows you've got OWL and MFC for starters

      Does anyone really use OWL anymore? You're sure not going to earn a "Optimized For Windows XP" logo with those kinds of buttons!

      you're misunderstanding the scope of X11

      The (limited) scope of X11 is the problem.

      But you can't argue that X11 needs to be supplanted by GTK.

      Like I said, X11 is filling two roles. One role is that of a protocol, and it's fine there. The other role is that of a platform, and that's where it needs to be supplanted. Sure, we'll always have "Freedom of Choice" in that old/alternative source code won't just evaporate. But the only way the user-computer interactive process can become truely better (better than today's X11 desktops, and also the Macintosh and Microsoft offerings) is when someone creates a sufficiently powerful abstraction that application programming and GUI programming can be completely disjoint. And yes, good abstractions are hard, and PicoGui is really just a tentative step along the way, but developers need to explore this terrain if we're ever going to get a better system.

      (X11 compatibility can of course be retained as legacy support for a long time)

      The proper solution is to make all the higher-level widget sets interoperable. That's a harder problem.

      Since PicoGui is not a widget set, one way to approach that problem is to write all widget-sets as PicoGui themes.

    28. Re:To answer your question by nihilogos · · Score: 2

      Also, the way it stands, if I want to share my X apps with my Windows friends, I have to get them to either
      1) Pay a lot for a decent X server for Windows (by decent, I mean that it doesn't put all X connections inside one Window with a fixed size, but rather creates Windows each time a call is made - unlike Cywgin xfree86).
      2) Download, install and configure xfree86 with cygwin (assuming they've got the 200MB free for it). By the way, I know there is a version that is supposed to work without cygwin. It doesn't work yet, at least not right out of the box, and not with any instructions they give you.
      3) Get them to use a non-windowing solution, i.e. VNC.


      Check out WinaXe. The trial version can be run for half an hour - then you just need to rerun it. It's a 12MB download, a no-brain installation and it works comfortably well. Hell, i run mozilla mail with it.

      --
      :wq
    29. Re:To answer your question by Anonymous Coward · · Score: 0

      There is already a X driver that has been added in the last release.

      See http://picogui.org/sshotdetail.php?index=95

    30. Re:To answer your question by WWWWolf · · Score: 1
      I've got no idea what Aqua uses, but it's probably not DPS. I mentioned GDI and DPS because they are comparative tools for building windowing systems.

      I was under impression Aqua used Display PDF. However, then some Mac guru said it doesn't actually use it for everything the hype says it's used.

      - W4, who doesn't use MacOSX because Window Maker was out ages ago and GNUstep is stabilizing =)

    31. Re:To answer your question by JanneM · · Score: 1

      They have a responsibility to get their drivers to work as well as possible under XF86, and that's it. They have a publically documented, open interface between the server and the drivers; I'd say it'd be the responsibility of any other project to adapt to use their mechanism if they do not want to implement their own drivers. You really can't ask one project to take responsibility for other (competing?) projects to work.

      --
      Trust the Computer. The Computer is your friend.
    32. Re:To answer your question by nathanh · · Score: 4, Insightful
      on Windows you've got OWL and MFC for starters

      Does anyone really use OWL anymore?

      I don't know. Nor do I care. I made the point that other platforms are not immune to the "too many ways of doing things" disease. I really don't want to go off on an irrelevant argument about the popularity of the example I gave.

      you're misunderstanding the scope of X11

      The (limited) scope of X11 is the problem.

      The (limited) scope of X11 is why X11 still exists. If X11 had tried to dictate appearance and behaviour and colour schemes and graphics formats - the level of detail that you would seem to like from X11 or its successor - then it would have been a dead project within 18 months.

      Let me expand on this point. There have been 100s of competing GUIs from 100s of vendors. All incompatible. All aimed at different form factors with different design goals. All very different in terms of user interfaces and programming interfaces. But most of them share one thing in common... nobody uses them anymore. What people wanted from GUIs changed quickly and many of the "bare to the metal" GUIs couldn't evolve fast enough.

      X11 wisely chose not to dictate the form factor, or the user interface, or the programming interface. X11 provides you with the tools so you can build your GUI without having to write all the boring low-level stuff such as video drivers, event handlers, windowing operations, etc. You can simply concentrate on the GUI. So while GUIs change from year to year, there has never been a good reason to get rid of X11, because X11 IS NOT A GUI.

      The proper solution is to make all the higher-level widget sets interoperable. That's a harder problem.

      Since PicoGui is not a widget set, one way to approach that problem is to write all widget-sets as PicoGui themes.

      And as I said before, you've got no chance of that ever happening, so stop wishing for it. You might as well wish that everybody only wrote for KDE, or only wrote for CDE, or only wrote for GNOME. It's a waste of time wishing for the impossible. The proper solution comes from standards like ICCWM and XDND. No problems will be solved by throwing away X11 and hoping that everybody standardises on your favored project (ie, PicoGUI).

    33. Re:To answer your question by MagPulse · · Score: 1

      Hmm you're right, I was running XWin.exe by itself. I modified startxwin.bat and added the -rootless flag after XWin.exe, and now it works, sort of. You can only see where you're moving the window inside the window you're moving.

    34. Re:To answer your question by LordHunter317 · · Score: 2

      However, Exceed in rootless mode isn't perfect.

      Mainly, if you have window manager running as a client, it takes over from MS Windows being WM. Reall PITA, as our client software does that 'automatically'. Bastards.

    35. Re:To answer your question by Ruds · · Score: 1

      You're kidding, right? Providing default settings is a software practice you may be unfamiliar with, but it has provided great results in one or two projects.

      Applying this practice to, say, Windows, would result in everyone's PC looking the same straight from the factory; the people who can care can mess with the config files (in Windows? ha!) or applets or whatever. Just because those 95% never touch anything doesn't mean it's a loss for them.

      It actually ends up being a win, because those users don't have to depend on all software developers being able to accurately copy other programs' GUIs to provide a similar experience; it just will out of the box.

      Matt

    36. Re:To answer your question by Senjaz · · Score: 1

      I would also recommend that you look at Apple's dev tools before you use them as an example of how things shouldn't be done.

      Apple does allow exact positioning of every type of widget in the interface, this is good because of the flexibility.

      Yes Apple has HCI guidelines but you fail to mention that these are built in to Interface Builder. As default IB makes your widgets to snap to a HCI compliant layout through smart guides, so you don't need to bother reading the documentation on widget spacing (you should however read the rest of the document ;). However since HCI guidelines are only that - sometimes its a good idea to break them. They can't account for every situation, and in those cases you can turn off the smart guides.

      Implementing the optional HCI enforcement as part of the development tool chain allows you to have your cake and eat it in this case.

      --
      Don't blame me - this .sig had steal me written all over it.
    37. Re:To answer your question by tjansen · · Score: 2
      • X11 does not need more resources than RDP. It runs fine on low-end machines. It has even been written on low-end machines, it is 10 years old
      • It is naive to believe that it is easier to write a new window system, write new drivers for all chipsets and port all apps, toolkits and so on instead of fixing X11s problem by improving X11
      • Creating a new Window system does not solve your Windows-related problems. Now you have a X11 server that works badly, when you have a new window system you don't have a server at all (unless you write one, but it would be less work to improve the X11 port for Windows)
    38. Re:To answer your question by John+Allsup · · Score: 2

      The argument that Minna Karai seems to be trying to put across (and this is a hard one to pin down, let alone argue properly) is that X puts its 'abstraction layer(s)' in the wrong place.

      If this is a flaw of X, then (without moving to another platform) no amount of building toolkits, etc. can fix the problem (merely work around it accumulating a lot of cruft a la Windows/CDE/etc.)

      The thing, as I see it, is that the GUI abstractions laid down by the use of the X protocol (if you use X you must work around its protocol for obvious resions) are, in some sense, 'in the wrong place' for the construction of modern GUI systems.

      This same flaw is (as noted) true of other mainstream GUI systems, and they (e.g. M$ and Apple) have other solutions for the common case (pulling rank within their respecive corporations, using peer pressure etc. outside) in order to keep things consistent. The GUI/family-of-GUI's built upon X has nothing comparable in strength to keep things in line. The same can be said if we restrict our attention to just the GUI's running on Linux under X.

      I believe Minna's point is that we need to (re)consider how the GUI of an application is abstracted from the underlying 'engine'. I most certainly concur with this point, but it is a difficult problem to pin down, let alone decide on a solution for.

      --
      John_Chalisque
    39. Re:To answer your question by Anonymous Coward · · Score: 0

      90-95MB is excellent? WTF are you smoking?

    40. Re:To answer your question by Anonymous Coward · · Score: 1, Informative

      Cygwin/XFree86 is excellent, not 90-95MB. Secondly, 90-95MB for a full set of GNU utilities plus X server is very nice, compared to the size of Reflection X or Exceed.

    41. Re:To answer your question by Anonymous Coward · · Score: 0

      Wow, not a single statement you made is correct. That's pretty funny, because I really don't think you were trying to troll. Are you really that clueless?

    42. Re:To answer your question by Anonymous Coward · · Score: 1

      I believe WiredX is the online service, where as WeirdX is the name of the software. Yes it is somewhat confusing...

    43. Re:To answer your question by Per+Wigren · · Score: 2

      There isn't one. Or there's much more than one (Xt, Athena, Motif, Qt, Gtk, XUL, Fltk, WxWindows, TK...). Neither of those answers is useful as a starting point of discussing new GUI enhancements.

      We just have to create a new one that is the solution to all our needs!

      --
      My other account has a 3-digit UID.
    44. Re:To answer your question by Anonymous Coward · · Score: 0

      there's a deeper sense of compatibility that the proliferation of X Window toolkits interferes with. it doesn't show up in monolithic applications, but rears its ugly head in any system that dynamically loads code that wants to provide both a "backend" and a GUI. if the "plugin" isn't written with the same toolkit as the "host", this can't work without grotesque hacks. why? because the toolkits' event loops all tend to assume that they are in control, and because of this, they cannot inter-operate together in the same address space.

      this is a deep problem, and its biting us audio developers very nastily. under windows and macos, the plugin knows exactly how to create a new window that it can draw in. but under X Window, the plugin's GUI only works correctly if it uses the relevant calls from the toolkit used by the host. this is a nightmare for us.

    45. Re:To answer your question by drinkypoo · · Score: 2
      Back to your point. You mention that for Apple's Aqua and Microsoft's GUI there are corresponding lower level APIs: DPS and GDI respectively.
      I've got no idea what Aqua uses, but it's probably not DPS. I mentioned GDI and DPS because they are comparative tools for building windowing systems.

      Where NeXTStep used display postscript, MacOSX uses display PDF. PDF is just a streamlined version of postscript, so little has changed (ostensibly) in the way NeXTStep->MacOSX draws things.

      Whether aqua strictly draws to DPDF or does direct screen writes is another issue, but assuming they are using the DPDF system to do 2d primitives acceleration, which is probably a safe bet, Aqua probably does draw to it without exception.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    46. Re:To answer your question by Featureless · · Score: 4, Insightful

      I made the point that other platforms are not immune to the "too many ways of doing things" disease.

      And what bad faith of you to do so, since your implication is that X is on a par with Win/Mac for standardization, and thus ease of use - or are you merely quibbling.

      The (limited) scope of X11 is why X11 still exists.

      No, inertia is why X still exists. Please, if you like, starting with your "100s", list the free and open (or even close) alternatives to X that withered on the vine out of anything other than the "good enough" momentum of people who were already using X.

      many of the "bare to the metal" GUIs couldn't evolve fast enough.

      I actually laughed when I read this. You live in a strange fantasy world, where the GUI has evolved at anything other than a snail's pace in the last 20 years. "Couldn't evolve fast enough." I think my garden slugs are evolving faster.

      Truthfully, there is a tremendous advantage to a well-integrated, well-packaged and concise system that does GUI end-to-end. It saves a lot of work for end-developers and if well made requires the same or (I think) less work to "evolve" than X+frontend of the moment. It means programmers can do a lot more because things are simpler. You see, these "assumptions" aren't just good for users, they're good for developers too.

      Nothing about X's choice not to meet all these needs was wise. It was merely expedient.

      X11 IS NOT A GUI.

      You seem to be willfully missing the point. We clearly know this already. And as has been said over and over again, this is why we need to reconsider it.

      No problems will be solved by throwing away X11 and hoping that everybody standardises on your favored project (ie, PicoGUI).

      Quite wrong. Unless you don't consider the failure of unix outside of the server-and-geek world a problem. Maybe you don't. Consider the monumental efforts of KDE and GNOME - and spend 10 minutes with a non-computer-user attempting to work with them. X and its legacy is fundamentally what's in the way - it's a big mess, even as a protocol, and the design decisions inside it percolate up to the very highest of the high-level interfaces built on top of it, usually wounding and crippling them. Unfortunately, there's a lot of elitism and snobbery in the unix and development worlds that keeps people from looking past it and imagining what could be better. But some of us remember the same kinds of folks arguing that the GUI itself was a fad, and a waste of time, next to the "good enough" CLI.

    47. Re:To answer your question by Ari+Rahikkala · · Score: 1
      Someday a better UI environment will come around, when the only program allowed to connect to my X server is a single process from $NEW_DISPLAY_LAYER.
      Ohh... yeahhh. Let's fix X by adding yet another layer of abstraction!
    48. Re:To answer your question by Arandir · · Score: 2

      I've never used XP, or hung around with the XP crowd, so maybe the situation has changed in the last year. But last I checked the Windows GUI was an inconsistant hodgepodge merely pretending to be consistant. When every multimedia application under Windows has a radically different look-and-feel from each other, the claim of consistancy is silly.

      The only "rulebook" for Windows interfaces is the choice of toolkit. If you use VS you use the VS rulebook. But if you use aonther tookit (borland), then you use a different rulebook. Or you can program in straight GDI/win32 and write your own rulebook.

      People think Windows has a consistent interface because Microsoft keeps telling them that it is. But is certainly isn't. If every application you use is from Microsoft, it's better. But even then you have inconsistancies depending on the age of the application. Every release of MSOffice introduces new inconsistant UI elements.

      To address one of your points in detail, lets look at icons. The toolkits are not in charge of the icons. They can be whatever the developer chooses to put in their resource file. The only reason so many of them seem the same is because some standard ones were included in the SDK and with VS. Before OWL got buried by MFC, it was a simple matter to tell VC++ apps from BC++ apps: the icons were subtly different. Today you can often tell Microsoft apps from non-Microsoft apps because MS uses their own icons that look a lot better than those they distribute to developers.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    49. Re:To answer your question by axxackall · · Score: 2
      Cygwin/XFree86 has no window manager, at least by default

      TWM comes with Xfee86/cygwin by default while FVWM, IceWM and AfterStep are also available.

      --

      Less is more !
    50. Re:To answer your question by nathanh · · Score: 2

      And what bad faith of you to do so.

      ... are you merely quibbling.

      You live in a strange fantasy world...

      You seem to be willfully missing the point.

      If you'd care to rewrite your response without the condescending attitude then I'll bother to respond to it, because I'm not going to wade through your insults to find your arguments.

    51. Re:To answer your question by nathanh · · Score: 3, Interesting
      The thing, as I see it, is that the GUI abstractions laid down by the use of the X protocol (if you use X you must work around its protocol for obvious resions) are, in some sense, 'in the wrong place' for the construction of modern GUI systems.

      This is an interesting argument. Can you offer an example? I'd certainly agree that some X11 features were abstracted poorly. I would also agree that certain X11 features should never have been part of X11. But I'm having difficulty thinking of any problem with X11 that can't be solved with an extension. Some of these extensions might be difficult to write, but I'm optimistic given the number of excellent and timely extensions to XFree86 in just the past 5 years. Consider...

      • X11 predicted multiple heads but didn't predict video walls. Solved with Xinerama.
      • X11 didn't predict hardware video scaling. Solved with XVideo.
      • X11 didn't predict hardware alpha blending. Solved with XRender.
      • X11 didn't support direct rendering (fundamental requirement for high-speed 3D). Solved with DRI.
      • X11 predicted different form factors but didn't predict dynamic form factors. Solved with XRandR.
      • X11 didn't offer complex 2D graphic operations while DPS did. Solved with the DPS extension.
      • X11 didn't offer TrueType font rendering. Solved with XTT.

      Do you see why I'm optimistic? Features have never been - and I will boldly claim will never be - a problem for X11. Features are added quickly and relatively painlessly by extensions. The features are integrated into modern desktop GUIs within a year or two. This isn't rhetoric or hope... it's established fact from watching KDE and GNOME.

      So the only problem with X11 that would worry me is something so fundamentally broken, so fundamentally unalterable, and so fundamentally ingrained in everything about X11, that fixing it would involve a complete replacement of X11 with something entirely new. I can think of dozens of niggling problems but not a single fundamental problem.

    52. Re:To answer your question by Anonymous Coward · · Score: 0


      You said: on Windows you've got OWL and MFC for starters

      he said: Does anyone really use OWL anymore?

      you said: I don't know. Nor do I care.

      WELL YOU SHOULD CARE RETARD BOY BECAUSE THAT WAS ONE OF YOUR POINTS. Moron. Fuck off and stop annoying me with your stupid lack of logic.

    53. Re:To answer your question by nathanh · · Score: 2

      You said: on Windows you've got OWL and MFC for starters

      he said: Does anyone really use OWL anymore?

      you said: I don't know. Nor do I care.

      You missed the bit before which was...

      He said: [Microsoft and Apple] ... one and only one GUI framework

      Which was clearly wrong, and I disproved it with an example.

      If you read things out of context then they often don't make sense. Much like if I selectively quote you like this...

      I... retard boy... and... stupid.
    54. Re:To answer your question by Anonymous Coward · · Score: 0


      <i>You seem to be willfully missing the point. We clearly know this already</i>

      No you do not, because you have just ranted about the slowness of X evolution, when parent was talking about GUI evolution.

    55. Re:To answer your question by Quixote · · Score: 2

      Jeez... its a Java app. Sure, the compiled package may be 210KB, but the JVM that it needs to run will put any X server to shame.

    56. Re:To answer your question by theLOUDroom · · Score: 2

      Also, the way it stands, if I want to share my X apps with my Windows friends, I have to get them to either...
      And if you want to share your windows apps with me I have to get wine, and that means windows is flawed?
      If you want an X app, you need X. Yes, that's correct, but it's not a mark against Xwindows. If you have a crappy X client on your machine, that doesn't mean that X itself is flawed. You should replace your crappy client. I'm sure plenty of people here can suggest clients that will actually work.
      You complain that you can't get a dirt cheap Xwindows solution for windows and you campare it to citrix in the same post. Is citrix free?
      I don't think you're being fair here. I'm running remote ssh-tunneled gaim from my home linux pc on a bsd machine in a computer lab a mile away. Both machines have X and it works. It's also not any slower than VNC would be. If I try to do this using a a toaster instead of a PC it's not going to work. This is not X's fault. The toaser doesn't have an X implemetation, so it can't connect to X.

      --
      Life is too short to proofread.
    57. Re:To answer your question by Minna+Kirai · · Score: 2

      trying to put across (and this is a hard one to pin down, let alone argue properly) is that X puts its 'abstraction layer(s)' in the wrong place.

      Let me attempt a concise description of the problem (which is broader than X11 vs PicoGui, and is really about low-level display protocols vs higher-level ones):

      For any client/network/server hardware, there is one best way to divide up the portions of a client-server application so that users get the best performance. If the network is fast, then transmitting every single pixel from the server might work OK. If the network is slow but the client system is fast, then loading most of the program into a Java applet for local execution might be best. The optimal choice varies according to the application and the hardware resources available. There's no one best solution.

      If a program is written with low-level tools, then the programmer must decide on an approach during development. He can do what's best for his hardware, but the solution is hard-coded, and might not be portable to other clients/networks. But, if the application were developed with a higher-level toolkit, then the optimization to adapt to a different client capabilities and network bandwidth can be done and redone automatically, as much as needed to track changes. (Even if the process isn't automatic, manual reconfiguration of some options is faster than rewriting the whole app)

      This is analogous to the argument about programming in assmebly language vs C. Writing a program in assembly for the 8088 could give you better speed than C (assuming you're truely a master coder, or your C compiler is poor). But then when the program is brought to a 386 it will be much slower than a C program recompiled for the new processor, because the relative execution latencies of the opcodes have changed.

      Going low-level ("writing to the metal") can give better results for a certain situation, if the implementor is an expert. But high-level techniques allow more flexiblity later, as well as protecting users from the mistakes of inexpert application developers.

    58. Re:To answer your question by Anonymous Coward · · Score: 0

      There exist two X servers, WiredX and WeirdX and they are from JCraft. WeirdX is licensed under GNU GPL and it was derived from source code of WiredX. As someone pointed out that, WiredX is freely available as a web service.

    59. Re:To answer your question by Anonymous Coward · · Score: 0

      It's amasing, but it works! Screenshots are here.

    60. Re:To answer your question by Anonymous Coward · · Score: 0

      Heh. You went to one of those special schools, didn't you?

    61. Re:To answer your question by vrmlguy · · Score: 3, Insightful

      A major root-cause of the toolkit problem is that no one has extended X to support "standardized" primitives. For example, menus and toolbars. See this for more info.

      --
      Nothing for 6-digit uids?
    62. Re:To answer your question by Minna+Kirai · · Score: 2

      Of course, the software architects will say "Moving menus (or other widgets) into the X protocol violates layering. Those higher-level objects belong in toolkit libraries."

      And really, "extend X" can be interpreted as either a protocol extension, or just building a feature in a library on top of it. The effect can be the same, if the toolkit is pervasive enough to be usually available (but no current toolkit is that dominant). And if an extension were made, the application programers would still have use toolkit functions to set up menus- because if the Xserver doesn't allow that extension, somebody's still got to draw a menu on top of the window.

      So, the 2 possible implementations: "an X-protocol extension which might be present, but can also be emulated by the toolkit" or "a helper program which might be running, but can also be emulated by the toolkit" are fairly equivalent. Both of them could let menus be positioned in theme-specific ways, and neither would break the applications if it isn't present.

      But a helper program has a big advantage over a protocol extension: You can actually install it without modifying the Xserver. That means it can work with closed-source Xservers that can't be modified, or on desktop systems whose software you don't want to alter. In fact, the toolkit could even execute the helper-program if it can't find one running. Since the toolkit can be linked right into the apps that need it, deployment concerns are even less important.

      In fact, some toolkits do this, when in conjunction with their own window-manager/control panel. (I'm sure you already knew that.) I'm only aware of that being done in conjunction with helper-programs that are much more bloated than a simple menu-drawer, though.
      (Good discussion of a few of the many concerns here).

  8. Don't know much but... by secolactico · · Score: 1

    Well, if nothing else, that penguin looks real cute.

    --
    No sig
    1. Re:Don't know much but... by Anonymous Coward · · Score: 0

      That penguin is part of Everaldo's icon theme "crystal" for KDE. You can find different variations of this icon theme both at his homepage and at kde-look.org.

      I think there was also a "port" of his icon theme to gnome, but I can't find a link right this minute.

  9. I like innovations but by i_luv_linux · · Score: 0, Flamebait

    Where is the innovation in picoGui? It looks like Aqua of Mac Os X. I appreciate the work for this, but please do something on your own, come up with some new nice ideas, think, innovate, bring some excitement to open source community! Why do we have to see Mac OS X like, Windows like interfaces in the open source all the time? Why don't these people come with nice new interface features?

    1. Re:I like innovations but by mjabit · · Score: 2, Insightful

      That's just a theme, you idiot. I'd like to see you do better.

    2. Re:I like innovations but by Anonymous Coward · · Score: 0

      How about YOU do something on your own, and stop attacking those who are?

    3. Re:I like innovations but by npietraniec · · Score: 2

      Their mission seems to be to write a very lightweight window manager. If you don't like the theme, why don't you contribute to the project?

    4. Re:I like innovations but by facelessnumber · · Score: 1

      Where is the innovation in picoGui? It looks like Aqua of Mac Os X.

      Dude! You're RIGHT! Not only that, but it also looks just like KDE! And WindowBlinds!

  10. X alternatives never materalize by Istealmymusic · · Score: 3, Insightful

    Before one embarks on such a nobel product, he or she must be prepared for X conquest. Otherwise, he or she will end up like the dozens of alternative-to-X windowing systems littered strung out across the Internet. Don't be a another casuality of X-crazy fanatics; X can be replaced, but only by time.

    --
    "The lesson to be learned is not to take the comments on slashdot too literally." --Vinnie Falco, BearShare
    1. Re:X alternatives never materalize by starseeker · · Score: 1

      Berlin (now Fresco) stands as good a chance as any of materalizing - it has a running prototype. Yes, it's slow, but what's the rush? X is doing pretty well, so we can afford to wait for a really good solution.

      Also remember that a replacement to X doesn't preclude running X in a compatibility role, so I can definitely see it happening.

      --
      "I object to doing things that computers can do." -- Olin Shivers, lispers.org
    2. Re:X alternatives never materalize by Wumpus · · Score: 4, Informative

      Fresco... A friend of mine used to rave about it. I haven't talked to the guy in almost 8 years, which should give you an idea how long this thing has been kicking around. I've been following it for years (basically checking on the web page every few months), and progress is

      s l o w . . .

      Don't hold your breath.

    3. Re:X alternatives never materalize by Anonymous Coward · · Score: 0

      They still have the same screenshots they had 2 years ago!!! Yeah, this one is really moving fast heh

    4. Re:X alternatives never materalize by Anonymous Coward · · Score: 0

      None of the "alternatives" are trying to compete with X. They are simply alternatives. If the PicoGUI project survives long enough to see the things that the author hopes to accomplish come to life, I'm sure it will be great for people that want a nice alpha-blended translucent transparent desktop environtment.

      Personally, I'm happy with a bunch of transparent aterms, mozilla, gaim, and xmms running under XFree86 with my minimalist window manager and a nice dark wallpaper to set the mood. I find this setup to not only be comfortable and nice to look at, but blazing fast.

      PicoGUI is pretty and portable, but that's not enough for me.

  11. It looks nice... by SexyKellyOsbourne · · Score: 1, Troll

    But people should code with an open, standard, portable GUI wrapper instead of writing directly to ANY API.

    Case in point: http://www.wxwindows.org. Simply write in the wxwindows wrapper, then simply compile it for something like Pico instead.

    However, X is so entrenched that it will take years, if ever, for pico to dethrone it. Until then, just use wrappers to keep the code portable.

    1. Re:It looks nice... by ensignyu · · Score: 2, Informative

      Well, actually, it seems that almost all desktop apps for Linux are written using GTK or Qt. Although PicoGUI is supposed to provide its own widgets and such, a Qt/PicoGUI and GTK/PicoGUI would ease the transition and make a lot of apps available under PicoGUI.

  12. Why picoGUI? by nutshell42 · · Score: 3, Interesting

    We have Berlin after all. =P

    --
    Don't think of it as a flame---it's more like an argument that does 3d6 fire damage
    1. Re:Why picoGUI? by tokki · · Score: 1

      Eh, Berlin looks even uglier than X.

    2. Re:Why picoGUI? by Doug+Neal · · Score: 2, Funny

      Yes, Berlin has matured as a windowing system and is very nice. Why just earlier I was using it to play the newly released "Duke Nukem Forever"!

    3. Re:Why picoGUI? by nutshell42 · · Score: 1
      two things:

      1. It was a joke; we won't see Berlin any time before we see The Hurd 10.5 =)

      2. It's a Graphical Interface like X and Qt combined with a WM. It has 3D acceleration, transparency etc., so there is no reason that it shouldn't look like enlightenment once somebody with artistic talent shows up

      --
      Don't think of it as a flame---it's more like an argument that does 3d6 fire damage
    4. Re:Why picoGUI? by Wumpus · · Score: 2

      there is no reason that it shouldn't look like enlightenment once somebody with artistic talent shows up

      What, surely you're not implying that someone with artistic talent ever got anywhere near enlightenment, are you?

      Ok, maybe someone did, but at least in my opinion, enlightenment's themes are just plain ugly.

  13. Unified GUI services by be-fan · · Score: 3, Insightful

    The one thing I'd like to see is a set standard GUI services on top of the core drawing engine. Different widget toolkits would be a thin wrapper on top of these standard services, and different widget toolkits would exist to customize the standard services to each language and development model. This way developers could code to whatever API they enjoy (Qt'ish, GTK+'ish, etc) but since these APIs would map to a common set of services, applications would interoperate perfectly. In fact, with would then be easier to write wrappers for "legacy" apps that use straight GTK+ or Qt.

    --
    A deep unwavering belief is a sure sign you're missing something...
    1. Re:Unified GUI services by rknop · · Score: 2

      The one thing I'd like to see is a set standard GUI services on top of the core drawing engine. Different widget toolkits would be a thin wrapper on top of these standard services, and different widget toolkits would exist to customize the standard services to each language and development model.

      Isn't that something similar (with slightly different goals) to what Java tried with the original AWT? The idea was that the Java interface was a thin layer, but the underlying widgets were each implemented by the OS.

      Needless to say, it failed pretty miserably, which is why Java later came up with Swing and the realization that to actually work everywhere, you have to implement your own code everywhere. It's all very nice to say you want a thin layer on top of standard services, until you realize that the "standard" services are not very standard from one OS to the next (in the case of Java) or from one window manager/widget toolkit/windowing system to the next (in this case). Those differences make it very challenging-- and, more to the point, messy and crufty-- to try to write a "thin" layer that can somehow interact with all of them.

      It's nice in theory, but it doesn't really meet well with the real world.

      -Rob

    2. Re:Unified GUI services by mamba-mamba · · Score: 1
      The one thing I'd like to see is a set standard GUI services on top of the core drawing engine.

      Wow, what a great idea! You should also design it so it can work over the network and then you would have, uh, well, you'd have X.

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
    3. Re:Unified GUI services by be-fan · · Score: 2

      You've got it backwards :) AWT is a single thin layer on top of many standard services. My scheme is many thin layers on top of one standard service. This isn't something for portability (there would only be one GUI server in this picture), but something for consistency. You have a GUI server that implements a standard set of services. Then, the toolkits become thin wrappers on top of those standard services.

      --
      A deep unwavering belief is a sure sign you're missing something...
    4. Re:Unified GUI services by be-fan · · Score: 2

      X is a drawing and windowing engine. It doesn't do other GUI-level services like printing, clipboard, etc.

      --
      A deep unwavering belief is a sure sign you're missing something...
    5. Re:Unified GUI services by scrytch · · Score: 2

      > Needless to say, it failed pretty miserably, which is why Java later came up with Swing

      It failed miserably because the AWT folks were freaking idiots about the design. Nearly every single widget (if not every one) had a lock, and got locked and unlocked down the widget tree during every event. Might have been required by the native implementation, don't know. Swing's relative snappiness has less to do with its pure java implementation (though JNI is slow, I'll grant that) and more to do with imposing a lot less locking overhead. However, IBM has done just fine with SWT, which goes back to a peered implementation.

      It's nice in theory, and it's nice in the real world. It just doesn't always work on the first try.

      --
      I've finally had it: until slashdot gets article moderation, I am not coming back.
  14. Does it have an X Server? by Anonymous Coward · · Score: 0

    I'll use picoGUI when someone writes an X server for it.

  15. excellent by Anonymous Coward · · Score: 0

    Yes this is what we need!... I want animations like MacOSX and openGL effects for the windows. Think how cool it would be to actually have a closed window animate into a pebble and fly into the background desktop which is animated still water. When the closed window hits the desktop background you see a animated ripple effect. Perhaps this is the next big thing in eye candy. Innovate!

  16. So what... by Anonymous Coward · · Score: 5, Insightful

    It is so sad that many in the linux community are so obsessed with "eye candy" and the latest experimental GUI. The flexiblility of LINUX when it comes to the GUI gives it enough rope to shoot itself in the head with. I know the reason why most of my friends work with MS windows and the Mac OS... there is a uniform user interface that works (flaws and all) fairly well. I don't have to sit there and think... gee do I have widget set X with static libraries Y and did I make the right offerings to the gods of LINUX... you get the picture. So picoGUI looks cool... who gives a sh.... (of course this will be modded as flaimbait... since I don't slobber at every would be GUI posted on slashdot)

    1. Re:So what... by jarodss · · Score: 2
      gee do I have widget set X with static libraries Y and did I make the right offerings to the gods of LINUX... you get the picture. So picoGUI looks cool... who gives a sh....


      Well, I for one do. This is not another desktop environment. This is a new way to do graphics on unix. No more client/server. IMHO this could be a giant leap for linux on the desktop.

    2. Re:So what... by starseeker · · Score: 4, Interesting

      "So picoGUI looks cool... who gives a sh.... (of course this will be modded as flaimbait... since I don't slobber at every would be GUI posted on slashdot)"

      Well, I don't have moderator points, but I will say that (again) we are missing the ultimate point. Open source software development is supposed to be FUN. They think this is fun, or maybe useful for their stuff, or maybe both. That's plenty. People who are having fun with it will "give a shi..". Everything doesn't have to be take over the world. Unfortunately this article put it in those terms, rather than "hey, here's a cool little project."

      Two applications I find potentially interesting for this are a) GUI installers that don't require X (serious overkill) and b) usable GUIs on really old hardware - make an interface to a few apps in picogui, make a mini desktop, stuff it on a 386/486, and ship it off to a country where computers are hard and expensive to come by.

      For my money, the reason to replace X is not speed, but more power and flexibility and clean design. Hardware takes care of speed. That's why I'm a fan of Berlin. But until Berlin is done, X is great. But so are cool projects like picogui.

      --
      "I object to doing things that computers can do." -- Olin Shivers, lispers.org
    3. Re:So what... by micahjd · · Score: 2
      PicoGUI _is_ client/server, it just goes about this in a way much different than X.

      --
      -- 2 + 2 = 5, for very large values of 2
    4. Re:So what... by micahjd · · Score: 2
      Berlin/Fresco and PicoGUI actually have a lot of similarities in their design. PicoGUI's speed is more of a side effect of having a good design rather than a primary motivation.

      --
      -- 2 + 2 = 5, for very large values of 2
    5. Re:So what... by Anonymous Coward · · Score: 1, Insightful

      I would really like to see a decent GUI for 486 machines which are really cheap right now (like $5). Not just for poorer countries, but for poorer people here. Believe it or not, there are quite a few. I'm running a 486/66 now. It has (ahem) windows 95 because I cant get a GUI for linux to work well enough. It is hard to teach a kid how to use the internet with Lynx. All I want is a GUI web browser and maybe a decent word processor for one of these machines. I know this has been argued about before but it seems worthwile.

    6. Re:So what... by Anonymous Coward · · Score: 0

      Perhaps you meant "Enough rope to hang itself with," or, for the grammar conscious, "Enough rope with which to hang itself"

    7. Re:So what... by Anonymous Coward · · Score: 0

      For web browsing you might look at links. It's not graphical but does pretty well.

    8. Re:So what... by unixbob · · Score: 1

      I think that what is sad is people who think they are "old skool" or hardcore, and are thus superior to the noobies. It is true that there are many people who's Linux skill set falters at anything more than being able to install Mandrake. It is the techno-snobbery of those who look down on these people which grates with me.

      Some people on here will look at picoGUI and think it is pretty and like it for that reason. Others will dig a little deeper and find the archticture and design of the system appealing and tryit out for that reason.

      Surely that is the whole point of running Linux / UNIX. It's flexibility allows for so many different options. If all you are interested in is a desktop which looks glossy and different to everything else then you have that option. If you are interested in Kernel development and digging around in the guts of UNIX, you have that option too. Neither option is better than any other and that is why open systems are so cool. They give people choices and don't tie the user down to a strict set of rules imposed by someone who thinks they know better

      --
      The Romans didn't find algebra very challenging, because X was always 10
    9. Re:So what... by Anonymous Coward · · Score: 0

      Um, maybe it was a joke.

    10. Re:So what... by bockman · · Score: 2
      It is so sad that many in the linux community are so obsessed with "eye candy"

      Not me ... as I tried to say in the post, I like PicoGUI for some of the underlying ides, not for eye-candy

      and the latest experimental GUI.

      Definitly yes. I look at free software as a wold-wide laboratory of computer science, where multiple and alternative ideas can be developed in parallel.
      For me, this is much more important than coming with 'consistent' products.

      --
      Ciao

      ----

      FB

    11. Re:So what... by Shelled · · Score: 2
      What part of this isn't an obvious troll?

      I know the reason why most of my friends work with MS windows and the Mac OS... there is a uniform user interface....

      So most (?) of your friends installed and ran different linux desktop environments and, having that expertise plus being accustomed to jumping between the two completely different desktop architectures of MS and Apple, stumbled at Gnome or KDE? What an unusual combination of mental aptitudes.

      It is so sad that many in the linux community are so obsessed with "eye candy"....

      Like Fluxbox, Ion, Blackbox, IceWm etc., etc., etc., which have less eye candy than XP? You basically describe Enlightenment, most WM's are no more eye-candy than OS-X. Or is anything beyond the official Blue & Grey considered eye candy? Is XP's new desktop look eye candy as well?

      ..... and the latest experimental GUI.

      Because it's a scientific fact that experimentation is bad. Microsoft wrote the bible on desktop UI's with Windows 95 and have stuck religiously to it since then. The fact that Apple uses a different one should be considered a Catholic vs. Protestant sort of thing, not like those dirty linux pagans. What a relief, we have the perfect desktop and there's no reason to think otherwise until Microsoft tells us to. Thanks for lifting that burden from developers.

      I don't have to sit there and think... gee do I have widget set X with static libraries Y and did I make the right offerings to the gods of LINUX...

      You finally got one right, with many distros you don't. Gentoo is a perfect example. ("..gods of LINUX"? Mark of the Troll.)
      Oh, and quit posting as AC and self moderating.

  17. How about Berlin? by Anonymous Coward · · Score: 0

    Some think Berlin is the answer, but it doesn't look like much has changed since February.

    some more info here

    1. Re:How about Berlin? by xRizen · · Score: 1

      "it doesn't look like much has changed since February."

      That's because it's not Berlin anymore. It's Fresco. Last I heard, they were planning a new release of Fresco for this week.

  18. DOH!!! by Anonymous Coward · · Score: 0

    Looks like I'm not the only one who thinks your a troll.

  19. Bad screenshots by blogan · · Score: 3, Funny

    Take a look at the screenshots. There are no xeyes running! How can we take any X alternative seriously when they don't bother to port xeyes.

    When I first showed my wife Linux, the first thing she asked was "What do those eyes do?" My reply, "Some people use them as a status indicator for predictive multitasking thread optimizer, but mine just look at the cursor." "Cool"

    1. Re:Bad screenshots by evilviper · · Score: 2
      There are no xeyes running! How can we take any X alternative seriously when they don't bother to port xeyes.

      They did port xeyes! They're just so small you can't see them. What did you think the "pico" stood for anyhow?
      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  20. SexyKellyOsbourne Poll by Anonymous Coward · · Score: 0

    SexyKellyOsbourne wants to know if you think she is a troll.

  21. You can pry X from my dead hands... by sanermind · · Score: 2
    what would it take (apart porting tons of applications) to make it a suitable alternative to X+[your toolkit of choice]+[your window manager of choice]?


    Nothing! What is this thing people have about reinventing the wheel?! I mean, even linux is revolutionary only in it's implementation of un*x, that's why people started using it. As much as people gripe, X-windows is pretty well designed for a gui. Preciesely because it dosen't do much, other than act as a glorified lackey for handling input and output, leaving the rest to other programs/libraries/widget-sets/etc. And it has proven to be flexible to meet the challenges of the future, let's not forget DRI and xinerama and the like.

    About the only thing X could be argued to be lacking in right now, is no good native support for vector drawing. But gtk's canvas, and I'm sure others do it well enough in 'user' space, that perhaps it wouldn't be justifiable to burden X with it, [asside from being a more universal API... but then again, who programs directly to X anyway, but widgetset creators?!]
    --

    ---
    the pen is mightier than the sword, the sword is mightier than the court, the court is mightier than the pen.
    1. Re:You can pry X from my dead hands... by Anonymous Coward · · Score: 0
      I mean, even linux is revolutionary only in it's implementation of un*x

      Un*x? Are you kidding me? Wildcard? It's Unix you flaming faggot.

  22. Most important... by Eric_Cartman_South_P · · Score: 5, Funny
    Before consulting in other areas, as someone who worked as a developer focusing on User Inferfaces, and having studied Human Factors and Usability guidlines and best practices, I can safely say that the best way to make an interface more usable and better for the end user is to give it a bright green "Start" button and a rolling hill background. That's all you need to do.

    1. Re:Most important... by Anonymous Coward · · Score: 0

      HAHAHAHA!

  23. WOW! by Anonymous Coward · · Score: 0

    You are one hated bitch. After a little light reading of your journal and history I do know why though.

  24. New name by Anonymous Coward · · Score: 0

    PicoGUI is kind of a lame name. I think they need to change it. If it were my project I'd change it to KnifeFighter because I know _I_ would want a GUI called KnifeFighter. Hey, this is the beauty of the GPL in action, I could rob every new version of it, slap my KnifeFighter name on it and then release it myself. This is genius.

  25. WAP, take 2? by Animats · · Score: 1, Offtopic

    This looks like an API at the HTML level. We have an API at the HTML level; it's called HTML. Do we need another one?

  26. I don't see why we need this by g4dget · · Score: 3, Interesting
    The major difference between PicoGUI and systems like X11 and Quartz seems to be that PicoGUI defines widgets and layout in the display server.

    I find that a dubious design decision. I like the fact that I can have many different kinds of widgets and graphics under traditional window systems. For example, for handhelds, I can use something like FLTK, which is very light and does not have much in the way of geometry management, while on desktops, I can use something heavy-weight like Gtk+ or wxX11. Also, there is no widespread agreement of how widget layout should be handled in GUIs.

    If you want a widget server like PicoGUI provides, you could easily add that between client applications and an X11 (or Quartz) server.

    Eventually, X11 will get replaced by something, but among the current contenders (Windows GDI, Quartz, PicoGUI, Berlin, etc.), I don't see anything that has compelling advantages.

    1. Re:I don't see why we need this by nutshell42 · · Score: 1
      Yes you have dozens of different toolkits and therefore you either only want to use the apps wich are programmed with your toolkit of choice (you lucky soab) or you ported every app you use to every toolkit (could you please send me an Qt Version of xchat?) or your desktop looks like an example of applied chaos theory

      If pico is reasonably modular and well designed, you could have different versions (different in complexity, hardware abstraction, your own ultimate widget collection, etc) and still use *every* app *native* with the different flavours of picoGUI

      --
      Don't think of it as a flame---it's more like an argument that does 3d6 fire damage
    2. Re:I don't see why we need this by g4dget · · Score: 3, Insightful
      or your desktop looks like an example of applied chaos theory

      Gtk+, Qt, Motif, Fltk+, and Tk applications are nearly indistiguishable visually and behaviorally. And the situation is the same on other major desktops as well: your average Windows and Macintosh desktop probably has applications written in half a dozen different toolkits.

      If pico is reasonably modular and well designed, you could have different versions (different in complexity, hardware abstraction, your own ultimate widget collection, etc) and still use *every* app *native* with the different flavours of picoGUI

      That's the wrong kind of generality as far as I'm concerned. I like programming to different widget sets because the APIs of different widget sets are good for different things. What you suggest is just what I don't want: a single, uniform API with different appearances.

    3. Re:I don't see why we need this by be-fan · · Score: 4, Interesting

      The nice thing about putting widgets server side is consistency and performance.

      1) Consistency, because all clients use whatever widget set the server does. By making the server modular, you can use FLTK for handhelds and GTK+ for desktops, and all apps will obey that decision.

      2) Performance, because by interfacing clients and the server at a high level, you reduce communication between the two by a huge amount.

      --
      A deep unwavering belief is a sure sign you're missing something...
    4. Re:I don't see why we need this by g4dget · · Score: 3, Informative
      Consistency, because all clients use whatever widget set the server does. By making the server modular, you can use FLTK for handhelds and GTK+ for desktops, and all apps will obey that decision.

      You make the assumption that putting the widget set into the server ensures consistency, or that not doing it means GUIs become inconsistent. Experience with real-world window systems suggest otherwise.

      Mac OS X ships with multiple widget sets that are consistent, and people use many more to develop on it. Windows, too, ships with multiple widget sets, and there are many additional GUI toolkits in use for Windows. Yet, most people don't even notice. That's the way GUIs work.

      Performance, because by interfacing clients and the server at a high level, you reduce communication between the two by a huge amount.

      I have seen no practical indication that client/server communication is a bottleneck for X11. Why "optimize" something that doesn't need optimizing? Furthermore, X11 already takes care of many widget-related issues, like geometry management, bit-blitting of retained pixels, and event dispatch. Basically, in X11, if you open a subwindow and draw some text on it, you already have a widget, and you can eliminate almost all client/server communications through backing store.

    5. Re:I don't see why we need this by be-fan · · Score: 2

      To Consistency:
      The only reason Windows and MacOS are consistent are because one company controls development of the core system. There is nothing technical in the system that encourages consistency. It's like C vs C++. C enables safe code to be written, but C++ gives you tools to enforce that certain conventions be followed. Current thinking in computer science is leaning towards the idea that assumptions should be enforced at the system level rather than at the developer level. This is especially true with distributed development ala open source. And while putting the toolkit in the server doesn't ensure consistency (only HIG guidelines do that, and ideally, all presentation would be left to the system, which could physically enforce the HIGs) it does ensure interoperation. That's one reason why all the toolkits on windows works. They all call into the Win32 layer for high level services like clipboard and printing.

      To Performance:
      It goes beyond the communications bottleneck. The more code there is in the application, the lower the quality of that code is going to be. According to the X mailing lists, this is the real reason people think X is slow. Applications just aren't written for high-performance drawing. By putting the widget set in the server (and ideally, the entire presentation layer) you can have one well-optimized set of code, so applications can be implemented in a straightforward manner and still have high performance.

      --
      A deep unwavering belief is a sure sign you're missing something...
    6. Re:I don't see why we need this by dvdeug · · Score: 2

      By making the server modular, you can use FLTK for handhelds and GTK+ for desktops, and all apps will obey that decision.

      But you've got to make feature sets of FLTK and GTK+ compatible. And once you've added all the features of GTK to FLTK, so a program can use GTreeWidget (e.g.) on a FLTK, will FLTK really be that much smaller than GTK+? If you don't, couldn't you just chop those functions out of GTK+ to get a toolkit comparable in size to FLTK?

    7. Re:I don't see why we need this by Fnkmaster · · Score: 2

      You have GOT to be joking. Yes, all those Qt, Gtk+ and Tk apps look FABULOUS running together on my desktop. Groan. This is why I stopped using Linux for my daily desktop work. I have a relatively well-tuned aesthetic sense and it KILLS me to have some apps that only have good Qt versions and some that only have good Gtk+ versions, and most that have two mediocre versions. Windows 2000/XP suck in a lot of ways but at least looking at my desktop doesn't give me a headache (and my 2d performance is more than a bit better).

    8. Re:I don't see why we need this by g4dget · · Score: 3, Interesting

      Current thinking in computer science is leaning towards the idea that assumptions should be enforced at the system level rather than at the developer level.

      But neither Windows nor MacOS enforce assumptions at the system level. The reason why toolkits look alike on those platforms is because toolkit developers choose to make them look alike.

      According to the X mailing lists, this is the real reason people think X is slow. Applications just aren't written for high-performance drawing.

      It's not an issue with applications, it's an issue with toolkits: Gtk+, Qt, and Swing are just not designed for maximum efficiency under X11. Since they are more than fast enough on current machines, that doesn't bother anybody other than people who just hate X11 for no good reason.

      Applications just aren't written for high-performance drawing.

      Even in your optimistic scenario, PicoGUI only speeds up the drawing of widgets, not other application drawing. But toolkits draw the widgets. Therefore, if you want to speed up the drawing of widgets under X11, just use a more efficient X11 toolkit.

      By putting the widget set in the server (and ideally, the entire presentation layer) you can have one well-optimized set of code, so applications can be implemented in a straightforward manner and still have high performance.

      You can have "one well-optimized set of code" right now, by using a more efficient widget set under X11. In fact, X11's windows are almost complete widgets in themselves already--X11 isn't all that different from PicoGUI.

      And people will not stop writing Gtk+, Qt, or wxWindows code just because PicoGUI comes around, so those toolkits will do even worse on top of PicoGUI than on top of X11.

    9. Re:I don't see why we need this by g4dget · · Score: 2
      Windows 2000/XP suck in a lot of ways but at least looking at my desktop doesn't give me a headache

      Well, maybe you just like the stodgy Microsoft Windows style, but Windows desktop applications are rather inconsistent. Just take a look at the interface hall of shame. The "new entries" page alone has numerous different GUI and widget styles for Windows apps (plus several mutually inconsistent Mac apps).

      (and my 2d performance is more than a bit better)

      Doubtful.
    10. Re:I don't see why we need this by Anonymous Coward · · Score: 0
      I have seen no practical indication that client/server communication is a bottleneck for X11.
      Well, it would be nice for the protocol to be substantially lower b/w. I used to use X for network displays in University from many other machines on campus. But now I'm limited to around the house, because I can't afford a link that is nearly as fast as what the dorm provided. I actually miss the feature quite a bit.
    11. Re:I don't see why we need this by Anonymous Coward · · Score: 0

      One of the best parts about picoGUI is its size. I don't think the author ever intended this thing to become a replacement for X and the many toolkits. For a mass produced embedded system, flash memory is still very very expensive. picoGUI along with a few clients can end up being smaller than the linux kernel used on the device. Also picoGUI is suitably themed out of the box for use on crummy displays. So picoGUI fulfills a useful niche.

      X is great, but it will never be able to claim the this segment of the market.

    12. Re:I don't see why we need this by Anonymous Coward · · Score: 0

      But neither Windows nor MacOS enforce assumptions at the system level. The reason why toolkits look alike on those platforms is because toolkit developers choose to make them look alike.

      Actually, no. The toolkits look alike on those platforms because the users demand that their applications look alike. The toolkit devs really don't have any choice in the matter, if they want to have a commercially viable product.

      The big problem in Unix GUI-land is that the atrophy of Motif/CDE caused a vacuum that allowed all sorts of different look-n-feels to develop, which lead to a collapse of the shared idea of what the Unix GUI should look like.

      (Still, even early versions of Gnome shipped with a Motif-look, but by then Motif was obsolete and pretty much universally reviled. )

      Once a concensus is reached on the basics of a new "common desktop environment", KDE and Gnome will converge their default l-n-fs and newbie users will be none the wiser about the toolkit in use.

      When you see what RedHat is doing with their new release, it looks like they are using their US Business marketshare to push the issue. If RedHat takes off as a business desktop, vendors will feel the pressure from users/customers to fit with their desktop.

  27. Replace X? Why? by Gary+Franczyk · · Score: 2

    What would be the point in replacing X? It works. It is functional and does everything I need it to. but most of all, it is UBIQUITOUS. You would need a very good reason to have everyone switch away from what they use. (for example, even though Linux is obvioiusly better than Windows, Windows still rules the world).

  28. web browser by Slashdotess · · Score: 2

    i think it goes without saying (except here) that the main reason for a linux user to ever have a GUI these days is web browsing.. port Mozilla!

    1. Re:web browser by Anonymous Coward · · Score: 0

      If you are just after graphics, you could go with Links. It will work using SVGAlib or Linux Framebuffer to provide a graphical display of the website but without the need for a host GUI layer.

  29. X sucks by tokki · · Score: 1
    I'm glad to see serious discussion of X-alternatives being discussed. I don't like X, and I don't like the directoin KDE/Gnome are taking (they are bloated, slow, divisive, and it seems usability was an afterthought).

    Something drastic needs to happen before Linux is a viable alternative to Microsoft for the desktop. Linux is rock-solid on the server side, but there are such a plethora of issues that are only beginning to be addressed by the various distros.

    Lambasting any criticism of Linux/X/Desktop isn't going to help the situation. Every time someone brings up a shortcoming of Linux/X, they are rebuked heavily by rabid advocates who don't like to see anyone to talk ill of Linux. Take a look at OSNews, where they do objective reviews of the distros, and the smallest comments bring a firestorm of flames. "How dare you talk ill of Linux!"

    Everytime I bring up my dislike of X to rabid Linux fans, it's like I just insulted their mothers.

    1. Re:X sucks by Anonymous Coward · · Score: 0

      Don't "like" X huh? Don't like the "directoin" of KDE or Gnome?

      Fine. Let's see you code better then.

    2. Re:X sucks by mamba-mamba · · Score: 2

      Well, I don't want to join the legion of lame, rabid, my-linux-right-or-wrong, flamers, but, well, your comment shows your ignorance about X, and I can't let it pass.

      X is, conceptually, little more than a video driver that can work over the network. The fact that you mention X in the same breath (if you will) as gnome and KDE shows me that you don't really get what X is. Hopefully you do now.

      As for the rest, I will take your word for it. I have no experience to the contrary.

      Personally, I don't ask much of a window manager, and I don't have a desktop, so I am quite happy running gnome (using the enlightenment rip-off theme) and no nautilus.

      I used to use enlightenment plus the graphical midnight commander, and that was almost perfect for me. One day I decided to try gnome, and now I'm too lazy to switch back. I did prefer enlightenment, though.

      I would say, however, that if you don't like linux, you should continue to complain about the bits that give you trouble and ignore all the flamers. Some companies pay lots of money to find out what consumers think of their products. You are providing honest feedback for free.

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
    3. Re:X sucks by Anonymous Coward · · Score: 0

      Slow compared to what ???????????

      AQUA ??? GIVE ME A FUCKING BREAK !
      WinXP GUI ??? NO WAY.

      I don't get why people say X sucks. Sure you get tracers when you windows around real quick, but who gives a shit. WinXP GUI is SLOW SLOW SLOW. AQUA is getting better, but this thing has some serious bloat.

      You know, after reading all the goofy ass reasons to stay on windows the other day, i think 85% of people on slashdat are on acid.

    4. Re:X sucks by Anonymous Coward · · Score: 0

      Have you ever used a commercial X server?

      I didn't think so...

  30. Not much. But then again... by n1ywb · · Score: 3, Interesting
    (donning flameproof suit)


    X is a big dumb slow ram hog that's impossible to configure without a lot of help and with no consistant look and feel thanks to the proliferation of widget libraries. Something smaller faster and more elegant with a more consistant interface would go a long way towards making me switch from using Windows as my GUI of choice.


    On the other hand, there are a crapload of apps for X and everyone COULD standardize on a widget library and a window manager. Also as computers get faster and storage gets bigger and everything gets cheaper a lot of X's performance problems are sort of going away, kind of like what's happening to Java. The remaining issue (configuration) has come a long way too, so maybe there is no need for an X replacement.


    I guess I'm always willing to give something new a try, but the real deciding factor is always software availability. For years MacOS was technically superior to MS-DOS and later Windows, but whenever I asked someone why they didn't switch the first thing they said was "there's no good software." Eventually I came to agree and switched to Windows myself (and also Linux). People will only use PicoGUI if there is good software for it, and nobody will develop for PicoGUI unless there are users. It's a chicken or the egg issue. Of course Linux and KDE and others have been in that situation and now are quite popular. So what it would really take to get many people to use PicoGUI would be a concerted effort on the part of a commited group of developers.


    That's my $.02

    --
    -73, de n1ywb
    www.n1ywb.com
    1. Re:Not much. But then again... by mamba-mamba · · Score: 2, Insightful

      You, and many other people, are muddying the waters by confusing Xfree86, a specific implementation of an X server, with the underlying concept of an X server in general. It is impossible for X to be a "big dumb slow ram hog" because it is really a description of a protocol for a display server.

      It's a bit like saying that ftp is a big slow ram hog.

      Furthermore when you say that X has no consistent look and feel, you reveal your complete lack of understanding concerning X. As I said, X is a display server. It can't really detract from a consistent look and feel.

      What you might mean is that you wish the linux community could standardize on a widget set to make apps have a more homogenous appearance, or something like that. This is a totally reasonable goal, and I'm not arguing against it. I'm just pointing out that it has nothing to do with X in general.

      Configuration is also an Xfree86 specific complaint. I used to use an Xserver on windows that was quite easy to configure. In fact, I think that all I did was install it and it worked. Later I used another, much fancier one, and found it even harder to configure than Xfree86.

      Anyway, PicoGUI is about as close to displacing Xwindows as Jolt cola is to displacing Coke as the pre-eminent Cola drink.

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
    2. Re:Not much. But then again... by sl3xd · · Score: 3

      X is a big dumb slow ram hog

      So is Windows' GDI32.exe. So is OS X's Quartz. If you want to believe either is a memory featherweight, I got a few investment ideas for you...

      impossible to configure without a lot of help

      The exact same can be said of both Windows and Macintosh -- and PicoGUI. Configuring hardware is not, nor has it ever been, easy. The only reason OSX or Windows seem so 'easy' to configure is that Apple or Microsoft wrote programs to provide "a lot of help". X doesn't have anywhere near the amount of automation built-into it. PicoGUI doen't auto-configure itself either; with a few exceptions, the only way you'll get PicoGUI to work is through X.

      The thing here is that X is just a graphics subsystem. It does not contain configuration utilities, or its own widget sets. Strip off the (many, many) shiny "computer administration for dummies" configuration programs, and you've got the ease-of-use of Linux. (Actually, linux is probably much easier to configure manually than GDI32 or Quartz would be.) It isn't a fault of X -- Nobody's getting paid $90k a year to write these config utilities. Font configuration problems? What?!? You mean you have to do it yourself!!! Oh no!!!

      Look - on some level, there will always be a need for people who understand how to configure GUI systems by hand, manually -- somebody has to know how to do that if they are to write a 'config for dummies' applet. Don't blame your refusal to learn on X. If you find the current system inadequate, then fix it yourself. Around the time you figure out how to make a spiffy auto-configure, you'll most likely have gotten past the need for such a utility, and won't be as motivated to 'fix' a system that was never really broken -- just misunderstood. (Of course, it helps that when people try to explain how confusing X is, and then try to straighten things out, usually end up spouting off incorrect information -- they're confused because they never knew the facts to begin with, and others take it as the truth, and the cycle repeats, only worse each time, until X has a terribly bad wrap.)

      Something smaller faster and more elegant And you compare X to GDI32 or Quartz Extreme? They aren't smaller, or faster... It's all in the graphics driver itself there -- not the GUI system. All of this eye candy people crave requires a great deal of resources -- Anti-Aliasing, Themes, gradients, pixmaps -- all of them take significant resources, and ever-increasing numbers of processor cycles to execute. Hell -- Microsoft's own 'theme management' for WinXP is several times slower & larger than many of the alternate themeing systems (such as StarDock's WindowBlinds) Quartz offloads everything that it can to the video card-- earlier releases (before 10.2) used the same 'primitive' drawing techniques that X uses, with similar performance.

      As far as elegance goes -- Elegant to use, or elegant to program? Win32 widgets are a nightmare to program. I've not had a chance to do OS X, but I understand they are elegant. And X widgets (at least QT and GTK) are quite elegant to program.

      As far as 'elegant looking' -- blame the writers of the applications.

      Most commercial apps have graphical design teams who specialize in GUI design placing the widgets. Linux apps have a programmer placing them in a way that seems logical to him/her, and attempts to match it as best as possible to various GUI standards (such as Apple's or KDE's).

      Standardization on the GUI is something that has met rather vehemant opposition -- look at the KDE-GNOME wars!!!

      But X itself is not the problem. X only provides the ability to have a keyboard, mouse, and graphics. Everything else is higher-level, and not a part of X.

      --
      -- Sometimes you have to turn the lights off in order to see.
    3. Re:Not much. But then again... by statichead · · Score: 1
      ...COULD standardize on a widget library and a window manager.

      As long as its the widget set I like and the window manager that I run, I'm OK with that;-)

      Why would you limit your own posibilities?

      Freakin X is not what you see on the bloody screen. It is not gnome, kde or any other gui.

      It allows programs to be gui and what they do with it is up to them.

      an example xinitrc- notice window manager commented out
      #exec wmaker
      /usr/local/bin/gmgaclock -l /root/mgaclock.410
      /usr/local/bin/wolfmp +set r_smp 1
      RTFM
    4. Re:Not much. But then again... by KiwiSurfer · · Score: 1
      X is a big dumb slow ram hog that's impossible to configure without a lot of help and with no consistant look and feel thanks to the proliferation of widget libraries. Something smaller faster and more elegant with a more consistant interface would go a long way towards making me switch from using Windows as my GUI of choice.

      I don't agree with that statement regarding configurating XFree86 because over the past few years configuration has improved quite a lot. I suggest you have a look at XFree86 4.xx now rather than just basing what you think of XFree86 on your experience in tje 3.xx days or older. Improvements includes:-

      • XFree86 now queries the monitor to see what it can do, simalar to how Windows 95 (and later) query the monitor to find out its maxium resolution, maximum colours and maximum refresh rates. All you have to do is select a colour depth and resolutions and XFree86 will automatically figure out what the monitor can handle and ingore the out the out-of-range values which the monitor can't handle.
      • Also, many video card drivers now automatically detects the type of video chip you have, the amount/type of memory and basically everything required for setting up the video card. In fact I only have 3 lines for the video card section (The Identifier of the Card; The Driver's name and an option to disable NVIDIA's logo at startup).

      It's really easy to setup XFree86 nowdays. Maybe I'm more used to XFree86's method of configuration but I think 4.xx's method was much better than it was in the 3.xx days. Everything's automatically deceted now. If I wanted to swap to a S3-based machine from the NVIDIA-based machine I'm on, I would only have to adjust 2 lines (change the Device line to the S3 driver and removing the NVIDIA-specific option that disables the NVIDIA logo). Pretty simple really. And a monitor, keyboard or mouse change wouldn't need any changes at all!

      In conclusion, in all but extereme cases setting up XFree86 is a breeze. It may take a while to get used to the way that XFree86 works, but it works quite well when you know how to use it correctly.

      - James

    5. Re:Not much. But then again... by FooBarWidget · · Score: 2

      "X is a big dumb slow ram hog that's impossible to configure without a lot of help"

      Funny, all I did was press "Next" while installing RedHat 7.2 and everything was automatically configured!

      "with no consistant look and feel thanks to the proliferation of widget libraries"

      *uche* Windows Media Player 7, ZoneAlarm, Norton AntiVirus, ApezBot, ICQ, McAfee *uche*

    6. Re:Not much. But then again... by drinkypoo · · Score: 2
      X is a big dumb slow ram hog that's impossible to configure without a lot of help and with no consistant look and feel thanks to the proliferation of widget libraries. Something smaller faster and more elegant with a more consistant interface would go a long way towards making me switch from using Windows as my GUI of choice.

      GDI has all the same problems you name. Windows just gives you more help in configuring it than Xconfigurator. GDI is a big dumb slow ram hog, and what makes it worse than X is that it blocks hard! X rarely slows down in the same way, where one choking app will screw up all the other windows (though as always if you choke the OS you get the same effect) but GDI is nowhere near as robust.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    7. Re:Not much. But then again... by n1ywb · · Score: 1

      X is a big dumb slow ram hog

      So is Windows' GDI32.exe. So is OS X's Quartz. If you want to believe either is a memory featherweight, I got a few investment ideas for you...

      I never said they were, but at least they're big fast ram hogs that are easy to configure and present a consistant interface. I realize that X has nothing to do with the actual graphic interface, but most people aren't informed well enough to make the differentiation between X and all the other parts like the window manager.

      --
      -73, de n1ywb
      www.n1ywb.com
    8. Re:Not much. But then again... by n1ywb · · Score: 1

      Touche

      --
      -73, de n1ywb
      www.n1ywb.com
  31. That's just a detail... by fireboy1919 · · Score: 2

    Eventually X will be able to change resolutions - it just a matter of time. There are some ways to do it even now without shutting down.

    Have you tried using dga modes?

    There are some other problems, however, that won't go away ever...

    --
    Mod me down and I will become more powerful than you can possibly imagine!
    1. Re:That's just a detail... by Anonymous Coward · · Score: 0

      Not be a troll, but Windows has had this capability for about 6 years now.

    2. Re:That's just a detail... by Anonymous Coward · · Score: 0

      Best .zig I have seen on slashdot in a while.

  32. no, you shouldn't by g4dget · · Score: 2
    Cross-platform GUI wrappers impose enormous overhead because they don't take full advantage of the features available in X11. Toolkits like Gtk+, Qt, or wxWindows duplicate a lot of the functionality already provided by the X11 server, and they try to emulate behavior that would be more naturally provided differently under X11. What makes things worse is that those cross-platform toolkits are usually optimized for Windows and ported to X11 as an afterthought. The enormous size and performance problems of systems like Gnome, KDE, and Java's Swing are due to this.

    If you can live with that overhead, fine, use cross-platform toolkits. I use wxWindows myself and think it's a pretty nice toolkit. But you have no basis on which to complain about X11 performance or functionality if you hamstring it by using cross-platform GUI wrappers with it constantly.

    1. Re:no, you shouldn't by dvdeug · · Score: 2
      Gtk+ [...] duplicate a lot of the functionality already provided by the X11 server, and they try to emulate behavior that would be more naturally provided differently under X11. What makes things worse is that those cross-platform toolkits are usually optimized for Windows and ported to X11 as an afterthought.

      GTK+ was written natively for X11, and ported to Windows as an afterthought. Any redundant or emulated functionality is probably because the X11 functionality is unportable between X implementations, or because it's insufficent.
    2. Re:no, you shouldn't by g4dget · · Score: 2

      Indeed, Gtk+ was originally developed for X11 (I didn't claim otherwise, if you read carefully). However, Gtk+ ignores many of the conventions for X11 toolkits and fails to take full advantage of the server-side facilities of X11. Whether that's deliberate or merely means that the original designers weren't that familiar with X11, I don't know.

      The point remains: Gtk+, like Qt, and others, is not the best way to get very small and efficient GUI applications, although it has other advantages.

    3. Re:no, you shouldn't by g4dget · · Score: 2

      Any redundant or emulated functionality is probably because the X11 functionality is unportable between X implementations,

      There is no other windowing environment that is as well standardized and portable as X11.

      or because it's insufficent.


      Insufficient for what? X11 is a full-featured windowing environment. It has everything you need to put bits, graphics, and text on the screen and interact with it, efficiently and easily. Of course, you can write fast, high-end toolkits for it. They may not look exactly like what a Windows programmer or user might expect, but that's a different issue.

    4. Re:no, you shouldn't by dvdeug · · Score: 2

      There is no other windowing environment that is as well standardized and portable as X11.

      Which doesn't magically make the XRender extension or the XUtf8* functions appear in every X11 server in the world.

      Insufficient for what?

      For one thing, I understand the X11 text rendering functions were written by someone who didn't fully understand the problems of writing non-English text to the screen. They work great for pasting glyphs left to right; that is, for English and German and Japanese. But they have no provision for handling combining characters (needed for Thai), or right to left text (needed for Hebrew), or context-dependent glyphs (needed for Hindi). (Arabic needs all three.) Since GTK+ and Qt plan on supporting those languages, they must write their own text displaying functions.

    5. Re:no, you shouldn't by g4dget · · Score: 2
      Which doesn't magically make the XRender extension or the XUtf8* functions appear in every X11 server in the world.

      Yes, so what? Windows 3.1 also doesn't support many Windows XP functions.

      They work great for pasting glyphs left to right; that is, for English and German and Japanese.

      That's all they were intended to do: satisfy the needs of what was probably 99% of the users at the time.

      But they have no provision for handling combining characters (needed for Thai), or right to left text (needed for Hebrew), or context-dependent glyphs (needed for Hindi). (Arabic needs all three.)

      The new X11 text handling functions do.

      Since GTK+ and Qt plan on supporting those languages, they must write their own text displaying functions.

      X11 is being developed collaboratively. If there is functionality that's missing from the server, different toolkit authors shouldn't replicate it, they should create an extension. Of course, hell will freeze over before the current crop of toolkit authors can agree on anything.

    6. Re:no, you shouldn't by dvdeug · · Score: 2

      Windows 3.1 also doesn't support many Windows XP functions.

      But people don't seriously write for Windows 3.1. They do seriously write for non-XFree86 servers. Furthermore, the fact that Windows programmers have to work around the bugs and missing features of earlier versions does not change the fact that so do X programmers.

      That's all they were intended to do: satisfy the needs of what was probably 99% of the users at the time.

      There's no way for the international text functions to concievable handle the native languages of 20% of Earth's population. The APIs alone don't allow it. That's seriously brain-damaged. To blame the toolkit authors for working around the problem is wrong.

      The new X11 text handling functions do.

      Ah, good. It would have been nice if they had been added before every toolkit got around to solving the problem, or if they were in present in something besides the latest and greatest XFree86 version.

      If there is functionality that's missing from the server, different toolkit authors shouldn't replicate it, they should create an extension.

      You cannot simply tell everyone who wants to run KDE 3 or GNOME 2 to upgrade their system to the latest version of XFree86.

    7. Re:no, you shouldn't by g4dget · · Score: 2
      There's no way for the international text functions to concievable handle the native languages of 20% of Earth's population. The APIs alone don't allow it. That's seriously brain-damaged. To blame the toolkit authors for working around the problem is wrong.

      The X11 text handling was designed in the early 1980's--even if the designers had wanted to, there simply weren't any good standards around.

      And, yes, the toolkit authors should have worked on the window system itself, not inefficient, kludgy library-based workarounds.

      You cannot simply tell everyone who wants to run KDE 3 or GNOME 2 to upgrade their system to the latest version of XFree86

      They don't have to upgrade their X server (whatever it is), they just have to add a server-side extension as a dynamically loadable module. And that's not to much to ask if people go through all the trouble of upgrading huge, complex software systems like KDE or Gnome.

    8. Re:no, you shouldn't by byran+lei · · Score: 0

      >You cannot simply tell everyone who wants to run KDE 3 or GNOME 2 to
      >upgrade their system to the latest version of XFree86.
      >
      >
      Sure you can moron. The package managers for Liux and BSD make such upgrades quite easy and painless.

    9. Re:no, you shouldn't by dvdeug · · Score: 2

      The X11 text handling was designed in the early 1980's--even if the designers had wanted to, there simply weren't any good standards around.

      If you're blazing new ground, get all the information you can and pay attention to where you're going. Arabic and Hindi and Hebrew have been written the way they have for at least a thousand years. They could have written the functions in such a way that could have been extended to handle those languages, even if they didn't right from the start.

      they just have to add a server-side extension as a dynamically loadable module.

      Which, of course, every X server supports, and does so in a simple consistent manner.

      if people go through all the trouble of upgrading huge, complex software systems like KDE or Gnome.

      A sysadmin can download a few 10 MB tarballs, start them compiling, have lunch, install it in /usr/local/luser/linux/gnome and forget about it. Where as adding an extension to the X server is meddling with something that could break non-Gnome and non-KDE usage of X. Personally, I'll install random beta debs of KDE and Gnome, but I won't go messing around with my X server; that's deep magic, and it works, so I don't want to mess with it. I would expect that it would be even worse for a newbie.

    10. Re:no, you shouldn't by g4dget · · Score: 2
      If you're blazing new ground, get all the information you can and pay attention to where you're going.

      The X11 designers were "blazing" enough new ground as it is, and they didn't have a cadre of foreign language experts available. Give them a break. Nobody else bothered with this until many years later either.

      Where as adding an extension to the X server is meddling with something that could break non-Gnome and non-KDE usage of X

      X11 applications already work against servers from many vendors, and against many different versions, often concurrently. You can't seriously think that adding an optional extension is going to break anything.

      A sysadmin can download a few 10 MB tarballs, start them compiling, have lunch, install it in /usr/local/luser/linux/gnome and forget about it.

      I have had many problems upgrading Gnome/Gtk+, because of changes in shared libraries. I have had no problems at all upgrading through many different versions of X11 servers.

  33. I like what I see. by Guspaz · · Score: 2

    I like what I see (I don't care if it's a blatant rip of OSX, it looks good either way.)

    Looks like there are a few graphical problems to fix however, like scrollbars (The bar part of it seems to overlap the arrow buttons, shouldn't happen), and the square behind buttons being white.

    1. Re:I like what I see. by Anonymous Coward · · Score: 0

      I don't care if it's a blatant rip of OSX

      actually that is just a theme. Personally I prefer fluidity.

    2. Re:I like what I see. by micahjd · · Score: 2
      What you're talking about isn't picogui itself, it's just the PicoAqua theme. If you don't like it, read the docs on picogui's theme language and fix it. PicoGUI's architecture is nothing like OS X.

      --
      -- 2 + 2 = 5, for very large values of 2
    3. Re:I like what I see. by the+gnat · · Score: 2

      Yeah, but now that it's been featured on Slashdot I give you guys a week, max, before you get C&D'd by Apple's lawyers. Do free software developers really need to repeat this mistake every few months?

      If you've really come up with something innovative and technically superior- which I'm not disputing- why copy the look and feel of an established interface?

    4. Re:I like what I see. by micahjd · · Score: 2
      If you still haven't noticed, the Aqua theme is just one of many themes available for picogui.

      Also, the open source project the images for PicoAqua were taken from (a Gtk theme) seems to be just fine.

      --
      -- 2 + 2 = 5, for very large values of 2
    5. Re:I like what I see. by Minna+Kirai · · Score: 2

      Still, you can see from these comments that the primary picogui.org webpage gives people an impression of Mac-likeness. You might better advertise the project if you have more than one screenshot (with different themes) linked from the front page.

      Apparently, people come in, look at the "latest screenshot", and assume its theme applies to everything.

    6. Re:I like what I see. by micahjd · · Score: 2
      The web site could use an overhaul, and a better screenshot categorization system. (maybe show the latest each from a couple categories on the front page?) But, we haven't had any volunteers to do this, and the web site isn't a high priority for me.

      --
      -- 2 + 2 = 5, for very large values of 2
    7. Re:I like what I see. by the+gnat · · Score: 2

      I had noticed. My point stands: why come up with a new UI, then slap a skin on it that looks exactly like an often-copied commercial OS? I realize this has nothing to do with functionality, but you're not making that point very well by posting all those Aqua-themed images on your webpage.

  34. PicoGUI by Anonymous Coward · · Score: 0

    PicoGUI,,, blow new life into ANSI graphics and a revival of TheDRAW!


    ---
    Yehar, eat my dust, buster.

    1. Re:PicoGUI by n1ywb · · Score: 1

      Yes! And get rid of this stupid web based message board crap and go back to the good old BBS days.

      --
      -73, de n1ywb
      www.n1ywb.com
  35. why? by ender's_shadow · · Score: 1

    it would probably take reproducing a lot of X functionality. wouldn't this produce a program like Mozilla, that started out small but got large once all the features everyone wanted were implemented?

    Plus, yes, you would have to port everything, unless you built a compatibility layer into your gui. but building this layer would make your gui not-so-pico, and you'd have to code back in a lot of X stuff.

    I am not a coder (IANAC). Maybe that's why I don't see the point ...

  36. This is crap! by Anonymous Coward · · Score: 0

    who needs this shit? i use x until mozilla supports vesa modes.. then i'll switch completely to mozilla and show fingers to all those x and gui and hui idiots..

    there is only one gui API that will stay for all times: HTML

  37. Gay Porno Site by Anonymous Coward · · Score: 0

    Where would the web be without immature homophobes.

    PhysicsScholar is just so funny! And obviously smart!

  38. 'X backward compatibility' by aussersterne · · Score: 3, Insightful

    X is a well-designed system which serves everyone's needs, works now, and is compatible across the UNIX world. It would take a lot to displace it.

    More to the point, in discussions like this everyone always says... "of course it would have to be backward compatible with X..." But these people fail to understand that the only way to be backward compatible with X is to implement the X protocol stream. And once you do that, ta-da you're an X server once again, just like XFree86.

    Of course, if your lovely new GUI doesn't reimplement the X protocol and the client/server model, you render useless decades of program code, from ancient embedded applications all the way to current UNIX ports of OpenOffice and Mozilla, from astronomical observatories to cash registers.

    And of course, then you will lose one of the biggest benefits of X: the X protocol stream and the client/server model. D'oh!

    X is not going away.

    --
    STOP . AMERICA . NOW
    1. Re:'X backward compatibility' by Anonymous Coward · · Score: 0

      Maybe something should have been done before OpenOffice and Mozilla. With two major applications like those, it provides at least *some* incentive to users to switch. It would probably inspire other developers to port their applications as well.

      But now that that chance is gone, look ahead to the future. What major applications are being planned or are in the early stages of development? Could they benefit from using a new GUI? If GIMP was being rewritten or something, it could surely benefit from better font support.

      My question is this: there's so much cross-developing going on for different operating systems, so why is it so difficult to port it to other GUIs? Is this what GTK and QT are for? If so, there seems to be a serious fundamental flaw in the way it was all implemented.

    2. Re:'X backward compatibility' by cgleba · · Score: 2

      The guys over at DirectFB seem to have it down:

      They ported gtk (gdk) directly to DirectFB do that you can run all gnome apps natively on their new graphical system *as well as* an X server so that you can run all the backwards-compatible stuff.

      Did I also mention that DirectFB supports *real* transparency natively?

      Check it out: www.directfb.org

    3. Re:'X backward compatibility' by Minna+Kirai · · Score: 2

      to implement the X protocol stream. And once you do that, ta-da you're an X server once again, just like XFree86.

      How do the Object-Oriented guys say it? Containing or implementing X is not the same as being X. Microsoft's Windows GDI and Apple's Aqua are "backwards compatible" with X11 in the sense that you can install and run an XServer on top of them. But they're not "an X server again".

      current UNIX ports of OpenOffice and Mozilla
      Both OpenOffice and Mozilla run on non-X11 GUIs, I think. So some of the work of migrating them to another GUI has already been done. Likewise both the Gtk and Qt toolkits can run without X11. This point isn't insurmountable. (Although, to take proper advantage of newer GUI abstractions you'd have to re-write a lot of code anyway, because the way a user interacts with the application is going to be different).

      one of the biggest benefits of X: the X protocol stream and the client/server model. D'oh!

      Its a benefit, and also a hinderance. Many people are not served by this client server model. On one side are people who claim that "I'm sitting right at the computer, why should there be a network-protocol abstraction getting in the way of raw performance?". On the other side are those who want network transparency but find that X is too bandwidth intensive to be usable.

      Ever try running X11 programs across the modern internet? It's very painful (unless you have some amazingly fat fast pipe). A simple "ls" in a remotely displayed xterm seems to take forever. But yet, gorgeous online games like Counterstrike and Warcraft are fast and snappy. Of course this is because the games are communicating at a much higher level than the X drawing primitives do. With newer, higher-level GUI APIs, more applications might be able to get this kind of benefit. It all depends on where in the application you define the partition between stuff running on the client and the server. PicoGui tries to run more of the GUI parts on the client-side, reducing the bandwidth needed to keep the program going.

      (Related historical half-truth: the Java language was originally meant to be platform independent so that the partition between the client/server parts of a program could be determined at runtime, to best match the computing and network hardware on both sides of the link.)

      X is not going away.

      Not for a long time. It is absolutely true that the biggest advantage to staying with X11 is inertial- the big mass of existing applications. But at some point one will always need to break with the past. Today we can plan where to go, even if the trip isn't practical yet.

    4. Re:'X backward compatibility' by evilviper · · Score: 2

      You're right to a point... Some project would have to completely re-impliment X. What's wrong with that?

      Few people have serious complaints about the X protocol itself. The vast majority deal with the XFree86 implimentation (and I do know what it's like to struge with it). So why not just have someone write something new that impliments the X protocol? Hey, they couldn't make it any worse!

      It doesn't have to be a complete match. Few would complain if compatibility with a few apps is lost for the sake of a large improvement in performance, ease of use, et al.

      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
    5. Re:'X backward compatibility' by Elladan · · Score: 2

      Ever try running X11 programs across the modern internet? It's very painful (unless you have some amazingly fat fast pipe). A simple "ls" in a remotely displayed xterm seems to take forever. But yet, gorgeous online games like Counterstrike and Warcraft are fast and snappy. Of course this is because the games are communicating at a much higher level than the X drawing primitives do. With newer, higher-level GUI APIs, more applications might be able to get this kind of benefit. It all depends on where in the application you define the partition between stuff running on the client and the server. PicoGui tries to run more of the GUI parts on the client-side, reducing the bandwidth needed to keep the program going.

      I run X11 programs over the internet all the time. It works fine, and is perfectly usable. Just use ssh -C -X, and it compresses the protocol stream. Or, you can use one of the protocol compressors. This is even somewhat usable over a modem, though I don't use those any more.

      Ironically enough, there is a remote connection system that's even faster and snappier, though: TightVNC. With 8-bit mode and compression, it's completely usable and has almost no discernible latency over my cable modem line. Why is this ironic, you ask? It's ironic because it's exactly the opposite of your point: It's even *lower level* than X11, since it takes bitmap snapshots of the display and sends those! X11 at least has the good sense to send high level drawing primitives like rectangles!

      What this goes to show is, one size does not fit all. One solution is not best in all situations.

      Another useful example of this principle is when you consider moving applications between displays (or detaching them completely). This is a very nice thing to do, and is very easy with VNC, since no state is stored in the client. It's much less easy to do in X11, since you end up needing to use a quite complex protocol adaptor which actually is a whole server in itself to accomplish the same thing (since it has to remember all the state). In an even higher level system like picogui, this will be even harder still.

      X11 is a good system and works fine. There just isn't a compelling reason to dump it. A much better idea might be to invest in some cleanup efforts in X11 itself. For instance, the protocol is rather old and is becoming somewhat more crufty with time. Perhaps it can be improved and cleaned up with some careful thinking.

      On the other hand, the central point that was completely missed (as usual) in this /. discussion is that this doesn't mean picogui is bad. One size does not fit all - meaning, X11 may actually not be the best solution on your palm pilot!

    6. Re:'X backward compatibility' by Anonymous Coward · · Score: 0

      It's even *lower level* than X11, since it takes bitmap snapshots of the display and sends those!

      Most newer remoting systems seem to work this way - Citrix/WTS, Sun SunRay, etc. Bandwidth usage is generally much better than X11.

      X11 at least has the good sense to send high level drawing primitives like rectangles!

      OK, that might be a good choice if a button is drawn from a couple rectangles. But what if a button is a translucent pulsating gumdrop? The bitmap might actually be smaller than the drawing commands required to paint it.

    7. Re:'X backward compatibility' by Minna+Kirai · · Score: 2

      even faster and snappier, though: TightVNC. With 8-bit mode and compression, it's completely usable and has almost no discernible latency over my cable modem line.

      Funny, over my 10mbps ethernet line I use X11 with no apparent latency. But to access MS Windows machines on the same network I've tried VNC (in 3 formats- normal, Tight, and some other name), and it wasn't ever usable. This may be application-specific (Microsoft Word was hopeless)

      Let me point out a simple higher-level protocol that's much faster than X11 or VNC: rsh/ssh (or telnet). I'm sure you know that if you're going to run console-based programs, creating a local console and ssh-ing to the host computer will be terribly faster and more responsive than transmitting a remote xterm over ssh -X. That kind of performance advantage is what a well-designed higher-level graphics protocol could eventually give us.

      In an even higher level system like picogui, this will be even harder still.

      Totally wrong. The only reason detachment was hard for X is because the designers didn't plan for it. In a higher level system, you could not only detach more easily, but with less wasting of resources. There'd be no need to maintain bitmapped images of all your programs when they're not in use- the GUI system can regenerate those when the user next becomes active.

      In general, the higher-level an API is, the easier it will be for new features (like detachment or network transparency) to be slipped into the system without breaking existing users. This is getting towards one of the benefits of the "OSes are irrelevant" story, which was similarly hijacked by an inflammatory article-title.

      The kind of network-transparency I'd like to see someday includes client-side knowledge of what a pressable-button is and what a scrollbar does. If the client knows that movement of a scrollbar is bound towards the Y offset of a picture in a frame, then as long as the picture has already been buffered, up-down scrolling can be a completely client-side operation. The only data going back to the server is a 16-bit new Y coordinate, and nothing has to come from it at all. (Of course you can get into some complicated management of just how long the client should maintain caches of offscreen images, but the high-level protocl designers can worry about that).

      Imagine I'm using a higher-level protocol to run a program on a remote machine and scroll down a long document. The client is keeping a cache of the graphical image of part of the document- not just the section I'm currently viewing, but what I've recently seen, and what I'm about to see. The system could assume that someone looking at page 4 will soon look at page 5, and pre-buffer it so that when I do hit the scrollbar, redraw is instantaneous. No lower-level protocol will ever be able to make that kind of optimization.

      A much better idea might be to invest in some cleanup efforts in X11 itself. For instance, the protocol is rather old and is becoming somewhat more crufty with time.

      Once you start doing that though, you've no longer got "X11". Eliminate any part of the protocol, and the backwards compatibility that is X11's biggest advantage is gone. You'd be essentially creating a new protocol by reusing X's ideas and code. That would be an even harder sell to the app developer community, because in the end it varies so little from existing X.

    8. Re:'X backward compatibility' by Elladan · · Score: 2

      Totally wrong. The only reason detachment was hard for X is because the designers didn't plan for it. In a higher level system, you could not only detach more easily, but with less wasting of resources. There'd be no need to maintain bitmapped images of all your programs when they're not in use- the GUI system can regenerate those when the user next becomes active.

      The reason it'll be more difficult is because more state is being held on the server side, which will have to be pushed back to the clients (which were supposed to be super-simple) and then restored to the new server somehow. Building it into the protocol is of course possible, but that will inherently break the simplicity requirements of the design.

      Consider. Say I have an application that opens an edit widget, and the user types in part of a document, with particular formatting, etc. Under the "very high level" approach, the server will just pop up an edit widget here and everything will happen on the server side. At particular points, the server will synchronize with the client, say when the user hits a special button which does something useful. Many parts of the display need never be sent back to the client under this approach, such as the entirety of the internal state of the widget - that was the point of the design, after all, in that internal drawing state of the widgets doesn't go over the wire.

      Now, consider this with the arbitrary disconnect requirement. The wire may be cut at any time, and the client side app is expected to have enough data to rebuild its UI on a new server in exactly the same way. This is an inherent limitation, because it means that all of the internal state changes of every server widget needs to be transmitted back to the client immediately, and in addition, all the server-side widgets have to be stateless (they have to support reconstruction at any point). Suddenly, your protocol is a whole lot more chatty.

      This also means that the clients are much more complex. They can't be elegantly simple any more, because they have to replicate the entire widget state from the server at all times. You effectively end up with both ends running a copy of the widget set, which of course, means that you can't dramatically re-theme them on the server, because that requires a protocol change. Ouch!

      The alternative, of course, is to do it like X11, and run a special proxy server on the client side, which stores all the state locally and knows how to talk to a remote server to reconstruct it. This will be quite involved, especially if the protocol doesn't support completely stateless widgets - it might have to run through some virtual user operations on a widget just to restore its state. This looks like xmove, of course, only even more complex.

      Of course, if you do that, why even bother? You could get the same benefits (if any) by just making a protocol extension to X11 for GTK, which is only implemented inside of xmove. GTK apps would detect a special X server, describe their GUI using the new method, and then the special server and special clients could communicate through a special, higher level protocol. Non-gtk apps could go through standard X calls, or a bitmap scheme like vnc.

      Once you start doing that though, you've no longer got "X11". Eliminate any part of the protocol, and the backwards compatibility that is X11's biggest advantage is gone. You'd be essentially creating a new protocol by reusing X's ideas and code. That would be an even harder sell to the app developer community, because in the end it varies so little from existing X.

      The migration difficulty in developing a new version of the X11 protocol (X11R7?) and updating all the apps to not use the deprecated features would be far less than developing a new system from scratch. If done carefully, deprecated features would be available through a module during the migration period. At the same time, new features which are available through extensions would simply be merged back as part of the main protocol. This sort of thing takes a while, but it could be done and would be far less painful.

      Of course, whether it's worth doing is another matter. Probably not, because X works fine for now. But it's a more viable course to take than replacing X from scratch.

    9. Re:'X backward compatibility' by Minna+Kirai · · Score: 2

      That post was difficult to read because it uses the X11 definitions of "server" and "client", which are backwards from the usages in VNC, http, UT, and every other client/server GUI framework. That's the reverse of what grandparent had used, but I'll do the X11 defintions below. (Or prehaps viewer/backend would be a more obvious pair of words)

      Under the "very high level" approach, the server will just pop up an edit widget here and everything will happen on the server side.

      That's just fine.

      Now, consider this with the arbitrary disconnect requirement. The wire may be cut at any time,

      Where did "arbitrary disconnect" come from? The word I used was "detach", which is a subset of arb-discon. I never implied that a user should be able to just yank out her phone line at any point. To "detach" can require an orderly shut down of the connection (initiated on either side).

      Restricting your protocol design to the assumption that the TCP connection can be broken at any time is a mistake, because in normal use such a failure will be rather rare. "Optimize for the common case". Most connections will be terminated by a proper shutdown of the viewer. Of the fraction of connections that break by other means, most will have been after a decent period of user inactivity. Only a surprise hardware failure will cause this kind of instant disconnection.

      There's no need to resynchronize after every single edit on the viewer. As you've said, the penalties would be enormous. Waiting 10-30 seconds will be good enough, and it won't break any assumptions users have with operating computers. People today fully accept that if their hardware fails, the editing they've done since the last explicit "save" command will be gone. (If they can get back a portion of the modifications- suitably flagged as "recovered auto-save data"- then they see it as a bonus)

      Forbidding unannounced connection-breakage is a small price to pay for maintaining some of that "elegant simplicity".

    10. Re:'X backward compatibility' by Minna+Kirai · · Score: 2

      s/subset/superset
      (arbitrary disconnection is just one way to detach)

    11. Re:'X backward compatibility' by spitzak · · Score: 3, Interesting
      I think you will find a lot more people complaining about the X protocol than about XFree86.

      I do think what is needed is a new complete rewrite of the Xlib/Xprotocol layer to be modern. I do not like the fact that they keep adding calls or user-level libraries to make up for X's lame graphics capabilities. A clean lower level would be much easier to understand and debug.

      The existing X interface can be emulated atop it. Most people would be happy with just an emulation Xlib that talks to the server by translating the old calls to the new ones. It does not have to be accurate (for instance it could tell the program 32-bit TrueColor no matter what the hardware does, and I'm sure the fonts will be named all different and be UTF-8 only, and it will not run any existing window managers. But this would allow you to run your old programs on the new system.

      It may also be necessary to make an "XServer" for remote programs to talk to in X-protocol. This could be an independent program that translates the protocol to the new system. Without this you could not run programs from other machines that think they are running old X. This is not so important however.

      I do not think a replacement for X will be successful without an Xlib emulator. This does not really preclude any design ideas. Even people who want widgets in the server (an idea I don't like, but there are arguments for it) will certainly provide the ability to create a blank window-sized "widget" and for a program to detect where the mouse is clicked and draw arbitrary graphics. X programs can use this for emulation. Yea, it won't look like the spiffy new widgets but at least the old programs work, which is really all that is needed.

      All these systems have to realize how important Xlib emulation is needed and must work on it immidiately so that it is available the first day their system is available for use. Otherwise they will fail.

    12. Re:'X backward compatibility' by evilviper · · Score: 2
      I think you will find a lot more people complaining about the X protocol than about XFree86.

      You've wasted your time with everything but the above... Please elaborate. I would like to hear some of the complaints about the X protocol, and not the implimentation.
      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
    13. Re:'X backward compatibility' by spitzak · · Score: 2

      1. If you want to draw in a particular color you have to know the exact pixel layout of the display. And if it is not TrueColor you have to do a number of calls to allocate colors in a colormap and you cannot do this efficiently without making a copy of the colormap in your own memory that you continuously update to match the system. Any request for a new color in a colormapped system requires a round-trip to the server.

      2. If you have an rgb image in memory it requires several pages of code to display it on an arbitrary X display. You need to encode it into the display format, and you have to do error diffusion for reasonable display on an 8-bit screen. If you want to use shared memory to speed it up you have to write 2 copies of your code with subtle differences so you can work when the shm extension is missing (any intelligent design would have made the shm work right away for the old calls).

      3. It is impossible to locate a font that the user wants without enumerating every single one of them and doing your own comparison to find the closest match. Despite the fact that the font engines can now do arbitrary scaling, the interface makes it nearly impossible to access it.

      4. Xft, like shm, requires you to use entirely new calls to draw text. Sure the new calls might be better, but they should have made the old calls work as well. Embarrasingly enough, MicroSoft made *their* old non-antialiased calls work. This is a good sign that the internals are a mess.

      5. All calls require odd combinations of display, screen, root window, colormap, visual, visualid, and gc structures to work. An intelligent design would only take a "gc" and everything else would be set in it. An even better design would be like OpenGL where you get rid of the "context" argument entirely, this is why OpenGL code ports between toolkits and even to Windows, while no toolkit allows a programmer to draw using raw Xlib.

      6. There are many many other things but I am tired of typing now.

  39. Compelling reasons for me... by tony1c · · Score: 2, Interesting

    Some compelling reasons for me to use a new GUI server/api would be: 1) Easy to use, highly accessible interface. Something easily accessible to Java devs and (don't shoot me) Web Service developers. 2) Emphasis on vector/3d/procedural graphics vs. raster/bitmap graphics. 3) Something with a more context-aware paradigm (desktops and start menus are becoming too monolithic... how about some logical use-based partitioning). 4) Strong emphasis on platform independence. I'd really like to see a better (mainstream) alternative to Web GUIs for multiplatform UI development.

    1. Re:Compelling reasons for me... by Anonymous Coward · · Score: 0

      I completely agree with you! In fact i've recently started on a project that does just that; Its still in its early stages (only a renderer still) and won't post the URL here yet unless it goes public (and to prevent /.'ing).
      All the focus on yet more weird raster/bitmap oriented stuff; *sigh* .... it sometimes looks nice but can easily become an overkill and distract/prevent the user of the work he wanted to do. Even the nicest sounds/graphics get boring.... so much work just done for that initial few days you like it.
      My goal is also to try generating new UI ideas instead of `the desktop' and NOT just trying to build yet another clone of M$ windows. I like simplicity too i.e. I normally use fvwm1 with only the pager switched on and i like that :-D but its not perfect either.

      Be original, be inventive, go for the good/best and dont just copy stuff !!

      Cheers,
      Reinoud

  40. What PicoGUI is and isn't by micahjd · · Score: 5, Interesting
    Since I'm the creator of PicoGUI, I thought I should elaborate a bit

    PicoGUI is designed with a lot of goals in mind, but for me the largest goal is scalability. I'd like to be able to run one app, with minimal code changes if any, on a PDA, desktop, cell phone, phone, toaster :)

    There are also a lot of architectural decisions PicoGUI makes that lends itself to easy and consistent solutions for common problems other GUIs have to deal with. PicoGUI has a theme system that manages everything from drawing the widgets to laying out entire application UIs, all with surprisingly little code. It has a video driver architecture that handles raw framebuffers, accelerator cards, and even esoteric devices like ncurses rendering or text-mode LCDs. PicoGUI's widgets are designed with more of a UNIX philosophy- small but powerful widgets that can be combined in nifty ways.

    I didn't originally intend PicoGUI to be a primary GUI for desktop computers. I started it for a PDA project I was working on. But, given how its architecture lends itself well to scalability, it could soon be a good GUI for desktops. Recently PicoGUI gained the ability to run in a "rootless" mode where it acts more like a widget toolkit than a complete GUI. Once PicoGUI has drivers for DirectFB or some other acceleration backend, and a way to run X apps in an emulation mode, it should be able to completely replace X.

    In my opinion, the biggest stumbling block to replacing X on the desktop is having accelerated video drivers that work on other GUIs. I've talked to X developers about separating the video drivers into a layer that can be used directly by projects like PicoGUI, GGI, and Fresco, but they had no interest. From what I've seen of X developers, they want all the world to run in X.

    --
    -- 2 + 2 = 5, for very large values of 2
    1. Re:What PicoGUI is and isn't by Screaming+Lunatic · · Score: 2
      Since I'm the creator of PicoGUI, I thought I should elaborate a bit

      Any chance Qt or GTK or motif will be ported to picoGUI?

    2. Re:What PicoGUI is and isn't by micahjd · · Score: 5, Informative
      We can, and probably will, run Qt and GTK apps on top of PicoGUI through some sort of emulation layer at the framebuffer level. But that would only be an emulation layer. It would give you none of the benefits that PicoGUI is designed to provide.

      It is almost certainly not worth it to try porting Gtk, Qt, or anything else at the widget level, as PicoGUI's widgets are designed differently than most GUIs' widgets.

      --
      -- 2 + 2 = 5, for very large values of 2
    3. Re:What PicoGUI is and isn't by Anonymous Coward · · Score: 0

      Any chance Qt or GTK or motif will be ported to picoGUI?

      I wouldn't count on it. But Qt and GTK are probably flexible enough to be doable. What about, why don't you try? ;-)

    4. Re:What PicoGUI is and isn't by Anonymous Coward · · Score: 0

      From what I've seen of X developers, they want all the world to run in X.

      Just like you want the world to run in PicoGUI.

    5. Re:What PicoGUI is and isn't by tuxracer · · Score: 1

      He wants users to have a choice. I'm sure he'd like to see the world running PicoGUI, but as of now he hasen't shown a wanting of hindering users' choice in order to accomplish that goal, as, according to him, the X developers have done.

    6. Re:What PicoGUI is and isn't by bockman · · Score: 2
      Since picoGUI protocol is almost at toolkit level, what do you think of writing a dynamic library that substitutes, say, libgtk.so and that translates GTK GUI calls into messages to the server? In this way, gtk+ applications could run transparently with picoGUI and also enjoy picoGUI benefits.

      I know, it is not so easy, but what would be the stumble points?

      --
      Ciao

      ----

      FB

    7. Re:What PicoGUI is and isn't by micahjd · · Score: 2
      What you're suggesting would be like making a library for running qt apps on gtk, or Motif apps in Swing. It might be possible, but it will definitely be hard and a lot will be lost in the translation. This will be particularly hard in PicoGUI because of how it handles widget layout.

      --
      -- 2 + 2 = 5, for very large values of 2
    8. Re:What PicoGUI is and isn't by JanneM · · Score: 1

      In my opinion, the biggest stumbling block to replacing X on the desktop is having accelerated video drivers that work on other GUIs. I've talked to X developers about separating the video drivers into a layer that can be used directly by projects like PicoGUI, GGI, and Fresco, but they had no interest. From what I've seen of X developers, they want all the world to run in X.

      Well, that would be a pretty natural attitude for any project developer. :)

      XF86 does have a platform-agnostic module loader that (as far as I know) is used for drivers as well - why not implement that code and load the drivers the same way X does?

      --
      Trust the Computer. The Computer is your friend.
    9. Re:What PicoGUI is and isn't by Chainsaw · · Score: 2
      I've taken a quick look at PicoGUI for a project at work, and it is a great piece of code. Hats off.

      I've talked to X developers about separating the video drivers into a layer that can be used directly by projects like PicoGUI, GGI, and Fresco, but they had no interest.

      Fortunately, this is open-source. With the help of the community, the X code could be ripped out to a separate project to create this. I'm not familiar with the level of pain that you have to live through in order to achieve this - or how much the X people will have us all for making a good, modular solution. Do you have an estimate?

      --
      War is one of the most horrible things a human can be exposed to. And one of the worlds largest industries.
    10. Re:What PicoGUI is and isn't by bockman · · Score: 2
      qu apps in gtk was almost done, as I recall (the armony project attempted that).
      I agree that the widget layout would be a big problem, especially with toolkits that let the applications impose their whish in this matter. But gtk+ does not, so it could be less of a problem.

      Probably a complete replacement could never be done, (compatibility layers are never-ending projects, as wine teach us) but maybe some applications could be 'ported' this way.

      --
      Ciao

      ----

      FB

    11. Re:What PicoGUI is and isn't by micahjd · · Score: 2
      XF86 does have a platform-agnostic module loader that (as far as I know) is used for drivers as well - why not implement that code and load the drivers the same way X does?

      Eventually I'd like to write something like this as a library that can be used by multiple projects. It's not nearly as easy as you make it sound though, mainly because the drivers require a lot of internal structures and functions from XFree86 itself.

      --
      -- 2 + 2 = 5, for very large values of 2
  41. not quite by Ender+Ryan · · Score: 2
    I entirely agree with your criticism of KDE/Gnome, both continue to add features and needless bloat, introduce show stopping bugs, etc. I personally do not like the direction they are taking.

    But, you are entirely wrong about X. X is pretty good. Most complaints about X are being addressed, and relatively quickly I might add. With Xft2/fontconfig, font rendering is now extremely good, easier/quicker to add fonts than in windows. Desktop resizing is being worked on, and I believe changing color depth on the fly is as well(I could be mistaken... I don't think most people consider that to be too important these days anyway).

    As for Gnome/KDE, they are beginning to work together more closely to implement some standards for menus, icon schemes, etc. Also, once some of these things are worked out, Gnome development should increase quite a bit.

    Things are actually looking pretty good at this point, many long-time complaints have very recently been addressed, and very well at that.

    FWIW...

    --
    Sticking feathers up your butt does not make you a chicken - Tyler Durden
  42. x is a generalization by dollargonzo · · Score: 2

    many of problems brought up by many comments above are of the sort "for desktop gui use, X is bad." they like the screenshots of picogui? it seems to offer transparency. that is all nice, but does transparency REALLY add any functionality? not really, just eye candy. X was meant to be a generalization of all possible usage scenarios. it DOES sacrifice blazing speed for network transparency, etc. any toolkit that is better in any one thing would need to be worse in another. and it isn't, it will probably be JUST as slow.

    --
    BSD is for people who love UNIX. Linux is for those who hate Microsoft.
    1. Re:x is a generalization by Forkenhoppen · · Score: 2
      Window transparency, maybe not, but how about object transparency? Instead of text selection requiring a repaint of the entire text, with a different background colour, why not send just one transparent tinted box over the network instead?

      I'm sure if you think about it, you can come up with several other useful applications of something like this.

      Things I think X needs, really quickly:
      • decent fonts
      • better cut and paste, with a memory, and perhaps a history stack
      • further separation of X's core from X's drivers. Standardized drivers so that any other application can use them--ie, so we don't NEED to use X. (I'm talking about the XFree86 implementation, here, mostly.)
      • make it so I don't have to run DRI programs as root. Heck, get rid of running anything in X as root; anything that needs to be root should be a kernel driver, or a userland resident program.
      • standard widget set, and a standard 3rd party widget registry, so GNOME and KDE widgets can co-exist in the same application, or at least access eachother through a standard communications channel. (you laugh..)


      I wrote this yesterday. Please correct me (this post and that) where I'm wrong; I really do want to understand this stuff as best I can.
    2. Re:x is a generalization by FooBarWidget · · Score: 2

      "Instead of text selection requiring a repaint of the entire text, with a different background colour, why not send just one transparent tinted box over the network instead?"

      I think that's what XRender does.

      "* decent fonts"

      MS TrueType fonts and Xft.

      "# better cut and paste, with a memory, and perhaps a history stack"

      X clipboard mechanism standard (supported correctly by GTK+ 1.2/2.0, QT 3.0, Mozilla, Motif, and probably some other toolkits)
      GNOME Clipboard Manager

      "# make it so I don't have to run DRI programs as root."

      You run DRI apps as root?! *gasp*
      Why can I run Tuxracer as normal user?

      "* standard widget set, and a standard 3rd party widget registry, so GNOME and KDE widgets can co-exist in the same application, or at least access eachother through a standard communications channel. (you laugh..)"

      XEmbed. Work in progress.
      BlueCurve and Keramik/Geramik provide a consistent look for both toolkits.

    3. Re:x is a generalization by Forkenhoppen · · Score: 2

      Thanks for the tips! :) I did some research to check each of these out.

      I think that's what XRender does.
      - How closely related are XRender and XAA? Is there a central repository of all of these extensions, and to what degree they've been accepted/supported by different tk's?

      MS TrueType fonts and Xft.
      - Why are we still depending on Microsoft for our font needs? How many fonts are there out there that aren't from Microsoft, or Corel or other proprietary companies, and still look decent enough to use in prefessional reports, etc.? How many decent free fonts are there available out for other languages, such as Japanese, Chinese, etc.? Is there a free font creation project anywhere? More importantly, is there even a free program out there for creating Truetype fonts?

      X clipboard mechanism standard
      - According to the article, the clipboard one allows for the cut/paste of ASCII data. What about image or audio data?

      GNOME Clipboard Manager
      - Why does this expose the different X-level parts of the clipboard to the user? All I should see in a clipboard manager is what I've copied in the past. Not COMPOUND_TEXT, ATOM_.. etc.

      You run DRI apps as root?! *gasp*
      Why can I run Tuxracer as normal user?


      *grin* Withdrawn. :) Last time I ran Linux, if I wanted to do anything 3D that changed the screen to fullscreen, I had to be root. I take it this has since changed.

      XEmbed. Work in progress.

      Kickass!

      BlueCurve and Keramik/Geramik provide a consistent look for both toolkits.

      Ah. Is this a consistant look, though, or a consistant back end? What I'd like to see is a standardized back-end component that both link against for their theming capabilities, so that people can just target that one lib and have changes to themes for it change all of your desktop tk's.

      The advantage I see, in these newer projects, is that they're willing to say "here, there are the objects you can use. If you want something new, build it out of these, but for basic stuff, this is what you use." It allows them to abstract out the simple stuff, so that stuff that should be run on the X server anyways can be.

      An example of what I mean is a window manager set up to follow mouse focus. If I'm sitting at a box, and I move my cursor across the screen, each time I enter/exit a window, the focus changes. X kicks in, sends a message to the client, and the client updates the window to visually show that it's now got the focus. If I'm accessing a remote machine when I'm doing this, it can be slow as heck just to move the pointer across the screen.

      The advantage of these newer kits is that stuff like this is all done on the server end. If it's just dumb interface stuff, the client doesn't even have to really worry about it. This results in reduced network traffic and reduced latency where it really matters; when the user is using the system.

      Or is there a server-side window managing / toolkit access extension already out there for X that I don't know about? ^_^;

    4. Re:x is a generalization by FooBarWidget · · Score: 2

      "- How closely related are XRender and XAA?"

      Not at all. XRender is a new rendering extension, that uses color information (1 red, 255 blue, 0 green, 128 alpha) rather than pixel data.
      XAA is the X Acceleration Architecture, and has nothing to do with XRender.

      "Is there a central repository of all of these extensions, and to what degree they've been accepted/supported by different tk's?"

      XRender is included in XFree86 4.x by default, and is not available for XFree86 3.x. Other (commercial) X servers can make their own implementation.

      "Why are we still depending on Microsoft for our font needs?"

      Creating good fonts is *hard* and cost tons of money. I heard that it takes an experienced font designer about a year to create a good looking English font. Imagine how much time it would take to create a full unicode font!
      Some companies have contributed fonts. But from what I've seen, they look terrible at low resolutions (and some even at relatively high screen resolutions, like size 72). Some bitmap fonts do look good, but since they're bitmap fonts they don't scale well.
      There are several free font creation projects, but they're either creating bitmap fonts or are getting nowhere.
      There is a free font editor: pfaedit. But it takes more than a font editor to create good-looking fonts. Good-looking fonts are not something amateurs can create.

      The main problem is money and the complexity of font creation.
      If someone is willing to give us a few milions to license good-looking TrueType from some experienced font design company...

      "According to the article, the clipboard one allows for the cut/paste of ASCII data. What about image or audio data?"

      It can be done. The architecture allows different types of data, including audio/video/images/foobar. But for some reason, nobody use it for anything other than text. Dunno why, from what I've seen it should be fairly simple.

  43. Vector graphics by Anonymous Coward · · Score: 0
    About the only thing X could be argued to be lacking in right now, is no good native support for vector drawing.


    Well, the Render Extension has a pretty good set of vector primitives, and its a standard part of XFree86. (I'd be curious to hear what else would be useful to add for people doing serious vector graphics. But, Render has been very good for the vector graphics I have done, which mostly related to graphing and plotting.)
  44. You can't really replace X by mamba-mamba · · Score: 5, Insightful

    Basically, everything depends on X, so you can't really replace X and maintain backwards compatibility. In order to have backwards compatibility, you would need to provide all the services provided by X, so you would, in effect, just be writing a new X server.

    If you really want to replace X with some other system, then you could probably get pretty far by just porting gtk and motif over to the new system. This should pick up quite a few apps. I have no idea how hard this would be.

    But, by and large, it's silly to constantly rant and rave about X. It's just an abstraction for a video driver that allows you to effortlessly traverse networks. It is so low level, that it almost doesn't make sense to criticize it. And I think many of the critics don't really understand fully what X is.

    For example, if you don't like the performance, then that is a complaint against the specific Xserver you are running, not against X itself.

    If you don't like the widgets you are using, then that is a complaint against the widget set you are using (motif, gtk, qt, etc.). This has nothing to do with X.

    As far as features go, if you really want a feature and X does not provide it, then you have a legitimate complaint. But really, what more do you want from a video (and mouse and keyboard) driver than the ability to get information about GUI events and to paint the screen in any fashion you desire?

    To sum up, I don't see that X is inherently problematic. I think that most complaints about it are misplaced, and should be directed elsewhere.

    Furthermore, when people talk about replacing X, they seldom seem to appreciate the benefits of allowing the application to connect to the server over the network. This is one of X's strongest points, yet most people seem to want to replace it with what ammounts to a widget set rolled up with a local machine only video driver.

    Well, that's my $0.02.

    MM
    --

    --
    By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
    1. Re:You can't really replace X by Filik · · Score: 1

      But you can expand X, or rather xlib, to have a method of communicating directly to the framebuffer instead of using the client/server model, when it detects that the DISPLAY is set to localhost, and optimize this code heavily (like DirectX) for the various graphic cards. Yes I know that it doesn't really use the network layer, but still, there are endless optimization possibilities... That way we wouldn't have to port any application. But, this is a gigantic mind-numbing project that no single soul will have the nerve to even start thinking about...and it would need some serious funding from companies like IBM and SUN. Does anyone know the status of the XFree86 and X-Consortium groups? Do they have any funding and resources?

    2. Re:You can't really replace X by Anonymous Coward · · Score: 0

      You have just pointed out all the problems inherent with X. Because it is so open every application using X looks and behaves differently from every other application. Even applications based on the same widget set do not behave alike. As the article stated, rules regarding the behaviour of the gui are not enforced in code. It's like building a car by individually manipulating each molecule. It's also like reconstructing the car on the other side of a slow connection one moleculte at a time.

      In the end all the application developers, even ones working with higher level UIs like gtk and qt are reinventing the wheel every single time they write an application. And every time the the result is a different UI leading to inconsitency and confusion.

      This problem isn't inherent in just the UI but every faset of application development. If you consider how many man hours have been wasted as every person wrote their own file open dialog box, or file io routines, boundary checks, common data structures, etc etc etc. All trivialities, and all reimplemented tens of thousands of times.

      What something like PicoGUI or Fresco provides is simplification of application development, consitency between applications, and scalability. In the end hopefully even an engineer or someone who doesn't care about user interface design will be able to provide a decent UI to an application with some of these next gen GUIs.

      just my $0.05 (2c is not valid curency where I live)

    3. Re:You can't really replace X by micahjd · · Score: 5, Insightful
      PicoGUI and Fresco are both network-transparent GUIs, so the argument that people just want to replace X with something that's not network transparent doesn't hold.

      You say X is so low level it doesn't make sense to criticize it, but I think X has actually taken the worst of both the high-level and low-level worlds. X is low-level enough that you don't get any application consistency and you still end up sending individual graphics primitives over the wire. But, it's still high-level enough that it makes it hard to do some types of graphics operations. Yes, I know about RENDER. Putting aside all arguments on X's architecture, that still doesn't make it any easier to do things like blurring, multiplying two bitmaps, or rotation.

      --
      -- 2 + 2 = 5, for very large values of 2
    4. Re:You can't really replace X by jonabbey · · Score: 2

      That's pretty much what DRI is, isn't it?

      The problem with allowing applications direct access to the card or framebuffer is that you then have to trust all your applications not to ever screw anything up. Putting all the code which communicates with the card in a single privileged process helps prevent malicious or poorly written programs from taking the system down.

      That's why DRI apps tend to have to be run as root, incidentally.

    5. Re:You can't really replace X by mamba-mamba · · Score: 2
      Maybe we should all just use SWT and java (compiled with gcj). Then we would have a fast native implementation that is easy to port from one platform to another.

      Check out this article or this project to see what I am talking about.

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
    6. Re:You can't really replace X by mamba-mamba · · Score: 1

      You have hit upon what sounds like a genuine criticism of X.

      If the members of the vast horde of X critics were as knowledgeable on the topic of X as you appear to be, I would not defend X.

      I just get tired of all the people saying "we need to get rid of Xwindows because XFree86 is too hard to configure" or "Xwindows is so slow, just look at how long it takes to change directories in Nautilus" or something like that.

      I didn't realize that PicoGUI was intended to be network transparent. I did look at the page, but then I saw that they only had about 70 functions in their API, and weren't actually claiming to be a replacement for X in the first place. So I left.

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
    7. Re:You can't really replace X by micahjd · · Score: 2
      I just get tired of all the people saying "we need to get rid of Xwindows because XFree86 is too hard to configure" or "Xwindows is so slow, just look at how long it takes to change directories in Nautilus" or something like that.

      Yeah, I do feel sorry for X because of how many completely unknowledgeable people bash it. Sadly, this has hardened the developers against genuine and informed criticisms.

      The PicoGUI API is small, but that's because most functions can be used and combined in many ways. The design is a little like how UNIX allows you to use a small number of flexible command line utilities to do almost anything rather than having a specialized program for everything they think you need. This makes the API both easier to learn and easier to write new client libraries for. (Each language picogui supports uses a native client library, not a wrapper around a C library)

      Also, you're right that PicoGUI isn't designed to replace X. It does do the same job as X and/or a widget toolkit in many instances though. After PicoGUI has more apps and more drivers, it could be used on desktops instead of X. For now, it's mainly focusing on embedded systems.

      I do hope that someday a good number of embedded systems will run on PicoGUI and a good number of desktops will be at least PicoGUI-compatible (via a rootless driver like the one we currently have for X11) that you will be able to run apps on any of these platforms transparently. Some of the things you'd be able to do include:

      • Write an installer or configuration tool that could be run in ncurses, on the framebuffer device, or in X, without changing any code in the installer
      • Run the PIM software from a PDA over a USB or wireless network, displaying itself rootless under X or Win32. The PIM would have a look and feel native to the desktop, but would be running on the PDA.

      --
      -- 2 + 2 = 5, for very large values of 2
    8. Re:You can't really replace X by alteran · · Score: 2
      (X is) so low level, that it almost doesn't make sense to criticize it. And I think many of the critics don't really understand fully what X is.

      For example, if you don't like the performance, then that is a complaint against the specific Xserver you are running, not against X itself.

      Perhaps you could tell me what I'm not getting here. It seems obvious that

      1. drawing something,
      2. abstracting it for networking,
      3. pushing it down the tcp/ip stack,
      4. immediately pulling it BACK UP through the tcp/ip stack,
      5. de-abstracting it,
      6. writing it to the video card,
      is more work than
      1. drawing something
      2. writing it to the video card
      or am I missing something?

      I wouldn't call X "inherently problematic" -- it's networking abilities are an amazing technical achievement. Yet 99% of the time, X is used on the local system, and therefore 60-80% of its effort is spent needlessly shoving graphics up and down the network stack. In the graphics world, where something that improves speed by 20% is hailed as a breakthrough, reducing your workload by two-thirds would be amazing.

      Sure, getting around this would be problematic for exactly the reasons you cited -- but it doesn't mean that X doesn't have what, for most purposes, is a built-in bottleneck.

      --
      Who is RTFM and when will he help me with Unix?
    9. Re:You can't really replace X by Anonymous Coward · · Score: 0
      You have just pointed out all the problems inherent with X. Because it is so open every application using X looks and behaves differently from every other application.
      This is the bazaar. That's how it works.

      But, in more seriousness, this is a problem not with X, but with the toolkits. X itself is too low level to make this complaint about. Sure, it may be a valid complaint, but it needs to be aimed at a different part of the system than X.

    10. Re:You can't really replace X by Oggust · · Score: 1
      If you're running local, most of that stuff doesn't happen. The protocol traffic happens thru a unix domain socket, which is a lot lighter than a TCP socket, and if you're doing things like "draw these pixels on the screen", look into using Xshm, that way you get to avoid the serialising as well. And then you're basically down to your second case there.

      The original poster was right, if it seems slow, it's probably because your driver isn't as fast as it could be.

      /August.

      --
      "An object declared as type _Bool is large enough to store the values 0 and 1." -- 6.1.2.5, C99 standard.
    11. Re:You can't really replace X by Minna+Kirai · · Score: 2

      Why use gcj? One might assume that compiling to native binaries is faster than using a JVM, but benchmarks don't agree.

      My own tests have supported this conclusion. Implementing the same simple algorithim in Sun's Javac/Java, ecj/Java and g++/C++ shows that ecj's code is not only slower than g++'s, but slower than Javac's too. My theory is that java's arithmetic primitives involve additional semantic information (like the possibility of overflow exceptions) which ecj isn't smart enough to optimize away.

      GCJ programs tend to use less memory than one in a JVM, but this is an area that future JVMs can improve upon (and in general, once people start using the same VM for multiple java programs, this will get better).

    12. Re:You can't really replace X by Anonymous Coward · · Score: 0
      or am I missing something?
      Yes. You are missing a lot of the work that goes on, for one thing. The second is a rough analysis of how long the stages take relative to each other. You will probably find that for a lot of operations the ``writing to video card'' takes substantially longer than all the other stages.

      You're also missing the fact that Windows has a central broker for its GDI primitives, i.e. the kernel. Things are abstracted, pushed into the kernel, etc, etc. The model is similar, frankly.

      Also consider that:

      1. you can use local domain sockets, not just TCP sockets. These reduce the overhead on most operating systems. Some OSes don't even copy the data, just pay a few MMU tricks to move it around.
      2. the abstracting and de-abstracting phases are rather small.
      3. the ``de-abstracting'' phase involves occlusion maps and ensures that you aren't writing on someone else's window.

      Yet 99% of the time, X is used on the local system, and therefore 60-80% of its effort is spent needlessly shoving graphics up and down the network stack.
      Could you reference the study which shows this? Or perhaps just some appropriate benchmarks using the exact same driver with and without X?
    13. Re:You can't really replace X by Anonymous Coward · · Score: 0

      to be honest there buddy i don't care one hoot about backward compatability because all the apps i want don't run on Linux anyway. it's too fscking slow thanks to X so i can't play my games - and WineX will never mature. so to somebody like myself just waiting for a reason to use Linux, getting rid of the Xfree bloat is a good start. backwards compatible? time for a fresh start says i

    14. Re:You can't really replace X by FooBarWidget · · Score: 2

      "Perhaps you could tell me what I'm not getting here. It seems obvious that

      1. drawing something,
      2. abstracting it for networking,
      3. pushing it down the tcp/ip stack,
      4. immediately pulling it BACK UP through the tcp/ip stack,
      5. de-abstracting it,
      6. writing it to the video card,

      is more work than

      1. drawing something
      2. writing it to the video card

      or am I missing something?"


      Yes.
      1. XFree86 uses shared memory for local pixmaps. *Huge* speed improvement.
      2. XFree86 uses Unix domain sockets locally. *Much* faster than a network socket.
      3. The most important point. Modern CPUs can handle those operations easily. We don't live in the 486 era anymore.

    15. Re:You can't really replace X by mamba-mamba · · Score: 1

      what is ecj?

      Is that just a typo for gcj?

      The reason to use gcj and libswt is to have have binaries that are easy to execute, instead of .java files that require a jvm. My idea is to fit java programs into the existing standard distribution mode of most open and free software where you do ./configure, make, make install.

      Personally I like java, but I don't like dealing with a jvm. And I think that from the perspective of a developer trying to gain acceptance for his or her free software project, the jvm burden is significant. On the other hand, if the distro comes with gcj, users can (eventually) just do ./configure, make, and make install to install libswt, and then programs which use it can do the same. This allows a sun-free, and 100% free software solution to the java problem.

      Perhaps it is a wrong-headed approach. It is certainly heresy from the perspective of the Sun orthodoxy. But getting away from non-free jvm's is a good thing, in my opinion.

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
    16. Re:You can't really replace X by mamba-mamba · · Score: 1

      In that case, you should be trying to convince your favorite game developers to develop picoGUI (or whatever) versions of the game.

      Also, I think that when you say "X" you are really talking about Xfree86, no?

      Also, also, it sounds like there is no reason for you to use linux, so I'm not sure why you even care about this thread. Just stick to windows, if it makes you happy.

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
    17. Re:You can't really replace X by Minna+Kirai · · Score: 2

      ECJ is a typo in this case, but it does happen to be a real project (one that I've used for longer than I care to recall)

    18. Re:You can't really replace X by mamba-mamba · · Score: 1

      Interesting.

      I don't know much about genetic algorithms and such, but I am aware of GAUL, a c-language based genetic algorithm library that is available on sourceforge.

      Someday I'll have to look more deeply into these things, since the basic idea intrigues me.

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
  45. Damn all you naysayers by Chicks_Hate_Me · · Score: 1

    I support this project, maybe it won't be successful, but what if it does? If X is the real reason the Linux Desktop feels clunky and slow, then I'm all for this.

    And for all you people saying "Why change? X is ubiquitous!" well, why change to Linux? Windows is ubiquitous.

    1. Re:Damn all you naysayers by mamba-mamba · · Score: 4, Insightful

      Blame the clunkiness of the linux desktop on the linux desktop, not on X (in general) or Xfree86 in particular.

      There are a lot of concepts associated with X on linux. X, in the form of Xfree86, is at the bottom. Then on top of that there is a widget toolkit (i.e., gtk+ or athena or motif).

      Interacting with X is the window manager, which may use a widget toolkit, and which excercises control over placement, size and other characteristics of application windows. Each of these application windows gets to decide how the pixels it has control over should look, within the limitations of the display device. And, in many cases, these applications are built on top of a widget toolkit which may or may not be the same as the one used for the window manager. Then there is the "desktop" which is really just another application.

      So, you see, "X" is probably not the cause of the clunkiness you perceive.

      On the other hand, if Xfree86 is genuinely too slow, then you should build (or clamor for the building of) a faster x-server.

      But don't throw out the whole concept of the x-server, for it gives us many benefits, perhaps most importantly, network transparency.

      And, by the way, most people are not saying "Why change? X is ubiquitous!" They are either saying, "it will never happen: X is ubiquitous" or they are saying "Don't change it, because there isn't a superior alternative yet."

      I, on the other hand, am saying "don't blame X for problems which lie elsewhere." And, perhaps, "don't put forth an opinion on X if you don't really know what it is."

      Oh, and, "the PicoAPI has something like 70 functions in it. Let's not get carried away!"

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
  46. What's next? by MainframeKiller · · Score: 3, Funny


    viGUI? emacsGUI?

    --
    http://www.club977.com/ - The 80's Channel!
    Your source for commercial free 80's music!
    1. Re:What's next? by Anonymous Coward · · Score: 0

      yeah, that stuff'll be next if anyone cares to try to make crappy unusable counterintuitive software (emacs) usable and convenient. If anyone with any brains still uses that opaque nonsense. Oohh, look don't you have hacker cred, you use something that sux. meanwhile the rest of us will be using software that we don't have to spend hours figuring out how to do simple things in.

    2. Re:What's next? by user32.ExitWindowsEx · · Score: 2, Interesting

      You mean emacs doesn't ALREADY have a GUI in it?

      --
      "Evil will always triumph because good is dumb." -- Dark Helmet
    3. Re:What's next? by WWWWolf · · Score: 1
      emacsGUI?

      So true that it's not funny... Emacs is not just a GUI, it's a goddamn operating system. I love it.

      I was completely blown away when I tried the Emacs interface to TiMidity. It was frosty. A Finn built a great program and the Japanese made it vastly greater by adding a bunch of cool and completely unusual features like this =)

  47. subject by Anonymous Coward · · Score: 0

    anything can replace x, who cares. neither's an alternative to w2k. don't have to edit an xconfig file, don't have to have a toolkit, don't have to think about window managers, don't have to have the whole thing crash because i don't know the precise subspecies of graphics card. it just works. you can call it troll, but it's the truth. x is a pile of crap, the only decent gui on unix was done by a real company, apple, and not a fake haxor company.

  48. Why berlin? by xRizen · · Score: 1

    We have Fresco! ;)

  49. There is an X-compatibility module by arcadum · · Score: 4, Informative
    To quote It supports popups now, and uses a new hybrid rendering technique taking advantage of core X primitives, PicoGUI's built-in primitives, and shared memory.

    Check out the screen shots for more.

  50. Some "inside" information by Anonymous Coward · · Score: 5, Informative
    Dang, lost my /. password. But I am lalo, user and developer of PicoGUI for a few months.

    Some information for the curious:

    1. Micah (the lead developer) compiled some info at http://picogui.org/wiki/view/Main/PicoGUI and http://picogui.org/wiki/view/Main/FAQ
    2. it is not X. It cannot run X apps. No way. Period.
    3. it is very early in development. I use it for a few things, specially in my PDA, but it's a living-on-the-edge experience.
    4. there are client libraries for C and python; there are the beginnings of a tcl library, dunno how usable, and an old perl library which needs work. There is also a waba (java) library, but I don't have any idea of its status.
    And now my answer to your question, IMHO:
    1. a terminal widget that runs things like mutt, emacs, lynx|links|w3m
    2. a web browser; porting mozilla sounds like the obvious choice
    3. and, of course, apps.
    Then again, I'm not sure X has to be replaced. But you're not talking about replacing, you're talking about alternatives ;-)
    1. Re:Some "inside" information by Greg+Couch · · Score: 1

      Have you looked at creating a picogui X extension? That would provide a clean way of using picogui with X servers and provide a clean migration path to picogui for X application writers.

    2. Re:Some "inside" information by Lalo+Martins · · Score: 1

      yay, found my password.

    3. Re:Some "inside" information by Lalo+Martins · · Score: 1

      that would also produce applications that don't run on picogui with other display drivers - which would pretty much defeat the point of the whole thing.

      You have already an interesting "migration path" with the X rootless driver, which essentially turns picogui into a widget toolkit.

    4. Re:Some "inside" information by forgotmypassword · · Score: 1

      Dang, lost my /. password.

      Haha

      Why is my user number so large?

      Oh

  51. X is Good by Dunkalis · · Score: 1

    X is a flexible extensible system. Thats why it is popular. The new RnR extension to XFree86 4.3 is just an example of why X is the windowing system of choice.

    Oh, if you get crappy performance in X, you should use Window Maker or fvwm.

    --
    Slashdot is a waste of time. I enjoy wasting time.
    1. Re:X is Good by Minna+Kirai · · Score: 2

      The 8 years it took for X to get the RnR extension is an example of why so many say "X is Bad". If the extensibility is so great, then why did such an obvious improvement take so long?

      (Counting from when Microsoft first introduced that feature, and including the fact that end-user desktops don't have RnR yet)

    2. Re:X is Good by jonabbey · · Score: 2

      If the extensibility is so great, then why did such an obvious improvement take so long?

      Because until the late 90's desktop UNIX renaissance brought about by Linux, KDE, and Gnome, people figured there was no point in pushing that particular rock uphill. Would you spend years of your life trying to improve the foundations of X so that CDE could do some fancy new graphical thing?

      Please.

      Since the founding of the XFree86 foundation, X has been improving at a faster rate than it has in fifteen years. It's still got a ways to go, obviously, but X has proven itself rich enough to be extended without breaking backwards-compatibility.

    3. Re:X is Good by Minna+Kirai · · Score: 2

      Because until the late 90's desktop UNIX renaissance

      The late 90's means 1997 or so. It's 2003 now, that's 6 years. And it'll surely be at least another year before RnR becomes broadly available. That's a long time. (Especially when you consider that the RnR guys only needed a few months, once they started. This suggests that writing extensions is so hard that only a select few can do it. Not encouraging)

      Apple and Microsoft have both improved their GUIs enormously since 1997. X (and the other Unix graphics system, OpenGl) don't seem to have gotten much better during that time.

      Since the founding of the XFree86 foundation, X has been improving at a faster rate than it has in fifteen years

      XFree86 was founded in 1994. I guess I don't remember how well X worked in 1979, so I can't comment on how fast it's progressed.

    4. Re:X is Good by khuber · · Score: 1
      This suggests that writing extensions is so hard that only a select few can do it. Not encouraging

      The RandR paper mentions the graveyard of failed X extensions. X extensions should be a last resort IMO, so it doesn't bother me if there isn't a new one every week.

      -Kevin

    5. Re:X is Good by d2002xx · · Score: 0

      Oh, if you get crappy performance in X, you should use Window Maker or fvwm.

      It improves nothing if they still use applications of KDE or GNOME.... And for most of linux newbies, this would kill them.

  52. I want gui standards by baryon351 · · Score: 1

    I'd love to see, as well as part of the specs of any new gui, just a few small standards on the simple parts of a gui that coders should follow. The technical abilities of it are one thing, but small things like consistent menus, consistent design, proportional scrollbars, apps that ALL take notice of settings - that kind of thing. X apps are such a mishmash of styles that it's too late, the rot has already set in. It works, but not optimally.

    This doesn't have to be restrictive and there are already some basics that X coders (generally) stick to, but extending things a little and generating a culture of doing things well would be an incredible bonus. Far too many X apps re-invent the wheel when it comes to GUIs, almost starting from scratch and often forgetting the little things that have been done well before, that users subconsciously expect, and make intuitive use a reality.

    1. Re:I want gui standards by mamba-mamba · · Score: 2, Informative

      You may be right about the benefits of having a consistent look-and-feel.

      But this has nothing to do with X. X is a low-level, display server technology. It has nothing to do with look-and-feel.

      There is no reason related to X itself that we cannot have a consistent look and feel. All it would take is a concensus on the part of new developers. Also, if people are interested, they can always update some old classics (such as xv and gv) to use new widget sets. I have no idea how hard this would be, but I'm pretty sure it is too hard for me to take it on. ;-)

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
    2. Re:I want gui standards by baryon351 · · Score: 1

      Absolutely...

      There's nothing specific to X apart from the 'culture' generated from years of coding with current methods, and this kind of culture is sometimes harder to work past than any technical difficulties. With an entirely new system, the chance for an easier break is there.

      I'm afraid I might be a little too optimistic in this regard - human nature is a very strong thing, and I've seen enough developers who think a good UI is just a few buttons onscreen, to just sigh and realise I'll have to get used to good apps featurewise with mediocre interfaces.

    3. Re:I want gui standards by mamba-mamba · · Score: 2
      There's nothing specific to X apart from the 'culture' generated from years of coding with current methods, and this kind of culture is sometimes harder to work past than any technical difficulties. With an entirely new system, the chance for an easier break is there. [emphasis added]


      I guess I basically agree.

      Although, I just use linux because I like all the geeky stuff it can do and for philisophical reasons related to free software.

      I don't mind not having a consistent look and feel across apps. I am not a linux evangelist, though. I don't try to convince people that they should switch, and I don't really care if people switch. I just want there to be enough people using it that it continues to be viable.


      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
  53. Xdirectfb by Anonymous Coward · · Score: 0

    you can use X-directfb ...

    with it, you can have real transparency for your terminal...

  54. hmmm... by Anonymous Coward · · Score: 0

    as long as it compiles in less time as X and has all the necessary features i need (including sufficient application support) i am willing to try it.

    do knock alternatives down because they are alternatives.

    1. Re:hmmm... by Anonymous Coward · · Score: 0

      s/do/dont

      a typo!
      its amazing how many signals become corrupted between my brain and finger tips.

  55. source code listing by Anonymous Coward · · Score: 0

    depends on language.

    in C it would look like this

    void main()
    {}

    1. Re:source code listing by Rubyflame · · Score: 1

      I thought main had to be an int.

      --

      All it takes is nukes and nerves.
    2. Re:source code listing by UserGoogol · · Score: 0, Offtopic

      Only if you want to use good style. If you wanna be stupid, than having main return a void is perfectly accetable, and usually compiles okay.

      --
      "Never attribute to malice that which can be adequately explained by stupidity." -- Hanlon's Razor
    3. Re:source code listing by Anonymous Coward · · Score: 0

      It may compile, but that doesn't make it C.

  56. How long before a cease and desist ... by d0n+quix0te · · Score: 3, Funny

    ... from Apple for blatantly ripping off the Aqua GUI?

    Come on guys, lickable buttons and pin stripes are so last year ;)

    1. Re:How long before a cease and desist ... by micahjd · · Score: 2
      Obviously you couldn't figure out how to click the "(more screenshots)" link

      --
      -- 2 + 2 = 5, for very large values of 2
  57. When does the OS building stop and the work start? by Call+Me+Black+Cloud · · Score: 4, Insightful

    Say what you will about Windows but at least it's a standard to work against. With Linux it seems there always some pertpetual tinkering...enough already! Enough tool building, now make some apps.

    Look how many freeware and shareware files are available for Windows. Sure, they're not open source but a lot of people are still writing apps for Windows. For example, go to hotfiles.com and search for "word processor". Quite a few choices. For Linux, you've got...AbiWord, Maxwell, WordPerfect, StarOffice/OpenOffice.

    The point of all this is that most people don't care what's the newest/greatest/most different way of doing something. They just want something that turns on and works. So don't think about replacing X, think about making more applications for the end user.

  58. That already exists... by MenTaLguY · · Score: 2

    It's called XRender + a couple related extensions. So far they're XFree86-specific, but probably not forever.

    --

    DNA just wants to be free...
  59. Re:Replace X? Why? by Anonymous Coward · · Score: 0

    I'm not calling for X's head yet, but there needs to be more support for it in the Kernel I think. Make it more low-level and very easy to setup and change the resolution. Yes the Ctrl-Shift-+/- thing works, but Windows has the info panel saying what color depth you are using, the res, and the refresh rate.

    Also, they should make one only for 3D-cards that has advanced features in it. That means that some people may have to update their hardware, but stuff from the early 90's has had a good run. It doesn't need to be supported anymore. The cards at the store now HAVE to have support.

  60. See also: XWT by adam_megacz · · Score: 2, Interesting

    Wow, PicoGUI is pretty impressive.

    For a different approach to this problem, check out the XML Windowing Toolkit; its "display server" runs as a Java Applet, or ActiveX control, so there's nothing to download/install. There's also a native Linux client.

    1. Re:See also: XWT by tzanger · · Score: 3, Informative

      Wow, PicoGUI is pretty impressive.

      Yes, but it's fundamentally different from XWT. I would not choose PicoGUI for an intranet. Hell, I don't think I'd choose PicoGUI for an embedded project. They decided to use their own protocol for server/client communications, which is something I don't understand/agree with. It's YAP - Yet Another Protocol. Yes, XMLRPC would have a larger overhead in terms of larger message size and a mini XML parser, but they could have used straight HTTP GET/POST, CORBA or something smaller and already out.

      I also can't give PicoGUI to a web monkey and get them to design impressive widgets and therefore apps with it.

      I'll stick to XWT, thanks. :-) And for embedded I would probably choose microwindows or maybe even fresco. The integer-only aspect of PicoGUI is nice but the reality is that anything that has a display requiring a more complex GUI will have enough horsepower to drive one of the bigger windowing toolkits.

  61. No. X is here to stay, just like it should be by PotatoHead · · Score: 5, Insightful

    The basic concept of X is sound, mature and very farsighted. We have some implementation work to do, but we also need to remember to keep that seperate from the actual value that X provides.

    Most people here like UNIX right? You can package all of those X complaints up and apply them to UNIX in general. When you do, Guess what? They are the same arguments. All of the things that make UNIX like systems, such as Linux, a good thing are the same things that drive some people nuts about X.

    The reality is that using a *real* computing platform requires a little learning. In the last 4 years, the rate of improvement is astounding really. One or two more years and it is going to be solid.

    X is a part of that work and brings with it some serious benefit. Again, I ask: "Why trash all of that, just so we can start all over again with a simpler and more limited system?"

    It is not worth it.

    There is a trade off between easy to use, and capable. You can also factor in common knowledge to understand how this applies to X today. Lets call this the "happy point".

    Right now, there are a lot of people who got started not knowing what network transparent display systems actually mean. This is because the platforms they worked on did not have them.

    So common knowledge is low for people coming to Linux right now. So the "happy point" is way toward the ease of use side of things. Makes sense really, because you don't miss what you don't yet understand.

    Over the next couple of years a few things are going to happen that will essentially make this point moot.

    X configurators will get done for most people. Most of the hard stuff will be abstracted into a few sensible combinations that people need and they will work. Progress so far shows me this will happen.

    Some of the brighter ones will start understanding just what X is giving them and will start liking it. Articles, reviews and product feature checklists will start to mention this point.

    Remember X is a serious differentator for UNIX like systems. It allows us to do things that make a lot of sense and provide a lot of value.

    X server performance will cease to be an issue. There is simply nothing that prevents X from being as fast or faster than the very best frame buffer systems. Nothing. I have old SGI machines with simply *excellent* X servers. They understood X and made it work to its best advantage. The result: 30 Mhz machines that are just as snappy as the machines of today.

    Don't tell me X is inherently slow. For each argument, I can point to the source of the problem and that source will be implementation, not the basic premise of X.

    So all of this will help to raise common knowledge. As this goes up, that "happy point" will move over toward the capability side of things.

    After a couple of iterations, we will wonder why it was such a hassle. I did when learning and it was harder then. Now it is fairly easy. In a couple of years, the things people want most will be in the GUI, for the rest of us, we can continue to meld X into performing whatever display task we want.

    Only well planned scalable software with vision does this sort of thing. UNIX does it, thats why we like it, X does it, and that is why we will like it too.

    I am *really* tired of hearing X sucks tirades. Is this bash X weekend or what?

    Guess I will have to just post X is good tirades each time. Perhaps the truth lies between :)

  62. Does it matter? by lpontiac · · Score: 2
    X is very general, and PicoGUI appears to be heading that way. There's no reason there couldn't be a server that:
    • Handles the display, and can service both PicoGUI and XServer clients.
    • Is an X server which displays the X applications on PicoGUI (like Exceed or XWin32 do on Windows).
    • Is a PicoGUI server which displays the PicoGUI applications on an X display.

    There's no implicit reason that you'd have to choose. At this point, it comes down to developer choice: what do you want to develop on?

    1. Re:Does it matter? by micahjd · · Score: 2
      X's architecture is completely different than PicoGUI. PicoGUI's architecture is based on widgets, and a tree that organizes and lays out the widget's elements. In PicoGUI, everything is a widget, including things like an app's main window, and the background. X is based on windows, using expose events to coordinate redrawing. There would be no point to combining the two, if it was even possible.

      What you probably want is just a way to run both picogui and X apps at the same time. Just pick one as the main GUI and run the other's apps through an additional layer. You can already run PicoGUI apps under X.

      --
      -- 2 + 2 = 5, for very large values of 2
  63. widget tunnelling by jonathanbearak · · Score: 3, Interesting

    X will never be replaced

    Removing flexibility for better bandwidth = too many people pissed off! Open Source software supports niche users, and no one is ever going to be able to get around that fact.

    Speed is fine IMHO. Maybe (don't know, don't care - I've spent too many hours customizing kde's look&feel settings) X is slower than the Windows GUI, but other factors (gcc + better OS) apparently make up for it, because I find LGX to run faster - of course, that's just my experience.

    I don't see why "widget tunnelling" instead of X tunnelling can't do the same thing picoGUI does as far as bandwidth is concerned. So someone figures out how to tunneling Qt and gtk in addition to just basic X info and magically, X defeats bandwidth consumption by taking its "flaw" dependency on toolkits and turning it into the solution.

    Sure, speed probably won't get a boost - but on my 128mb RAM P3-733, speed is fine, and an unnoticeable increase in speed is not worth the loss of the personality we can add to our interfaces on X today.

    OTOH, I have no idea what I'm talking about.

    1. Re:widget tunnelling by t_hunger · · Score: 1
      What gave you the impression anyone is trying to reduce the flexibility? Just because a user can pick his prefered 'Widgetset' and not the application developer? To me that's more flexibility... and you get a very much reduced bandwidth for free on top of that.

      Regards, Tobias

      --
      Regards, Tobias
  64. X needs to go by photon317 · · Score: 2


    A good step in the right direction would be:

    1) Write a simple X replacement. It doesn't have to have all the fancy trimmings like direct rendering or opengl extensions and stuff immediately, those can come in time. A nice modern graphics hardware abstraction/acceleration layer that's networkable. Another big win would be if you could make it backwards-compatible with Xfree86 4.x's hardware driver module interface, so that you could steal their hardware support temporarily until the new things get enough popularity for people to tailor drivers to it for you.

    2) Port gdk/gtk and qt to your replacement. Immediately a whole lot of linux desktop software now works fine.

    3) Write an X compat library, possible stealing large amounts of X code in the process. This allows legacy X apps (those not written directly to gtk or qt) to be displayed.

    Steps 1 and 3 are of course huge, but I think there's a number of projects in there that have done some work towards this type of goal, it just hasn't all come together yet.

    --
    11*43+456^2
    1. Re:X needs to go by bkontr · · Score: 1

      I agree. Maybe there's a reason why didn't Apple make an X compatible GUI in OSX? I think promoting some kind of standard might have helped them as well as the Linux/Unix community.

      --


      "You helped our nation celebrate its bicentennial in 17 -- 1976." --George W. Bush, to Queen Elizabeth, Wash
    2. Re:X needs to go by spitzak · · Score: 2

      I agree. One of the few posters here who seems to know what is going on and what needs to be done.

    3. Re:X needs to go by Des+Herriott · · Score: 1

      and "4) Profit!!!" ?

      Seriously, all you appear to be suggesting is writing a replacement for X for the sake of it.

      I don't believe there is such a thing as a "simple X replacement" - a full-featured windowing system is an inherently complex beast. Porting gdk & Qt is not impossible, but why? What does a GNOME/Gtk or KDE/QT app running on your "simple X replacement" suddenly give you that you don't have today? Nothing, that's what.

      Since you're suggesting that we just use XFree's driver system plus "large amounts of X code", why don't you just carry on running X?

  65. Hello SexyKellyOsbourne. Eat my German bukake ass by Anonymous Coward · · Score: 0

    i lined the sphincter with ketchup and you are invited to dive on in and be at home. i feel good you live in a group shelter. you must be well fed and you'll feel right at home with your tongue up my ass.

  66. What else is there ? by Catskul · · Score: 2
    Most of the sensible complaints I hear about it seem to be coming from people who want features that aren't there yet, or who feel the performance isn't up to snuff.

    But seriously, with the exceptoin of bugs, there arn't any other complaints you can have about any piece of software.
    --

    Im not here now... Im out KILLING pepperoni
    1. Re:What else is there ? by mamba-mamba · · Score: 1
      Most of the sensible complaints I hear about it seem to be coming from people who want features that aren't there yet, or who feel the performance isn't up to snuff.
      But seriously, with the exceptoin of bugs, there arn't any other complaints you can have about any piece of software.
      Well, that's partly my point. X is not a piece of software. Xfree86 is a piece of software, but it isn't the only Xserver in the world. So, if someone complains that it is too slow, or that it is too hard to configure, then that is a sensible complaint generated by that person's response to a particular piece of software.

      But, if someone says Xfree86 is too hard to configure, therefore we need to abandon Xwindows and completely change the fundamental way we do graphics on linux, then I would say, whoa, let's make sure we are making a good decision here!

      Furthermore, a lot of people seem to think that window managers, desktop programs, and even widget sets are all somehow part of X. They say "X sucks" and then they rant and rave about stuff which is not directly related to the Xwindows system.

      I have posted this basic idea too many times now under this article, so I don't want to go into it any more now. If you are really interested, check out my other posts.

      MM
      --

      --
      By including this sig, the copyright holders of this work or collection unreservedly place it in the public domain.
  67. X is fine by dh003i · · Score: 5, Insightful

    As many other people have pointed out, X is fine. Problems people have with "X" are really problems with either the implementation of X, or problems with their widget set. People complain X is slow. Now, X isn't slow: you're using a crappy implementation, or crappy drivers. Its not X's fault. Get better drivers, get a better or update implementation. Go to XFree86.org or try out Accelerated X. If you want a certain feature that's not there, its probably your widget set.

    In short, before you say X sucks, identify your problems with it, and ask some experts about how to resolve them.

    One thing that I will criticize X for, however, is that they don't enforce some kind of standard for interfaces. One thing Linux does need is standardized interfaces and key combinations between applications. There doesn't need to be one standard, but apps installed on a user's computer should all obey the user-defined standards. CTRL-V should always past...it shouldn't be CTRL-V or ALT-V or CTRL-P depending on the app. Same thing with menu's and stuff. Why should every developer have to reinvent the wheel? And why should the user have to reorient himself for basic key combinations for every program?

    1. Re:X is fine by pavera · · Score: 2

      Maybe I just don't know enough, but in my opinion X is slow/bloated, it always uses at least 75MB of RAM on any machine I've seen it running on. That is completely unacceptable, I've never seen a linux box with a modern gui (gnome 2 or kde 3) that idles lower than 200MB of RAM used at all times, windows XP idles at about 75-85MB... (by "idles" I mean user logged in, no programs running, desktop sitting there doing nothing). I really don't see why this is, except that X whenever it is running, uses soo much RAM currently I have a RedHat 8.0 box running sitting at the gdm login screen nothing running on the box, X is using 82MB of RAM, the system is using 452MB of RAM, sitting at the login screen!! what the hell is that? X takes as long to start up as the rest of the system, on my laptop (running gentoo) the kernel/bootscripts take about 15 seconds to start, and then its at least 20-25 seconds more before I get a login screen in gdm... In short, X is slow and eats more system resources by itself than an entire windows system.

    2. Re:X is fine by dvdeug · · Score: 2

      the system is using 452MB of RAM,

      Let me guess: the system has 512 MB of memory? Linux tends to fill memory with copies of files and libraries, so they are there when you need them, but it's trivial for the system to reuse the memory for stuff that needs real memory. This means things that measure memory often return values of little interest. For a comparison, memstat claims my system is using 30 MB of memory (however it measures that), where as top claims my system is using 358 MB of memory (which seems to be the amount of virtual memory used). Back when I only had 128 MB of memory, doing comparable things, top claimed my system was using ~120 MB of memory.

    3. Re:X is fine by pavera · · Score: 2

      the system has 576MB of RAM, unfortunately, when its running (as it is now) if I were to start up some memory demanding app, or really just about anything (mozilla with 4 tabs open) it will drop into swap and slow to a crawl. the system doesn't drop libraries out of RAM to make room for programs that need it, it puts the programs into swap... unacceptable.

    4. Re:X is fine by dvdeug · · Score: 2

      if I were to start up some memory demanding app, or really just about anything (mozilla with 4 tabs open) it will drop into swap and slow to a crawl.

      What are you running?!? I used to run with 128 MB of RAM, and almost nothing noticably swapped. The only thing that swapped was manipulating megapixel pictures (well, there was that day I told dd to copy a 700 MB into memory, but that was my mistake . . .). I don't know what your problem is, but it's not X (which has been running on Unix since the 80s and 4 MB machines) and I seriously doubt it's XFree86.

      Run memstat | sort -n, and tell us what the last few lines are, besides /dev/mem and /SYSV* (which will be there, but don't use real memory.) That would tell us what the real culprit is.

      For example, on my system:

      3464k: PID 5364 (/usr/bin/konsole)
      3628k: /home/mp3/Download/Chicago/Chicago-I_Dont_Want_To_ Live_Without_You...
      3804k: /usr/share/dictd/gcide.index 235
      4496k: /usr/local/share/dictd/revo.dat 235
      5492k: /usr/lib/libqt-mt.so.3.0.5 5364 5367 5370 5373 5375 5431
      6760k: PID 280 (/usr/X11R6/bin/xfs)
      8392k: /usr/share/dictd/wn.dict.dz 235
      13016k: /usr/share/dictd/gcide.dict.dz 235
      24196k: PID 15430 (/usr/bin/sort)
      27880k: PID 14965 (/usr/lib/mozilla/mozilla-bin)
      27880k: PID 14985 (/usr/lib/mozilla/mozilla-bin)
      27880k: PID 14986 (/usr/lib/mozilla/mozilla-bin)
      27880k: PID 14987 (/usr/lib/mozilla/mozilla-bin)
      27880k: PID 14989 (/usr/lib/mozilla/mozilla-bin)
      27880k: PID 15248 (/usr/lib/mozilla/mozilla-bin)
      28860k: PID 5315 (/SYSV00000003)
      56384k
      3886976k: /dev/mem 5315

      (Note that due to the multi-threading system that Linux uses, the 27MB Mozilla is using gets mentioned 6 times, but it's still only 27MB.)

    5. Re:X is fine by zztzed · · Score: 2

      Just remember that XFree86 maps your video card's memory into its process space, so it's not using as much of your RAM as it appears to be.

    6. Re:X is fine by Compuser · · Score: 2

      I agree that X isn't necessarily a bad protocol.
      The problem with all X implementations, all of
      these Berlins and picoGuis and stuff is one and
      the same: context switching. More bluntly, I want
      my GUI in the kernel! Now that's just what I want
      so feel free to feel differently but until it is
      in the kernel you'll have to live with me bitching
      about X's speed and responsiveness.

    7. Re:X is fine by Anonymous Coward · · Score: 0
      In short, X is slow and eats more system resources by itself than an entire windows system.
      This is quite untrue. I've quite happily run X on machines with 16MB and 32MB. Gnome and KDE are quite bloated, though. I've never happily run them on a 16MB machine. But, if you are just using 10 or 12 xterms and, say, blackbox as the window manager with an older version of Netscape 32MB is plenty. I did that for months with a 32MB stick next to my computer that I often contemplated putting in but decided that it wasn't worth the effort (until we were hit with a roving blackout and then I'd already lost all my windows.)

      Granted I wasn't running RedHat, I was running NetBSD, but I don't think that makes all that much difference in this situation.

      On my current system, here is my memory usage:

      Memory: 141M Act, 39M Inact, 2252K Wired, 28M Exec, 60M File, 38M Free

      I'm running windowmaker, 7 or 10 aterms with transparency, xpdf, ggv, phoenix with about 10 tabs open in one window and 2 in the other, xdvi, all manner of little meters and dials and whatnot.

      Granted this would swap a little if I dropped to 128MB, but on the older systems that I use, I drop the backgrounds, the transparent terminals, the silly eye candy off to the side, and use a small window manager and fit very nicely into a 32-64MB system.

    8. Re:X is fine by doug363 · · Score: 2
      One of the first things that you learn from reading "top" displays and the like is that the figure for X includes the video card's memory (which is often mapped into multiple places in X's address space, so it counts multiple times). Also, X uses some of its address space as shared memory for communicating with it's child processes. And shared libraries count against each program that uses them, even though the code is shared between them.

      Getting an estimate of how much memory is free on operating systems like Linux can be difficult at times. IIRC, up until 2.5.something, Linux didn't know for sure exactly how much RAM it had remaining. So actually working out how much RAM Linux was "idling" at is a bit tough, unless you know a lot about the shared libraries that your apps are using and the way that your X display driver works.

    9. Re:X is fine by FooBarWidget · · Score: 2

      "it always uses at least 75MB of RAM on any machine I've seen it running on"

      1. It doesn't take 75 MB of RAM. XFree86 mmap() your video card's memory. The *real* memory usage is probably reported memory -minus- video RAM -minus- shared memory.

      2. You say it's slow and bloated because top/ps reports a high memory usage. That's psychological: you *think* it's slow, therebefore it *feels* slow.

    10. Re:X is fine by pavera · · Score: 2

      So like I said at the begining maybe I just don't know enough...
      (I had no idea x mapped the video card memory into its address space and then it counted against the X process) on the redhat box in question with a 64MB video card, that pretty well explains the 82MB of RAM... sorry I was uninformed, thus we learn!

    11. Re:X is fine by Anonymous Coward · · Score: 0

      I can't see how X (now I'm mainly talking of the XFree86 implementation) is fine... it's not as bad as it used to be in the XFree86 3.x days... but it's 2D performance is slow compared to Windows/MacOS/whatever.... Simply dragging a window around shows you how it lacks the liquid smooth feel that other GUI environments can give you... I'm talking not just of large X desktop environments like GNOME and KDE... but even lightweight ones like WindowMaker...

      I would have to say that the biggest problem with XFree86 right now is the 2D performance... my friends that use windows think that Linux is a slow OS for example because it cannot even move a window smoothly... now of course this isn't Linux's fault, nor is it necessarily even the window manager's... People sometimes say that it's just me... that my configuration is bad or wrong... but this simply is not the case... I think it's more likely these people have only used X for so long that they have lost their basis for comparison... I'm used X on Solaris, FreeBSD, and Linux, on many different hardware setups, with many different video drivers, and it's the same thing... jerky performance... If a 1 ghz Athlon with a TNT 2 (my current setup) can't even display a window being dragged across the screen smoothly (it's great in XP/2000), there's a severe problem.

    12. Re:X is fine by jeremyp · · Score: 2

      Repeat after me: X is a protocol. It doesn't use memory or anything unless you put the protocol definition into a PDF. You are complaining about a specific implementation of the protocol (XFree86 probably).

      It's obvious from your description above that XFree86 is not what is eating all the RAM ("X is using 82Mb, the system is using 452Mb"), so that's 370Mb in use that is *not* being used by XFree86. In fact, what it is is Linux grabbing all the free RAM for disk buffers etc. In my last job one of our customers was claiming our product was doing something similar. Their servers with 1 Gb physical RAM were running with about 900Mb usage. We were able to demonstrate that there was no real problem by writing a C program that malloced 800Mb, wrote data to every single page in that 800Mb and then exited. After the program exited, memory usage dropped to about 200Mb for a while.

      Also, it probably isn't XFree86 that makes it slow for you to get a login prompt. In my experience, it's the Gnome/KDE environment that takes most of the time in starting up the windowing environment. Gnome is not part of XFree86.

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    13. Re:X is fine by IamTheRealMike · · Score: 3, Insightful
      Try reposting those comments, but where you wrote X write GDI.

      The purpose of X is to allow you to draw things to the screen and manage windows (drawing viewports). X is not a GUI, in the same way that the GDI is not a GUI, and neither is Display Postscript. Ditto for the Linux framebuffer. Enforcing UI standards is the job of the toolkit. The fact that we have 2 major widget toolkits is kind of unfortunate, but actually other operating systems have this issue as well.

      For instance Microsoft Encarta has its own widget toolkit. So does MS Office. On the Mac side, the whole brushed metal look that appeared a couple of versions in is another good example - did Display Postscript enforce the beige stripes? Of course not, that wasn't its job.

    14. Re:X is fine by Amit+J.+Patel · · Score: 1

      I ran XFree86 on my 486/66 with 16MB of RAM .. no swapping. At work, where I have 384MB of RAM, X is using 138M. At home, where I have 512MB of RAM, X is using 276M. There's something weird about X and Linux where X gets all your extra memory, which is really misleading. :(

    15. Re:X is fine by Anonymous Coward · · Score: 0

      Paste etc should be UP TO THE WIDGET SET.
      The only paste defined by X should be middle click.

    16. Re:X is fine by dh003i · · Score: 2

      I agree with you, and was in error when speaking of X and enforcing UI standards. The main thing, though, is that somewhere UI standards need to be enforced. The best way to do it is to allow the user to decide what various key combinations do, and have those key combinations work for every app, where possible. I agree that it is a little unfortunate that we have two major widget toolkits, but only when people decide to mix them. People should stick with one toolkit if they want consistency. Also, the toolkits need to do a better job of enforcing (for example) keyboard combination standards.

  68. Generic "she" by Anonymous Coward · · Score: 0

    I stopped reading your post when I saw your use of "she" as a genderless pronoun. Please take some time to learn our language and its history.

    1. Re:Generic "she" by shaitand · · Score: 1

      I looked and looked, but as yet, I can't find your genderless "she", I see "he" or "his" for all the genderless pronouns. Our language isn't exactly spectacular enough I'd consider it to have a "history" worth studying anyway ;) From what linguists tell me, it is cumbersome, does a poor job of expressing even a slightly abstract concept, and is the most difficult of all languages to learn. The only reason it's spreading throughout the world is that the US has plenty of money and we are too lazy to learn a proper language (myself included).

    2. Re:Generic "she" by Anonymous Coward · · Score: 0

      I vomited when I saw the PicoGui home page was a "wiki."

    3. Re:Generic "she" by amentia · · Score: 1

      err. nope. the PicoGUI _has_ a wiki, it isn't one!

  69. SexyKellyOsbourne is realy a man... by Anonymous Coward · · Score: 0

    she performed electro-lastic interectotal angioplasty and you may see the results of the medical feat on http://freshmeat.net/project_search?q=cache:rlPIVl LKgJQC: articles.transgaming.net/view/wineXvwinehq+&hl=en& ie=UTF-8

  70. Re:You can't really replace X (or windows) by sabaco · · Score: 3, Funny
    Wow this comment is almost perfect for a generic "you shouldn't rewrite software xyz" post. Look at how easy it converts to a senseless Windows vs linux post:

    Basically, everything depends on Windows, so you can't really replace Windows and maintain backwards compatibility. In order to have backwards compatibility, you would need to provide all the services provided by Windows, so you would, in effect, just be writing a new Windows.

    If you really want to replace Windows with some other system, then you could probably get pretty far by just porting MS Office and Internet Explorer over to the new system. This should pick up quite a few apps. I have no idea how hard this would be.

    But, by and large, it's silly to constantly rant and rave about Windows. It's just an abstraction for hardware that allows you to effortlessly run multiple programs. It is so low level, that it almost doesn't make sense to criticize it. And I think many of the critics don't really understand fully what Windows is.

    For example, if you don't like the performance, then that is a complaint against the specific hardware or drivers you are running, not against Windows itself.

    If you don't like the program crashing, then that is a complaint against the programs you are using (Office, IE, ICQ, etc.). This has nothing to do with Windows.

    As far as features go, if you really want a feature and Windows does not provide it, then you have a legitimate complaint. But really, what more do you want from a video (and mouse and keyboard) driver than the ability to get information about GUI events and to paint the screen in any fashion you desire?

    To sum up, I don't see that Windows is inherently problematic. I think that most complaints about it are misplaced, and should be directed elsewhere.

    Furthermore, when people talk about replacing Windows, they seldom seem to appreciate the benefits of allowing multiple applications to run on screen at once. This is one of Windows's strongest points, yet most people seem to want to replace it with what amounts to software rolled up with a kernel.

    Well, that's my $0.02.

    ... That second to last paragraph needs some work, but otherwise I think it went very smoothly. :)

    --
    This is SO educational! -- Kintaro Oe
  71. Re:Wow by Anonymous Coward · · Score: 0

    You've lost your touch. You used to be such a better troll.

  72. So fix X by Anonymous Coward · · Score: 0

    X is neither big nor bulky. Yes, Xtk applications are fugly. So don't use them!

    It's more-or-less a waste of time to reinvent X all over again. If you don't like the XFree86 implementation, code your own X server.
    -russ

    1. Re:So fix X by t_hunger · · Score: 2, Insightful
      I'm following your suggestion! I'm replacing the part of the X-Server I don't like with my own 'Implementation': The protocol. We needed a new name for that and came up with Fresco. Other people have done the same and used names like GNUstep (although they are merging their code back into X), PicoGUI, OpenBeOS, 3dwm, to name just a selected few.

      Since all of these are very much different from X. Some of the projects mentioned go way beyond anything proprietary GUIs can do today! So if we are reinventing wheels, at least we are improving allong the way.

      Regards, Tobias

      --
      Regards, Tobias
  73. Re:When does the OS building stop and the work sta by dvdeug · · Score: 2

    lot of people are still writing apps for Windows. For example, go to hotfiles.com and search for "word processor". Quite a few choices. For Linux, you've got...AbiWord, Maxwell, WordPerfect, StarOffice/OpenOffice.

    Your link doesn't work for me; apparently it detects I running Linux and gives me the ZDNet Linux download page.

    You forgot about Ted, and KWord. More importantly, writing a new word processor is pointless. What you need is one word processor that does everything in everyone's language; in Windows, Word is basically the only word-processor that gets used, with exception of a few historical niches for WordPerfect.

    If you read the recent article on why slashdot users use windows, the people complaining about application support were (a) claiming that Gimp (e.g.) wasn't as good as Photoshop, (b) using expensive proprietary programs that have very limited markets, or (c) game players. I don't remember anyone saying they couldn't find a word processor.

  74. X isn't slow but OSX's GUI sure is... by bkontr · · Score: 0, Offtopic

    I know this offtopic but why didn't Apple provide compatiblity with X in their GUI? I think they would have at least doubled the amount of apllications that could be run on their platform and herded some developers over to their camp as well. I thought X was bloated, but OSX is relatively slow on my Titanium laptop and I have 768M of Ram...Even using the X Fink provides is faster!

    --


    "You helped our nation celebrate its bicentennial in 17 -- 1976." --George W. Bush, to Queen Elizabeth, Wash
  75. That'd be nearly there... by Svartalf · · Score: 2

    It's called DirectFB. GTK+ apps can already run under it directly. All it would take is to make sure that the pieces of GNOME that relied on something from X as opposed to the GTK+ interfaces are migrated and you'd have it.

    --
    I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
    1. Re:That'd be nearly there... by 21mhz · · Score: 2

      DirectFB is missing one bit: a server that manages the display. When a program crashes, what is going to notice and clean up? How are windows from different processes supposed to coexist on one display? X was brought up to cover this; I don't think there was a shortage of move-your-pixels-around solutions before it.

      --
      My exception safety is -fno-exceptions.
    2. Re:That'd be nearly there... by BigSven · · Score: 1

      DirectFB has support for multiple applications running at the same time. This has been around for quite some time now but was considered experimental. Lately the IPC layer (dubbed Fusion) was changed from SysV IPC to a kernel space implementation. This gave a huge improvement on speed and stability and I'm now using it all the time. Check this screenshot showing The GIMP and a plug-in (GIMP plug-ins are separate processes) running on the same DirectFB desktop.

    3. Re:That'd be nearly there... by 21mhz · · Score: 2

      This is impressive, but where do the applications get redraw events and such from? That requires some centralized management, or you'll have a swarm of applications cooperating to keep the display up to date; if at least one of them is ill-behaved, everything is FUBAR. The next logical step: you set up a separate process (or a chunk of kernel code, which is a bad thing) to manage windows. But how is that far from a slim X Window server?

      More common disadvantage of direct videobuffer rendering solutions is lack of separation and protection: nothing prevents a runaway program from writing crap all over your display. Sure, some memory protection/remapping can be organized, but it should be sufficiently fine-grained, and an implementation of it will inevitably give away some of the performance that was the purpose of the frame buffer in the beginning.

      To sum it up: on the desktop, I'd rather have an X extension that would present mapped video memory buffers, and retain the general security and stability that X developed over the years. The fact that X works over the network does not hurt, too.

      --
      My exception safety is -fno-exceptions.
    4. Re:That'd be nearly there... by Anonymous Coward · · Score: 0

      X does _NOT_ I repeat _NOT_ manage your windows. That task is left to a layer called a window manager. The fun thing to do under X is to kill the window manager and watch all the windows lose their control bars and fix immovably to the background and then start up a different window manager that puts up control bars that look differently.

      DirectFB can use a window manager the same as X. In fact I would be very very suprised if there weren't hooks in place in DirectFB to allow this. And adding the hooks would be trivial if they aren't already in place.

  76. Proof? by Anonymous Coward · · Score: 0

    Any proof of this?

  77. Awesome! by fireboy1919 · · Score: 2

    You're the man. That'll do nicely.

    I'll be using that when I have to be at Windows machines. Still...its not easy to get some of the less knowledgeable to use something that complicated to install.

    --
    Mod me down and I will become more powerful than you can possibly imagine!
  78. Actually... by fireboy1919 · · Score: 2

    I think they always had it.

    However, thin client support has only been added to Windows very recently, unlike X, which always had that. It comes from the different origins of the two, of course.

    On the other hand, you don't have to restart your machine to restart your X server, but you do have to restart your Windows machine if the Windowing portion goes down, so the difference is noticable.

    Heck, with the help of XDM, whenever my X goes down (as a result of me pressing ctrl+alt+bkspc), it comes right back up. I use it to change resolutions all the time.

    --
    Mod me down and I will become more powerful than you can possibly imagine!
  79. Leverage existing WMs by karlm · · Score: 2

    People like thier existing WMs. Adoption will go much better if it has an identical WM interface so people can use thier WMs without recompilation.

    --
    Copyright Violation:"theft, piracy"::Anti-Trust Violation:"thermonuclear price terrorism"<-Overly dramatic language.
    1. Re:Leverage existing WMs by t_hunger · · Score: 1
      I'm afraid the concept of a windowmanager in the form of a client application does not translate well to picoGUI.

      Regards, Tobias

      --
      Regards, Tobias
  80. A Killer App by Anonymous Coward · · Score: 0

    Personally, I can't stand X. Aside from being a memory hog its a horrible approach to user interface design.

    I do use X at work though but there is really only one app keeping X on my UNIX boxen at work: Mozilla.

    Give me a decent, full-featured web browser and an "Xterm like facility" for running shells and I'm sold.

  81. heh, funny by mrscorpio · · Score: 0, Offtopic

    My "ask slashdot?" submission a couple of weeks ago for discussion on Xfree86 alternatives was rejected, and now there's this one based on a specific alternative. I've never had a story accepted. Oh well, no one loves me :(

    Chris

  82. Why I love X and will defend it to the death... by Nice2Cats · · Score: 2, Insightful
    ...against well-intentioned but ill-advised attempts to replace it:

    We have three computers in our house on three levels (Duron, K6, Laptop). With X, I can log in to any of the computers from any of the other ones and start working just as if I was sitting right in front of it (my wife, who was a Microsoft consumer only before she met me, had a Dickens of a time understanding that concept). I need network transparency.

    I also use two desktops, depending on the load my applications are going to put on the machine and if I feel like eye candy (KDE and Blackbox). With Blackbox (for non-Unix people: lightweight, minimal window manager), I can do amazing stuff on my K6 because the GUI is not sucking up all the resources (aka "Morbus microsoft", now also known as "Morbis apple"). I need multiple window managers because of different resource needs.

    Now I'm sure you could probably include these in picoGUI, but then all you have done is made a new version of X without the decades of testing that has gone into the real X. Come back when your software has a track record of more than ten years, and I might look at it for a core system: I want proven stability. The last time my X crashed it was because of Nvidia's shitty closed source drivers; since I switched to ATI, it is solid like a rock.

    Oh, and what about those old graphics cards I have sitting around here? Are you going to backport every single driver, so I can still use my Oak VGA card with 512 KByte RAM? That might not sound like much, but with X Window and that card and a PI or even a 486, I can still build an X terminal and hook it up to anything. I want maximum hardware support.

    No thanks. Enjoy yourselves writing picoGUI, it's a free Internet and and new software is always a good thing, but don't expect to replace X. If it works, don't fix it.

    1. Re:Why I love X and will defend it to the death... by t_hunger · · Score: 4, Informative
      Yes, we all like X. But since Fresco was mentioned allrteady I'll step in on its behalf here. I knoe PicoGUI a bit and both projects are somewhat similar from the ideas behind it all (allthough with a very different implementation and emphasis:-)

      With Fresco you get network transparency. We use CORBA to develop Fresco, so that's a free bonux. I know all those CORBA is bloated, jadajada, arguments, but I am confinced they do not apply to Fresco: We knew from the very beginning we will use CORBA and have taken its strength and weaknesses into account designing the overall system.

      Anyway: Fresco is network transparent and it uses way less bandwidth then X. The protocol is so much more high level! The small demo we got only uses 1.9kBit/s to hold the connection with the remote server. I don't know any numbers for X, but VNC needs 800kBit/s when used to 'forward' the Fresco server to another computer via its protocol. It was using the same demo but with less then half the screensize the original server ran at. Not that the screensize does matter with Fresco. Of course I did the same things with the window (moved, rotated, shaded it, opened subwindows, etc.) using VNC to forward the display and running the Fresco server locally and having the client connect from the remote maschine.

      Fresco allows for different 'WindowManagers' (of course we call them 'DesktopKit'). Those are loaded into the server and are not normal clients like in X, that's the basic difference.

      You got a good point wrt. the decades of testing. Obviously neither PicoGUI nor Fresco can give you that. But then there's less testing needed: The servers have much less code. All the graphic-card handling stuff is separated out into libraries like SDL, GGI or whatever. Those have been thouroghly tested for a while now, makeing that critical component rather relyable.

      Hardware support is not as bad as you imagine. Since neither PicoGUI nor Fresco (nor any other project in a sane mind) is writting graphic drivers themselves! There are excellent libraries, kernel modules, etc. around to do that. If there are only X-drivers, then you can still run on X-windows (it spoils the purpose of replacing X, I know:-) till one of the farious 'rip the drivers out of X'-projects is successful. There are several of those arround even now.

      Finally you use the if it works, don't fix it argument. I like that, but obviously X does not work or there wouldn't be so many X-extensions getting actively developed. As I see it, you can either extend X (to Y or whatever you want to call it) or work on something new like PicoGUI or Fresco or some other project. In both cases you end up with a system where applications developed for it will not run legacy X-Systems (without considerable efford of the Programmer/Toolkit writer). Once you use an extension your application breaks for X-without-said-extension. So baiscally you end up with a system not 'forwardward' compatible with vanilla X, independent of wether you extend X or write something new. X-with-extension is of course backward compatible, but a compatibility layer can be added to another system later if need be. That's a lot of work, agreed, but the very simple case of just letting a X-server run in a window was allready demonstrated in Fresco.

      Regards, Tobias



      Some URLs you might find interessting: the Fresco Homepage, a short comparison of Fresco and X (the server is slow, please bear with it), finally a page listing among other things Other GUI Projects I found to be interesting for various reasons (both dead and alive;-).

      --
      Regards, Tobias
  83. Re:When does the OS building stop and the work sta by scm · · Score: 1

    Say what you will about Windows but at least it's a standard to work against.

    That's that great thing about standards... there are so many to choose from...

  84. Easy to use and capable by Expresso · · Score: 1

    There is a trade off between easy to use, and capable.

    Yes, and the trade off is the amount of work to make it easy to use AND capable.

    1. Re:Easy to use and capable by PotatoHead · · Score: 2

      You know hard things are hard. Setting up a single display is easy. Networked ones are harder. Multiple displays networked are still harder.

      Ease of use always detracts some from capable. If we do a *lot* of work, we all become happy about how capable the system is.

      I am not saying we cannot have both.

      But a large part of that work is education about the nature of X itself. This directly impacts how easy to use it is.

      Just because someone puts a nice interface on something hard, does not mean it is easy to use when the task is not understood.

      That is the problem many folks have with X. It is the same problem I had.

  85. Get lost by byran+lei · · Score: 0

    >management also modular,...). So I wonder: what would it take (apart
    >porting tons of applications) to make it a suitable alternative to
    >X+[your toolkit of choice]+[your window manager of choice]?"
    >
    Why would someone want to use something a loser such as yourself would force on people? Go back to playing with your Amiga.

  86. Re:Identities of Slashdot trollers discovered. by shaitand · · Score: 0, Offtopic

    nice, a slashdot hitlist.

  87. For another interesting GUI concept... by mkoskimi · · Score: 2, Interesting

    ... take a look at ENIÄK. It intends to bring a logically structured framework to GUIs such as HTML is to the Web or LaTeX to publishing; granted, it's been stalling for a long time due to the main developer having other things to do, but the concept is fascinating: imagine no longer needing to think about the concrete graphical layout, widget sets etc. when developing the interface for an application. Imagine just defining it in the sense of determining the logical hierarchy of elements: windows, text entry points, buttons, menus -- anything conceptually different from another element. And forget about the layout: the (yet unproven) goal of the architecture is that just as LaTeX automatically positions your document so that it is as readable and good-looking as possible, ENIÄK would automatically position and render the elements of the UI to create an optimal user interface.

    Many other advantages can be derived from the user interface not being defined physically but conceptually:

    • Platform-independence: the architecture relies on a general display server which translates the conceptual elements into a particular interface format, be it Windows, OSX, Gtk or HTML. The application's interface specification, however, remains the same for all platforms. In other words, once a display server exists for a particular platform, all ENIÄK applications will work on it.
    • I/O format independence: deriving from the previous point, display servers can equally well be created for text-only console displays or PDAs.
    • Lightweight remote use: since the interface is specified based on its logical structure, very little data needs to be transferred from an application to its display server. After this, the (local) display server takes care of rendering, and all that's transferred between it and the (remote) application are lightweight event descriptions.

    OK, enough advocation. Problems do still exist with the concept, mainly a) it's not compatible with any existing application and b) there's no proof of concept until a sufficiently advanced display server is created that actually shows some indication of that the server can adequately automate the process of transformation from a logical, structured interface description into an intuitive, user-friendly physical interface. There's a long way to go, but still, I can't help but to be fascinated by such a concept of abstraction. For more info, read the white paper or complete specification

  88. Re:Replace X? Why? by Anonymous Coward · · Score: 0

    nice troll there buddy. if Linux is so much better then why would i use windows? i'll tell you why -
    all my programs run on windoze. your shitty *nix apps don't compare to my audio/video editing toolz and they never will. your shitty fstab config files don't compare to my clean Control Panel, and they never will. GNOME or KDE?? I don't give a shit - they both suck. too slow. too bloated. want more? how about stability.. i've never seen a blue screen under Win2K but i've seen plenty of kernel panics. how about the fact that i have hot-pluggable USB support and you never will? Even better, why doesn't your precious Linux have support for all my hardware - old, new, whatever, it doesn't support some major shit and that's plain sad.
    somebody needs to beat you with a cluebar good n proper.

  89. Re:Replace X? Why? by FooBarWidget · · Score: 2

    "Make it more low-level and very easy to setup and change the resolution."

    XRandR. 'nuff said.
    Where in the world have you been all this time??

  90. Fresco by POds · · Score: 0

    The PicoGUI people mentioned Fresco which is a similar peice of software (aparantly the author didnt know it existed). However, Fresco is a little different. It doesnt target PDAs (well at least not exclusivly).

    Unfortunatly, Fresco is really only useful for Demo's right now. But something like this could replace X in years to come, basicly because it'll standardise a lot of things that initial scare users and have them running for the hills when they first encounter X, kde, gnome, window-managres+, gtk, qt, etc... This things, turns all that, into one package, something i've been waiting for.

    MacOSX does a pretty good job of this, but who has the money for it really? :)

    The fresco homepage is above, but go right here to find out what it really is.

    --


    Giving IE users a taste of their own medicine since 2005 - http://pods.-is-a-geek.net/
    1. Re:Fresco by khuber · · Score: 2, Insightful
      But something like this could replace X in years to come

      I think it would take something amazing to replace the X Window System. There have been a few attempts to replace it. picoGUI appears to be a inspired by QNX's Photon microGUI (hence the blatantly similar name).

      I think you hit on the real problem though, standardization. There is no single central Unix vendor than can dictate UI design standards or enforce a single widget toolkit. picoGUI has a snowball's chance in hell of becoming the defacto widget/windowing system. Hence it will just serve to fracture the UI experience even more.

      My complaint about the UI on Linux/Unix has always been that it's so frickin inconsistent. Too often apps do things differently. Not better, just differently. Everyone can make their own super neato widget library and it's not that hard to make your own X replacement.

      That's the problem. Don't try to invent your own window system, menu ordering or UI interactions, just base them on Windows as much as possible and forget about "the best" way to do things. With KDE (don't know about Gnome, never liked it) that is happening, slowly. Maybe picoGUI is taking the right approach by limiting the ability to make apps with fucked up GUIs just because you can and "Windows sucks", but most Unix diehards will loathe the loss of flexibility.

      -Kevin

  91. Unfair comparison... by Anonymous Coward · · Score: 0

    How is this a fair comparison? A lowly 3635 iPAQ still beats the pants off a comparable Pentium 90. Sure you could throw more hardware at it, but then it's not a stock p90 like a stock iPAQ. Faster processor with half the screen size, not to mention it's target audience is mobile. However, there's still value in that them there Pentium 90s, just turn them into cost-effecitve X Window Terminals. iPAQs can use the same stuff, but it doens't make sense for an iPAQ to be a workstation.

    mindrape

  92. I often tought this....... by fozzmeister · · Score: 0

    ..... however the one massive weekness that i saw was that (when i read it) it did not support overlapping windows, while this doesn't matter on a screen of 320x480 it seems essential on a display of 1280x1024, try and work that out!

    1. Re:I often tought this....... by Squidgee · · Score: 1
      You said:
      ..... however the one massive weekness that i saw was that (when i read it) it did not support overlapping windows, while this doesn't matter on a screen of 320x480 it seems essential on a display of 1280x1024, try and work that out!

      Actually, it does support overlapping windows. See this screenshot for proof.

    2. Re:I often tought this....... by Anonymous Coward · · Score: 0
      Dumbass!

      It's THOUGHT not TOUGHT you dumbshit! And it's WEAKNESS not WEEKNESS. Fucking moron, learn to spell!

  93. Re:When does the OS building stop and the work sta by IamTheRealMike · · Score: 2
    Say what you will about Windows but at least it's a standard to work against. With Linux it seems there always some pertpetual tinkering...enough already! Enough tool building, now make some apps.

    Windows? A standard? So I take it you missed the whole .NET thing (totally revamping win32 development from the ground up), the Longhorn Storage+ project (scrap ntfs, replace with database) etc etc. The very nature of open source is that it's constantly experimenting, trying to find new ways of doing things. If you think only open source does research, then you need to check out the Microsoft UI Research website.

  94. Re:No. X is here to stay, just like it should be by IamTheRealMike · · Score: 2
    X is a part of that work and brings with it some serious benefit. Again, I ask: "Why trash all of that, just so we can start all over again with a simpler and more limited system?"

    You're right partially, X is here to stay for a long time yet. However, I certainly think what these guys are doing is cool, and I'm happy to see that some people are thinking about what comes after X. I mean, surely you don't think that X is perfection itself do you? That it cannot be improved upon? For now, we're happy with X I agree, it's a fine graphics engine, but maybe in the future people like Micah will give us something better.

  95. Fundamentally a Dictatorship... by Anonymous Coward · · Score: 0

    Fundamentally dictating to end-users how they should and will work, this isn't burger king, you can't have it your way, it's our way. For example, it's an insult to see doctors, those who survived years of schooling and internships, get frustrated trying to adapt what they know, but then are forced to adopt some work-flow process model in order to get anything done. Shouldn't it be the other way around? Instead of us having to adapt/adopt to some software dogma, it should adapt to us, meet our needs by being the most effcient tool it can be by learning how I work best. Of course there should be guidelines, some liberal, some strict, who cares, just as long as it's open ended and not controlled by a single entity. Who cares what the damn thing looks like, or how it sounds, unless it's absolutely required of the interface, but how often does that happen? How many interface changes, violations and just plain inhumane no-no's have you seen since Windows 95. Instead of bitching about the dogma being enforced, you rather bitch about X being so inconsistent (not saying you're wrong). What's even worse is bitching about how an end-user would like to customize the application to meet his needs,instead force feed the little babies strained gui interfaces and teach them not to think for themselves as they grow up. Slaves who can't think for themselves, but think they're free, have no reason to rebel.

    mindrape

  96. that's odd by DrSkwid · · Score: 2

    Konqueror runs in Enlightenment just fine thanks.

    and iirc Mozilla runs just fine in KDE

    --
    There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
  97. Everaldo by Captain+Zion · · Score: 2

    Everaldo is a pro working in Linux themes and art and is IMHO doing a great job. Crystal was originally written by Everaldo as a custom KDE theme for the Conectiva linux distro, and later published under an open license. Everaldo also made the "big eight" wallpaper for Conectiva (also used by Mandrake 8 and others) and IIRC part of the YaST art for SuSE. His latest artwork is the "steel donut" theming for KDE and YaST in Conectiva's UnitedLinux-based distro.

  98. Nothing. by leoboiko · · Score: 1

    Look here. It can run zsnes. I can play Final Fantasy VI. What else do you need?

    --
    Prescriptive grammar:linguistics :: alchemy:chemistry. Stop being a nazi and learn some science.
  99. Why keep re-inventing the wheel? by nurb432 · · Score: 3, Insightful

    Instead, fix the current one.

    Current wheel ( X ) comes in several colors ( platforms ), the protocol is universal ( remote display too ). X is mature, and has millions of programs written for it NOW.. not SOMEDAY..

    It has all the functional components that is needed in a graphic subsystem.

    Sure, its *not* perfect, but spend the time enhancing it instead of tossing it out.

    Plus people need to learn to sepreate the X subsystem to the GUI on top before they start comparing things... One cant accurately compare wheels to bricks..

    --
    ---- Booth was a patriot ----
    1. Re:Why keep re-inventing the wheel? by Anonymous Coward · · Score: 0

      Plus people need to learn to sepreate the X subsystem to the GUI on top before they start comparing things... One cant accurately compare wheels to bricks..

      No, but we can compare X + $GUI to a wheel *made* of bricks. Thanks for the inspiration, I think that analogy best sums up the shortcomings of an X-based interface. It works, sometimes even well, but it's heavy, ugly and takes far too long to get rolling.

  100. Re:No. X is here to stay, just like it should be by t_hunger · · Score: 1
    I agree with you that X is a solid system. It's network transparency was way ahead of its times (and still is). Nobody is arguing that X sucks here! X got its place on a Unix Syatem and it will keep that place for a while longer.

    That's not the point. The point is that somebody needs to do some research on how to improve things. We don't want to copy Windows and to a lesser extend MacOS X only, do we? So we cannot just say X was fine for years now, let's just add things onto it and hope that it won't break. Have you ever seen the new Apple GUI? The eye candy allone that can be done with it makes it worth to investigate it once. Guess what: It's not based on the notion of pushing pixels around like X is: It uses OpenGL underneath.

    X was developed nearly two decades ago. That it is still around and widely used shows the genius of those that developed it. But at that time there was no hardware that could do much more then setting individual pixels. Nowadays we got those niffty 3D accelerator boards: Wouldn't it be nice to use that power outside of games for once? X can't do that.

    Then there are high resolution displays getting developed. Supporting those with a purely framebuffer-based solution will suck. Just think about the bandwidth you will need between your graphicscard and your 20" 300dpi monitor! X cannot support that: It needs a framebuffer and cannot use some vectorbased protocol to talk to your monitor.

    Think about input devices: X supports 5 button mice and a keyboard. It does not support a wheel mouse (the wheel is mapped to button4 and 5!), it does not decently support graphic tablets, nor more sophisticated input devices like data gloves.

    Think about those 3D display systems that regularly make it to the fontpage here. There's just no way you can properly use those with X.

    Fresco on the other hand is developed with all that in mind. So projects like it (there are more then Fresco and PicoGUI!) are of extrem importance to the community in my oppinion. Even if they all fail: The code will be there, others can pick it up and lump it into X13 or whatever.

    Regards, Tobias

    --
    Regards, Tobias
  101. What I think XFree86 Ought to Do by Anonymous Coward · · Score: 0

    1. Replace xterm with a more popular terminal emulator, like rxvt. Same goes for a number of other rarely-used standard clients. Get rid of demo/game apps (ie, make them an optional package).

    2. Alter the contrib client libraries so that the clients look better on a 256 color display with good resolution. Who uses monochrome these days apart perhaps from palmtop users? If they want to support both, make a compile-time option that will switch between the two.

    3. Rally round a standard, highly configurable sound server.

    4. Write a daemon that would handle all requests for pseudo-tty's so that terminal emulators don't have to be setUID.

    5. Harden X all around to make it more attractive to system administrators, etc. Who else wants to launch clients remotely? Gamers?

  102. Web Browser by dunham · · Score: 2, Informative

    For PDA use, you should consider porting "dillo". It doesn't do frames or javascript, but it can render most other sites and the executable sizes is about 230k.

  103. Mac OS X by Squidgee · · Score: 1
    The site claims it will run on Mac OS X; has anoyone tried it? Did you need any hacks to get it running? I'm currently downloading on my slow connecxtion, so I have time to wonder. =p

    If it does run, I'm going to hop aboard with the project, and start submitting OS X-based code.

    Until then, I'll be anxiously awaiting the download of the picogui source.

  104. For the dictionary challenged by Anonymous Coward · · Score: 0

    [webster.com]
    Main Entry: pico-
    Function: combining form
    Etymology: International Scientific Vocabulary, probably from Spanish
    pico small amount, literally, peak, beak
    1 : one trillionth (1012) part of
    2 : very small

  105. I've heard this argument ... by fygment · · Score: 1

    ... applied to Windows.

    --
    "Consensus" in science is _always_ a political construct.
  106. minimum system requirements? by walterbyrd · · Score: 1

    I can run windows-95 on a 386 with 640x480 VGA.

    Just how "pico" is this gui? I went to the site, but I didn't find anything about system requirements.

    1. Re:minimum system requirements? by Anonymous Coward · · Score: 0

      I know it can run on my revo (a PDA, 36MHz ARM 8MB shared RAM)

  107. What a lousy reason by Featureless · · Score: 2

    Not only are you wrong on the merits (since X's limitations - which don't bother you - are the death of a thousand cuts to innovation among developers as well as adoption among users), but you are wrong on the principle. Do something for the art of it. For the love of it. Don't refuse to do something new because what's old is "good enough."

  108. Different design by obi · · Score: 3, Interesting

    People don't seem to understand that PicoGUI is designed completely different.

    Like Fresco, the idea is to put the widgets and window management on the server side. And why wouldn't it be there?

    - it does NOT mean you can't replace your widgets with others with a different behaviour, look, feel, whatever!
    - picoGUI is scalable: not visually scalable, but the same program can display something using text-only lcd, console, or full-fledged graphics - and in all cases it's usable and adapated!.
    - it's about separating representation from content!!! isn't that what web developers have been struggling with too? (HTML + CSS)
    - the display hardware is on the server side, so having as much as possible on the (display) server side will give you a lot of opportunities to take advantage of hardware acceleration (see Fresco, that uses opengl HW acceleration for everything, including widgets etc etc)

    There's always a strong resistance against change - I wish people would be able to look towards the future a bit more. And in any case, we're not dropping X just yet, it's just about exploring new alternatives, that might end up technically better (isn't that what Open Source is about). These projects are not about making Yet Another Window Manager. They're not about eyecandy either.

    The fact that more and more projects (Fresco, picoGUI, ...) are independently coming to similar design decisions should be a strong hint that they might be on to something.

    Please, just read up a little bit on both the projects I've mentioned.

  109. Sourceforge /.ed? by Anonymous Coward · · Score: 0

    We're Sorry.
    The SF.net domain is temporarily pointing at this maintenance page.
    Please access the SourceForge.net site at https://sourceforge.net -- you will be redirected there in 10 seconds.

    Now this is an accomplishment. Taking down
    Bob's personal page running on an old pentium server in a closet is easy. But sourgeforge is a suppose to be big site.

  110. Gradualism... by Anonymous Coward · · Score: 1

    >Recently PicoGUI gained the ability to run in a "rootless" mode where it acts more like a widget toolkit than a complete GUI.

    This sounds like the right approach. Assuming you've got something new with value as a new programming paradigm, and not just as an X replacement, then

    1. Implement it as a widget toolkit.
    2. Let the apps appear.
    3. Implement 'pure pico-gui' for handhelds a la qtopia.

    This gradual approach allows support to develop without resorting to all the 'X sucks', 'throw out X' nonsense.

    Sounds like that's the approach you're taking. Good luck. Just one thing. Pick a toolkit to align yourself with as far as look and feel issues go. The last thing we need is another flamewar over yet another set of cut/paste standards.

    Maybe you could annoint new KDE-Gnome interoperability standards by taking the high ground and interoperating fully with one or the other. Then it's 2 against 1 to get the 3rd to come on board.

  111. A simple user perspective by theolein · · Score: 3, Insightful

    The reason X is mistaken for GTK is because most normal average computer users don't know the difference. One sees GTK based programmes and window managers such as the GIMP and GNOME and assumes that that IS Linux. Those that use SuSE see KDE and wonder why ALL programmes don't use that (including the GIMP, notwithstanding the fact that GTK comes from the GIMP). The point is that average users don't know or care why the GTK toolkit is so incedibly ugly (for them looks DO matter) or why X is not very flexible or easy to configure. They just give up and either use KDE or go back to Windows or use Mac OSX.

    Linux needs one standard windowing protocol and system, either GNOME or KDE, not both. The continual clashing is hurting Linux and making it harder for developers. Time for a change.

    1. Re:A simple user perspective by e_xworm · · Score: 1

      Windomanagers such as the GIMP???????????????? Windomanagers such as the GNOME?????????????? Windomanagers such as the KDE????????????????? ok no more comments on those ones... and as for the standard windowing protocol, there are the wm hints

      --
      X~
  112. Too high alimony prevents divorce from X by tz · · Score: 4, Insightful

    But to answer the question:

    1. Any "captive" application - think stripped browser on a kiosk - could use Pico.

    2. If the TOOLKITS which are (or should be) platform-neutral are ported. Qt is probably a good candidate. The Zaurus already runs QPE and Pico separately, but it isn't much of a leap to do QPE (already over Qt) over PicoGUI.

    But before you get too excited, the code is still in an early state, at least as far as compiling on every platform. It keeps client-server though.

    And I need to address some other comments about X.

    First, it isn't that slow, and one of the problems is that a lot of software is assuming SHM or other extensions that force things to be local.

    Second, dxcp or other programs can compress the X stream to make it usable over some slower links and would reduce bandwidth in any case.

    Third, if you are doing remote control or something similar, VNC or something similar is the correct solution.

    Fourth, X is the basic set of protocols. But in many references they mean X plus every toolkit, extension, and window manager and probably a few applications. Some things are only big because of these accretions.

    Citrix, or almost anything else on Windows is a hack since Windows was never designed to work remotely.

    You can criticize X all you want, but it is opensource, so you can fix or enhance the problems, and it seems to work well enough to allow the wide adoption.

    And PicoGUI addresses one of the major points - the need for a lighter weight system for embedded and small computer use.

  113. Re:No. X is here to stay, just like it should be by PotatoHead · · Score: 2

    X is not perfect, but it is damn good. Everything can be improved on --that's what computing is about right now.

    We need to make full use of what we have now though.

  114. Re:No. X is here to stay, just like it should be by PotatoHead · · Score: 2

    You confuse X with things that depend on it like display managers, input device drivers and such.

    If you want a desktop GUI that has openGL underneath, that can be done in X.

    The old machines I spoke of where SGI machines. They did have accellerated graphics, could display video in a window, use multiple screens, drive a 3D display and do all the other things you mention now.

    None of this is a problem with X. In fact, take a look at some of the visualization research going on right now. A lot of people use Linux and X to drive all kinds of things.

    You said it all in your last paragraph. We don't need to throw X out, just fill in the gaps a little.

    Someday, X will be replaced, but it won't be for a long time.

  115. Wow, that was flamebait. by ubernostrum · · Score: 1
    Where's a GNOME guy when you need one?

    <flame>
    If users look at GTK and wonder why it's so ugly, do they also look at KDE and wonder why it can implement fade-in menus with transparent windows, anti-aliasing, and ten thousand other shiny effects, but its word processor can't import MS Word documents correctly?
    </flame>

    If Windows 95 proved anything, it's that looks DON'T matter; applications with the features the users want will get you the market share even if looking at your GUI turns users to stone.

    Now, if you want a flamewar, keep posting. If you really want what you say, then tell the GTK guys to work on making their GUI pretty (GNOME 2 helped a lot) and tell the KDE team that applications matter.

  116. mirror(s)? by rsax · · Score: 1

    Does anyone have a mirror of the project site? I wanted to check out the screenshots which everyone's raving about but due to Sourceforge's servers being relocated I keep getting redirected to the main SF site instead.

  117. This might be cool, but .... by Anonymous Coward · · Score: 3, Informative

    There's nothing wrong with X. Most of the problems that people have with X don't have anything to do with the stability of X, they have to do with the API/toolkit, environment (KDE or GNOME), and/or the window manager. Those are the entities that "crash" the GUI. The problem is that a lot of newbies and even moderate users are not familiar enough with the system to understand this. They assume that because X disappeared off their screen, that X is to blame. I used to think this way as well, but after having gotten into Linux really in depth and compiled X a few times, I see now that the real culprit are the X clients, not the X server itself. The only thing the X server does that would lead someone to this conclusion is that it usually restarts: (Screen goes black, and X restarts, either resulting in just the X cursor on the checked background, or a DM pops up 'XDM, KDM, GDM, etc...' And, last not not least, if you are starting X with 'startx' (unmanaged), then yes... the GUI just disappears and takes you back to a *sh shell.)

    The latest realease of X actually has a lot of really great features that a lot of users are unaware of. Features that put it on par, if not slightly beyond the Windows GUI. (Mac OSX still has X beat :( ) Of course, the best feature hands down is the network transparency. Running X apps remotely and having them display on a local system is just great and much more flexible than Windows XP RDP. Especially since you can have applications running on several different systems all displaying on the same desktop (not in separate windows like RDP). Combine this with the Low Bandwidth Extensions (lbx) and you can do this over slow links with speeds that are pretty close to RDP. Your local X display becomes the main head for multiple servers this way! How cool is that?

    Of course, there is plenty of antialiasing and subpixel shading (for laptops) that again is on par with Windows XP's GUI.

    Overall, X is actually extremely stable, but ti does need a few improvements. I think the biggest flaw in X that makes people think it's unstable is that the session needs to restart when an app or client session dies. If X could be kept active and just allow the clients or apps to reconnect without ever going away, I think you would see a lot of people change their tune about X. It would also be nice if X allowed for reconnection of stateful sessions (Like XP allows for multiple users to be logged in with apps running). I'm not sure, but I think Xnest might allow for this, although I haven't tried it.

    The biggest problem with X is that a lot of the extra functionality is not easy to use. lbxproxy (for low bandwidth connections) could use a nice GUI based tool combines with ssh to make setup really simple. For example:
    1. You run the LBX Proxy Connector GUI on your local system. You enter the IP address of the remote system, select whether you want to run a specific app or a complete session (GNOME, KDE, etc...) and then click the connect button.
    2. In the background the Proxy connector establishes an ssh connection to the remote system and executes the appropriate ssh commands to run the remote app or environment with lbx, and establish an ssh tunnel.
    3. Locally, you see the app appear on your current desktop, or a new X display starts and runs the remote environment.

    That would just be damn cool. You would get compression, encryption and either just the remote apps you need, or an entire remote session (KDE or GNOME).

    So... please don't say that we need to get rid of X. Having alternatives to it that are useful in certain situations is fine, but X really is a very cutting edge and flexible system that needs a few "ease of use" apps added to it.

  118. Evolution vs revolution by axxackall · · Score: 2
    all alternative you've listed suffer from a lack of application. That's because they planned to move from X through revolution.

    I read (cannot find a link) another day that Gnome eventually will migrate from X to direct frame rendering. And I think that Gnome will manage to save most of existing Gnome applications as they are written with GTK, not X11 code. That's the way of evolution.

    --

    Less is more !
    1. Re:Evolution vs revolution by t_hunger · · Score: 2, Insightful
      I fail to see the evolution there...

      It's just a huge step backward. You give up network transparency and make lots of applications incompatible without gaining a thing! You might gain a tiny speedup, probably not even that. Most time is spend in the toolkit anyway, you are obviously not cutting out that part.

      Of course PicoGUI, Fresco and others suffer from lacking applications. They are for most part in alpha stage! But with a bit of work you can
      • port applications over. Lots of work for one application at a time. But then you get the optimum out of your shiny new systems.
      • port toolkits over. Then you get most apps build on that toolkit while staying on a high level of abstraction, thus using feature like device independence.
      • port xlib over. You get all the X apps. Of course you go down to a very low level and sacrifice most benefits of the new systems.
      • run a Xserver in a window and use that to display your apps. Ugly, but very easy to do (and in fact done in Fresco allready).


      So you keep the revolution and the applications;-)

      Did you ever bother to read up on the projects mentioned in this thread? We are not talking about some X-without-networking here (like what you were calling a evolution)!

      Regards, Tobias

      --
      Regards, Tobias
  119. Just what we need.. by PixelSlut · · Score: 1

    We don't need widget toolkits to wrap an existing layer. This is one of the major problems with X these days. We have GTK, Qt, and numerous smaller widget systems. For anything like picoGUI or any other new system to really come along and try to be useful, it needs to either implement its own widget system and provide a common application developer interface for everything, or use an existing system. The latter is probably not going to work without heavy redesign, because systems like GNOME and KDE are essentially built upon X.

    So realistically, an X replacement needs to try to be what GNOME or KDE are trying to be, not what X currently is.

    (And killer OpenGL performance wouldn't hurt either!)

  120. Re:No. X is here to stay, just like it should be by t_hunger · · Score: 1
    I disagree: They use OpenGL or some Toolkit to run their stuff on. X is just underneath somewhere because most cards come only with XFree86 drivers.

    OpenGL is not too well supported either: You can have one window with acceleration. So a GUI research project build on OpenGL does basically assume that it has control of a complete environment via OpenGL. It just happens that this environment is a window in X...

    Drivers for input devices like data gloves go around X completly, opening some devices in /dev directly. Great for cross plattform development:-(

    Of course you can 'fill in the gaps'. You can enhance a bicycle and turn it into a truck if you put enough work into it! But why would you want to drag along lots of code you are not going to use in your project?

    Regards, Tobias

    --
    Regards, Tobias
  121. Re:Xt by Koim-Do · · Score: 1

    It`s Motif that sits on top of Xt.
    Not GTK/GDK.

  122. Re:No. X is here to stay, just like it should be by cpeterso · · Score: 2

    X configurators will get done for most people. Most of the hard stuff will be abstracted into a few sensible combinations that people need and they will work. Progress so far shows me this will happen.

    Linux bigots have been saying this for how many years now? "Next year, Linux/X/GNOME/KDE will be the ultimate user desktop! Just wait and see." That is so 1995. Sure, the Linux kernel can push bytes over ethernet at world-record speeds. But why can't those same speed freak gooroos do the same with X performance? Because open source only scratches the itches of the people developing it. So the "Happy Point" for new users will never be addressed until someone tries to sell them something for their money..

  123. Photon microGUI by Anonymous Coward · · Score: 2, Insightful

    I don't know how many of you have actually used the Photon microGUI on QNX, but I believe its the way a GUI/windowing system should be designed.
    Its simple, its clean, its fast, and it provides a nice network extensibility (using QNet).

    Could X be all of that. Yes. But not in its current state. To me, X seems much bigger than it actually needs to be.

  124. Definition of a hypocrite by Featureless · · Score: 2

    I stand behind everything I said. Rather, your high-handed attitude and refusal to answer the points is the very paradigm of condescension - not to mention that it makes it clear you have nowhere to go with your argument.

    1. Re:Definition of a hypocrite by nathanh · · Score: 2
      I stand behind everything I said.

      Perhaps you do, but if you can't be bothered to say it clearly and politely then why should I waste my time reading it? As it is, I've got no idea what your "stand" is because all I read was a bunch of insults.

      How about you state your argument without the insults and we'll go from there. I'm interested in arguing about X11 but I'm not interested in childish name-calling and emotional attacks.

  125. tsarkon reports: guspaz fucks manpussy by Anonymous Coward · · Score: 0
    * g u s p a z . * F u c k s . c . A S S . c c c *
    GcccccccccccccccccccccccccccccccccccccccccccccccG
    Uc/ccccc\ccccccccccccc\cccccccccccc/cccc\cccccccU
    S|ccccccc|ccccccccccccc\cccccccccc|cccccc|ccccccS
    P|ccccccc`.ccccccccccccc|ccccccccc|ccccccc:cccccP
    A`cccccccc|ccccccccccccc|cccccccc\|ccccccc|cccccA
    Zc\ccccccc|c/ccccccc/cc\\\ccc--__c\\ccccccc:ccccZ
    *cc\cccccc\/ccc_--~~cccccccccc~--__|c\ccccc|cccc*
    Sccc\cccccc\_-~cccccccccccccccccccc~-_\cccc|ccccL
    Ucccc\_ccccc\cccccccc_.--------.______\|ccc|ccccI
    Ccccccc\ccccc\______//c_c___c_c(_(__>cc\ccc|ccccC
    Kccccccc\ccc.ccCc___)cc______c(_(____>cc|cc/ccccK
    Sccccccc/\c|cccCc____)/Guspaz\c(_____>cc|_/cccccS
    *cccccc/c/\|cccC_____)_Fucks_|cc(___>ccc/cc\cccc*
    Fccccc|ccc(ccc_C_____)\_ASS _/cc//c_/c/ccccc\cccM
    Accccc|cccc\cc|__ccc\\_________//c(__/ccccccc|ccA
    Tcccc|c\cccc\____)ccc`----ccc--'ccccccccccccc|ccN
    *cccc|cc\_cccccccccc___\ccccccc/_cccccccccc_/c|cC
    Cccc|cccccccccccccc/cccc|ccccc|cc\cccccccccccc|cH
    Occc|ccccccccccccc|cccc/ccccccc\cc\ccccccccccc|cO
    Cccc|cccccccccc/c/cccc|ccccccccc|cc\ccccccccccc|A
    Kccc|ccccccccc/c/cccccc\__/\___/cccc|cccccccccc|D
    ccc|ccccccccccc/cccccccc|cccc|ccccccc|ccccccccc|c
    ccc|cccccccccc|ccccccccc|cccc|ccccccc|ccccccccc|c
    c g u s p a z . . F u c k s . c . A S S c c c c c
    Red alert. Go to red alert. Fag alarm. This fucking vidiot sexless fat poor health bad physical condition racist fat ultra left wing nationalist asshole idiot is speaking
    GO TO RED ALERT. Space and Time are grinding to a halt.
    Fucking idiot SHITSTAIN McGuspaz is speaking.
    Fat man living off of government or with parents with no sex jerking off to pedophile porn and trolling Slashdot is speaking. WOOP WOOP.
    Captain, people cant take much more of this shit. I'm giving it all shez got.
    WOOP WOOP

    The alien Guspaz, with his corpulent fat face and fronds of flash drooping over belly into cheap assed keyboard try is coming. He farted on the left nacelle!
    1. Should we fly up his ass to hide?

    NO!!!!! That will massage his prostate, GUSPAZ likes anal pleasure, we must go to warp 69!
    FAT SEXLESS GUSPAZ pursues the captain in a long brown skidmarking journey through space.
    Fat fucking pig. Fat stupid. All Your Base Are Belong To Us was meant to be funny, its not the 11th commandment you dumb motherfucker.
    FUCKING ASSHOLE ALARM.
  126. But X _is_ fast by Elliotro · · Score: 2, Insightful

    X really isn't as bad as many make it out to be. X is -NOT- slow -- it's just that KDE and Gnome are bloated. Not only that, but while I don't intend to troll, the interfaces aren't very consistent, even with themselves.

    As Guillaume Maillard stated on OSNews, X can be made to be fast.

    The man reason I don't like X is because of GUI inconsistencies. Even when Redhat used the same theme on KDE and Gnome, I would still see a lot of inconsistency in applications. I don't have a current Redhat install right now, but if I remember correctly, launching KWrite from Gnome would have "bad-feeling" scrollbars. In short, it's not just the look of the widgets that matter, it's also how they behave. CONSISTENCY IS IPMORTANT as far as I am concerned. (Ironically, I prefer using WindowMaker over KDE and Gnome. The desktop's interface feels faster as a whole, but applications are still as inconsistent as ever.)

    So really, the problem is not as much speed as it is consistency. If PicoGUI manages to emulate X, what good will that do us if interfaces are still clunky?

  127. Re:When does the OS building stop and the work sta by theLOUDroom · · Score: 2

    What?!
    How about realizing:
    Since these apps are being written for free by people who want them, that's what they're going to write. These programmers aren't your peons to command. They're writing what they want to.
    If you want an app, write it, buy it, or pay someone else to write it. Don't demand that people who are writing free software for their own enjoyment stop, and start doing what you want.

    BTW....there are people out there writing word processors. Where do you think abiword came from? You, yourself listed four. How many word processors do you need? I probably have about 10 differenent apps to do this installed on my linux system right now. I only use one or two (Abiword and openoffice). You should go here and see how much free software there is availible for linux.

    --
    Life is too short to proofread.
  128. This might be cool but... by Trolling4Dollars · · Score: 2, Insightful

    There's nothing wrong with X. Most of the problems that people have with X don't have anything to do with the stability of X, they have to do with the API/toolkit, environment (KDE or GNOME), and/or the window manager. Those are the entities that "crash" the GUI. The problem is that a lot of newbies and even moderate users are not familiar enough with the system to understand this. They assume that because X disappeared off their screen, that X is to blame. I used to think this way as well, but after having gotten into Linux really in depth and compiled X a few times, I see now that the real culprit are the X clients, not the X server itself. The only thing the X server does that would lead someone to this conclusion is that it usually restarts: (Screen goes black, and X restarts, either resulting in just the X cursor on the checked background, or a DM pops up 'XDM, KDM, GDM, etc...' And, last not not least, if you are starting X with 'startx' (unmanaged), then yes... the GUI just disappears and takes you back to a *sh shell.) The latest realease of X actually has a lot of really great features that a lot of users are unaware of. Features that put it on par, if not slightly beyond the Windows GUI. (Mac OSX still has X beat :( ) Of course, the best feature hands down is the network transparency. Running X apps remotely and having them display on a local system is just great and much more flexible than Windows XP RDP. Especially since you can have applications running on several different systems all displaying on the same desktop (not in separate windows like RDP). Combine this with the Low Bandwidth Extensions (lbx) and you can do this over slow links with speeds that are pretty close to RDP. Your local X display becomes the main head for multiple servers this way! How cool is that? Of course, there is plenty of antialiasing and subpixel shading (for laptops) that again is on par with Windows XP's GUI. Overall, X is actually extremely stable, but ti does need a few improvements. I think the biggest flaw in X that makes people think it's unstable is that the session needs to restart when an app or client session dies. If X could be kept active and just allow the clients or apps to reconnect without ever going away, I think you would see a lot of people change their tune about X. It would also be nice if X allowed for reconnection of stateful sessions (Like XP allows for multiple users to be logged in with apps running). I'm not sure, but I think Xnest might allow for this, although I haven't tried it. The biggest problem with X is that a lot of the extra functionality is not easy to use. lbxproxy (for low bandwidth connections) could use a nice GUI based tool combines with ssh to make setup really simple. For example: 1. You run the LBX Proxy Connector GUI on your local system. You enter the IP address of the remote system, select whether you want to run a specific app or a complete session (GNOME, KDE, etc...) and then click the connect button. 2. In the background the Proxy connector establishes an ssh connection to the remote system and executes the appropriate ssh commands to run the remote app or environment with lbx, and establish an ssh tunnel. 3. Locally, you see the app appear on your current desktop, or a new X display starts and runs the remote environment. That would just be damn cool. You would get compression, encryption and either just the remote apps you need, or an entire remote session (KDE or GNOME). So... please don't say that we need to get rid of X. Having alternatives to it that are useful in certain situations but X is a cutting edge and very stable/mature system that only needs a few utilities added to make it easier to exploit all of it's functionality.

  129. Its the API that's flawed by fireboy1919 · · Score: 2

    And if you want to share your windows apps with me I have to get wine, and that means windows is flawed?

    Interesting case in point: Citrix servers can serve Linux clients. You don't need Wine to run stuff.

    If you want an X app, you need X. If you have a crappy X client on your machine, that doesn't mean that X itself is flawed. You should replace your crappy client. I'm sure plenty of people here can suggest clients that will actually work.

    Really? I'd like to meet said people. I've tried Exceed, Xfree86, MI/X, and WiredX. Do all of those suck? Why is it that they all have the same bandwidth requirements? I think bandwidth is always a problem.

    You complain that you can't get a dirt cheap Xwindows solution for windows and you campare it to citrix in the same post. Is citrix free?

    I want a solution where the CLIENT is free and easy to install (yes, the Citrix client is free). No, it doesn't mean the protocol is flawed if this doesn't exist, usually. But I think we can make an exception for X, because X puts such a burden of complexity on the client that it is difficult to make one.

    I don't think you're being fair here. I'm running remote ssh-tunneled gaim from my home linux pc on a bsd machine in a computer lab a mile away. Both machines have X and it works. It's also not any slower than VNC would be.

    Not any slower than VNC? Have you tried tightvnc? It requires about an order of magnitude less bandwidth than the original, and I have used it under the condition you mentioned as well as ssh-tunneled programs with X. Try running a web browser remotely. But that's another story. I don't want such a solution, as I said, because, like X, it is too primitive.

    The fundamental problem with X is a lack of high level operations. The API should include calls like "make a button" and "open a modal pop-up box," and most importantly "display this bitmap" as well as the usual "draw a pixel."

    Making this work isn't going to be backward compatible, at least not without making it even more bandwidth consuming. At least, thats how it appears to most people who have abandoned X. Perhaps someone clever will come along and figure out how to make the two ideas play nice.

    It is precisely this flaw that leads to speed problems, which is addressed by both PicoGUI and Fresco. Unfortunately, Fresco was stupid enough to make all of their work require floating point ops, so they're going to have a lot of the speed problems that X does except on systems with a graphics processor - high end systems where speed isn't much of an issue anyway - and they'll still have bandwidth problems when they try to transmit pictures and other pixel-dependant info, since they will be transmitting fp numbers, making pixels larger than they should be. I think PicoGUI is very promising, however.

    --
    Mod me down and I will become more powerful than you can possibly imagine!
  130. Re:No. X is here to stay, just like it should be by PotatoHead · · Score: 2

    Fair enough.

    I am not willing to give up remote display and the ability to use a lot of applications for this sort of improvement though. I make use of this all the time.

    Your comments about OpenGL and X on Linux are true enough, but isn't this implemenation, not the core premise? Lets say the drivers were in working order. You then could do what you want without any hassles and remote it for free.

    I have used X on other platforms, SGI in particular and it seems that a good X server can do all the things you would need. Maybe we are not there yet with Linux, but changing direction now still seems foolish to me.

    Input devices beyond your basic keyboard and mouse are a pain in any UNIX environment. This experience seems to be true even in high end UNIX environments. We need more work there for sure.

    If enough people share your view, then we might really see some change. If that happens, then I will roll with the punches and see what the new environment can do for me. Maybe it will be better!

    Till then, I would rather see what we have right now work as well as it can.

    Best,

    Doug

  131. Re:No. X is here to stay, just like it should be by PotatoHead · · Score: 2

    You know I like Linux a lot, Mandrake in particular, but I also enjoy and use on a regular basis, Win2K, FreeBSD and SGI IRIX. Does this make me a polybigot? :)

    You are right about money. Linux on the server side is hot right now. The people responsible for that have a lot of experience in that area. Maybe graphics are the sort of thing that is a little harder. Maybe those bits of talent are not as well distributed as those for other tasks are. Maybe we are dealing with lame patent/ip issues. (Likely)

    It seems to me that X performance and or (more likely) latency issues are getting some attention right now.

    We have the movie studios using Linux on desktops, PTC is porting a serious 3D MCAD application to Linux. Go through the latest Siggraph proceedings. People are doing 3D with Linux all over the place.

    Companies are investing in different parts of Linux because they see dollars. X is getting some of this.

    Change will happen as I said in my original post.

  132. You are wrong by spitzak · · Score: 3, Interesting
    You want exactly a "toolkit".

    Also it is quite possible that X can suck in it's own ways even though a low-level protocol is a good idea. The fact that X is bad does not prove that every single part of it's design is bad.

    First, plenty of toolits are on Windows. I recieve about 10 times more interest from Windows programmers who do not even know how to run a file from a command line for fltk than I get from Linux users. Also you can easily tell that virtually all large graphics systems and some of MicroSoft's own work (Word, for instance) do not use their "toolkit".

    Also if X had been a "toolkit" like you seem to want, it would have been the Athena toolkit that existed in 1984. I'm sure the fact that everything is drawn in two colors (black & white, which a "configuration" that reversed them) would have been deeply engrained into it. There would also be those lovely scrollbars where only the middle mouse button did what you expected.

    Fortunately this did not happen. All of X's mistakes are because the graphics were designed in 1984 (or earlier, really). But oddly enough bad graphics *can* emulate stuff that was not imagined 20 years later, so X is still working. Bad toolkits cannot do anything.

    Someday there may be a replacement for "buttons" and "menus" and "icons" that is far more user friendly (no, I don't know what, if I did I would be writing it!) and when that happens the people who wrote toolkits into the system are going to look as stupid and backward as the people who wrote record-management into the disk file systems.

    What is needed is for the people who can to stop doing the easy and "fun" part of writing "toolkits" (I know, as I am also a toolkit author) and start doing the HARD stuff, like drawing an arbitrary transformation of an image with error diffusion, something we have known how to do since about 1987 but for some reason is not in any of the graphics systems even today. Drawing every single character in UTF-8 with a single call that takes a string would also be nice.

    1. Re:You are wrong by Minna+Kirai · · Score: 2

      You want exactly a "toolkit".

      That's pretty much what I said when I started this conversation. This topic is too old for me to reiterate anymore, though. And the discussion of X's quality gets confused when the sides agree neither on the extent (X as a developer's protocol or as a user's platform) nor scope (nearterm practicalities vs longterm goals). I always take the long view and theorize on solutions that in 20 years may give us interfaces resembling those portrayed in contemporary science-fiction films. This may be misinterpreted by someone only interested in code he can deploy next week.

      Someday there may be a replacement for "buttons" and "menus" and "icons" that is far more user friendly (no, I don't know what, if I did I would be writing it!) and when that happens the people who wrote toolkits into the system are going to look as stupid

      If they used a traditional button/menu/icon toolkit then they'd have some re-writing to do, yes. But everyone uses toolkits like that today, and they'll all have the problem. OTOH, if in the meantime some people develop and code to a higher-level toolkit (where the application programmer doesn't think in terms of "menus" and "icons" but in "commands", "properties" and "relations"), then they might be able to just update the toolkit to the new paradigm.and find the applications automatically working.

      arbitrary transformation of an image with error diffusion, something we have known how to do since about 1987 but for some reason is not in any of the graphics systems even today

      Really? Apple claims their new onscreen drawing system is all a 2d programmer could ever want. Floating-point coordinates, arbitrary transformation, and antialiasing. You think it's still not good enough?

      PS. So I install this Oroboros XDarwin server on a MacOSX system, ssh to a linux box and remote-display some fltk programs, and everything's fine. Then I recompile them on the Mac and run it locally- the picture shows up, and mouseclicks are recognized, but the program can never get focus. So it can never recieve keystrokes.

  133. A look at Fresco by Nice2Cats · · Score: 1
    Thanks for taking the time for a long answer. I took a look at Fresco and tho everything is a bit confusing because you seem to be in the middle of redoing the website (I still haven't understood the difference between Fresco and Berlin, even tho I work in Berlin, Germany myself), but what I understood does look very impressive. There are two things that really struck me:

    Python interface, also via COBRA (if I understood the docs). Given the speed with which you can code in Python, that should be a major plus - and get a lot of people coding.

    "True" transparency. Okay, this is a gimick, but it is really, really cool gimick.

    Once Fresco gets to a beta status, I'll certainly give it a try.

    1. Re:A look at Fresco by t_hunger · · Score: 1
      Yes, one of the last items we need to do before having a new release of Fresco is to explain why we changed the projects name from Berlin to Fresco.

      Berlin started out as one of those who-needs-network-transparency-anyway projects. The goals have changed a lot since then, incorporationg all the ideas from what we now call 'vintage' Fresco: A Toolkit for X whos ideas are now the foundation of our work. To reflect that (and since we were able to get fresco.org;-) we decided to rename the project. It will be officially announced once the new release gets out.

      Basically the project and the protocol (better: The IDL interfaces) are renamed to Fresco. Our implementation of said interfaces keeps the name Berlin. So Fresco is to Berlin what X is to XFree86.

      Of course we do have 'bindings' for other languages besides python and C++ too. Java and Perl have both been used allready and in principle you can use any language with a CORBA ORB right out of the box. Since the widgets are realized inside the server and written in C++ your scripts will not feel sluggish:-)

      Yes, transparency is nice, but we do get that basically for free from our architecture. The same is true about being able to rotate windows. I'm bringing this up since many people think we spend our time with eye-candy like that, but in fact we'd need to write lots of code to stop people from being able to rotate windows! That's why we let them (and because rotated windows allways draw attention to our screenscots;-)

      But the thing I love the most about fresco is device independance: You give sizes in real word units and have them displayed correctly on your monitor independent of its resolution. You just rerender windows (or parts thereof) once using a so called DrawingKit generating Postscript instead of OpenGL or raster images (both can be used to display on your screen, depending on your graphics card) and have a screenshot.

      Regards, Tobias



      PS: Yes, Fresco used to be a Toolkit for X. Yes we could do the same and 'fill in the gaps of X', but we do not feel that's worthwhile: We'd need to meddle with lots of code we don't really need to be concerned with (basically all of X;-), we'd add lots of code ourselves since we'd need to duplicate much of the existing code (network layer, device handling, etc.) with libraries we use or our own code. So concerning ourselves with X would slow us down even more then our permanent developer's shortage;-) And I am still convinced that writting a clean display server and then integrating a X compatibility layer ontop of it (like Apple did for example) is the better way to go then to lump even more extensions and toolkits ontop of X. We definitly have enough of those to be a real pita!
      --
      Regards, Tobias
  134. Pico?? by CakerX · · Score: 0, Flamebait

    is that pico as in everyone's favorite emacs derived text editor that comes bundled with pine, or pico as in Pico's school shooting

  135. Re:Xt by GooberToo · · Score: 2

    Hmmm...last I looked GDK doesn't implement the X11 protocol....hmmmmm....

    Sounds like it must sit a top it to me.

  136. Good Bad X by 4of12 · · Score: 3, Insightful

    OK, I'll come out of the woodwork like every other worm that's lived, loved and hated X for years.

    I think X was ahead of its time with the network view of a server accepting requests.

    In hindsight, no fault of the original developers, the problem is now that it was implemented before the advent of newer standards in network communications such as http and XML. Yes, the existing infrastructure works like a draft horse. But it would have a better future if it didn't do things its own way but relied on other standards, even if those standards were later in coming.

    And, honestly, X didn't flow smoothly into vector based (PostScript) and 3D systems (OpenGL) except as "extensions" that are obviously afterthoughts. Sun's NeWS didn't win. And OpenGL applications under XGL behave differently than pure X applications.

    It would be nice if a new frame buffer device manager would be written that incorporates some of those ideas and yet retains the network awareness of X, which I think is one of its strengths.

    A well-designed successor to X should be layerable either below X or above X during a transition.

    --
    "Provided by the management for your protection."
  137. Who'se wasting who'se time? by Featureless · · Score: 2

    Go back and re-read it. As someone clever once said, the truth is insulting to a fallacy. Unless, that is, you don't know how to respond?

  138. Last Post! by alpg · · Score: 1

    A statistician, who refused to fly after reading of the alarmingly high
    probability that there will be a bomb on any given plane, realized that
    the probability of there being two bombs on any given flight is very low.
    Now, whenever he flies, he carries a bomb with him.

    - this post brought to you by the Automated Last Post Generator...