Slashdot Mirror


What Is Important In A User Interface?

fosh asks: "Out of some discussions going on in response to the Gnome-Microsoft connection I have come to ask myself, (and the Slashdot community) the following question: What is really necessary in a User interface? What is the set of elements that is required, what are the elements that make the user's experience better? What are the inherent problems with MacOS, Windows, Gnome, KDE? Why are computers still hard to use for people like my mother, and how can we make this better?" Of course, the words "user interfaces" usually means "visual user interface." Voice recognition has come a long way in 10 years, and in another 10, we'll probably be able to talk to our machines in plain...well...anything! When this happens, will these ideas still hold merit?

487 comments

  1. Windows is 100% Scriptable by Anonymous Coward · · Score: 1

    i don't mean to pick nits, but win2k is completely scriptable. damn near everything in the OS is exposed via COM, and WSH (windows scripting host) can instantiate COM objects.

    on top of that, you can register WSH files *as* COM classes. eating dogfood, as it were.

  2. Website for GUI Screenshots? by Anonymous Coward · · Score: 1

    I was just wondering if there's a good site around that shows *lots* of GUIs from different systems. Solaris, Iris, etc... I've been looking for this for a long time, and I figured now was a good time to ask.

  3. Human-ComputerInterface by Anonymous Coward · · Score: 1

    >What are the inherent problems with MacOS, >Windows, Gnome, KDE?

    1. It has been a long time since I worked on a Mac but I dislike the way the user is insulated from the operating system. I do like the click on menu & hold mouse button down drag to menu selection. This is a habbit I have carried over to the Windows environment.

    2. Gnome & KDE both look too much like Windows. If I wanted an interface that looked like windows, I'd use windows. Although Gnome is a little less window-esq

    3. The interface in BeOS is quite good. I like it.

    4. My perferred interface is Window Maker or some kind of NEXT clone.

    5. Windows - I have replaced explorer with Litestep (a next clone). In litestep I have also turned off that fsck'n task bar / start button thing. The thing I dislike the most about Windows is that whole Start button thing. Plus shite like naming the the network icon the "Network Neighborhood"

    The Windows interface is designed for idiots and each time I use it I feel like I'm being insulted. Even idiots though cannot make good use of the standard windows interface from what I have seen. Is there a UI that will satisfy both the non-tecnical user and the power user? I do not think so. Perhaps there should be two different modes of UI operation. One for the non-technical user and one for the power user.

    1. Re:Human-ComputerInterface by ScottZ · · Score: 1

      I think its more correct to state that the Windows interface has been continually redesigned for people by idiots. Now, each time MS comes out with a new version of the Windows gui it has some focus group conducted in outer Uzbekistan and comes back with all these groovy things with the mouse, but they tend to reduce our options with keyboard controls. Personally I think these focus group teams are just trying to justify their fees - good luck to them, pity about us.

      I can use one hand for the mouse but I have been blessed with ten fingers and can configure them for quicker access to what I what.

      To do this effectively I had to learn the controls. Like most people I didn't sit down in one session for that explicit purpose. I picked them up over time and found clear benefits to using them. Why did it happen like that?, because like the majority, my role is to get stuff done, not fart-arse about.

      For me, its in my interest to learn these controls . I've watched the majority swim about in the same ineffective manner they used their programs last year and with the previous Windows gui's. Why is that? They either don't care or are afraid of screwing up. Usual human avoidance reasons. Bob in finance wants to finish his cost/benefit and go home. Jill in marketing has to produce a presentation and doesn't know the wizard is going to totally lead her off the garden path.

      Can MS actually make the ui easier for these people without actually adding the "Hello Dave" element? Nobody can make it easier for people who are afraid of computers or don't invest their paid time into learning more. "Hang on, You're learning during paid hours? I thought you used computers at College/Uni/Fragfest?!" There is an unspoken expectation (and incorrect) that if you hire somebody for an office job today they will know how to use the bloody things. This expectation comes from managers who sometimes are just as blunt-sawed as the new employee.

      I like my work environment efficient as possible. I'm also not an automaton, I like to personalise my environment with some theme that tittilates me.
      If I don't like the name "Network Neigborhood" I can't easily change the name property of it. I've got the hunt around in the registry (grrr!) for the name property. MS have implemented inconsistencies.

      One other thing about the mswingui that shits me is that every goddamned process running in the background that produces a dialog or window thinks its important enough to interupt my typing and grab the focus. For f*&@s sake! I love the xwindows managers for not performing this behaviour. If there is a registry key (don't start me) that modifies this behaviour please forward it to me :-)

      These are all good reasons why every once in a while I will retire to the command line for hours... and then I'll return again to the gui.

      That's my therapy for the week ;-)

    2. Re:Human-ComputerInterface by Zurk · · Score: 1

      yeah. i use AfterStep which is a NeXT clone too. it would be kewl to see a next generation user interface that gets out of your way. the NeXT interface is pretty good but we need an interface that allows you to move windows around rapidly using a gravity/friction type interface..i.e. you can "push" a window around with your mouse and it gradually slides to a stop. basically, interfaces need to step out of the way when the user wants to do real work..and none of the current ones do (afterstep comes pretty close tho).

  4. Re:MS?? by Anonymous Coward · · Score: 1

    You could consider OS X's User Interface to be an Apple User Interface, regardless of where the other bits came from.

    The rumors have it that OS X will not ship with the Unix commandline stuff installed as a default. (You can optionally install them.) For most users, this will make OS X a purely GUI OS, just like the classic Mac OS. Unlike Windows and Unix, all admin and configuraiton tools will need to have a GUI front end.

  5. Re:One feature is necesary by Anonymous Coward · · Score: 1

    Don't be stupid.
    I assume you use a keyboard. The simple fact is that you have to, at some point, memorize each of the key positions in order to operate the damned thing. Once you get going, though...
    As an alternative, consider clicking little alphabet buttons with the mouse, which is really easy and requires no cheat sheet. On the other hand, it's excruciatingly slow.
    If you do not intend to do much typing, maybe you should do the second one - it's less total labor. but if you are word processing every day then you ought to learn how to type - it'll save you TONS of effort in the end.

    That fairly SCREAMS that UI design is not as easy as "whatever is easiest to learn." in many real world cases a steep learning curve comes with very capable/sensitive/expressive/efficient tools.

  6. Re:Choice of interface by Anonymous Coward · · Score: 1

    The Aminga had a operating system UI 'cover' introduced called MUI (Magic-User-I/F) which allowed the programmer to specify what controls they wanted and how they wanted them 'grouped', and the user could specify the style of the components and MUI worked out how to display it. The only shame was it came about too early when no-one's machine was meaty enough to handle it, (c. 1991) and hence gained little support. Perhaps someone would be interested in making an XWM based on the MUI system?? Mark B. Thomas.

  7. Re:One feature is necesary by Anonymous Coward · · Score: 1

    That's great except for one thing, Windows is scriptable, from the operating system itself, all the way up to the Microsoft office components and Developer tools as well as many of the other non-microsoft products available for Windows.

    Don't get me wrong, I hate Windows, but at least make a comment that's armed with some factual information, Windows is far more scriptable than any UNIX GUI.

    thank you.

  8. re: two words by Anonymous Coward · · Score: 1

    Speed is good but I'm not so sure about simplicity. Apple has played with this a bit w/ it's simple Finder but I don't know anyone who uses it. You did miss a word - reliability. I want an uncrashable machine. Or, at the very least, one that doesn't crash when I'm not doing anything to tax the system (standard data entry/telnet/whatever). The PalmOS is a good model to work from. I have a friend who cannot understand why her computer can't work as quickly, simply & reliably as her Palm.

  9. Re:two words... by Anonymous Coward · · Score: 1
    Hear, hear!

    If it's one thing MS is good at, it's designing a simple GUI.

    Upon a friend's insistence, I downloaded and installed MSN Messenger. I have to say that this absolutely wipes the floor with ICQ, AOL/Netscape Messenger etc. It has a far superior and more intuitive interface.

    As for the old 'Macs have a better interface' myth, it is just that - a myth. Sure, MS 'borrowed' some parts of Macs' interface, but they massively improved it.

  10. Voice Recognition...Bah! by Anonymous Coward · · Score: 1

    I don't believe that voice recognition will replace the keyboard this century. Concepts in computing are still too hard to put into simple verbal commands. Consider: tar cf - /home | ( cd /newhome ; tar xvf - ) Way eaiser to type then to speak. Also consider many regexp's. Ever try to document a regexp? Scripting aside, imagine every time you want to express a regexp you had to actully describe in words what you want? In this case, I think it is much easier and quicker to learn the language of regexp. I will probably not give up my keyboard in my lifetime.

  11. Re:One feature is necesary by Anonymous Coward · · Score: 1

    If you're referring to the Windows Scripting Host, that is not part of the operating system. It's included with Internet Explorer 4 and above (and therefore Windows 98), and also available as a separate download. The only scripting built into the operating system is .BAT files.

  12. Re:You've got it backwards by Anonymous Coward · · Score: 1

    Wrong: form is function.

    In a good UI function is inseparable of form, and vice versa. There is no excess.

  13. Yoda says by Anonymous Coward · · Score: 1

    To interface with user, user interface must you build.

    In the user interface, there is "no one size fits all".

    Multileveled the user interface should be, just like the Force. Know you this already, hmmm?

    For newbies a newbie interface, by taking their hand it shall guide them. For Old Farts, to be found a true Jedi interface must be. Hidden under the friendly newbie interface it is, sleek and powerful. For skilled in the Force Old Farts are, and see through snazzy graphics they can, hmmmm?

    Know this and perfected your software will be, and in harmony and balance you will stay.

    But impatiently reinventing the nonstandard wheel to the Dark Side will lead you. Know you Lord Lightwave, Darth Moonlight Atelier and evil WinAmp clones hmm? Inside the software lives there the Dark Side, strong and snazzy, the user interface ridden with nonstandards.

    Hard to learn such bells and whistles can be, and meaning of function not so obvious often is. The true flavour of Dark Side it tastes, like bitter bantha droppings. Know you this treat, hmmm?

    Also the mouse does not a Jedi use. Keyboard the tool of the Jedi is. For without hesitation used it can be travels the Jedi in day or night, no difference does it make.

    Thusly beware young Codewalker. For from Dark Side no return is there. Like a jelly donut eat you it will, hmmm?

  14. It won't be easy enough for a long time. by Anonymous Coward · · Score: 1

    My mom has one major limitation: she's afraid of computers. She knows she can't figure them out (she's wrong, but that doesn't change her convictions). Which means she doesn't try. This fear is what causes a lot of usability problems, and refining the interface will not calm the fear because the fear isn't reasonable. No matter how user-friendly you make it, my mom will still fail to understand it simply because she is determined to fail. Fixing the interface doesn't fix the psychology.

    AKA: At some point, you have to stop futzing around with widgets and start educating the user in an effort to overcome that fear. One on one education, not some online tutorial embedded in the machine. You educate the user until they get the 'click', the sudden realization that, "Oh, it all fits together!"

    That's my opinion, anyway.

  15. Re:MS?? by soellman · · Score: 1

    eh? I'll agree that the quicktime 4 interface was non-standard, and therefore considered substandard; but as far as those standards go linux (or any X based interface) has none. At least you have a common edit menu and keyboard shortcuts (in addition to a unified clipboard, etc) for all apps in the Mac OS.

    And I don't quite understand your point about OSX..

    But really, I don't know of any interface which is really good. Conversely, if you use computers regularly and know what functions should be available to you in any OS, you can get the hang of any GUI in a short time. Personally, I'm really looking forward to OSX, for a fresh face on the GUI, and a kick ass engine underneath (not to mention the amazing display layer).

    Completely unusable.. Have you not been able to get it to work?

    cheers,
    -o

  16. Re:two words... by C.Lee · · Score: 1

    >The Linux distro. Better yet, BeOS. But, I've seen people who had to
    >re-install Windos. They couldn't even figure out how to switch out of
    >VGA mode! The windos setup procedure is absolutely horrible, and the
    >drivers are even worse. The only reason people use it is because it
    >comes pre-installed.

    Tell me about it. Try to get one of those Windows PCI soundcards that have Win95/Win98 drivers and make claims of working under plain DOS. What a pain-in-the-ass. Luckly for me, I kept my old Reveal/Aztech sc400 rev a ISA soundcard. The dos-based install/setup programs that came with that card still after all these years blow away the configuration crap Mircosoft created for use under Windows.

  17. Re:two words... by C.Lee · · Score: 1

    >And I'm sure you put that ol' ISA soundcard in your 286, didn't ya?
    >After you were done with those dos setup programs, did you pat
    >yourself on the back for setting up the irq and dma yourself?

    Nope, I put it in my 686 in a empty ISA slot. (the motherboard in the machine has two of them) in addition to the overrated PCI slots. I'ld say reconfiguring the ISA soundcard using the dos setup programs was a lot faster and easier than reconfiguring the windows PCI soundcard using the windows software.

  18. Re:You've got it backwards by RealUlli · · Score: 1
    2) A lot of people who take more than 5 minutes to think about UI's will respond with "but my grandmother doesn't need to run pipes and greps and stuff". OK, but that's not an argument for a simple (minded?) Linux UI--it's an argument for your grandmother to use a different OS.

    You are both right and wrong:

    Your grandmother doesn't need pipes, but it is only an argument for a different OS if that different OS does something that the OS with pipes and greps doesn't do. So it's a non-argument most of the time!

    Regards, Ulli

    --
    Simple things should be simple, complex things should be possible.
  19. Re:MS?? by Rob+Parkhill · · Score: 1

    >Decent cut and paste. X users know the joy of
    >the three-button mouse and the single click >paste.

    Ugh! One of the worst things about X based GUIs is the horrible, horrible support for a real cut-and-paste system. What a nightmare. Sure, it can be handy for a very small set of uses (copy and paste a small amount of text while drinking a coke, for instance, since you don't need to use both hands or remove your hand from the mouse), but it fails in almost all aspects.

    Just about every application in an X environment either doesn't support cut and paste at all (relying on the middle mouse-button technique), or has gone and implemented their own incomplete system.

    Cut and paste should not be just for text. Anything that you can manipulate on screen should be able to be cut-and-pasted.

    >Please let me iconify a window in some better
    >way that reducing it to it's title bar. That
    >takes up much too much screen space - even the
    >dreaded taskbar is better.

    I agree, iconified applications are nice. I'd love to see some combination of the task bar (with it's auto hide and scrolling features) combined with the best of desktop icons. I find that the sheer number of icons that start collecting on my X desktop get's unweildly very fast, with every application and every window having it's own icon.
    Not to mention that I need to close a few dozen windows if I want to find that application icon for the emacs window I lost. There's got to be a better way than just randomly thowing an icon for everything on the desktop (and most 'icon' managers stink, with nothing more than an almost endless scrolling windows of icons.)

    What I would love to see is a system where each application got it's own icon on the desktop, and every open window associated with that application are also associated with that icon. Perhaps when you moused over the application icon, all of the other windows for that app would appear along side of it.

    --
    "Tomorrow's forecast: a few sprinkles of genius with a chance of doom!" - Stewie Griffin
  20. ideal by jafac · · Score: 1

    IMNSHO, here's how I think it *should* be done.

    You need to do some market research first. Not as slimy as it sounds. Get a list of every feature and command your program will do. Just make it a flat list. Now go through this list carefully, and try to imagine yourself using the software, what kinds of tasks will the user be trying to accomplish with the software, which commands will they need to use? Which ones will be most common, and which ones honestly will only be used by power users.
    Then ask other people. Ask beta testers. Ask your sales people, your tech support people, the field engineers who directly work with customers. Use your large accounts. Ask them which features are important, which ones are used to accomplish the main tasks, and how they could be more convenient.
    Working up a UI that "learns" as you go along and adjusts to power users is nice, but it can lead to bloat, and if your user moves to another machine, or reinstalls, then the software will have to start learning all over - and different work habits might lead to different feature sets, etc.

    A better approach (IMNSHO), is to construct your user interface based on your data collected in the surveys I mentioned before. Find ways of grouping the commands together so they're more convenient and easy to use for the most common workflow scenarios - so that the most common tasks are easily done. Also try to keep them logically arranged enough so that they're easy to find (cut, copy, and paste belong in the edit menu, as well as preferences, new, open, save, print, exit belong in the file menu, etc.)
    For the features that are not as commonly used, but still important, keep them available, but "out of the way", and make the UI configurable so that your power user has easy access to them if they want, and the grannies don't, but can get access.

    Get some paper, cut out mock-up windows, buttons, icons, etc. arrange them, find a pleasing look, but keep in mind that form follows function, and remember your survey information.
    Above all, don't be afraid to be weird. Some people hate Kai's Power Tools and Bryce, but many find their interfaces to be very useable, even though they're inconsistent with the rest of the computer world. They address workflow.

    A perfect example of a crappy UI; the windows version of Palindrom Network Archivist (long-dead). You had to open one app to view your tape library, a different to restore files, a different one to configure rotation, and a different one to do scheduling of jobs. From an engineer's perspective, putting all these discrete functions into different applications was very logical, but from a workflow perspective, it was a complete pain in the ass to use.



    I just remembered this old Metallica song. . .

    --

    These are my friends, See how they glisten. See this one shine, how he smiles in the light.
  21. Re:Choice of interface by jafac · · Score: 1

    it's the difference between using a box wrench to turn a nut, and a ratchet wrench with extension levers and flexible shafts or other goodies.

    . . . Or just drilling the fucker out and re-tapping the hole.

    I just remembered this old Metallica song. . .

    --

    These are my friends, See how they glisten. See this one shine, how he smiles in the light.
  22. Re:Some problems I've seen with UI's by jafac · · Score: 1

    a database instead of a hierarchical file system? What a great idea! Solves my problem!

    Some files can go into the "blondes" directory, some can go in the "asians" directory, and some can go in the "girl-girl" directory, but what do I do if it's a blonde and an asian? or a blonde asian and a transsexual?

    I just remembered this old Metallica song. . .

    --

    These are my friends, See how they glisten. See this one shine, how he smiles in the light.
  23. Re:Some problems I've seen with UI's by reemul · · Score: 1

    You're missing the point - you wouldn't have a "blondes" or "asians" directory, you'd just have files where "girl-girl" = true. Then just a simple query would find all the pics where "asian" = true, "transexual" = true, and "sure,let my parents see it" = false.

    See, easy.

    -reemul

    --
    You're just jealous 'cuz the voices talk to *me*
  24. Re:You've got it backwards by Enahs · · Score: 1

    Heh, Shane...read my Slashname backwards. Hehehe...

    You've hit the nail on the head (pardon the pun :^) with that one. And that's not only the problem with Windows, it's the problem with MacOS, and also the problem with KDE & GNOME (although much less so with GNOME.) Too much reinvention of the wheel.

    Granted, a number of folks write the software they're writing for fun. Some folks might simply want to re-implement some feature just to prove they can. Some folks might want to make what they feel is a more streamlined feature. Still other folks might be doing what they're doing as a class project. Perhaps they *must* re-implement some standard tool.

    Nevertheless, I feel that KDE, and, to a lesser degree, GNOME, are ignoring what I feel (and many other folks feel) is one of the great strengths of UNIX or a UNIX-like platform: the existence of scripting languages.

    True, languages such as Perl and Python exist on other platforms. Perhaps this is an unfair comparison since Perl, for one, was originally a UNIX-based language. But, quite frankly, these languages can exploit the underlying OS to an extent that seems impossible to someone raised on BASIC-based languages: you don't have to go PEEKing and POKEing about to do something, and, in many cases, a function in a scripting language nearly matches its matching C function.

    Even better, languages like TCL can allow their code to be modified by the actual script itself (Perl allows this; some folks consider this to be a flaw, rather than a feature, since it presents a rather nasty security risk when quotes are used incorrectly in a script.) during execution. Substitution is one of those great things that I miss when I code in C.

    Okay, so maybe this post reveals that I'm not the world's greatest (or most knowledgeable) coder. But, my point is this: before KDE and GNOME came about, TkDesk had gained a fair amount of notariety in the free software world. While I don't see myself reverting back to using TkDesk any time soon, I do rather miss a number of features on the system. When we killed it, we killed a lot of interest in scripting (yeah, THAT's sure to get the flames going! :^) outside of CGI and shell scripting type chores. And yes, I truly believe that a scripted desktop simple enough for Granny is possible. :^)

    --
    Stating on Slashdot that I like cheese since 1997.
  25. Basic UI ideas. by Enahs · · Score: 1

    One inherent problem in KDE/GNOME comes from the rather fractured nature of X11R6 interfaces:

    No integration between basic desktop apps and regular apps.

    On a Mac and on a Windows machine, it's possible to make folders on the desktop and have save/load folders default to the desktop. I used to hate Macs, but now that I'm forced to work with them quite often, I have to admit that this is a nice feature. It even inspired me to do the same under Windows. :^)

    Granted, it's not going to be possible to persuade everyone to use a GNOME standard dialog, a KDE standard dialog, or whatever comes along in three months. But it's a nice dream.

    That all being said, the basic desktop formula is inherently flawed. I catch myself having to roll up windows WAAAAAAY too often to "get at" some part of the desktop. This is not only under MacOS, but also under Linux (I use gmc with Window Maker.) Quite often under MacOS I'll have a "Fast Find" application open, at least one printer queue open, and at least one QuarkXPress document open. Ugh. I'd like a ONE-CLICK solution, if that's possible.

    And quite frankly, I'm not sure what the answer would be. Maybe a two-paned file manager with a shelf? I've always been a bit partial to the NeXTish Workspace paradigm, but I find it to be a bit flawed, too. :^(

    Perhaps, just to shorten this down a bit, it'd be best if KDE/GNOME based their desktop dirs not on a "Desktop" dir in the user's home dir, but on the actual HOME DIR. It may seem a bit nitpicky, but, considering how many X apps default to the HOME DIR, it stands to reason that the desktop should represent that dir instead of some dir right off of the home dir. While I realize I can symlink to dirs in my homedir, and while I realize this would require some COOPERATION (gasp!) between different desktop interface camps, I think it's a doable venture.

    --
    Stating on Slashdot that I like cheese since 1997.
  26. Re:You've got it backwards by Enahs · · Score: 1

    *cough* xterm *cough*

    /ends sarcastic coughing

    Really, I'm currently using Mandrake 7 as my distro, and I didn't notice any GNU apps missing, nor did I notice any system calls missing. It's actually quite a simple procedure to open a terminal window and grep your heart out. :^)

    I do have to agree with you, though--there's little, if any, effort in the KDE & GNOME camps to exploit the awesome features of UNIX-like OSs. However, if you feel that Windoze/MacOS are utterly powerless, then I have strong doubts you have much experience with either OS (although I have to agree with you on Windows. :^)

    Most folks who trash MacOS are totally clueless about the OS. It's true: MacOS is no more stable than Windows; it's also true that until the latest Mach/BSD/OpenStep-based MacOS X that the system had a warped sense of humor when it came to multitasking. Quite frankly, though, I've run into a number of apps on other systems that like to do cute tricks like bumping up their priority and throwing modal dialogs up until a particular task is done--not exactly allowing for multitasking mahem!

    While, like you, I'm hoping for KDE/GNOME-based tools that rival command-line tools, I'm also hoping for these systems to come CLOSER to MacOS/Win9x functionality--and perhaps surpassing this functionality. :^)

    --
    Stating on Slashdot that I like cheese since 1997.
  27. Re:You've got it backwards by shani · · Score: 1

    Nevertheless, most tools have handles that you can grip with a hand. Hammers, screwdrivers, scissors, wrenches, pencils, pens, cigarette lighters, spray cans, doorknobs, and so on. Yes, the details are different, but that doesn't mean it's meaningless to discuss common features:

    1. Small enough to fit comfortably in a hand.

    Or good, but not necessary features:

    2. Good grip (i.e. not slippery).

    Or potential problems to avoid:

    3. Avoid untreated wood (may have splinters).

    One size does not fit all, but there's no reason to reinvent the wheel for every program. Face it: interfaces were much lower quality in the 1980's when every application had to hand-roll an interface by hand. Users had to learn a totally new paradigm with every application. Yuck.

    Shane

  28. Wasted space by shani · · Score: 1

    One thing that annoys me is the amount of space wasted by windows. The top right corner of most windows is blank, with the menu items crammed on the upper left. Throw in scroll bars, border frame, etc, and your 1600x1200 desktop disappears in overhead.

    Not that I necesarily have a solution, just a complaint. :)

    Shane

  29. Re:User error by SJS · · Score: 1
    A GUI makes things even easier - you just point at the right icons. In this respect being able to see what you are doing as you are doing it may make it better than a voice interface. How many times have you made a verbal slip-up in conversation today? And how many times did you pick the wrong icon in comparison?
    Emphasis mine. A GUI is not necessarily easier. The mouse is a lousy control device; a few millimeters of error can result in disaster, and often does. A keyboard (CLI interface!) can often handle a millimeter or two of error without noticing, and a few more causes simple failure for anything to occur, plus provides an opportunity to review an action before actually taking it (action).

    It's a lot easer to type "yes" than to position a pointer over a small section of the screen, and then hope it doesn't slip off when the button is pushed.

    Aside from an accidental "rm -rf .", I've lost more data to mis-clicks than typos; if you merely count the number of times I've lost data, misclicks greatly outnumber typos.

    As you say:

    A simple command line interface is very likely to throw something back in your face if you make a speling mistake.
    This is good. If I make a mistake, then the computer should not do *anything*, other than telling me that it doesn't understand what I want it to do.

    And if you ever try to provide tech-support help to a complete novice over the phone, pray they have a CLI interface available. Verbal directions (such as telephone tech support or, say, paper books) work best with verbal interfaces.

    --
    Pick One: http://www-rohan.sdsu.edu/~stremler/sigs/sigs.html (Note - disable Javascript first!)
  30. Re:Choice of interface by iabervon · · Score: 1

    This means that all applications must be decoupled from their interfaces, and that's nontrivial if possible at all.

    It is likely to be impossible for existing applications to be thus decoupled retroactively, but I suspect that, with suitable specifications, new applications could reasonably be written decoupled from their interfaces.

    The ideal interface would probably be a multiplexed text stream of some sort, where the user would send commands to the program and it would respond in one main virtual stream using additional data in other virtual streams. The data would conform to some content specification. In practice, nobody (except people debugging the program) would use the raw interface, but would instead use a front end which could be shared across applications which would render the various programs in a unified manner, and would be chosen (and configured) by the user.

    The main problems I see are:

    • Coming up with a sufficiently general specification. Possibly something related to HTML would be good (I've written a program that used HTTPS as the interface, and that worked well), with suitable standards for other content types. There's still the program of creating the spec and keeping people from stuffing incompatible extensions in on one side or the other.
    • Handling applications which are mostly interfaces. For example, a wysiwyg word processor is actually a display for a markup language of some sort which can print it and has built-in commands to add particular bits of markup. It's unclear what (if anything) is not the user interface (i.e., would be the back end) in this case.
    • Also, applications with very specific sorts of interface necessarily attached. For example, the game of Go. There's a board on which players place pieces. It requires a great deal of imagination to come up with a text-only or voice-only interface, and it clearly would be impossible to specify Go in such a way that a front end that was not specifically for Go would present a good interface. (especially since the front end might be voice-only)

    On the other hand... there are a couple of protocols suitable for playing Go on the internet. There are quite a few entirely different clients which speak these protocols (even to a local back end) and which look remarkably different, and some of the protocols make it possible (although not easy) to play with plain text, just using telnet. So maybe the problems are not insurmountable after all.

  31. Re:You've got it backwards by mikpos · · Score: 1

    More superior to what? And how is it superior to whatever you're implying it's superior to? Linux is fine, but it's not superior to much. It's just different.

  32. Re:You've got it backwards by mikpos · · Score: 1

    Oh ya sorry I misread. At first read, I thought you were one of those people that says things like "well if Linux were REALLY the second son of God, it would be able to do foo", and then you want to smack them.

    Although I'm still a little lost as to what it might or might not be superior to.

  33. Re:Easy question by mikpos · · Score: 1

    Umm no, if you plotted them as altitude over time, the steep one would still be steep, and the gentle one would still be gentle. That's not to say that it's bad though. Steep learning curves are hard, but that is most definitely not a bad thing. Using like your brain and stuff you know.

  34. gless by David+Jao · · Score: 1
    How do I pipe to a graphical tool?

    cat file.txt | gless

    Not that I think gless is useful ... it would be useful, if only someone would write the few lines of code needed for mouse wheel support. I'd do it myself except that I know nothing about C.

  35. Re:Some problems I've seen with UI's by CWCarlson · · Score: 1

    I've been thinking lately about your item #2, so this caught my eye.

    It seems to me that, in a work environment at least, people tend to organize their work in various ways depending on the task at hand. For instance, papers devoted to a particular project get tossed into the same file folder or binder no matter what their format, and ongoing KOI reports will all get filed together as well.

    A searchable 'pool' of documents would work great for this, coupled with the ability to create 'projects' that consolidate several different, but related, documents into an easy-to-navigate group.

    Oddly enough, I seem to recall something like this (well, the document-grouping function, anyway) being a part of Microsoft Office at one point. It didn't provide for 'linking', if I remember correctly--instead, it created a single file which contained each of the component documents. Like so much of Microsoft's work, this was close but not quite there...

  36. Re:GUIs Sucks by Skavookie · · Score: 1

    It sounds like you are arguing for interfaces with no learning curve. Trying to construct a 100% intuitive interface is an excercise in futility. CTRL+KB is intuitive once you learn it but for a total newbie it's not the least bit intuitive. All the things that we think of as intuitive are only intuitive because we're used to them or are used to something that works similarly.

    I do, however, agree that mice are vile creatures which have no business being attached to computers.

  37. Re:Some problems I've seen with UI's by Skavookie · · Score: 1

    Just maximize everything. Allow multiple windows but hide everything but the one beeing used. Perhaps also make the taskbar look like a row of folder-tabs.

  38. Re:Easy question by cpt+kangarooski · · Score: 1

    No, steep learning curves *are* best. If the amount of stuff you've learned how to do is on the Y axis and time is, as always, on the X axis, a steep curve indicates very rapid learning.

    I suspect that the reason people get this backwards all the time is b/c they think of climbing a hill: a steep one is harder, and a gentle one is easier. Of course, if you plotted them in altitude over time, you'd get a gentle curve and a steep curve, respectively.

    --
    -- This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
  39. Re:MS?? by cpt+kangarooski · · Score: 1

    Mac specific -

    1) Seems like a personal preference issue to me. I hate using GUIs which operate the other way around - I can't throw the pointer to right field and keep on working in the front window - which (because I can only type in one thing at a time) is usually the only one I want to look at.

    2) Get a multibutton mouse. Then bind those commands to the buttons. Surely you don't believe that one size fits all? I'd like a 5 button mouse, myself, but I like the iPuck too much to consider getting anything else. Also what Mac programs don't use Cmd Z, X C and V? Many even bind F1-4 to those, since they never get used otherwise.

    3) Well, OTOH this lets you drag from any side, which is convenient at times. There are the ocassional 3rd party plugins that provide Windows/X style resize frames on the windows. Haven't used them in years though, so I can't say much about them.

    4) In the application menu you'll find that the first item is 'Hide [application]' Very useful. The Mac has a taskbar-esque palette that can be accessed by tearing off that menu - you can reduce it to be 16x16 icons, which will probably do what you want.

    --
    -- This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
  40. Re:bandwidth, I want more bandwidth! by cpt+kangarooski · · Score: 1

    This may be true - BUT, it's very confusing when the keys are always labeled the same, but have different functions.

    So for this to really work, the keyboard needs to acquire elements of the screen. Rather than reading F1, F2, F3... the keys need to change their labels to say 'Undo' 'Cut' 'Copy'... or 'Help' 'Preferences' 'Quit'... or whatever, depending on the software.

    Not likely to happen anytime soon, but it would be very useful.

    --
    -- This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
  41. Re:GUIs Sucks by mechtoad · · Score: 1
    I think the problem is that you can't easily go about fixing the problem. The deep gorge between the technically adept and the customer (anyone who has ever been on the "tech" end of a "tech support" call will understand my choice of nomenclature) is not going to be bridged anytime soon. Lets take for example, Office 2000. People pay hundreds of dollars to take classes on how to learn this thing. If you can actually figure out every single menu option on your own, hell, you are cooler than me (but only because I detest O2k :-)). It just goes to show how anti-intuitive the entire software suite is. Programs are designed, generally, by programmers. Programmers are inherently technologically adept. Customers are not. What the programmer thinks is logical for menu layout, options, colors, bells, whistles, whatever is often not what the customer finds logical. Look at AOL. I can't even _imagine_ a more dumbed-down interface, yet there are still those who struggle to comprehend. It's just the way things are... some people aren't meant to be that great at using computers as some people aren't meant for certain jobs.


    Hell, even one day in the distant future where computers can read minds, there will still be people with minds that are too simple for the computer to understand. If you really have absolutely no clue how to work your computer, there really isn't much interface-wise that can be done to ease the pain.


    Mike

  42. Re:You've got it backwards by Dr.Whiz-Bang · · Score: 1

    no, it's an argument for my grandmother to use a different _distro_. are you saying that my grandmother should not know the joys of free software? i'm sure you're not.
    the beauty of free software is that the handles on the tool are hot swappable, and if someone wants to make a user interface that is very consistent, predictable, and powerless, there are sure to be some users that would love it.

    me? i'm just in it for the eye-candy. i can figure out any interface, although to be honest, i would rather not waste my time trying to learn how to interact with an application if i could already know that and spend my time learning to use the tools.


    gg

    --

    gg
    Dr.Whiz-Bang
  43. Good articles on UI & software design by crisco · · Score: 1

    Some dude named Joel has a series of great articles at joel.editthispage.com on UI design. His latest installment has some horror stories about the Juno software, making some very good points in the process.

    --

    Bleh!

  44. Mr DeBono said... and I agree. by Anarchofascist · · Score: 1
    The problem is that there are two kinds of users; one kind wants the computer to be an insanely configurable machine capable of performing any information processing task (geeks), and the other kind who just wants to be able to type a letter, surf the internet, send and receive email (humans).

    Edward DeBono's excellent idea was for a single giant yellow button on the front of the computer marked "simplify" or "easy mode". When the user presses this button, the entire interface re-configures itself to treat the user as a newbie. All the complex icons, taskbars, menus and windows disappear, leaving only a full-screen page with simple buttons for launching a number of standard applications.

    The applications themselves would also know that the user wants a simple interface, and would remove as many configuration options, windows, menus and buttons as they could while still retaining basic functionality.

    Now THAT's a computer my mother could use.

    --
    Once more unto the breach, dear friends, once more, Or close the wall up with our American dead!
  45. Re:Choice of interface by unitron · · Score: 1

    They are paying you to be the one smart enough and knowledgeable enough to know that you need end user feedback. You should be *telling* them that you need access to and co-operation from the end users-to-be, and that without it you can't turn out the quality of work that you want to be known for, the quality that they are supposed to be getting by hiring you instead of someone else.

    --

    I see even classic Slashdot is now pretty much unusable on dial up anymore.

  46. A novice mode? by Mumble01 · · Score: 1

    An interface my parents can use must be simple enough for them to pick it up in a few minutes and flexible enough for them to expand its capabilities and uncover more options as their skills grow.

    When I gave my parents an old Macintosh to connect to the web they found the Mac OS Finder confusing until I reduced the choices on the screen to buttons for each of the applications they wanted to use. A glorified program launcher, if you will. Anything more complicated tends to scare the computer neophyte away rather than inviting him or her in to learn more.

    Mike

  47. beginner/expert. by rew · · Score: 1

    One of the important things is that a (G)UI is good for both beginners and experts. This means that an expert can use keyboard accellerators and a beginner should be able to use the menus.

    But that's not all: Just binding keyboard acellerators to the most often used menu-options doesn't cut it: The transition from "beginner" to "expert" should be smoothened by having the keyboard accellerators show in the menus.

    Netscape and XEmacs both follow that strategy.

    Roger.

  48. Re:Scripting for multiple user skill levels by AArthur · · Score: 1

    The Mac OS has AppleScript which allows a user to either script by hand -- or record a script (basically the program sends the AppleScript application any scriptable events it knows that you have just preformed to it, and writes it down in a human readable, correct format). I use AppleScript all the time when I use Mac OS -- to change my screen resolution and colors, to downloading my mail daily (well back when I used Mac OS to check mail, I now use Netscape/Debian-PPC to do this).

    And then there was Mac OS System 6 (on the System Additions disk) which had an app that could record mouse movements and keystrokes -- and effectively play them back -- this feature was wonderful, one could basically script anything this way that they could do from there mouse or keyboard.

    The fact is I don't see UNIX or Windows support any features comparable to this yet, although I am sure there is third party software to do this in Windows.

  49. Re:Tired of Notepad? Try Emacs. by Zagadka · · Score: 1
    graphical version of VIM has menus and supports "point-and-click" operation.
    So does Emacs on Windows or X. It feels like Notepad with different key bindings, and even those can be remapped.
    I knew I should've mentioned Emacs. The only reason I didn't is because I don't use it myself. But like VIM, Emacs has a learning curve associated with its more advanced features. I think it's extremely unlikely that a complete newbie could sit down in front of Emacs, and figure out how to do something like swap the last field in a file of comma-separated-values with the first field.

    (in vi that would be something like :s/^\([^,]*\)\(.*,\)\([^,]*\)$/\3\2\1 -- I'm fairly certain you can do this in Emacs as well, but I don't know how, because like I said, I don't use Emacs)

    Another tool that is reasonably "point and clicky", but is also quite powerful for the expert is AutoCAD. I don't use it myself, but my Dad uses it all the time. AutoCAD has at least two integrated languages (its basic "command language", and the more advanced AutoLISP), so it's very configurable. My Dad, not being a programmer, has never ventured into using AutoLISP. Some other people at his company have written simple scripts to automate tasks that they do frequently. The interesting thing is that the more "advanced" users can help to tweak things and make them better for the less advanced users. Without scripting capbility, that wouldn't be possible.
  50. How about two modes? by pen · · Score: 1
    I've had this idea for quite a while... it is one of the major things that I think that both Linux GUI's and Windows are lacking (though on different ends).

    How about a big switch, located in an obvious spot, that has two settings; "Expert" and "Novice".

    • Expert. The interface doesn't bug you with help unless you ask it to. It doesn't auto-customize itself. It doesn't ask you to confirm something 5 times. All of the features are enabled and shown to you.
    • Novice. The interface helps you with everything. It auto-configures itself according to your actions (sort of like MS Office 2000 - some good ideas are present here). If you're doing something even remotely dangerous, it asks you whether you're sure you want to do this (and explains what it is that you just asked the computer to do). Only the basic features are enabled by default.
    The lack of this switch has bugged me in both Windows and Linux. In Windows, no matter what I do, it still considers me to be a half-moron, confirming everything, blocking all but the basics. Just about anything that can be done has to be done through a wizard. This is just fine and dandy for the first 3 months you use the computer, but after then, it tends to get annoying. In Linux, the install process is usually smooth, but after that, I'm left standing in the middle of an open field not knowing what to do. The menu has a few games and that's about it. There aren't any wizards or helpers.

    What I'm trying to say, I guess, is that when designing an interface for the novice, one must not forget about the expert. And vice versa.

    --

  51. Re:two words... by Logan · · Score: 1
    Any distro of Linux.

    logan

  52. Re:bandwidth, I want more bandwidth! by Zygo · · Score: 1

    Ultimately, embedding a graphical display into your function keys is useless.

    If you're using function keys and you don't know what they mean, the last thing you want to do is look at the keyboard, which usually involves moving your head and refocusing on an object at a different distance than the object you've been staring at for some time. That's a major time-sink if your goal is improving the efficiency of user input, and it'll give the user a neck-ache from the repetitive motion. It's much better to provide function key hints on the screen, where the user can already see them, until such time as they can be memorized--then make them go away.

    Conversely, if you know what the function keys mean, and you want more bandwidth for input to the machine, you aren't going to wait for the display on the function key to catch up and display the correct intended meanings. A good typist won't bother looking at the keys to figure out where "Q" is--they already know where "Q" is, so they just hit the key without looking, and have already hit the next key before the machine has had a chance to do all the data processing that pressing "Q" might trigger.

    --
    -- I avoid spam by accepting only OpenPGP encrypted or signed email at this address. Clear-signed, RFC2015, heck, even
  53. Standard User Interfaces by Rotten · · Score: 1

    The lack of standrads make things hard for the begginer. But it's usefull in terms of keeping the customer prisioner. That's how things work.
    We can all agree to emulate some implementation and make it a de-facto standard OR we can develop our own standard, make it open and convince producers to follow it.
    One way is wide and straight, the other is narrow and difficult...but we all know what we will find in the end.
    There's only some KEY FEATURES, that nobody follows:
    a) EASE OF USE
    b) SIMPLICITY

    you can keep ading things here, but all refers to the same 2 things.

    Obviously no project has achieved this two goals, because today "people like my mother" has a lot of trouble using computers.

    YOU: "Yes Mom, I fixed that thing"
    MOM: "How did you do it?..What was wrong?"
    YOU: "Well, I just went to the Control Panel, and in the Networking Section y just fixed the IP number in the TCP/IP bar and changed it to 192.
    168.X.X and then switched the Gateway to 192.168.X.1"
    MOM: ??????
    YOU: Well...forget it now it's OK

    As you see...the "Networking Options" in Windows are less than intuitive for the begginer. It would be expected that EVERY OPTION for a given subject would be presented in ONE PLACE. Those upper tags are more than disturbing for a newbie because leads to them in believing that represent DIFFERENT THINGS. This key design mistake has been copied by almost every UI.
    "Kill those bars, are just confusing people!!!"
    Gnome, KDE...Please!! stop copying errors!!!

  54. Re:Ah yes, Microsoft FUD by NYC · · Score: 1

    Oops, I meant to say one of its weakness when it comes to UNIX becoming mainstream as a desktop standard. Not everyone wants to change the window manager, especialy non power users. How often have I come across Unices that have different window managers and even I was baffled about how to use them.
    --weenie NT4 user: bite me!

    --
    --weenie NT4 user: bite me!
    "Computers are nothing but a perfect illusion of order" -- Iggy Pop
  55. Re:Ah yes, Linux FUD by NYC · · Score: 1
    No, you fail to read English correctly. The original post stated that changing look and feel is an essential part of a usable User Interface. I replied with facts stating how this is not true. I agree that selectable window managers is a good thing, but only for power users and not for general comsumption.

    BTW, my NT sig is just there to piss of some Linux zealots. I only spend 25% of my time on NT (for audio), the rest is spent on my IRIX box, which has a superb window manager! And you talk about MS's (oh wait, I should be uber-cool/original and write M$) world come crashing down? Have you seen Red Hat stock or VA Linux stock lately? Can you say choke? Then again, have you seen SGI stock lately? Sadly, it is extremely low.
    --weenie NT4 user: bite me!

    --
    --weenie NT4 user: bite me!
    "Computers are nothing but a perfect illusion of order" -- Iggy Pop
  56. Ah yes, Linux FUD by NYC · · Score: 1
    ... is vital for a usable computer. So is being able to change the interfaces you are given.

    And let me ask: what usabilities studies have you conducted/read that back up these statements? I think I can answer this one for you: none. Why are you choosing to attack Microsoft with such a erronous statement?

    I have a Masters degree in HCI (but I choose to code because it is more interesting), and I can state that consistency is better if trying to achieve a usable interface for many. Users look for commonalities in menu/button placement, wording and overall look and feel. Different window manager are one of the weak points of unices, which is very much different from the lies you are trying to spread.

    Please, keep your Linux zealot FUD out of this...


    --weenie NT4 user: bite me!

    --
    --weenie NT4 user: bite me!
    "Computers are nothing but a perfect illusion of order" -- Iggy Pop
    1. Re:Ah yes, Linux FUD by ethereal · · Score: 1

      Not to impugn your HCI credentials, but you're considering consistency between the interfaces used by many different users. The post to which you were replying was discussing one user having a variety of interfaces to choose from. That user could choose the interface which they found the most usable. These are really two orthogonal issues.

      There's no reason that a computer couldn't be shipped with a default interface which is consistent with the expectations of most users, but allows for customization by a user who doesn't find the default interface particularly usable. Surely even a professional HCI designer would recognize that sometimes different interfaces are more usable for different people, depending on whether those people came from a Windows or *nix background, can touch type or not, and so on. Or do you happen to know the one exact interface which will raise everyone to unparalleled heights of efficiency? If so, please do tell.

      I haven't noticed the various Linux window managers impeding my use of the system; in fact they have enhanced it once I found one that worked better for me than even the Windows interface used to. I will admit that it is possible to get some different interfaces for Windows too, but I agree with the original poster that Windows certainly isn't architected to provide the level of modularity and ease of switching interfaces that a Unix-like system has.

      --

      Your right to not believe: Americans United for Separation of Church and

    2. Re:Ah yes, Linux FUD by JimDabell · · Score: 1
      And let me ask: what usabilities studies have you conducted/read that back up these statements? I think I can answer this one for you: none. Why are you choosing to attack Microsoft with such a erronous statement?

      First of all, I didn't mention Linux at all in my post.

      If my statement about MS is so wrong, then please point out the number of UIs they provide with Windows, how to alter those UIs to, for example, put the close button in a different position, or how to define different UIs for different users.

      ...and I can state that consistency is better if trying to achieve a usable interface for many.

      Yes, consistency is good *within* a UI. But consistency *across* UIs is useless, as users will typically pick one UI and stick with it for a relatively long time.

      Users look for commonalities in menu/button placement, wording and overall look and feel.

      Which I am not denying them. That is perfectly possible to achieve within a UI, whilst still being able to offer alternative UIs.

      Different window manager are one of the weak points of unices, which is very much different from the lies you are trying to spread.

      Please, keep your Linux zealot FUD out of this...

      Which lies would they be then? FWIW, you look more of a wacko than me in this thread, accusing me of 'lying to protect my precious Linux'.

    3. Re:Ah yes, Linux FUD by JimDabell · · Score: 1
      No, you fail to read English correctly. The original post stated that changing look and feel is an essential part of a usable User Interface. I replied with facts stating how this is not true.

      Really? I must have missed those facts, because all I saw was your opinion.

      Changing look and feel is the same as choosing between different UIs - look and feel is usually identical across a UI, even with tweaks, so there will be no inconsistency between apps which is what you seem to be claiming.

    4. Re:Ah yes, Linux FUD by gorilla · · Score: 2
      I'd say that the ability to change window managers is an important feature, but not because it allows everyone to change their window manager.

      The reason - it allows improvements to the window manager.

      If you can't change the window manager, you can't slip in an improved one.

      Even if only the superuser can change it, on a system wide basis, that's still miles better than everyone stuck with a 10 year old wm that's not improved.

  57. Where the UI should already be... by ACK!! · · Score: 1

    The mere existence of an operating system that gives the end user access to a system as powerful as many of the top commercial Unix variants is amazing. The idea of two such operating systems is wild. The idea that they would be free and available to users no matter who they were or almost what hardware they are on is revolutionary. However, we are still recreating the wheel started nearly thirty years ago by Ritchie (an others BTW) at Bell Labs.

    The same is true for the UI. In an amazingly short amount of time two projects doing the same things have come into being. They are doing a wonderful job of creating two desktop environments as robust as anything created in Cupertino or Redmond. Yet, we are still recreating the wheel.

    We have had the technology to do voice recognition and activation for a couple of years (before that the hardware limited the technology to a large degree) yet what do we use it for in the real world, voice software is used for dictation.

    We have had the technology to automate repetitive tasks performed by the end user on a daily basis (example: launch ppp, launch mail, start POP mail download, and then launch Netscape and go to Slahdot to see the news that matters :->). Yet, the technology is only used on an application basis with say for example macros in M$ products.

    None of this stuff is revolutionary or out there. I want to be able to verbally tell my computer who I am have it recognize my voice and log me in. Why can't we perform the same repetitive task once and then run one program after that? I know that I automate tasks through shell scripts and the crontab but if we are worried over making pretty GUI for the regular end luser that ain't going to fly at all. The regular issue standard end luser would never write a shell script but the OS that can give them an easy way to automate their tasks would convert many more millions.

    I am sure that I am thinking of only the minor stuff here. Still, I see posts here talking about the positioning of widgets, and themes versus consistency and a dozen other important look and feel issues that do not address the simple fact that nobody at all has had the guts to progress the user interface beyond the desktop.

    The WIMP (Windows, Icon, Mouse, pull-down menu) convention started by Xerox, stolen by Apple and barfed back at the world by M$ is nearly twenty years old. I am not saying ditch the damn thing I am talking about moving it FORWARD people!

    Listen, in everything, business to hacking, duplication of effort is always a problem. I understand choice, I even understand two desktop environments but we need teams of people working on what seems to be a hundred different freaking email software projects. That's right man I just can't live with only 18 GNOME email clients. Can we get together and talk to the divergent groups and get some people working together on coming up with new ideas for email clients? What can we possibly do with an email client that has never been done before?

    I am not sure. All I know is we don't need to be as good as winblows or the MacOS, we need to be better. We can't rely (and we never have before BTW) on the commercial interests to give the end luser a compelling reason to use Linux. We have to come up with the big reason and we have to understand that it will not be for the same reasons that computer geeks, programmers and sysadmins got into Linux.

    They don't care and they will not brag to their friends about their computer that has not gone down for over a year. My mom will never, ever hack code or compile her own program. My wife's aunt will not care about the power and allure of the almighty command line and having the power of a Unix box at home.

    Give them an OS that has a revolutionary UI that they can talk to, an office suite that is better than M$Office, and has one really cool killer app that can't live without and the MIGHT change operating systems. This kind of thing with the public and what they want is rarely logically.

    --
    ACK /ak/ interj. 2. [from the comic strip "Bloom County"] An exclamation of surprised disgust, esp. i
    1. Re:Where the UI should already be... by ACK!! · · Score: 1

      When I say two OSes in the first paragraph or so I am refering to Linux and BSD by the way.

      --
      ACK /ak/ interj. 2. [from the comic strip "Bloom County"] An exclamation of surprised disgust, esp. i
  58. Re:You, sir, are an idiot by binarybits · · Score: 1

    Fine, you can quibble about the words, but the fact that a new user doesn't immediately know that "i" inserts and "x" deletes has nothing whatsoever to do with computers being "logical" rather than "emotional." The fact that most Unix products have an internal logic does not mean that that logic will allow users to figure out how to use that product.

    And actually, the number has to come first: "2x" and "2dd".

  59. Re:Most important by IntlHarvester · · Score: 1

    Wow, your users actually understand highlighting text? Mine grab the mouse, click at the end of the selected text field and then proceed to use the backspace key!

    One delusion that we computer users and the industry as a whole holds is that the WIMP UIs are so intuitive that eventually everyone will figure it out. A walk through any random grouping of cubicles will prove this assumption incorrect. Maybe people don't care, maybe they are stupid, or maybe the interface just fails to inform the user how to perform non-obvious functions.

    How many workers had to sit in a Windows 101 class for 4 hours before they got their new $2500 PC? My guess is, not many. Maybe if they did, they wouldn't be sitting there five years later not knowing what selected text is, or how to navigate in dialog boxes, or why the mouse has two buttons. And meanwhile, the IT Department's reaction is to snicker at them and roll their eyes at all these people ineffeciently futzing around, instead of actually trying to solve the problem.

    A manufacturing company wouldn't put someone in front of an unfamiliar machine without training (because the science of rationalizing those environments for maximum efficiency has been perfected for years.) Yet, we do this everyday -- caught up in our personal prejudices and "you luser" mentalities.
    --

    --
    Business. Numbers. Money. People. Computer World.
  60. Re:Consistency! by IntlHarvester · · Score: 1

    Yes, some years ago Microsoft transitioned from IBM-style keybindings (F3, shift-insert, etc.) to Macintosh-style bindings (Ctrl-F, Ctrl-V, etc.).

    The problem is that they never really completed the transition. (Well, maybe they have finally with Windows2000 Notepad.) The main people to complain are the small set that use the IBM bindings. Sometimes Sh+Insert works, sometimes it doesn't. (The same way Unix users complain when an X app doesn't support the middle button paste.)
    --

    --
    Business. Numbers. Money. People. Computer World.
  61. A graphical help system needed by Compay · · Score: 1
    For a GUI to be learnable by the complete novice, a graphical (not text-based) help system is needed. We often take for granted such metaphors as "icons" "folders" and "windows" but for someone who knows nothing at all about computers and GUI's these are nothing but church items, office supplies and architechtural features. Because of this it is almost impossible to actually write about the interface in terms that people will understand; you will have to take for granted that the user is already familiar with a vast inventory of non-obvious technichal terms. Thus for the complete novice a text-based help system like that of Windows and the various Linux GUI's is less adequate.

    This is one area where the MacOS excels. If you want to find out how to add an iconic menu item to the "Launcher" (a tool that lets you start programs with one click ), the help system will show you step by step, drawing big red circles around where you are supposed to click, and moving files around in the file manager to show you what "drag-click," "window" and "icon" mean.

    Such a system is too much for your typical Slashdot hacker - by the time you've gotten here you already know the jargon and may find such a system patronizing. But for the intelligent novice this is extremely useful. It gives users the freedom to experiment: if they trust that the help system is really helpful they will be more likely to take risks while learning to use the machine, and will consequently learn more and have a richer experience.

  62. A Good Example of This... by nathanm · · Score: 1
    AutoCAD does this rather well. Since its DOS days in the mid 80s, thru the Unix versions (which they unfortunately killed off with R14), and now the Windoze versions, AutoCAD has used several different interfaces:
    • Command line - a command shell with a history and built in AutoLisp (AutoCAD's Lisp) interpreter.
    • Screen menu - a sidebar of commands, accessable using key combinations or the pointer.
    • Tablet menu - areas on a digitizer table with associated commands.
    • Pull-down menus - including a floating menu using the middle mouse button.
    • Modal dialog boxes.
    • Toolbars - including fly-out toolbars like wharf.
    • Non-modal dialog boxes - in the latest version.
    All these interfaces are *still* available (although screen and tablet menus are now turned off by default). Like Perl, there's more than one way to do things. Out of the box, it's fine for casual or new users, and power users can customize or create their own menus, mouse or digitizer button mappings, aliases, linetypes, hatch patterns, fonts, etc. to their hearts content.

    I've used AutoCAD for over the 10 years, starting with R9. Personally, I cut the screen and tablet parts out of the menu, modify the pull-downs to my liking, and make 1-3 letter aliases for the commands I use frequently. My left hand doesn't leave the keyboard and right doesn't leave the mouse.

    It's also highly programmable. There are multiple languages available for development:

    • Scripts - very simple shell scripting.
    • AutoLisp - their version of Lisp with added AutoCAD expressions.
    • DIESEL - a simple macro language used in menus.
    • ADS - a C API.
    • DCL - basically a GUI toolkit for AutoLisp.
    • Object ArX - a C++ API that lets developers create their own entity types.
    • VBA - the MS macro language.
    • Visual Lisp - compiled AutoLisp and an IDE.
    Now, you can even license the core AutoCAD engine, and build your own standalone app.

    As they've added options, they left the old ones there for backward compatibility. (Though I can't say that about the dwg file format.) I have a collection of AutoLisp routines I've coded over the years that I still use almost every day.

    <SLIGHTLY OFF-TOPIC>
    It does have its drawbacks though. It's prohibitively expensive for average users and it only runs on Windoze. That's why I use it at work, but not at home. I was hoping Visio's IntelliCAD would put some pressure on them (before MS bought them), but even at 1/10 the price and most of the functionality (even AutoLisp, AutoCAD LT can't even do that!) it basically flopped. OTOH, the IntelliCAD source code is available for free (beer, not speech; non-open source license), and there's been talk on the IntelliCAD Forum of porting it to Linux.

  63. Re:Tired of Notepad? Try Emacs. by Sangui5 · · Score: 1

    >So does Emacs on Windows or X. It feels like Notepad with different key bindings, and even those can be remapped.

    While it may seem nice at first glance, don't do that. Ctrl-C should be the command to kill a process, not the command to copy.

    GNU Emacs is much more powerful that notepad. Notepad is nice because it is so lightweight, but I'd never want to give up the flexibility of arbitrary macros.

    M-x load-lib
    arbitrary_macro
    M-x arbitrary_macro

    And does notepad come with tetris and a web browser? I think not.

    - Eighty Megs And COnstantly Swapping

  64. Drag & Drop Scripting by MikeFM · · Score: 1

    I've been waiting to see some WM that'll make it so programs can be written w/ discrete components plugged together where each of the components can be grabbed and dragged off to the menu bars or desktops or plugged together (if compatible) to form new components somewhat like the Lego Mindstorms programming interface. So if you wanted to grab the 'New' command from your spreadsheet app and drag it to the desktop it might form an icon called 'New Spreadsheet'. Of course fancier components could exist that'd do anything any app could do but that's the basic idea. These components should be able to be used by even fairly novice users to enhance and simplify their desktops. Of course advanced users could have a component editor where they could create more complex components either visually or with some scripting language. If Linux's desktop could work this way, copying Unix's tradition of pipes, then it'd blow everything else out of the water. IT'd certainly be a leapfrog over Windows and VB. :)

    --
    At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
  65. It better not crash! by MikeFM · · Score: 1

    I hate Windows mainly because it crashes. I love Linux partly because it is stable. For the most part X is stable w/ either KDE or Gnome (I use both E and Sawmill and both are great WM's) but now and then it just goes to hell. My number one bitch is because of Navigator. Mozilla runs far better though so I expect that to be a savior for me. But if the GUI could impose barriers on it's apps to keep them in line it'd be nice.

    --
    At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
  66. Re:two words... by um...+Lucas · · Score: 1

    The problem with Windows is, I think, that it doesn't ask all of it's questions at once, which would let you go somewhere and do something besides watch the ads for other Microsoft products. Instead, every few screens it asks you something, and then when it finally gets to the point of reinstalling the thing, it asks you what to do with each DLL it finds with a different version number... Yes, No, or No to All. And the description it gives for each DLL is non-existant, even with Microsoft's own DLLs... You'd think that at least they'ed know what their own DLL's are, wouldn't you?

    Anyways... back to reinstalling windows... Why can't it just scan the drive and present a complete list of DLL's with the current version, the version about to be installed, and a checkbox next to each that says keep or replace? Then you could just run through setup and come back an hour later and see a happy machine.

    Redhat's install may not be as pretty as windows, but it gets all the questions out of the way in advance, and it finishes up usually 8 minutes later (for me and my 24x CD ROM)...

  67. Re:multitasking... by jabber · · Score: 1

    I have not seen multitasking better than that of OS/2 on anything.

    Back in the day (uh-oh..) I got a huge kick out of being able to format BOTH the A: and B: floppies, while defragging one HD, while playing Falcon 3.0 off of the other HD.. All at the same time. The only time the game slowed down was when incidental sound effects kicked in. sigh

    This was all on a 486/33Mhz with 32MB RAM, with OS/2 2.0... They just don't make them like they used to. sigh

    Sure, OS/2 had it's imperfections. It didn't protect process memory the way UNIX does; but it was preemptive multitasking in the day when Windows 3.0 was cooperative (and barely even that). The preemptive multitasking of NT4 is not yet as smooth as OS/2's was many years ago. sigh

    --

    -- What you do today will cost you a day of your life.
  68. Scalpel... by Bongo · · Score: 1

    We tend to think of a computer as a set of tools... but the tools are just part of a process.
    See a surgeon at work, in an operating theatre. He is totally focussed on the process.. his/her procedures, while the assistants hand him the tools as needed, and monitor the patient's condition, only alerting the surgeon to life threatening signs as needed.

    I'm afraid that today's computer interfaces (GUI & CLI) are more akin to the surgeon taking a look at the patient and then filling out a departmental resources request for a scaplel...

  69. Re:One feature is necesary by N1KO · · Score: 1

    Wait a minute. I have a real example of a newbie using scripts. When I got quake 3 I only knew a little bit about writing scripts, but i did download a script made by some guy that "created" a zoom feature for quake. So there, scripts are usefull for newbies in some cases.

  70. Re:One feature is necesary by gonz · · Score: 1

    Have you used Windows lately? Most Windows applications (including Explorer) export OLE interfaces which can be programmed using scripts written in Visual Basic. Many applications also have VBA support, providing an embedded visual editor and debugger. And if you don't like Visual Basic, there's an interface called "ActiveScript" that allows application developers to easily support an unlimited variety of plug-in languages, including Perl, Python, Java, and Lisp.

    You really have try this stuff to see how superior it is to the Unix model (in which a script's only interface to the world is through executing programs and maybe some limited access to C libraries). Compared to the standardized, object-based world of COM/CORBA, something like "bash" seems like an ancient artifact.

    It's true that many of the leading window managers for X are incorporating CORBA, but currently (let's be honest) the support is nowhere near the maturity of COM under Windows. From that perspective, one could argue that Windows has *better* scripting than Linux. There are certainly many areas where Linux is superior, but I would hesitate to say that scripting is one of them.

    Lastly, I should mention that the Explorer shell has a ton of hooks for customization and extension -- check out www.windowblinds.net for an example of what is possible.

    All this technology is not yet widely known or used, since it's relatively new, and since Windows users are less likely to tinker with their desktop than Linux users. But it is catching on, and IMO the design is a lot better than the huge mess of competing "standards" that is X Windows.

  71. Re:Choice of interface by mikek · · Score: 1

    I also agree. I love linux because I have so many options for my desktop. For linux to succeed on the desktop it might have to come up with a "standard" desktop that is easy for novices to use, while other users still have the option to use whatever they want. One of the things I love about gnome is that they are focusing first on backend libraries to allow any program to use certain features rather than integrating them into their own apps. To this day there is still no gnome-wm that is distributed with gnome, though i can still use any wm i want with it. They could have put gnome-pilot directly into evolution, but instead made an entire library so any gnome application can use it as an interface to PalmPilots. So what I believe is that at each level of the interface you must have an open and well-designed backend before moving up. On the lowest level linux has the kernel and gnu tools, all of which are fully customizable. Then you have the X libraries which are still under heavy development and are improving all the time. Only then do you get to the wm which I think should only hand basic window management, yet still be fully customizable. Above that you can then install the gnome or kde libraries for advanced functionality and with those you get the full interface. This structure allows for the most flexibility and power once it is fully developed and I think that it is this that will create the best interface.

  72. Re:Choice by Compuser · · Score: 1

    The system has some config structure. It should
    be able to answer "how do I do..." type of
    questions without tech support calls. Stop
    living in the days of man pages. You need
    natural language querying. Again, a good UI
    cannot be done without good AI.

  73. Re:Choice by Compuser · · Score: 1

    /. doesn't do line justification, so I have
    to edit it manually so it kindof looks formatted
    but I don't care enough to do a good job. So
    it's a combination of UI sucking air and
    me being lazy.

  74. Choice by Compuser · · Score: 1

    You need choice. Some people call it bloat
    but most people have the need to rearrange
    their desktops every once in a while.
    Choice means being able to change window
    managers, change every function on screen
    and change look and feel (ala Java's swing
    functionality). Some people (myself included)
    love MDI, others prefer multiple desktops -
    solution is for every app to have a choice
    between those.
    Choice also means being able to switch off
    functionality if it makes things run slower
    (removing IE from Windows would make it boot
    faster, rewriting X into kernel would make it
    run faster etc.). Let user make choice between
    looks, functionality and stability. Most people
    only need one of the three but not everyone needs
    the same one.
    Finally choice means making choosing and changing
    things easy. If choices are hidden in multiple
    menu selections, various control panels or
    config files scattered accross the harddisk then
    it's like giving a user no choice at all.
    Personally, I think a human-readable registry is
    a good thing, but it then has to be comprehensive
    so that ALL software uses it and there then must
    be a nice graphical client for it. In UNIX,
    user-friendliness is compromised among other
    things by POSIX standard, so that you must have
    "/dev" rather than "/listing of your devices".
    You can play tricks, but an inquisitive user will
    find /dev and will be confused. When designing
    user interface assume user will get into every
    nook and cranny and be confused by any inconsistency. The only place a user will not get
    into is the binaries themselves, so internally
    you can use any cryptic names you want (although
    that ain't good practice either) but EVERYTHING
    visible to user must be consistent and logical.
    When I say logical, again, every user has different logic so give them a way to change how
    things are done. That by itself means that
    POSIX is bad. Windows is even worse.
    I do not believe that UI will change with voice
    recognition. The only thing that can improve
    UI is good AI that adapts to the user and ideally
    can sense the mood of the user at a given time.

    1. Re:Choice by Tower · · Score: 1

      People also need to learn that just because you are at the end of an entry box line, you don't need a hard return.

      Your post is awful to read - the breaks aren't even consistent. Is this a UI problem with /. or are you just daft? [/flame]

      --
      "It's tough to be bilingual when you get hit in the head."
    2. Re:Choice by Tower · · Score: 1

      Chalk another one up to Rob's perl code ;-)

      Thanks for not getting too mad 8^)

      --
      "It's tough to be bilingual when you get hit in the head."
    3. Re:Choice by bolthole · · Score: 1

      Dude. Stop pressing return all the time, except when you actually want a paragarph.
      Your 100 line thing there, should be only about 50 lines, if you let slashdot do its thing.

      use the preview button, ya know?

    4. Re:Choice by CrazyJoel · · Score: 1

      Too much choice and the user can change everything in the UI. That blows consistancy out the window.

      So, when the user calls you up and asks you "How do I do ...?", what are you going to say? The user has already remapped the entire keyboard to his own whims.

      --

      Such is the infinite Grace of Popeye.
  75. What's a bell and what's structure by Spyder · · Score: 1

    Stuff that I think is important to both to my users and myself in a UI:

    1. A conveniant and consistant way of managing tasks (Taskbars are the common solution, but Be 4.5's sucked as far as my test group was concerned, so it can be doen wrong)

    2. User visual settings from the silly color sheming to the more important font sizing and resolution.

    3. Bounding on commonly used click areas, things like puting the program close button in a corner is very important and the system menu button in another corner are ideas that make the GUI just plain easier.

    4. Cutting and pasting, I know user level stuff, but I'm serious when I say it's just important. If you have ever had to VT100 a configuration, copying it from (Insert text editor here) just saves aggrevation.

    5. A good file manager, I know a lot of people that say win 3.1's file manager was the hieght of technology in the field.

    Why do all the things resembal microsoft? MS 'intergrated'(read stole) some of the best ideas of the best UIs out there. The thing you can say about windows is that it's easy--it's easier to learn to use windows that it is to program a VCR.

    I long for the day when somebody comes up with a UI more useful and capable than a windows workalike. My sorrow comes when I realize the incredable feat of out of the box thinking it will take.

    --
    Spyder
  76. Re:You, sir, are an idiot by Inataysia · · Score: 1

    > If a user wants to make a text file (and most
    > users aren't even clear what a "text file" is)
    > there is nothing "logical" about typing "vi
    > newfile.txt." And there is *certainly* nothing
    > logical about the controls in vi.

    and you, sir, are confusing the words "logical" and "intuitive". the controls in vi certainly do follow a certain logic -- following almost any command with a number repeats that command that many times. this is standard across a great number of commands, so one could apply logic thus: "i delete two characters by typing 'x' '2', so i can delete two lines by typing 'dd' '2'."

    that's not to say, however, that the controls in vi are intuitive

    --Phil

  77. Eye of the beholder by McLaLa · · Score: 1
    After having read some of the posts here already but not all and if I repeat something already said well tough.The crux of the matter seems to be that there is no one PERFECT UI.

    The question was asked What are the inherent problems with MacOS, Windows, Gnome, KDE? in my humble opinion they all suffer from the same problem .... they are trying to be all things to all people. This is a big problem. What we really need is not so much the perfect UI but a series of specialised UI for specific types of users and before you say you can't pidgeon-hole every user you are right but for the expert user that wants more the higher end UI's become highly configurable.

    A prime example of this will be the difference between my mother who I have set up a winblows box for where all the applications that she needs or wants to use are easily accessable on the desktop, point and click easy hey ..... the thing was it took me longer to set that up for her than it did for me to install my fav linux distro download latest windowmaker, eterm and xscreensaver, in hindsight it would have been easier to set up gnome with the right icons on the desktop for my mum ahhhh well next time:). The point you ask is that I don't want a desktop OS I don't use Gnome or KDE, I don't have the need for it.

    What it all boils down to is that everyone has unique and specific needs for their computer interface and there is never going to be one perfect UI interface, all you really need is a way of registering what you are telling the computer to do. In this the console may well be the perfect UI you can see exactly what is happening the problem is the level of user required to use a console effectively but at the base level it is all that is required.

    If you are shopping for a specific new fancy bit of hardware do you go to the local supermarket or department store . . . I don't I go to several specialist computer stores. Why should the UI be any different I don't want all the bells and whistles of windows give me a terminal and and a web browser and I am happy. Hell a console will let me do everything I need to. :)

  78. Voice recognition and user interfaces by Camelot · · Score: 1
    I've never really understood the fuss about voice recognition. Sure, it is nice and Cool(tm) to have the computer obey your commands, but it just seems like a cumbersome way to use a computer.

    For simple stuff it may be appropriate, like 'turn on lights', but for anything more complex - with today's computers - it's just too difficult. It may require significant advances in artificial intelligence research and the maturing of intelligent agents before any useful stuff with voice can be done; voice recognition alone won't be enough.

    And consider PDAs with voice recognition. Would you like to blabber into your Palm in a public place ? I know I wouldn't. One could used to it, though - no-one here pays any attention to people talking to mobile phones, since pretty much everyone has a cell phone here.

    Am I just a relic in the age of technology when I fail to understand the benefits of voice recognition with computers ? Is there something crucial I am missing here ?

  79. Non-speech recognition nerds. by zuffy · · Score: 1

    I think that speech recognition and being able to command your computer via simple voice commands will make them easier to use for the majority of people. Those who do not have a willingness to learn how to use a computer because they feel it will be too difficult would find talking to it and having it respond back to be much easier. People say that eBooks will never take off because there is something very personal, perhaps spiritual, about holding a paper book and turning the pages. I think that using a computer is, for the most part, regarded as a very IMpersonal way of doing things. People like to hear a person's voice. If a piece of software was written well enough to put inflection into it's synthesized speech, to put fire and emotion into it, people would be able to easier relate to it. If you talk to a computer and it's response sounds like Dr. Sbaitso, that is going to turn people off very quickly.

    If computers are shifted to using speech as a method for I/O, does this mean that we will have no choice but to use speech to control our computers?

    OF COURSE NOT!

    The fact that you can control a system such as Linux without ever using a GUI (and that most programs w/ a GUI will have a console interface anyhow) means that speech will simply be another option. For some tasks, such as word processing, or IRC-type applications, using speech recognition would be a great benefit. It would speed up things immensely. Imagine never having to proof-read your written work for typos ever again. It would save me a lot of time and headaches, that I know.

    Simply put, UI's are not the end-all and be-all of computers. Solutions exist for Linux that you can really do whatever you want as far as UI to your system(s) goes. Certain people don't want things made easier and certain people do. The population at large falls into the latter category and should be considered when designing UIs for programs. If you're writing programs for use by the general public, it's not enough to simply say "I can understand it, that's good enough." You have to make it so that that everyone can pick up your program and say "Oh, this makes sense." It's something to keep in mind and I don't pretend to have the answers as to HOW to solve that particular problem. I guess the only way to go about it is to accept user feed-back and to continue to try new things.

    All praise variety.

    --
    {justin.filip | jfilip AT gmail DOT com} {http://jfilip.ca/}
  80. Windows Annoyances by Wntrmute · · Score: 1

    > One other thing about the mswingui that shits
    > me is that every goddamned process running in
    > the background that produces a dialog or window
    > thinks its important enough to interupt my
    > typing and grab the focus.

    I was just bitching about that today actually. Here I am at work, I click on a link in my browser, and the site is hammered or something so it's loading real slow. I Alt-Tab over to a SecureCRT session (Don't get me started on telnet.exe) to make some adjustments to my websever... Well, what do you no, the browser decides it's important enough to steal the focus in the middle of my typing. Grr....

    My other biggest complaint is those damn "Are you Sure" boxes... Umm, If I wasn't sure, I wouldn't have hit the Del key in the first place... I've already got the "Recycle Bin" if I delete something by mistake, why do I need to be asked if I am "sure"?

    -Wintermute, Counting the days till this weekend when I go to pick up my original IBM keyboard. But keyboards are another rant....

  81. I'd have to disagree... by Wntrmute · · Score: 1

    > Thats why people are scared of computers, they
    > see a screen full of buttons and icons and feel
    > overwhelmed.

    How many "Joe User" windows users do you know that have their screen so cluttered with shortcuts, they couldn't see their background if they had one?

    In my experience doing phone tech support, the "Start" menu is an utterly mystifying item. If there isn't a desktop shortcut for it, to them, it doesn't exist.

    -Wintermute, Remembers the time a user spent serveral minutes reading their 15 or so desktop shortcuts in an attempt to find "My Computer"

  82. NeXT by Tuross · · Score: 1

    Read and understand this before talking about user interfaces.

    Tom McCarthy's Intro to NEXTSTEP.
    --
    Matt
    --
    Matt
    1. Read Slashdot
    2. ???
    3. Profit
  83. I'll tell you what a good user interface needs... by brak · · Score: 1

    People keep talking abut their mother. "Let me tell you about my mother." -Leon, Blade Runner.

    Windows sucks, as does MacOS. GNOME is ok, except for that damn panel. I don't think that modelling a desktop environment around a users expected behavior is what is needed. It's been tried before. The Mac took the symbols approach, and Microsoft soon followed. The problem with either of these two systems is that they were written in a time when we were trying to make difficult machines talk to simple people who really didn't know what to expect.

    This has lead us to our current situation. We have people that have "learned" Windows, or "learned" the MacOS. They have learned it simply to use their applications and write e-mail to their grandchildren.

    I've had the fortune of getting a couple of people behind a computer running Linux (enlightenment once and fvwm another time) I've found that the gnome panel is nothing more than a crutch for them to get into the swing of things. And that's only if they come from a Mac or Windows world. In both cases, once they saw my desktop, no panel, epplets and the pager and icon box, they wanted that... why? because it looked cool. As far as the user interface is concerned, I think that on the application level, GNOME has it right.

    Common themes, etc. But in terms of what a UI really needs, it's this:
    A meaningful gateway into the applications a processes running on top of your operating system. The enlightenment menuing is brilliant. Why should anyone have to go to some corner foot/start button for anything?

    Between that and a simple lesson on gtop (for misbehaving applications) I believe the UI is perfect. A user should be asked to do nothing more than know how to launch applications and how to get rid of them when they are failing.

    In Windows and MacOS this isn't an option, since you usually have to reboot in order to clear up any "weirdness" you may be experiencing. This doesn't leave the posibility open for a system that will be up for a year that you simply log in and out of (if that) or simply run your applications on.

    People talk about how isolated the user is in MacOS and Windows, but really, the user is never more isolated from an operating system than the stability of the OS allows. Six desktops with all of your application usually open and at the ready is far more productive and user friendly than something where you feel like you need to start over every day or two.

    The idea of a system that is so customizeable that it can be rendered almost inusable by someone other than "you" is perfect. Let the UI be an extension of the person and how they wish to work. This is in sharp contrast to the "we know what's best for you and this is how you are going to work" mantra being chanted by the other side.

    Back to my mother. There are two directions to come at this. In several cases where the user has already known windows, I've found that they suddenly have this revelation that the UI is nothing more than another application (as it should be.) The next revelation is usually how much easier X/enlightenment or even fvwm are, in the sense that they are not in your face.

    Anyone that has used linux as a desktop OS for more than a few days (i.e. feels comfortable, can kill a java dead netscape, etc) feels like Windows/Mac is lame. They can still use it, obviously, but they feel betrayed at the lack of power that has been handed to them in these sugar coated excersizes of futility.

    If my mother has never used a computer before, it is even easier to sit her down in front Linux. You can safely say that she should not be afraid. She cannot possibly break the system. Removing that fear from a new user is one of the greatest enabling factors in learning any kind of technology.

    I believe that customizability and stability should be the foremost thought going into any UI. A close second, I would argue, is transparency. I fear that discussions about what a UI needs to have will inevitably lead down a road that creates YADDUI (Yet Another Dumbed Down User Interface) to which some subset of the masses must conform. It doesn't get any simpler than clicking "somewhere" on your desktop to bring up a menu...

  84. TOG by Hugonz · · Score: 1
    Anoyone really insterested in UI should take a look at Bruce Toganazzini's site. He also wrote a book on User Interfaces www.asktog.com

    Hugonz

  85. MS?? by Hugonz · · Score: 1

    You tell me how many years it has taken to MS to get anywhere near Macintosh level GUI.....

    Hugonz

    1. Re:MS?? by TheInternet · · Score: 1

      Microsoft had a Macintosh-Level GUI when they released Windows 1.0 and blatantly ripped off many Mac concepts. But since then they've improved a hundred-fold on the original design and now have a GUI that is far superior to anything Apple has ever produced.

      That's really amusing. Even if you do believe the Windows UI is better than the Mac's (which in itself is not something I can remember hearing), do you really believe it's better by a HUNDRED FOLD?

      - Scott
      ------
      Scott Stevenson

      --
      Scott Stevenson
      Tree House Ideas
    2. Re:MS?? by jmccay · · Score: 1

      >OSX which looks pretty but lacks distinctly different controls for different functions.

      Could OSX really be considered an Apple OS? If you read there web site, OSX contains some or all of FreeBSD, Mach 3.0, Apache, and some of there stuff blended in.

      MSs biggest problem is not properly fixing the bug and sluggishness of previous versions before they create a "new" interface.

      --
      At the next eco-hypocrisy-meeting, count the private jets used to get to the meeting. Should be interesting to see that
    3. Re:MS?? by he-sk · · Score: 1

      Frustrations with the Mac GUI (some apply also to Windows):

      • Decent cut and paste. X users know the joy of the three-button mouse and the single click paste. (Selecting text precisely also seems to be more difficult on the Mac, but maybe that's just me.) Really, many of us are smart enough to have more than one button on our mouse. Much more convenient than the keyboard accelerators - which fail to work a good percentage of the time.

      I am sorry, but you are obviously suffering from ignorance.

      I've used Windows for more than 8 years now, and only recently (well, a year ago) switched to Linux fulltime. I still curse every single time, when CTRL-C, CTRL-X, and CTRL-V do not do what I expect them to do. (Cut, Copy, Paste for those of you who never used Windows.) I want to select a bunch of text with the keyboard, hit the DEL key, and the text should be gone. I want to keep some text in the clipboard, select and/or delete other text and then paste the clipboard to an arbitrary location. Hell, I often select text, only to make it more readable.

      After one year of using X, I still don't get the reasoning after Paste-Current-Selection. Copy-and-Paste seems so much more natural to me. And why? Because that's what I used first, and used for many years.

      So, what do we learn here? Give the user options, with a reasonable default, but don't force your way of thinking onto them.

      --
      Free Manning, jail Obama.
    4. Re:MS?? by he-sk · · Score: 1
      Do you think that only because "CTRL-something" is the prefered way to copy'n paste for people who use windows for 8 years like you, it's the only way this functionality should be implemented??

      Maybe, I didn't make my point clear enough. "CTRL-something" is the way I prefer. But nowhere in my post I said, it should be the only way it should be implemented. I want options, and I want to choose the option I prefer most.

      No more, but no less either.

      --
      Free Manning, jail Obama.
    5. Re:MS?? by gatekeeper-eu · · Score: 1

      Having used cmd shell on an asci terminal for most of my life, when DOS came along the command line and the usefulness of batch files was comparatively easy to master. GUIs were a different matter, a totally different paradyme. If the CEO of Compaq says that he finds the PC difficult to use and he would like it to be easy for his parents to master - then, I would suggest, something is fundamentally faulty. One is forced to ask, were Zerox PARC right? If not, then the Zerox board were right not to persue the development to a marketable product. If this is the case then the alegations of lack of foresight were wrong. We can all be right in hindsight. Can there be an argument that the information contained within a pictogramme/ graphic is /less/ easily communicated that the written word? I think not, but there is a price to pay for graphics /bloat/! Recognizing a graphic is a matter of pattern recognition: the better an individual's pattern recognition the more likely the individual is to have monotone memory (think whether or not you dream in colour or black and white?). The brain does a lossy sort of compression, by excluding colour more detail of the pattern is remembered. The next point is the tree structure favoured by GUI designers. Some people, usually males, have good sequential memory: while others, usually females, have good point detail memory (take a drive with husband/wife - boyfriend/girlfriend to see the point). The GUI by these criteria is a compromise. The suggestion that speech recognition is the solution is somewhat off the mark - the old truism 'a picture speaks a thousand word' is as true as it ever was, and anyway who can speak that quickly? There are rumours that ex-apple GUI designers are producing an improved GNOME GUI. Someone else /improved/ on the MAC GUI some years ago and what did we get? I think that we need to go back to first principles and start again not with GUI programers who are so old that they are deified but with new blood - coders under 30, or is that too none 'pc'?

    6. Re:MS?? by bolthole · · Score: 1
      1) Seems like a personal preference issue to me. I hate using GUIs which operate the other way around - I can't throw the pointer to right field and keep on working in the front window - which (because I can only type in one thing at a time) is usually the only one I want to look at.

      You seem to be assuming that two or more separate functions are irrevokably one single choice. But sensible window managers let you separate:

      Click to raise

      Click to focus

      (and/or autoraise on focus)

      if you had a decent GUI environment, you could select "click to focus", but leave "raise on focus", and "raise on click" unselected. So you could click, "throw the mouse to right field", type, and then click in the next window you want to use.

      If you wanted a specific window to come to the front, you could then choose from options like "click on window decoration", or press some key bound to "Front".

      Also, I particularly like the "right button gives you a menu" paradigm, without having to drag my mouse all the way to the top of the screen.

    7. Re:MS?? by estranged · · Score: 1

      Yeah I just love the way seldom-used items on the Start menu and Office2000 menu are hidden - makes the menus take up less space... and if you really need the items, it's really easy to get back.

      Simple, everyone I've met has understood the concept at once.

    8. Re:MS?? by schmofo · · Score: 1

      Focus follows mouse. Why should I have to bring a window to the front to type or click in it? This is a relic of the single tasking world, where window managers were also task switchers. Feh! Gimme a real OS, separate windows from tasks.

      Tell that to someone who has never used a computer. Despite the fact that in computer terms a window and a task are very seperate, in the real world, if you want to manipulate a typewriter, you have to bring it into focus (pick it up and sit in front of it) before you can interact with it. Although that doesnt make much sense to a geek, the perfect user-interface would be the one that makes the most sense to someone with no preconceived notions about how computers work.

      Decent cut and paste. X users know the joy of the three-button mouse and the single click paste. (Selecting text precisely also seems to be more difficult on the Mac, but maybe that's just me.) Really, many of us are smart enough to have more than one button on our mouse. Much more convenient than the keyboard accelerators - which fail to work a good percentage of the time.

      I like the third button-paste as much as anyone else, but again, it doesn't make sense if you think "outside the box". The mouse should serve as a device for manipulating the screen and icons, whereas the keyboard is for manipulating text.
      There is no reason we should be limited to one, two or even three buttons, but consistent use amongst those buttons is very important. A first button should be for clicking, a second for context menus, and a third for who-knows-what. Text manipulation doesnt make much sense for a mouse button.

      Resizing windows - why only at one corner? This often makes me drag and then resize instead of just resize. Yuck.

      I can agree with you there, but it is simpler, despite less convenient.

      Please let me iconify a window in some better way that reducing it to it's title bar. That takes up much too much screen space - even the dreaded taskbar is better.

      Reducing it to its titlebar makes a lot more sense then sending it off to a taskbar. If you grow used to window-shading, it makes more sense to shrink a window in its current position and regrow it in the same place then it does to send it all the way to the opposite end of the screen and move the mouse all the way over there next time you intend on using it.
      The ideal GUI is one that works with no preconceived notions, but is easily modified to what a geek wants. Focus-Follows-Mouse can be added in a control panel, and borders can be reconfigured, and you can even change the bindings on a mice in the perfect GUI. But initially this GUI must make sense to someone who has never used a computer so that they have as few new concepts to grasp when they begin as possible. The Macintosh is popular amongst educators because of its small learning curve and Linux developers could do well to follow its example.

    9. Re:MS?? by demon-cw · · Score: 1
      I am sorry, but you are obviously suffering from ignorance.

      Well maybe youre suffering from ignorance! Do you think that only because "CTRL-something" is the prefered way to copy'n paste for people who use windows for 8 years like you, it's the only way this functionality should be implemented??
      Peoplelike me who use Linux for some year now are quiet comfortable with ALT-C/ALT-V/ALT-X or with selecting the text with the mouse and pasting it by clicking the middle button - thank you

    10. Re:MS?? by Ian+Wolf · · Score: 1

      How about we give credit where credit is do. Apple did not come up with their OS all on their own. They ripped off many of their "ideas" from Xerox PARC. Microsoft's failings in GUI design are due to its focus on eye candy. Customizable toolbars, menus, sliders, etc. None of those features make Windows a good Interface. Rather than addressing the problems in their design, Microsoft chooses to overhaul their GUI's appearance rather than their outdated and clunky code. Hey, Bill try some real "innovation" instead of simply bundling a browser.

      --
      "The words of the prophets are written on the Slashdot walls."
    11. Re:MS?? by ToiletDuk · · Score: 2
      Microsoft had a Macintosh-Level GUI when they released Windows 1.0 and blatantly ripped off many Mac concepts. But since then they've improved a hundred-fold on the original design and now have a GUI that is far superior to anything Apple has ever produced. Just look at recent UI trends. Microsoft is expanding into ever more modular and customizable toolbars, menus, sliders, etc... While Apple released the Quicktime 4 GUI, which is completely unusable, and OSX which looks pretty but lacks distinctly different controls for different functions.
      • _____

      • ToiletDuk (58% Slashdot Pure)
    12. Re:MS?? by Mr.+Slippery · · Score: 2
      ...in the real world, if you want to manipulate a typewriter, you have to bring it into focus (pick it up and sit in front of it) before you can interact with it. Although that doesnt make much sense to a geek, the perfect user-interface would be the one that makes the most sense to someone with no preconceived notions about how computers work.
      In the real world, I can write on a piece of paper that's sticking out from under another piece without pulling it to the top, and without tapping it with my pencil first to make it the recipient of my writing. GUI windows that claim to implement a "desktop" metaphor should work the same way.
      The mouse should serve as a device for manipulating the screen and icons, whereas the keyboard is for manipulating text.
      Most of us select text with the mouse. Using the mouse to manipulate that selection is not only more convenient but more sensible.
      Reducing it to its titlebar makes a lot more sense then sending it off to a taskbar. ... it makes more sense to shrink a window in its current position and regrow it in the same place then it does to send it all the way to the opposite end of the screen
      I disagree. It breaks the whole desktop metaphor - when I want to remove a piece of paper from my workspace, I don't fold it up and leave it sitting there, I move it off the desk.

      If you're going to have a metaphor, stick with it as much as possible. That's consistency, in a more important sense than whether a menu item is called "Customize" or "Options" or whatever.

      --
      Tom Swiss | the infamous tms | my blog
      You cannot wash away blood with blood
    13. Re:MS?? by Mr.+Slippery · · Score: 3
      You tell me how many years it has taken to MS to get anywhere near Macintosh level GUI.....

      The Mac's GUI should not be taken as a gold standard. I've had to use it at work for the past few months (I'm typing this on a Power Mac) and I find it rather clumsy.

      Not that the Windows GUI is any better, mind you, but I'll take my Linux box any day.

      Frustrations with the Mac GUI (some apply also to Windows):

      • Focus follows mouse. Why should I have to bring a window to the front to type or click in it? This is a relic of the single tasking world, where window managers were also task switchers. Feh! Gimme a real OS, separate windows from tasks.
      • Decent cut and paste. X users know the joy of the three-button mouse and the single click paste. (Selecting text precisely also seems to be more difficult on the Mac, but maybe that's just me.) Really, many of us are smart enough to have more than one button on our mouse. Much more convenient than the keyboard accelerators - which fail to work a good percentage of the time.
      • Resizing windows - why only at one corner? This often makes me drag and then resize instead of just resize. Yuck.
      • Please let me iconify a window in some better way that reducing it to it's title bar. That takes up much too much screen space - even the dreaded taskbar is better.
      --
      Tom Swiss | the infamous tms | my blog
      You cannot wash away blood with blood
  86. A good source on UI stuff by dutky · · Score: 1

    I'm shocked that nobody else has mentioned Bruce Tognazzini's web site AskTog. He is the founder of the Apple Humam Interface Group and author of a number of good books on the subjects of software design and user interface design. His web site is wealth of usefull information on user interface design issues and asundry other topics.

  87. The Model/View/Controller Paradigm by OscarMeier · · Score: 1

    The MVC paradigm (made popular by the SmallTalk community) holds the key to success in areas of user interface. It has the following characteristics:

    Model: the model of the data you're working with, and how it's being operated on

    View: the way in which you view the data, which is independant of the data model. This is where the user interface lies.

    Controller: the interaction between the view and the hardware.

    Too often we try to tie the user interface for a particular task to the data and/or operations that are being performed. By separating out the view and the model, you can create a user interface that is independant of the model and consistent with the larger user interface (say of a graphical desktop environment like GNome). This allows for multiple methods of accessing the model that can be customized for the user (command line, GUI, a modal interface for new users, etc.)

    In the end, this gives the person designing a particular user interface the ability to customize the interface to meet more than one need.

  88. One thing that seems to be missing... by OscarMeier · · Score: 1

    ...from everyone's posts is the idea of adaptability. What makes communication with other humans easy? They adapt the meaning of what you say based on context and past experience. A user interface should do the same.

    In other words, an advanced user should have the user interface adapt to his usage patterns, while still maintaining consistency (in terms of style, predictability, etc) with the simple user inteface of a new user.

  89. Two Requirements by trongey · · Score: 1

    I firmly believe that there are two absolute requirements for a successful user interface.

    You must have a user and something to interface with.

    If you leave out either one then the UI is useless.

    --
    You never really know how close to the edge you can go until you fall off.
  90. Re:multitasking... by frantzdb · · Score: 1
    This is apparently one of the ``big things'' in OS-X, that the dialogs are attached to their parrents and that they only block input to that app.

    IMHO dialogs shouldn't block any input (within reason). They should probably stay on top so that they don't go unseen but there have been numerious times with Outlook Express that I've been configuring my mail server and had found that alothough ``apply'' applies the chnages it does no good because you have to click OK and then close another dialog before you can see if what you did was right.

    --Ben

  91. Efficiency and consistency by Witt · · Score: 1

    These two are the most important things, for me at least.

    The interface must be efficient - this means things like minimizing mouse movements, allowing autocompletion for text fields, and using a good set of keyboard shortcuts for many tasks.

    Consistency is also important - this means standards that are strictly adhered to for things like keyboard shortcuts, widget sets, standard placement for OK / Cancel buttons, etc. The idea behind this is to give the user an efficient and predictable user environment so they can focus on doing their work, not on how to do their work.

    The actual look and feel should be customizable, but there should be handy (familliar) defaults for users migrating from elsewhere (windows, mac, whatever). The actual look and feel aren't as important, so long as I can change them, and the defaults are decent and unintrusive.

    --
    -- Jeremiah
  92. And they will continue to fail by FascDot+Killed+My+Pr · · Score: 1

    The attractions of Linux is:

    1) the price
    2) the openness
    3) the stability
    4) the power

    With GMUI (GrandMother User Interface), you lose #4. My grandmother (and her functional equivalents) cares not a fig for #2 (since she can't program). Her computer came with an OS, so out goes #1 (since the grandmother-oriented OEMs still charge the MS tax for blank HDs).

    That leaves stability as the ONLY drawing point of Linux for old Granny. But just how often does Granny's computer crash? Probably not all that much, especially if she's got a Mac (whatever else their faults, they don't crash as much as Windows).
    --
    Have Exchange users? Want to run Linux? Can't afford OpenMail?

    --
    Linux MAPI Server!
    http://www.openone.com/software/MailOne/
    (Exchange Migration HOWTO coming soon)
  93. My personal experience. by JBv · · Score: 1

    The most functional and minimalist (!) interface I use is the CDE. It's ugly and depressive, but some basic tuning produces a UI that just does not get in the way of what I want to do.

    I think that most of the UI are the same (I use CDE, macs, windows, KDE/GNOME, windowmaker, etc). Some more functional than others. Some shade windows, others minimize windows... whatever you want.

    Why not use linux/other_free_os to come up with experimental (revolutionary) UIs? Since we are not profit-bound, some inovation is affordable.

    The most dramatic improvement in productivity I experienced was not UI related, it was when I switched to 17" screens.

    JBv

  94. One size does NOT fit all by kjz · · Score: 1

    One thing I have learned about user interfaces is that the audience they target matters. Determining who that audience is (the real 'users' of the system) is absolutely critical to assembling a good interface. The requirements for a novice user will be very different than those of an advanced user or developer.

    If you are targeting novice users, simplicity is key. Guide the user through tasks, and provide plenty of visual cues for what needs to be done next. Consider using text as well as graphics to label items such as toolbar buttons so the user doesn't have to go on a fishing expedition to find a piece of functionality.

    For more advanced users, speed of use becomes more important. Provide shortcuts to certain operations, including special keyboard and keyboard-mouse combinations. Once more advanced users learn the shortcuts for frequently used features, they will (hopefully) be more productive. Options that would be hidden or eliminated for novices can be exposed and presented in plain dialog boxes instead of "wizards".

    As for interfaces for developers, just take your best shot. Provide power and flexibility. Beyond that, we're just too damned picky to be kept happy. ;-)

    The most difficult task is creating an interface that satisfies all of the above groups. Many have tried to build interfaces that can gradually expose functionality, with limited success. In my very humble opinion, no one has yet to fully address all the needs of these various audiences in an application. In my work, I tend to avoid this challenge and simply address a given audience specifically. Developers get powerful and flexible (though maybe overwhelming) UIs, while the "suits" get the wizards and simple UIs.

  95. Re:Living in WordPerfect by J.J. · · Score: 1

    You're right. But, re-reading my post, I don't think I made my point clear enough. (Sorry - it's late, and I'm tired.) Let me re-phrase:

    The Ctrl/Alt/Shift interface is good (when combined with single key-press menus beneath) because power users can quickly navigate the menus with time.

    The problem with those interfaces, like you point out, is that they are difficult to learn.

    An ideal interface allows the ease (? - at least that's a selling point) of MS Word, menus, pretty icons and widgets while a user is learning the interface, but has those same menus accessed by Ctrl/Alt/Shift (combined with single key press sub-menu options beneath) so the power user can quickly fly through the same interface.

    (And all while being consistent, intuitive and powerful.)

    - JJ

  96. uniform by eMBee · · Score: 1
    it doesn't so much matter how it looks, but that everything that looks the same way also functions the samw way, or everthithing that has the same function also has the same appearence.
    uniformity.
    all programs should be written using the same toolkit.
    the programmer should not have any freedom to change the design of widgets, just because he doesn't like the way they look.
    if i learned one program i should be able to to use any other.

    greetings, eMBee.
    --

    --
    Gnu is Not Unix / Linux Is Not UniX
  97. Re:Easy question by JimMcCusker · · Score: 1

    A user interface should let you:

    Run programs
    Alter system settings
    Allow your programs to communicate with each other (drag and drop, calling up a browser when you click on a URL)

    Actually, I don't think that's the case. I mean, the second two I agree with. But I don't think that the user (as opposed to server) interface should specifically let you run programs. Look at OpenDoc, and how it's being implemented in KDE 2.0. It says that documents/objects/files (however you want to refer to them. I prefer objects, actually) can be manipulated by the user through the interface. Programs are there only as a gateway to those objects. Within that realm, I agree with you about what a user interface should do. But objects should be the centerpiece, not programs.
  98. Microsoft not all bad by silux · · Score: 1

    As much as I hate to say it when it comes to user interfaces microsoft can do something right. The company has done extremely well at making things simple to do. So simple in fact that for the most part anyone; including someone with little to no computer expeirence can do what they want. The problem with microsoft is (well instability), that it doesn't provide the user enough options and is very limited in what it can do. Many people like linux because of the stability and the flexibility of their products compared to microsoft. Its the one area that they lack strength.

    I think that where gui programmers should be focusing is giving the end user as many options as possible. At the same time however they have to try to figure out how make it as simple as possible. If there are two ways for the user to do things the simpler is almost always better. Don't forget thought that they should be able to do it the hard way if they want.

  99. Books on UI design .. by BeanThere · · Score: 1

    Anyone developing UI's that many people will have to use (this is a subtle hint to GNOME developers (the default window manager has a nice look but a horrible feel, sorry to say it)) should at least have studied existing literature on UI design. (Windows has an OK UI, but there is still huge room for improvement there, this is a subtle hint to MS developers :)

    One book I am aware of that discusses the things kcbrown mentioned is Computer Graphics, Principles and Practice (Foley,Van Dam,Feiner,Hughes).

    This book covers graphics in general, but has a fairly meaty section on UI design. Anyone know of any other decent references?

  100. consistency AND user choice by nchip · · Score: 1
    Open gv. Choose file->open

    Open Xv. Hit the right mouse button->load

    Open Eeyes. Hit the right mouse button->file-open

    Open Gimp. Hit the right mouse button->load

    Open imagemagick. Hit the right mouse button->open

    what's wrong with the picture?

    Not only every single program invented it's own way to the file opening screen, but every single file load screen is re-invented as well!!!

    And this was just an example. Every single configuration file on my computer has a different syntax, etc. I realise that gnome/kde should be making applicaitions more consistent, but At the moment this is a pain in the ass.

    We really need A style guide for Linux, which would considered with same authority as Linus is.

    --
    signatures pending - ansa@kos.to - (dont mail there)
  101. it depends by count0 · · Score: 1
    As always in UI design, it depends.

    It depends on the users, it depends on their goals, it depends on their tasks. It depends on the environment...social and physical. It depends on the platform: cell phone, VR, or plain-vanilla desktop.

    Usability guidelines help, but aren't sufficient. Really deeply understanding your users (and you may have several very distinct user groups), your users goals, and the best way to reach those goals - and then doing iterative prototyping and usability evaluation is the way to answer specific design questions.

    for more, look up user centered design on Google, etc.

  102. Re:vi is scriptable? by hbruijn · · Score: 1

    You can record (from the vim help function):
    q{0-9a-zA-Z"} Record typed characters into register {0-9a-zA-Z"} (uppercase to append). The 'q' command is disabled while executing a register, and it doesn't work inside a mapping.
    @{0-9a-z".=*} Execute the contents of register {0-9a-z".=*}

    A second way would be to remap certain keys to certain scripted tasks, fi noremap :so `~/bin/vimspell %` allows me to press F6 and execute the vimspell script which does spellchecking.

    --

    If a trainstation is the place where trains stop, what is a workstation?

  103. Re:two words... by denissmith · · Score: 1

    I do take issue with your comment that Windows "massively improved" the Mac Interface. I work with four systems - MAC, Windows NT, Linux (GNOME), and SGI-IRIX. Of all of the Systems GNOME has the least intuitive and elegant approach, which I don't mind- it is a WORK IN PROGRESS. By far the most elegant, intuitive interface is the MAC interface. YES there are sacrifices- there are things you cannot do easily on the MAC- but these are mostly system administration tasks, not common user tasks. If your GRANDMOTHER wants a computer buy her an iMAC. It isn't appropriate for everyone, but is much easier for the novice than Windows. The original question wasn't about OS, but about GUI. The SGI user interface and tools beat Windows in visual appeal, and the System Administration tools beat Linux ( the GUI tools, all the command line stuff is equivalent).

    If Apple were to port its new face on Linux for Intel as well as the Darwin kernel it would probably let MAC OSX give Windows a ride for its money.

    --
    I have nothing to hide. So, why are you spying on me?
  104. Re:two words... by Znork · · Score: 1

    Uhhh. No. My girlfriend installed redhat 6.2 on her computer in less than 30 minutes. Everything autodetected, all drivers installed. No mucking around with mountpoints or anything.

    Then I, as a veteran with 15 years of working with computers of almost every kind, including every flavor of windows tried getting Windows working on it. That took about 6 hours, of which 5 were spent getting the network card working, because Windows refused to recognize it when you installed it in any of the ordinary ways, with updated drivers or not. (Oh, yeah, eventually I got it working by mucking around with PCI IRQ's and installing the driver for the network card as an unknown pci device rather than in the network, new hardware or system hardware places).

    Just face it, Windows being easy to install is just a myth. The fact is, most 'newbies' would have better luck with Linux.

  105. gestalts... by Fishbulb · · Score: 1

    It's really a matter of gestalt (or paradigm, etc; world view). The "average person" 50 years ago was the first to grasp the concept of sending a video signal through the airwaves; they grew up with radio, so it wasn't that far of a stretch, but for their parents it was more amazing. However, they grew up actually having to TURN the channel, as in turn a large dial on their TV. Now thrust those same people onto what's basically an overblown calculator, and you have to explain to them why you can't load a MIDI file into a word processor.

    Today, you can't grow up without some exposure to a computer interface, concepts such as files and directories are more natural to more recent generations. Granted, they were designed to mimic the paradigm of a filing cabinet, but the digital implementaion goes considerably farther. In particular, when you dig down, everything on a computer, no matter what it's magic cookie name extension may be, it's still just a bit-stream; a linear sequence of 1's and 0's, and if you think about it, just a binary number. This became quite clear to me once I started working with unix systems, but was first illustrated to me by an Amiga sound player program I had in '87 that would pipe ANY file through itself (the doc suggested using the program itself as input just for the novelty of it).

    So before anyone can really be competent on a computer, they need to comprehend the files-and-directories structure, and then the
    idea that nothing really exists on a computer without the context we give the bit-streams.

    (BTW, for those of you wondering, nothing in a computer should be patentable or copyrightable, since any file is just a series of 1's and 0's, which also represent a binary number, and numbers aren't patentable or copyrightable (this is why Intel stopped using "x86" for their processors and started using names like "pentium"))

    It is my own personal belief that there is NO WAY to reconcile the difficulty some have with using computers, no matter what UI you layer over them, if the person sees no reason why their existence won't be bettered by it, and for that reason I believe that making UI's easy for the common person is futile. When the printing press was invented, not everyone could take advantage of it, because up to that point there were so few copies of what was written that most people had never had the chance to learn to read. Only when the press had made printed text ubiquitous did people become literate out of necessity and sheer volume. Older, illiterate generations died off, and eventually all those living had some exposure to written word (not knowing of a world w/o written language as their parents or grandparents had).

    Consequently, written text took on (better):
    o sentences and paragraphs
    o puctuation (more widespread use unless you read /.)
    o capitalization (of the first word of a sentence and proper nouns)

    certainly for the English language, at least.
    But my point is that the UI for written language became more refined once a vast majority of the population could read, which didn't really happen until most of the pre-press genereations had died out.

    The same must happen with computer literacy before UI's will get any better.

    Am I full of it or what? :)

  106. There answer is quite simple... by 7dragon · · Score: 1

    Consistency of use.

    If the interface is mouse intensive, then offer
    COMPLETE access via mouse. This is one area that
    Apple has won over MS or Linux. The AVERAGE Apple
    user does not have to rack their brain to figure
    out the proper buttons to push. The intuitive nature of the interface makes it easy to deduce where to go for the correct answer.

    In Windoze the interface sometimes switches erratically between mouse and keyboard input, making it a trial to input a table full of info. And bear in mind that non-3l337 computer users are merely data-entry cogs.

    In KDE I am annoyed by the inconsistency of different apps. Either make it all mouse or all keyboard or all both.

    Consistency is the key.

    1. Re:There answer is quite simple... by AnarchoFreak_00 · · Score: 1
      Acctually, Apple are pretty sloppy when it comes to the mouse, one mouse button gives less funtionality and means that something else has to take on more commands. And since that Mac are slack with keyboard navagation. Doing simple things can sometimes be quite a tedious process.

      As clumsy as windows can be, At least you can use the mouse fully, or use the keyboard fully, and switch between the 2 easy or use both at the same time.

      As for 2/3/4 mouse buttons, u don't have to use the extra ones. U can just use the first one and navigate the computer with ease.
      When u feel comfortable, u can get a little more advance and start experimenting with the 2nd button.

      As for linux/KDE, it's new, and still being developed, so natuarally, a few things will be inconsitant for a while. And hey, it's open source anyway... so if you don't like it, u (or someone else) can change it to suit.

  107. Voice Recognition Better Left as a Toy by ttyp0 · · Score: 1

    Although voice recognition is neat in movies, it's not practical in real world work environments. Just imagine working in a large room of programmers (not hard for most of us), lights dimmed, favorite music quiet in the background, penguin in top of the computer. Only problem is that you want to smash your head through the computer due to the lack of concentration... the room sounds like an angry mob to telemarketers. I see the computer as quiet time, I talk to enough people throughout the day as it is.

  108. Re:Apple paid PARC, PARC is like X11 by TheInternet · · Score: 1

    How about we give credit where credit is do. Apple did not come up with their OS all on their own. They ripped off many of their "ideas" from Xerox PARC.

    Ah yes. I love it when people base their knowledge of computer history on made-for-TV movies.

    First, Apple bought PARC concepts from Xerox, not stole them. Xerox received oodles of Apple stock for bringing Apple engineers over to Palo Alto. Xerox had no interest in bringing the stuff into the mainstream.

    Second, from what I've seen PARC is a lot more like X11/motif than Mac UI.

    - Scott

    ------
    Scott Stevenson

    --
    Scott Stevenson
    Tree House Ideas
  109. Re:multitasking... by OldGrover · · Score: 1

    Yes. An OS had better be really bloody sure it
    is important before flinging a dialog box at me.

    And what about applications that pull themselves
    into the foreground when THEY want attention. There has to be a better way (blinking minimized
    icons are annoying, but better then leaping at me)

    I hate losing keystrokes into an application or window that just flew forward. Especially confirming things that I have no idea what was. And also, when I launch an application and it starts loading, if I flip to another app, I don't want the old app to throw itself on the top of the app I'm working in just because it is ready for me.

    Just because most people don't have 20 apps open at once, doesn't mean I shouldn't. I've got a hefty machine, it can handle the load, why can't the UI?

    --
    -- The nice thing about standards is that there are so many to choose from.
  110. Usability by isdale · · Score: 1

    The whole realm of interface usability should inform those trying to design new systems. Norman's "The Psychology of Everyday things" and Nielsen's "Usability Engineering" should be required reading. After that its a whole lot of experience (personal and learning from others).

    One aspect of why mom (or dad) has trouble with the GUI is the "affordances". These are the clues inherent in the design (visual, etc) as to what the UI will do. Us of the WIMP generation are pretty handy figuring out new WIMPs. The older cmd ln interfaces gave fewer affordances but those with experience know just what cryptic cmd str 2 use | whr 2 fnd hlp.

    As we move beyond the conventional WIMP GUIs we have even more troubles. VR systems look so much like the real world you think you should be able to touch, feel and manipulate them, but have to use some sort of encumberence (wand, mouse, etc). MS Research has done some interesting work in the area of 3D desktop interfaces (Task Gallery, Data Mountain). Read their stuff, then rebuild a better one in an OpenSource UI!!

  111. Re:One feature is necesary by Manax · · Score: 1
    Vi is a good example (not to slight Emacs, which is probably another good example, but I don't know Emacs) of a program with a very good learning curve. There are lots and lots of commands, which are all pretty independent, and can be used in any order, all of which (or almost all) will make your experience easier and make your performance improve.

    Better still is the fact that once you understand perhaps a dozen commands (all trivially easy), you can successfully USE it. (Okay, fine, you HAVE to have a cheat sheet, but it can be as small as half a 3x5 card. )

    I think this emphasizes a good point. A good UI provides a very small subset of commands (menu items, buttons, whatever) that you need to be able to work with the tool. (Minimalness) A good UI also provides lots of commands that build upon the basic ones. (Consistency/Intuitiveness and Power)

    --
    "Why should I be content to simply live in this world, when I, as a human being, can CREATE it?" - Oertel
  112. Re:One feature is necesary by Manax · · Score: 1
    While I didn't say it in the reply to theMAGE (whom I agree with on this point), a good UI doesn't mean "simple" nor "easy for a novice". It is more complex than that.

    I believe that a good UI is a powerful, easy to use, self consistent and configurable.

    These ideas should be applicable whether or not you are a novice or expert at the given application, and allow the user to slowly (or fastly :) ) grow between the two.

    --
    "Why should I be content to simply live in this world, when I, as a human being, can CREATE it?" - Oertel
  113. Re:Most important by Manax · · Score: 1
    And DAMN IT, I want to be able to REMAP those hot keys! Grrrr.

    It irritates me to no end when some app has a function that I'm using all the time, but no hotkey and no way to map it.

    Further, I don't like most hotkey layouts, and want to make things convienent FOR ME, not what the designers thought would be a good mapping. I also hate those layouts where, "Oh, you want to raise the object in the window, use ctrl-shift-PageUp." Not only is it hard to type, but I NEVER use PageUp/PageDown for anything, or Ctrl-U, Ctrl-D, or whatever. I'm not citing a speicific app here, just a general gripe about the style of problems I've run into with hotkey setups.

    --
    "Why should I be content to simply live in this world, when I, as a human being, can CREATE it?" - Oertel
  114. Re:One feature is necesary by Manax · · Score: 1
    Please reread what I posted.

    I didn't say that it is a good or bad UI, I was specifically talking about the learning curve.

    However, I disagree that VI is a bad UI just because there are no on-screen cues. Agreed that it is not "user-friendly", but a good UI possesses many characteristics, user-friendliness being just one.

    I believe that knowing 12 commands, and being able to successfully use VI makes it easy. Being able to learn 100 commands that all do valuable operations make it powerful.

    Every UI requires the user to memorize operations/procedures/keystrokes, otherwise it isn't providing any services at all. Even things like creating a new document in something like MSWord requires a fair bit of domain knowledge which must be memorized. Such as:

    How do I create a new document in MSWord? Oh, you go into the File (file? Why "file"?) Menu (menu? Where are those?) and select "New". Or you click the "blank page" icon (Oh, is that what that is? And Oh, is that the same as the menu item?)...

    Are either of these really all that "obvious" if you've not used a computer or MSWin before? Both of these methods may be poor designs in their own right, but I hope you agree that ANY interface requires contextual knowledge, and that that knowledge invariably is memorized.

    --
    "Why should I be content to simply live in this world, when I, as a human being, can CREATE it?" - Oertel
  115. Re:A quote I just found by Cloud+9 · · Score: 1

    That's not true either. The first taste of milk has to be squirted into a baby's mouth. =p

    --
    Karma: Dyn-o-mite!(mostly affected by Jimmy Walker reading your comments)
  116. Re:Choice of interface by JimDabell · · Score: 1
    I'm talking about replacing Explorer.exe with a seperate shell. Several shell replacements for windows are out there, most significantly Litestep which is an After/Open/NeXTStep clone...

    The trouble with this is that a lot of Windows apps make assumptions that Explorer is the shell, including Explorer itself - IIRC, last time I used Litestep, when I ran Explorer to use as a file manager, it started up the taskbar etc.

  117. What about the mute? by LoudChris · · Score: 1

    Voice recognition works real well when you can't talk!

    The best way to create a user interface is make it like something that every person uses at least one a day. Make it look like a car. Almost everyone knows how to drive a car. Or make your interface the human body. Damn..... This could get kinky.

    1. Re:What about the mute? by awarlaw · · Score: 1

      many years ago, Packard Bell had an intuitive interface that resembled the rooms in a house i always thought this was a good idea. the problem was that it took too long to work, was buggy, and you didn't quite know what was "clickable". maybe that interface could be put to use again and this time make the clickable items "glow". this was a very nice interface for my parents and i would like to see it again on top of a linux box.

      --
      TIME is the Aether...
    2. Re:What about the mute? by AnarchoFreak_00 · · Score: 1
      The best way to create a user interface is make it like something that every person uses at least one a day. Make it look like a car. Almost everyone knows how to drive a car.

      Acctually, thats a bad thing to do, and unfortunaly something that is begining to be seen more oftern.
      An interface for a car, is for a car, having an interface for something that it is not will just create confustion for the user. It nearly as bad (if not worse) that the "real life" interfaces.. e.g., a picture of a phone for dialing software, or maybe a more well know example is the Apple Quicktime interface.

      A properly designed interfase should have the most used functions at hand, and should be easly recognizable using well known icons. It should be simple and easy to use, and should have the same look and feel of the OS, unless it would be impoved otherwise (i.e. winamp would be clumsy if it used the normal win GUI).
      Having some customiseation is also good as everyone has differnt ways of using things.

      Although apps like MS office 2000, do have a huge amount of bloat, they still alow you to customize it easly, and revert back to the standard interface if needed.

      Also, a good GUI isn't made by making it look pretty, it's made by making it usable, and usaly when u do that, it looks good anyway.

    3. Re:What about the mute? by CrazyJoel · · Score: 1

      Perhaps sign language like in Johnny Memnonic?

      --

      Such is the infinite Grace of Popeye.
  118. Re:Different things to different people. by _Quinn · · Score: 1

    Try WindowMaker for GNUstep if you liked NeXT :)

    --
    Reality Maintenance Group, Silver City Construction Co., Ltd.
  119. Re:Choice of interface by holloway · · Score: 1

    I believe he's not talking about the option to use other pieces of software. And 'themeable' UI's usually mean change a colour or a background image. Overwrite the image for the close button, at the most. What this chap is on about, i believe, is the option to have your entire UI standardised and anything in common from app to app be changable in a central location. Move the destructive button to the left of the window rather than beside the resize ones. But then all the sub buttons should be able to be controlled. Do you want just graphics for the buttons with text tooltips? There just aren't any UI's that give a user this power (probably because it means restricting what a programmer can do).

  120. Re:bandwidth, I want more bandwidth! by Canar · · Score: 1

    But then again, maybe not. Remember, a mouse is analog (within certain limits... Digital analog, the oxymoronic marketing statement), and a keyboard is completely digital. I don't care how many function keys ya got, the only way to play Quake or and FPS is with a mouse, and you all know it! Joysticks are almost on an equal level, but with a mouse there's so much resolution in movement. A little wiggle, and the mouse moves a pixel or two. A wrist flick, and you're across the screen. At best, a joystick can be used to calculate some velocity function, and requires movement. A voice-based system is also very impractical, as our voices are very slow. Maybe if we were French or had some other language with crisply enunciated syllables it'd be somewhat efficient, but English. And you Yanks and your slloow drrraaaawwwlls. =)

    Having something reading your eyeball to track eye movement could ultimately eclipse that little rodent, but the mouse is so easy to use, so precise... It's gonna take some massive thought to come up with something much more easy to use and powerful than it.

  121. Re:UI for Programmers -- online book by Mr.+Slippery · · Score: 1

    Good link! Somebody mod this up.

    --
    Tom Swiss | the infamous tms | my blog
    You cannot wash away blood with blood
  122. Novice vs. Experienced by kubalaa · · Score: 1

    Take the piano. One of the best UI's out there, from the "expert-oriented" point of view; it may take years to learn, and few can master it, but those who do can use it like an extension of themselves.

    UIs today are still too abstract to take advantage, like the piano does, of the human ability to fine-tune our physical interaction with the world. They force you to think everything out.

    I'm not really arguing for such hard-to-learn UIs, but it certainly would be interesting to see some geared specifically towards intuitive speed and flexibility for experts rather than merely ease-of-learning for novices.

    I'd be interested to see computer maestros of the future, controlling complex algorithmic manipulations with subtle flicks of the wrist.

    --

    "If you look 'round the table and can't tell who the sucker is, it's you." -- Quiz Show

  123. Toughest Question by jlcooke · · Score: 1

    User interfaces are an art. They cannot be done by simply throwing buttons up on a window. UI pros who are any good will tell you they have written a good UI first time though. You need to do survarys and formulate stats on a particutal UI for a product.

    How many times out of the 100 users did they do what we asked them to do? How quickly did they pick up it up? Did it make their work/lives easier and/or more efficant?

    UI is an art. It hurts hearing from people to repond to this question as if it was a religous war against mircosoft. "no bash = no good" is not an objective responce.

  124. easy to program by iamriley · · Score: 1

    As far as I'm concerned, no GUI is good without an intuitive and readable programming interface. (I don't know why anybody goes through the pain of programming in Windoze--talk about a convoluted API.)

    --

    If you can read this, then I forgot to check "Post Anonymously".

  125. Re:two words... by oscariommi · · Score: 1

    Simplicity is not something that's good..
    Being able to do everything via keyboard, in the gui, is good.. I like gui, but I dont like moving my hand to the mouse or pen.. Everything should be easily (hmm..) accessible via keyboard movements.. It is mostly, but I still think keyboard 'navigation' in dialogs, menus etc, could be much better.

  126. Re:One feature is necesary by theMAGE · · Score: 1

    Well, it's not about "novice" vs. "power" users.

    There are more categories to think about: "casual" vs. "regular" user, "dumb" vs. "smart"...

    VI is a very good example of a _poor_ interface for a novice/dumb user but a _good_ interface for the power/regular user.

    Remember the Zen: "The hill with a sunny half has a dark half".

  127. Re:Choice of interface by theMAGE · · Score: 1

    Well, a solution to this would be "themeable" GUIs: and I am not speaking about colors of the window borders, but about placement of controls.

    However, if you are considering the 65% people who still have the default theme in Windows and 00:00 blinking on their VCR... that would be useless. And also think about the HelpDesk... it would be crazy.

    If the software producer will generate a couple of themes and allow them to be changed easily...

    I think it is "themeable" GUI is a concept too advanced for the current users.

  128. Just my thoughts by peteran · · Score: 1

    Primarily what anyone looks for in a userinterface(be it for a whole system or just individual programs) is usability. What is usable or not depends on the skills of the user and how familiar the user is with the interface. (Some of the aforementioned may require som training). Nowadays most people expect a graphical type of interface to call it a decent userinterface and this certainly more and more developers take into account and provide frontends of all kinds to different programs. What I find most sad is that not many of these frontends provide any more than similiar non-graphical(i.e. text) interfaces do and, thinking about the usability, some are close to user-hostile in their behaviour. Yes, they may be in alpha/beta stage, but still.

    Ok, now I seem to be getting off my original intent.

    The userinterface.
    The big thing I still have not seen much of is userinterfaces with intelligence. Sure things are changing with new features in for example Microsoft Office 2000 where less frequently used menu-alternatives don't show up and the assistant asking nice questions every now and then. The intelligence I am lacking is, well, so much more than that. It could be some automated behaviour of some kind. Software that grows with the skills of the user. And more.

    Some of the more interesting things I see on where good/bad UI design is matters are games. Several games that have been released may be altereations of another one and the ones that get popular are those with good user-interfaces(may not be true for games with pointless running around shooting eachother).

    Ok, I guess some of that made sense, maybe, or?

  129. A positive read and a negative by n8willis · · Score: 1
    My last semester as an undergraduate, one of the books we read in our Seminar class was "The Design of Everyday Things" by Donald A. Norman. I'd link to it at BN or somewhere, but since I'm not a "partner" and would get no kickback, it's not worth the trouble. Look it up.

    This book was great. The author approaches the task of designing an interface from a very practical standpoint, and comes up with recommendation after recommendation. I could list a bunch of buzzwords, like Consistency, Feedback, Metaphors, Mappings, and so on, but it's really better to just go read it, and take in all of the examples as well.

    The examples, while not from computing, are geared towards observing where real-world device interfaces have failed, and then dissecting them to see what the root of the problem is.

    On the other side of the fence, at all costs steer clear of the book "The Media Equation" by Byron Reeves and Clifford Nass. I mention this because I have seen it recommended in response to this type of question before. It is utter crap; the worst pseudoscience I have ever been forced to read. Every "conclusion" these two have drawn is a presupposition, and their evidence doesn't support it. Fight the urge to look at it just to "see what I'm talking about."

    So my answer is, get a copy of D.O.E.T. and keep it on your desk. Read it when you sit in your house, and when you walk by the way, when you get up in the morning, and before you go to bed at night. Write it on the doorposts of your house, and upon your gates...but avoid of "The Media Equation" like your life depends on it.

    Nate

    --
    -- Watch the REAL Jon Katz.
  130. Conflicting goals. by MetalHead · · Score: 1

    People often strive for "ease of use" as if this is some kind of holy grail.

    It has always seemed to me that there are really two goals to keep in mind when contemplating a user interface design, and these goals are not always in harmony.

    Those two goals are "ease of learning" and "ease of use". The two are often confused and/or taken to be identical. They are not identical.

    For example, once you learn it, /bin/sh (or Perl, or awk, or grep) are very easy to use. However, they are not easy to learn. (Compared to say, Pac-Man.)

    MS Windows interface (the basics) are pretty easy to learn, but not always easy to use. This is because the very limitations that make it easy to learn can make it difficult to use. (e.g. I have to constantly take my hands off the keyboard to move the freakin' mouse. etc. etc. MS Windows as a specific example is not important, Pac-Man would do as well.)

    The point is you should in general, strive for both, but it is not always possible. Sometimes ease of learning is more important, (e.g. Any applications aimed at the broadest possible audiences.)

    And sometimes in the real world a UI is not so much thought out as arrived at by agglomeration of features... (is that a word? you get the drift.)

    --
    Bang the head that doesn't bang!
  131. Re:One feature is necesary by charon.de · · Score: 1

    Please could someone tell me why this was moderated up?

    ...Windows is far more scriptable than any UNIX GUI.

    Have you ever heard about tail -f ~/blah/blah.txt or something like pipes, for example?

    Yours

    Michael

    P.S. Does someone else mention, that the (technical) quality of more and more comments goes down the hill?

  132. Re:Consistency! by homebru · · Score: 1

    Consistency is not only for GUIs. Even shell utilities benefit.

    Think about the last time you needed to construct a pipeline of utilities linked by pipes. And remember how jarring it was when you found that one of the tools you needed to use didn't support redirection for stdin?

    (Comments regarding the obvious superiority of PERL or Python will be ignored for the purpose of this thread.)

  133. Re:Some problems I've seen with UI's by FizzyPop · · Score: 1

    That's the thing, if they were in a database you would not need to organize them by
    directory. You could give each a descriptive name "Sasha", "Cindy+Linda" etc and
    as many attributes as you like (girl-girl, solo etc) then to access it you would
    just need to give the program enough distinguishing characteristics to identify
    a particular file.

    --
    .
  134. Re:Choice of interface by Field+Marshall+Stack · · Score: 1

    Whatever the problem was, It's Been Fixed. For a while. I've been using the most recent litestep development builds for the past couple of months, and it's been nothing but absolutely perfect. I strongly recommend it to anyone else who's stuck behind windows.
    --
    "HORSE."

    --
    "HORSE."
    -Flaming Carrot
  135. Re:One feature is necesary by Chasuk · · Score: 1

    Remember that DOS's command.com was a user interface, albeit command-line driven. And it was definitely scriptable: what DOS guru can ever forget the joy of batch files (extended tremendously for the real geeks by 4DOS)?

    Scripting is wonderful, but in this era of GUI dominance, I would hardly call scripting "necesary' (sic). I can't think of any tasks that I perform daily or even weekly which actually require scripting, which is implicit in any definition of necessity.

    I love the Windows interface. It seems intuitive to me, which is a detail of UI design that I find "necessary." I like Alt-TAB'ing between applications, I enjoy stepping through forms by pressing the TAB key, and reversing through those same forms with the Shift-TAB combination. I'm glad that "File" is always on the left side of the screen, and that "Help" is always on the right. I'm glad that applications don't entirely take over my screen (as MacOS seems to do), and I don't need three mouse buttons, thank you. Ctrl X, Ctrl C, and Ctrl V work just fine. I find the Start bar a useful tool, and I like the convenience of the tray.

    A lot of users here condemn the Windows GUI as "crap" without ever providing concrete examples. And no, adjectives such as "ugly" or "unfriendly" are too subjective to be convincing. They may be true, from your perspective, but they are wasted as constructive critiques.

  136. good UI by yellowstone · · Score: 1
    First and formost, realize that a good UI design doesn't "just happen", any more than a good internal software design "just happens".

    Some more specific thoughts:

    • Check for and report error conditions. Write error messages from an "external" point of view ("couldn't read file foo.xml" rather than "caught FileNotFoundException at XmlReader.java:327")
    • Avoid flashy effects. Scroll out menus, transparent dialogs, and bit-mapped title bars needlessly distract the eye from the functional aspects of the UI (bad) and inevitably introduce bugs into the code (worse)
    • Keep it simple. Especially for beginning users, a very busy UI with lots of elements can be very intimidating.
    • Provide for the fact the user will make mistakes. Provide cancel buttons, undo features, etc.
    • Provide help files, preferrably written by someone not familiar with the inner workings of the app, so they are in a place to judge whether the documentation is adequate for someone who doesn't know the codebase.
    -y
    --
    150 Opening BINARY mode data connection for slashdot.sig (129323052 bytes).
  137. how are we supposed to answer this? by goldenfield · · Score: 1
    There are of course many metaphors for human-computer interfaces; one could probably argue the Desktop is the leading metaphor today. Agnes Kukulska-Hulme, in her book Language and communication : essential concepts for user interface and documentation design, offers a better definition. She basically compares learning an interface for a new program to learning a new (spoken) language. The book delves deeply into comparing language constructs to interface constructs, but I think its more important to remember that when you design an interface, you're asking a user to learn a new way of communicating with your system.

    So when you look at the subject that way, its a bit easier to see why Windows has been so prevalent. Granted, it may not be as {cool, fun, stable,...} as linux, but the language you use to communicate with windows is pretty easy to learn. Additionally, most windows programs look pretty similar, so you don't have to learn a whole new language to use them - more you have to learn a new dialect. I think with Linux, you don't get that standardization, so learning each program can be tougher.

    Suck.com basically said as much in this article. Here's the slashdot reference.

    So if you look at it with this perspective, the key aspect is that the user is able to effectively communicate their desired command in a form which the system can also understand. So the whole interface issue is one of translation. The only key ingredients to an interface is that the human and the computer can understand each other, and that each party in the conversation can effectively say "yes, I can do that" or "no, I can't do that" or "what the hell are you talking about?"

    I'm almost surprised this question made it as an "Ask Slashdot." I mean, there at least 3 separate courses at the University of Iowa on interface design. I'm sure its similar at other Universities. And there are countless books on interfaces, whatever. This is a pretty broad f'n questions - how are we supposed to generate any real insight on it here?

  138. A Visual Interface by treebeard77 · · Score: 1

    for me the best windoze interface since 3.1 was the Norton desktop replacement shell.

    I still prefer the way windows 3.11 had group windows which displayed icons for a collection of aps. What I thought was stupid was that all the icons for the different groups were identical. What's the point of a visual interface if all the ... /kill rant. Norton allowed one to replace group icons uniquely. It's file manager was also better

    Personally, I truely dislike the menu of lists as is the case in everything since 95 was dumped upon our desktop. Others ( most probably ) will disagree. I like having my little group icons ( each unique! ) which pop open to give me the option of chosing amoung related ( I choose what's related ) aps.

    As far as application execution, I'd love to see each ap run in it's own virtual memory area and have ALL it's executables clear out when I end it, no vestigages. I have no idea how/whether this is practical.

  139. Re:Most important by binner · · Score: 1

    Well, the general sentiment here seems to be that most people would enjoy access to every function from the keyboard (myself included)...But!...

    About 90% of the users I have dealt with wouldn't use this anyway. I've done helpdesk, and user support in a couple different offices, and this fact seems fairly consistent!

    Have you ever watched a user log into windows (or any other program that requires a log in, for that matter)? If the user name field is already highlighted, how many of them grabbed the mouse, and re-highlighted it instead of just typing? Or worse, cleared the highlight with the mouse, and then backspaced to the beginning. They seem very dependent on the fact that *something* must be done with the mouse before the keyboard comes into play.

    My favourite example is users that use the mouse to switch between every text box in sight, rather than using the convenient TAB key.

    Granted, most of the people that I attempt to convert to keyboard use do like it better after a while! I think my point still stands.

    Also, the same mouse dependent people don't use the mouse properly either...for most people that I deal with, right-clicking to get a *gasp* context sensitive menu is completely foreign.

    I think that my point (hidden and convoluted as it may be) is that most UI's out there (at least in the graphical realm) are adequate for most users. What is needed is a greater level of user knowledge. The world needs users that can appreciate built in features, and apply them in more than one case. I guess I really want a computer literate world!

    -binner

    --
    Say what you mean, mean what you say! But please know what #$@% you are talking about!
  140. intuitive by MikeMcQuade · · Score: 1

    The user interface should be intuitive, that said, the first an only intuitive user interface is "The Nipple".

  141. Re:Consistency! by evan1l38 · · Score: 1
    I agree, and it needs to be consistent within applications as well. One of my major gripes in Linux is cut and paste - you can cut and paste text and so forth within an application, but not between apps reliably. That sort of thing frustrates me (which is why I now use and love BeOS.)

    Evan Reynolds evanthx@hotmail.com

    --

    Evan Reynolds evanthx@hotmail.com
    Two peanuts crossed the street. One was assaulted.

  142. A generalization ... by rlowe69 · · Score: 1

    I think a good UI has absolutely NONE of the things we are used to. The current choices of OS do little to bridge the gap between using a computer and doing things in real life.

    Regular people want a learning curve as close to 0 as it can get, and until common OSes adopt this ideology people will still have to learn the quirks of the individual systems before they can actually do REAL work.

    As funny as this may sound, there is almost no point in trying to make one grandios UI for the masses. Rather, the geeks need their prompt every once in a while (even with voice recognition, people!), and John Q. Public just wants to be able to have his e-mail read to him by saying "Do I have new mail?".

    People's needs are different. If you want to make a good UI, concentrate on a narrow audience and tailor it for THEM.

    --
    ----- rL
  143. A good GUI isn't enough. by -=[+SYRiNX+]=- · · Score: 1

    You also have to have a good underlying system architecture. The real keys to a good system (and GUI) are simplicity, consistency, and clear organization. Linux (like many UNIXes) and the open-source GUIs generally lack most of these aspects.

    I've used BeOS, Linux, Solaris, Win9x, NT, and Win2k. The Windows OS's and BeOS are the only ones with reasonably well-organized underlying filesystems. The various UNIX-like OS's usually have chaotic, inconsistent filesystems which necessitate all kinds of low-level knowledge on the user's part just to install and configure new applications.

    It's also absolutely ludicrous that many UNIX apps actually compile hard-coded directory and file paths into the binary executables. Look at GCC, for instance... if you compile it and then move it to a different directory and update your environment variables, it still won't run until you create symbolic links in the old binary locations, because many directory paths were built into the binary. How stupid! No binary should ever have paths hardcoded into it. It should instead look at an environment variable to get the path it needs. It's not as if Linux has that 640k memory limit under which all environment space must fit... so why are OSS software developers so hesitant to use environment variables when it's the smart thing to do?

    I've used KDE, GNOME, and the Windows interfaces. The reason Windows is winning in the marketplace is because it's the only one with a consistent enough interface that the interface generally doesn't get in the way of the task at hand. You can move from one Windows PC to another, regardless of whether it's Win95, Win98, Win2k, or NT 4.0, and start using typical applications immediately without having to relearn a new desktop. Although users can customize the Windows desktop, the permitted customizations are kept minimal enough that it doesn't alter the basic functionality of Windows UI or the basic appearance of all the widgets. This enforced consistency is what gives Windows such a usability advantage. Windows isn't such a great interface, it's just a consistent one.

    If the open-source community wants to create a better GUI, the way to start is by remembering simplicity, organization, and consistency. Come up with a very small base set of widgets (pushbuttons, scroll UIs (think of alternatives to scrollbars), selectors/radio buttons, text entry spots, static text for display, bitmaps, rectangular regions which can house other controls), and then use those to build small base sets of dialogs and "wizards". Then enforce that all apps *must* use those basic widgets, dialogs, and wizards, without violating and creating their own custom crap. Strive for consistency: all windows in the GUI must have the same basic elements, all shortcut keys must be the same in all apps, copy and paste should work from any window to any other window in the same way, text selection should always work the same way, menus should always be arranged the same way, blah.

    Notice that the key to everything in the above paragraph is "enforcement". At some point you have to abandon this "natural selection" theory of software development and instead enforce consistency, simplicity, and organization. It's the only way to end up with something usable.

    --
    - "It's just a matter of opinion!" - PRIMUS
  144. Re:UIs are static, but should seem *dynamic* by fougasse · · Score: 1
    I used it enough that I knew that the bullets of the arrow style was Shift-F5, 1, 3, 1, Enter. How long does that take with MS Word?

    With MS Word 2000: Alt-O, N, 7, Enter. That's one less button than your example. I'm not a Microsoft zealot, but Word has quite a nice UI.

  145. GUI Challenges: philosophy + strategy by ElitistWhiner · · Score: 1

    The NeXTSTEP GUI remains the finest example of best design GUI priciples. It's not perfect, there are improvements it could use but the *philosophy* is the best one.

    Its OS-integrated, inter-process communication and (true) threaded application architecture present a consistent, seamless and productive environment.

    Grandma Problems:
    Heirarchial file system
    Mouse-centric UI
    Inspector Panels (attributes, contents, tools, permissions)

    Mixed UI mepahors (clock==preferences)

    Since most "grandma" candidates upcoming will have been Windows-raised, it reamins unknown which strategy will move forward from dumb-down standards.

    Upcoming MacOS X will be a next generation NeXTSTEP. It is seen below and its historical development path is included FYI. It remains whether MacOS X will be better. Nor is it a certain-positive strategy to move GUI lover's forward.

    -r
    Historical ref:
    Lisa GUI: http://home.san.rr.com/deans/lisagui.html
    MacOS X GUI: http://home.san.rr.com/deans/prototypes.html
    NeXT GUI: http://www.erinet.com/jag/NeXTVIEW/osbshot.jpg
    (tab folder version 4.0 never shipped)

  146. two words: close box by StorminNorman · · Score: 1

    I can condemn the windows UI as crap *and* provide a concrete example:

    In the title bar of all Windows apps, there are three boxes at the right side: minimise, maximise, and close. In most other GUI's (pre-Win95) the close box, which terminates an application, is seperated from the minimise/maximise boxes, as it performs a different function, and one that is potentially dangerous to the window.

    This has been one of the big banes of Apple's Aqua UI, the fact that the close box is next to the minimise and maximise buttons. The behaviour violates Apple's own Human Interface Guidelines.

    On that subject, if we're talking about good User Interface, the HIG is worth checking, as it makes some good points.

    --
    life is a canvas/and the paint is hope and promise/the world is ours/no one can ever take it from us.
  147. Yeah, the least organized idiom I can think of by DebtAngel · · Score: 1

    I have files on my desk. I have a coffee cup on my desk. When I have lots of paper on my desk, I can't find the one I want, and when I have one piece of paper on my desk, it's not the one I want.

    Therefore the desktop was a *really* bad idea...except for all the other ones. If there ever were any...come to think of it, there never was one, except for CLI (which I prefer to work in).

    So what's my point again? :)

    --

    Is this post not nifty? Sluggy Freelance. Worshi

  148. general voice recognition not happenin' by nuttyprofessor · · Score: 1

    In early years of AI we thought natural
    language processing would be solved by now.
    The problem is that it turns out to be a
    really really really hard problem that may
    never be solved in its full general glory.
    The idea of talking to your computer the same
    way you talk to your mother and
    having it understand what your saying is
    a long long way off.

    Does this mean voice recognition is not
    usefull? -- no. Just don't expect a Star Trek
    interface to the computer.

    Of course there is always emacs' eliza...

  149. Is GUI the solution? by PraveenS · · Score: 1

    The GUI has been hailed as one of the greatest advancements towards usability of a computer, but has it really contributed more? Would you rather have a TUI machine that could do tasks like take a letter you've written and send it to all the people in a list that you give the machine with simple voice commmands, or would you rather flashy icons and glitzy themes that don't really accomplish anything? Clearly, linux users have seen that a TUI environment with scripting is much better than a GUI environment anyday. The only problem with the current TUI is that is uses arcane (at least to newbies) commands. I think that the move towards voice recognition and understanding of human language will represent a far greater leap revolution in the use of machines. The god of MIT's computer department, Michael Dertouzos also agrees: Column in TechReview by Dertouzos

    1. Re:Is GUI the solution? by baru · · Score: 1

      I have a similar post to this one below, and this makes total sense. Wouldn't you rather describe your task to the computer than memorize which command fires it off? Isn't any GUI just a crutch until we think of something better?

      --
      (insert sig here)
  150. User interface by TV-SET · · Score: 1

    I think there are two things that are important for a good UI:
    1. Flexibility (I want it to look as I want it to look).
    2. Defaults (great help for newbies, and a good time saver for others).

    Additionally:
    Speed is of course the issue aswell, but in most cases it is managable with a better hardware ;-P
    The capabilities of both mouse and keyboard usage should be considered as important too.

    --
    Leonid Mamtchenkov ...i don't need your civil war...
  151. Re:Consistency! by passion · · Score: 1

    One of the things that pisses me off when I use windows, or in gnome is inconsistency.

    I want to be able to close all my windows with alt-w, I want to be able to quit all my applications with alt-Q. If I lose trust with simple operations such as these, how shall I trust the rest of the environment to be a single integrated package that works together?

    Look at other consumer appliances - they joke about nobody being able to program their VCRs to tell the time, so it's always 12:00.

    --
    - passion
  152. Applescript by wanderingwalrus · · Score: 1

    applescript is one of those pretty darn easy "scripting language"... it's basically like a macro in word or excel i guess... surely that kinda thing would be considered scripting for novices?

  153. Consistent Metaphor by Noer · · Score: 1

    As far as a GUI, the best way to achieve an easy to use system is to have a consistent real-world metaphor for something a novice will be familiar with. The best example, and the only GUI to get this somewhat right so far, is the Mac OS. Of course, over the years, Mac OS has gotten much more complex and has strayed from this metaphor. Operating Systems are far more complex now than they were in 1984, and it's questionable whether a GUI could ever have a nice, clean, elegant, consistent GUI now and still accomplish everything it needs to accomplish.

    --
    -- "Those who cast the votes decide nothing. Those who count the votes decide everything." -Joseph Stalin
  154. Re:vi is scriptable? by awaterl · · Score: 1

    Thanks for the tip. For any that are curious, one possible implementation of this is as follows.

    % cat .viminfo
    # Registers:
    "s CHAR
    :e null^M:!ispell -x #^M^M:e #^M
    % cat .exrc
    rviminfo

    Spell check can then be done from vim with '@s'.

  155. Conistency *and* configurability. by Paul+Neubauer · · Score: 1

    The interface ought to configurable, to be tweaked to anyone's liking.

    Yet should readily be able to go to the defaults for a while (or a second or third or nth set of preferences) to permit consistent usage.

    Jumping from one machine to another even with the same OS and many of the same programs can be disorienting with 'trivial' differences.

    Give me a consistent starting point and the ability to configure things to my liking and the rest is details.

    --
    I don't subscribe to RMS's GNUtopian vision.
  156. Re:two words... by Ukab+the+Great · · Score: 1

    Any version of Mac OS

  157. M$ forgot the copier was low on toner by Ukab+the+Great · · Score: 1

    First off, Microsoft did not improve on the mac GUI. They never really understood how it was supposed to work and did a quick copy that did very little to embody the ideals of ease of use or rules of interface design (yes, there are general rules, like consistency and plain english names, just to name a few). It was sort of like copying one videotape to another. The original was clear and vibrant, the copy was grainy and of poor quality. Most people think that us mac people are hate at Microsoft because they copied apple. No, we don't hate Microsoft because they copied apple; we hate them because they did a crappy rip-off and then forced it on us. If Microsoft did a wonderful, competant job at copying the Mac UI, I seriously doubt there would be as many mac users as there are today.
    This rumor that you heard is true. There are at least two groups of people I know of (maybe more) who come from mac backgrounds who are trying to make GNOME actually usable. One is Eazel, run by Andy Hertzfeld, who designed some (if not all)of the original mac interface. They are designing the new GNOME file manager, Nautilus. Second is myself, Ukab the Great. I plan to take what concepts worked well on the Macintosh (and which M$, GNOME and others still can't seem to grasp) and apply those to existing Linux applications. It's quite fun to do. I took Miguel Icaza's gmc, which had very poorly designed keyboard shortcuts and menus, and ripped out the stuff that didn't work (e.g. mnemonics, ctrl shortcuts, etc) and replaced it with stuff that worked a lot better (alt shortcuts, better terminology, etc). Open source interface allows one to take confusing, poorly designed interfaces and turn them into clear, easily understandable interfaces.

    Clarux the PenguinCow says "four flippers good, two flippers bad".

  158. Re:How many of you are Mac users? by Ukab+the+Great · · Score: 1

    Why would a mac user like myself use Linux? The macintosh (as I see it) is not so much about a piece of hardware or a company but a set of ideals about how a computer should interact with the user. People who are not like you or I, people who have never worked with a mac for any long period of time, don't understand that it's the ideals like consistency between OS and Applications, plain english for system file names, properly chosen keyboard shortcuts, and other such things that make a computer easy to use and inspire our loyalty to the macintosh.
    It's those ideals that are important, not the machine or particular OS itself. I use linux because I get a feeling of satisfaction when I take a program with a poorly designed interface and I make it easier for normal people to use, something that probably most mac programmers would get a kick out of. I use linux because I enjoy the challenge of giving linux the same values that have so endeared me to the mac. Who knows, I might some day release the first distribution that actually has *real* ease of use. Only time will.

  159. Re:A quote I just found by randombit · · Score: 1

    That's not true either.

    Dunno. I've been a big fan of nipples as long as I can remember. ;)

  160. Re:One feature is necesary by xxyyxxzz · · Score: 1

    Please reread what you have posted. Needing a cheat sheet is the _definition_ of a bad UI. If the user does not have direction from the on-screen cues, then the program's interface is not user-friendly. Powerful does not equal easy; knowing 20 - 40 commands for VI makes it _powerful_, but the _need_ to memorize commands belies a bad interface.

  161. Re:One feature is necesary by Alpha+State · · Score: 1

    And the documentation for this is where?

  162. software is crap by _wintermute · · Score: 1

    The entire problem with software is that it has been designed by the people who build it. This is not a new idea at all. Time and time again software geeks like the good members of slashdot miss the point entirely...people just don't give a shit about operating systems, file systems, any sort of system. They just want something that will help them do their job/task and have fun.

    Because we all tend to live in software we think that software is the point. Well, it isn't. In fact, the best software is completely irrelevant. Grab hold of a recent non-wap Nokia mobile phone, for example and see how seemless the software and interface is. When I was raving at my Dad about the software on his phone, he was taken aback...it works so ~well~ that he hadn't even realised that it was actually software at all.

    If that is not a sad indictment on the sad state of this entire bloated, outmoded industry, then I don't know what is.

    --
    technoshamanic resistance within hyper-transgressive ontology
  163. GUIs Sucks by cardoso · · Score: 1

    Every single interface designed in computer history suck. Period. If you need to LEARN to use it, it sucks.

    For a long time Wordstart was a de facto standard. CTRL+KB was "intuitive", for godsake!

    People need less interfaces and smarter computers. If my computer understand "open slashdot", follow my eyes and understand "show me more" when I look at an article, THAT's a good interface.

    Kill the mouse !!!!

    --

    []'s Carlos Cardoso - Becoming a brazilian ProBlogger, typo by typo
    1. Re:GUIs Sucks by Spire · · Score: 1

      You appear to have misunderstood the original post.

      "Kill the mouse" is not by any means anti-GUI, or even pro-CLI. The original poster had nothing against GUIs; he was merely expressing a wish for a better means of control.

      You mistakenly assumed that his aversion to mice automatically translated into an aversion to GUIs. Not true.

      You further assumed that this imagined aversion to GUIs automatically translated into a strong affinity to CLIs. Not true either. There are many potential alternatives to both GUIs and CLIs, such as voice-controlled or thought-controlled computers with no visible display required (think Star Trek).

      --
      begin 644 .sig22&%I;"P@9F5L;&]W(&=E96 LA`end
  164. Re:Relearning GUIs by palp · · Score: 1

    Right, but the average user can't do that kind of thing, unfortunitly. I've seen people migrating from Mac to PC just stare at the screen wondering what the hell to do...

    --
    -palp
  165. Re:Easy question by palp · · Score: 1

    A few more things an OS should let you do:

    We're talking UI, not OS. But I won't argue that point much, it's not worth it.

    Unfortunately there is no such thing as a UI without a learning curve. All UIs are learnt. Sit down with a truly novice user some time.

    I was going to argue this point, citing consumer devices as an example. However, your point -is- valid. The first time you use a phone, you have to learn how to dial it. The first time you use a radio, or a television, same thing. The difference: most consumer level devices are very similar in design. For example, a TV or a tuner - the down button is on the left, the up on the right. I don't think I've ever seen it the other way. But GUIs, they move things around a lot from one to another. They change the appearance of things, and generally make it confusing to learn a new GUI. Thus, the lack of conformaty in UIs makes it so you have to re-learn each UI instead of being able to apply previous knowledge and pick it up quickly.

    --
    -palp
  166. Consistency by Pennywise · · Score: 1

    A UI should be consistent. A program's UI should not just be internally consistent ( ie menus/mouse behaviour/tab behaviour etc, should be consistent in differnet views of the same program ) but should be consistent with other programs on the same OS. At least for a default. This would make things much easier for people to learn systems and programs.

    --
    "The obvious is that which is least understood and most difficult to prove." -- A fortune cookie
    1. Re:Consistency by CrazyJoel · · Score: 1

      " A UI should be consistent. A program's UI should not just be internally consistent ( ie menus/mouse behaviour/tab behaviour etc, should be consistent in differnet views of the same program ) but should be consistent with other programs on the same OS. "

      Amen to that! All commands should have keyboard shortcuts. Those shortcuts should be the same for all applications. Copy, cut, and paste should always be the same keys. Same for open and save and exit. None of this shift-delete when you mean ctrl-x.

      --

      Such is the infinite Grace of Popeye.
    2. Re:Consistency by JCMay · · Score: 1
      CrazyJoel said:

      All commands should have keyboard shortcuts. Those shortcuts should be the same for all applications.

      I think that these shortcuts should be tied to the OS, and not individual applications. When I hold down CTRL-and press P (or Splat-P for Macs), the OS should trap this, and the application gets a message that is identical to what it would get if the user went File|Print from a menu.

      Make it transparent to the application.

  167. Re:Many things matter; users are diverse by Genevish · · Score: 1

    One thing I've noticed in regard to efficiency: The buttons in the Win95 taskbar don't go all the way to the edge of the screen. When you move the pointer to the bottom of the screen, you have to "slow down" as you get close to the button so you don't over-shoot it. On a Mac, the menu items (and soon the OS X dock) go all the way to the edge of the screen, so you only need to worry about side-to-side targeting.

    It's these little touches that enhance a GUI. Not that I'm saying MacOS is the better GUI, but these are the kinds of details that need to be thought of for a truly great UI.

  168. Re:Consistency! by bill.sheehan · · Score: 1

    Consistency is important, but when using GUI metaphors, a logical consistency with the real world is also vital. Who hasn't wondered, "What were they thinking?" when confronted with an operating system that you had to hit Ctrl-Alt-Del to log in, or click on Start to shut down, or save that floppy disk by dragging it to the wastebasket? Too much software looks as though it was designed by mutually hostile committees. -- Bill

  169. Its the whole desktop metaphor thats screwed up by quakeaddict · · Score: 1

    The main problem with any windowing type thing is the entire desktop metaphor. I dont care what OS/Desktop theme is chosen, a desktop with overlapping windows is not very intuitive from the start for novice users. It doesn't map to an intuitive human concept at all.

    Secondly, the concept of folders and hard drives and files and a hierarchy is also hard for alot of people to deal with. I would be that 90% of the general computing public has a hard time dealing with hierarchical file systems. Check out the Download directory of your parent's PC. Everything they downloaded in the last 10 years is there...why...becuase thats the only place they know really exists. The heirarchical file system should be abstracted totally away from most users.

    At some point you have to come to the realization that PC's are never going to be as easy to use as a TV, if you really want to use them. That might sound defeatist, but I think it is true.

    --
    I'm still working on a clever footer.
    1. Re:Its the whole desktop metaphor thats screwed up by Mr.+Slippery · · Score: 4
      a desktop with overlapping windows is not very intuitive from the start for novice users. It doesn't map to an intuitive human concept at all.
      Really? A desktop covered with overlapping papers seems very intuitive to me, but maybe that's just because I'm sloppy.
      I would be that 90% of the general computing public has a hard time dealing with hierarchical file systems. Check out the Download directory of your parent's PC. Everything they downloaded in the last 10 years is there...
      Just like that oh-so-intuitive pile of bills and papers on my desk, you occasionally have to go through them and sort them into folders. Hierarchical file systems are no more un-intuitive than filing cabinets - but they're no easier to use, either. ("Do I put this receipt from the vet in the "Dogs" folder, the "Medical" folder, the "Visa" folder, or do I start a new folder?")
      --
      Tom Swiss | the infamous tms | my blog
      You cannot wash away blood with blood
    2. Re:Its the whole desktop metaphor thats screwed up by alkali · · Score: 5
      [A] desktop with overlapping windows is not very intuitive from the start for novice users. It doesn't map to an intuitive human concept at all.

      Pieces of paper on a desktop?

  170. Re:A better reason for not using Voice Rec by izzylobo · · Score: 1
    For me, the more important reason to avoid voice recognition interfaces is simply this:

    I do NOT want to hear all of my coworkers yammering away to their computers!!

    I mean, geez, cube-land is already loud enough -- I don't need to have everybody talking to their PCs. Maybe if we all had private offices or something, but in a world where the majority of workers occupy cubes (or, hell, just big tables) there's no damn way voice recognition will take off.

    And those cubes are useful... how, again? Let's face it, for a lot of us, the difference between a cubicle and a real office, in terms of space they take up, is pretty damn minimal (my current cubicle is larger than the bedroom of my first apartment!). The cubefarm is a little more modular (yipee... like anyone re-orgs cube farms on a regular, or even irregular, basis anyways), but the disadvantages; inability to talk things out, no privacy to speak of, the yammering of the cubicle prairie dogs (and the prairie dog-like head bouncing whenever anything sounds interesting, having to put up with everyone elses music... bleahh.

    Hopefully, the days of massive call centers, programming teams that share one small cube area, and sundry other bullshit is soon to be behind us, at least partially, as high-bandwidth solutions become more common and using video conferencing and interactive groupware solutions to connect home offices together becomes more viable. Telecommuting is the way to go.

    (Sure, you're gonna need to get together in person once in awhile, but that's why voicerec should *supplement* other interface tools and methods, not *supplant* them.)

    Bring on Voice Recognition: I use IBM ViaVoice on an iMac at home, and I love it. And if it kills the cubefarm (and worse environments), more power to it.

    Scott Taylor

    --
    We are in a desperate race between Stupidity and Transcendance; Don't pick the wrong side.
  171. Re:Different things to different people. by Blakey+Rat · · Score: 1

    Definately! 100% agreement. There's one other point, though:

    When you refer to these points in the OS, you *have* to include all applications written for that OS. MacOS has a great, consistant interface... but that all goes bye-bye if the poor user decides to run, say, ICQ. (MacICQ violates almost every MacOS Guideline there is.) I'm sorry to say it, but I'd have to include Quicktime on this list...

    Also, drag and drop is essential. Not only with files, but with text, images, sound, *any* type of data. The saddest thing in Windoze is that it has support for this type of drag and drop support, but few applications make use of it.

    Anyway, though. MacOS is already consistant, has full drag and drop support, is pretty durn stable, has a large user and application base, and includes a *great* scripting language. Just rip it off. :)

  172. Re:bandwidth, I want more bandwidth! by jareds · · Score: 1

    But for the best output bandwidth from the human, you have to get all 10 fingers involved. So a keyboard with *copious* function keys is much better than anything with a rodent.

    You're wrong. There are undoubtedly millions of distinct actions one can perform with a mouse in less than a second. What it comes down to is mapping the set of mouse actions to the set of tasks one wants to be performed. With anything involving text processing it is impossible to do this in such a way that the user can remember how to do what they're trying to do (and still use most of the possible mouse actions in the mapping). With image manipulation, it's trivial to create such a mapping. The usefulness of the input device depends on the task at hand.

  173. Re:Bad GUIs put the computer first by jareds · · Score: 1

    Why can't I use the same spell-checker (yes, including the same custom dictionary) in my MUA that I use for word processing?

    I guess because your software doesn't work with ispell :)

  174. Tough question... by zaphod.nu · · Score: 1

    Multitasking, stability, speed, look, customizability etc. I don't think ease of use is much of a issue any more... Better documentation would do it...

    An easy way would be not to let stupid people use computers... :)



    .sig

  175. OOUI by benb · · Score: 1
    The OOUI project tries to realize that.


    From Overview:


    The idea behind OOUIs is to leave as much of the UI creation as possible to kits on the server side and so to reduce the static information (shipped with the application) to the minimum.


    This gives the largest flexibilty to adapt to the user's environment (e.g. computing platform) and preferences.

  176. Black Box does this! by Christianfreak · · Score: 1

    I've been using black box for sometime now and while it is very new (not even version 1 yet) and probably wouldn't work as well for a new user but with some time and development this is something that I think people would like.

    One of the most amazing things about BB is that it recreates its menus on the fly from a text file. If I need a new menu item I put it in the file and when I click the menu there it is.

    By default there are no icons on the desktop but just tell it to start KFM and there they are.

    Its extemely small, light on memory, things can be changed without restarting X, often without even restarting Black Box itself. Everything from what runs by default to themes to menu items are controled by text files and then to top it off its incredibly stable. I've used it for nearly a year and it has never ever crashed on me.

    If you are looking for a stable, easily customizeable window manager then give it a try.

  177. Off Topic by cybercuzco · · Score: 1
    even your door - How many times have you being in a situation where you walk into a door and you don't know whether to push or to pull the handle? (bars are for pushing, handles are for pulling - one way for identifying the correct way to open a door)

    Apparently they havent learned this lesson at the University Of Maryland, because there are two buildings, the student union, and the math building, in which there are doors with handles that you have to push, and bars that you have to pull. In fact, one door leading out you have to pull to open, which is a fire hazard ( doors always push out when leaving a building, to allow for the fastest exit). Despite the fact that all the doors are clearly labeled with words as to whether they pull or push, I always do the wrong thing because the handles are wrong, bad user interface.

    --

  178. Re:Voice Recognition/Activation by Spire · · Score: 1

    Never is a long, long time.

    Humans can do voice recognition with impressive accuracy (close to 100% when there are no accent issues). I find very easy to imagine that at some foreseeable point in the future, computers will have enough computing power to do the same.

    I may be wrong on this, but I also have a feeling that reliable and usable computer voice control will come before reliable and usable mental control.

    --
    begin 644 .sig22&%I;"P@9F5L;&]W(&=E96 LA`end
  179. Global accelerators by Spire · · Score: 1

    I have to say, this is one of the most brilliant ideas I've ever seen on Slashdot.

    In the case of Windows, the OS already has a few global keyboard accelerators, such as ALT+F4 to close the current window. (Interestingly, ancient versions of windows actually reserved much of the ALT+Fx series for window manager shortcuts [restore, minimize, maximize], but for some reason these were all gone by Windows 2.x.)

    All that needs to be done is to once again increase the stock list of global accelerators to include such commonly-used functions as New, Open, Print, Copy, Cut, Paste, Undo, Redo, Find, Find Next, Select All, and Options.

    Each of these functions would then be assigned a default keyboard accelerator by the OS (user-customizeable, though, via the Control Panel). Each function would also be assigned a hard-coded event code that applications merely need to trap in order to be able to make use of the accelerator. Note that the concept of the hard-coded event code is nothing new in Windows; for example, IDOK and IDCANCEL are hard-coded and universally recognized dialog box event codes, and are mapped to the ENTER and ESC keys, respectively.

    Application developers would also be encouraged to submit their own extensions to a central registry maintained by the OS developer (in this case Microsoft). Then, for example, if I were writing a Web browser, and wanted to add an "Add to Favorites" menu option, I would first search the official registry (say, on the Web) to see if anyone else had already come up with the same "Add to Favorites" idea for their own app. If so, I would simply look up the existing registered event code and trap that in my application. Otherwise, I would submit my new function idea (along with a detailed description of what it does, as well as the contexts in which it should be used), and then receive a brand new event code that I would then be able to trap in my own application.

    Then , when the user installs my application, my installation program checks the locally stored accelerator database to see if all of the required accelerators are already there. Then, for each accelerator that does not already exist, create an entry on the local computer. Once that entry exists on the local computer, the user can at any time go to the Control Panel and assign his own desired key combination to the new function.

    The beautiful thing about this is that it doesn't even have to be restricted to keyboard commands! Since the application is oblivious to the nature of actual physical event that triggered the event code, the OS could later be enhanced to accept different kinds of input to trigger the same shortcuts -- such as IR remote controls, voice control, or someday even thought control!

    Imagine being able to use the exact same key combinations (or the same remote control buttons, or the same voice commands) to control every media application you have (Winamp, Windows Media Player, Quicktime, RealPlayer). Wonderful.

    --
    begin 644 .sig22&%I;"P@9F5L;&]W(&=E96 LA`end
  180. Interface? What Interface? by baru · · Score: 1
    I think the heart of this question really stems from the need to make computer interaction easier, not which visual metaphors are ultimately the best. Many feel that a highly customizable variation of traditional point-and-click windows and menus is a good thing, but I feel it's missing the point entirely. Is the interaction itself the goal, or isn't the goal of using any machine getting work done, and as quickly as possible?

    I feel that if interface is an issue at all, it's already a failure. The machine should adapt to our natural forms of communication (such as speech, gestures, facial expressions, etc.), not the other way around. Gone are the days when computers were so woefully underpowered that we had to invent metaphors to meet each other half-way. Why do we insist on prolonging their legacy?

    Rather, for the common man to use computers effectively, less is more. For example, a user should be able speak and explain to the computer the task she hopes to accomplish. The computer should request clarification where needed, since, as it has been abundantly noted, different people interact with machines (and each other) in wildly different ways. This doesn't mean she can discuss morality and philosophy with her computer (or maybe she can, but it's not a requirement); the computer should understand the concepts of its own capabilities and the user's natural references to those concepts enough to get the menial task done. (For example, "Read my mail", "Show me my new email", "What are my new messages?" all are requests to display new email.) She shouldn't have to know what specific routines are executed to arrive at that goal.

    A user interface makes itself transparent. Using the perfect user interface is indistinguishable from discussing a project with your colleague at work. The more metaphorical layers you throw at the non-technical user, the bigger his resistance will be to use it.

    --
    (insert sig here)
  181. Re:UIs are static, but should seem *dynamic* by Slashdot+Fool · · Score: 1
    I had the best example of this working for BT (the telco) in their *ahem* delighteful customer service centre. We were taught to use a system called SMART, which was a huge graphical front-end to an older command-line system, whose name I forget. It was lovely to use, but after about a week or so, which system were those of us with clues using?

    Steff

  182. Re:no windows by PerlGeek · · Score: 1

    "For context switching, the stacking and overlapping of windows confuses people, makes partially obscured windows fairly unusable, and results in poor usage of the limited screen real-estate."

    This annoys me, too, but I've never been able to think of a better method. Maybe translucent windows? How do you put multiple interfaces on a single 2D moniter in a way that's good for context switching? Maybe have multiple virtual screens, one holds internet stuff, another multimedia, another sysadmin stuff? Have all windows on a virtual screen use all the space but have nothing overlapped?

    "A better interface could be based around HTML, with automatically generated web-like pages serving the purpose of a directory, and having the advantage that they can be annotated by the user so she doesn't lose track of what the file is for."

    Yeah, HTML could work for that. What we'd really need is a database, maybe formatted HTML - where every entry is a file, every field is a little bit of data about that file. Type in what you're looking for, and a list of related files pops up. Of course, then we run into the limitations of keyword searching, but it's better than what we have now.

    "For dialogs, windows are pretty poor too - they're only appropriate for cases where some catastrophic event occured and the user's work flow absolutely must be interrupted."

    Yeah, they work for interrupting the flow of work, but when interrupting isn't needed, they're mighty annoying. What should we use for less important events? Some kind of Mozilla-like sidebar, or the url entry bar on top? It displays where you are at all times, yet lets you change it, too. There's a good replacement for dialog boxes.

  183. UI's and evaluations of them. by cadfael · · Score: 1

    Jakob Nielsen put together the single best way to cover what constitutes an evaluation of an interface. I recommend strongly that each person developing any sort of system for anyone with any interface read it once.
    -- The Hollow Man

    --
    -- The Hollow Man
    Non illegitimati carborundum
  184. The Average User by NuclearArchaeologist · · Score: 1
    As others have pointed out, the interface depends on the desired use. For the average user, I propose the following universal interface:

    1. Channel Selector. Allows the user to select content from different content providers.

    2. Volume Control. This allows the user to turn up the content.

    This simplified universal interface should allow everyone to get onto the internet super-spammway. Ammazing content from around the world awaits. Every home in America should have one:

    VIEW IN FIXED SPACEING FONT

    ...........\.../...............
    ............\./................
    .............o.................
    ...------------------------....
    ..|.____________________....|..
    ..||..where do..........|.O.|..
    ..||..you want..........|...|..
    ..||..to go today?......|...|..
    ..||....................|...|..
    ..||....................|.o.|..
    ..|.--------------------....|..
    ...----------------------- ....
    ...............................

  185. Re:wow, so wrong it's not even funny. by SimonMcC · · Score: 1
    A good example is the tulip driver that comes with Red Hat. It didn't work! Only after I found out(after several frustrating unsucessful tries) that I had to download the C code and compile the driver did I get my ethernet card to work. Now you tell me, when was the last time you had to compile a driver for NT?

    Somebody is bound to say this, and I know it's missing the point, but atleast you had the option to rebuild the drivers! I know you shouldn't have had to, but hey, you got it working in the end!

    McC

  186. A lesson in intuitive interface design by thePsychotron · · Score: 1

    I have a grandfater who likes to collect things. He often scours the countryside looking for autions where he can pick up things like pens, coins, etc. At one of these auctions, he met a fellow collector who told him about this great thing called ebay. He later asked me what ebay was and how he could use it.

    At the time, I had built up enough spare parts to build him a decent Pentuim-100 system and set him up on the internet. The hard part was teaching him how to use the computer. Don't get me wrong, my Granfater is a smart guy, but if you asked him about computers, he would start talking about the punch-card machines they used when he taught at IU.

    Well, I loaded Win98 onto the freshly built box and started my crash (pun intended) course in computing. Needless to say, he was immediatly overwhelmed by all the buttons and icons, and kept inquiring why the system was so slow and kept turning blue. That's when I had a great idea: BeOS!

    Most people are appalled when I suggest anything but Windows; it's different from what they're used to and might not run their favorite apps. But for a total novice who just wants to surf the web, BeOS is perfect. After a quick install, I spent about an hour showing him around, and he left. With only an hour of instruction he was off and running, and since then I have only gotten one (1!) tech support call from him related to e-mail.

    Now, I had to ask myself: Why did he pick up BeOS so quickly while other people spend hours/days/a lifetime stressing over how to get stuff done on their computer. The answer is simplicity. BeOS might not be the fanciest or feature-heavy system, but ist's fast, clean, and intuitive. Intead bombarding users with a billion different widgets that do a billion different things, the designers at Be only include what general users really need. NetPositive has 4 (5?) buttons! Everything does what you'd expect it to do without complaining.

    I understand that for hacker types like us, though, it's not the same situation. We'd rather have more utility, extensibility, and customization. I think that's why GNOME has become so popular. But if the goal is to design something that can be easily used by anyone regardless of experience, then the UI implemented in BeOS will serve well as a model.


    thePsychotron
    --

    Life is pain. Anyone who says otherwise is selling something.
  187. Simplicity and power are inversely proportional. by The+Viking · · Score: 1

    A user interface is a tool, [hopefully] used to accomplish some task. Tools can be simple or complex, depending on the task for which the tool was designed. The tools I use to maintain and repair my bicycle would not be appropriate for repairing and maintaining a jet engine. If you wish to repair a jet engine, you will certainly need very specialized tools and comprehensive training for even the most basic repairs. On the other hand, I could probably show you in an afternoon most of what you need to know to repair a bicycle. My point is this: there is always a tradeoff between simplicity and power. To think that there can be one user interface which meets the needs of every user, from novice to expert, is irrational. My needing to grep through syslogs for certain types of activity on my server has little bearing on my Grandma's desire to surf the web for carnival glass. The user interface that each of us chooses should reflect our abilities and needs.

  188. Re:Choice of interface by Rand+Race · · Score: 1
    "...So is being able to change the interfaces you are given. MS (as well as other companies) don't seem to be aware of this fact."

    No, they do not seem to be aware. Which is strange since you can change the interface in windows in a limited, but significant, fashion. No I'm not talking about themes, I'm talking about replacing Explorer.exe with a seperate shell. Several shell replacements for windows are out there, most significantly Litestep which is an After/Open/NeXTStep clone... open source as well! While you just can't get around the fact that you are still using windows, you can make it as painless as possible to use. Granted it can be a bear to setup, editing step.rc files and such, but even that is getting easier as the project matures.

    --
    Insanity is the last line of defence for the master diplomat. But you have to lay the groundwork early.
  189. it's the user by criticalrealist · · Score: 1
    IMHO, there are two parts to any user interface. One, the user. Two, the interface. Far too often do software developers focus on the interface at the expense of the user.

    To illustrate, the interface is an objective thing that can be correctly or incorrectly interpreted and manipulated. The user, on the other hand, subjectively appreciates the things that surround him/her, including the interface. If the user can't understand the objective interface, then no matter how beautiful or logical the design is, the interface is still of less value to the user.

    Design the interace for the user. You simply cannot design the user for the interface.

    --
    I am not a lawyer.
  190. Re:two words... by B'Trey · · Score: 1

    For just one quick example which shows why I disagree with your statement, consider how simple it is to add an icon to the Windows Start button or the desktop as compared to doing the equivalent under Gnome or KDE.

    --

    "The legitimate powers of government extend only to such acts as are injurious to others." Thomas Jefferson.

  191. Re:Consistency! by Richy_T · · Score: 1
    Indeed, with early cars, you had to adjust the timing and mixture via levers on the steering column. And not so long ago, you had to operate the choke manually (though it is not always helpful to have this operation removed from you if it is not implemented well).

    But even ignoring that, the analogy is bogus. My wife is having to relearn the user interface to be able to drive my car (it is a manual, she knows automatic), some cars have the handbrake in the centre, some pull out from the dashboard. In an automatic, is the gear change in the centre or in the steering column? My wife's automatic mini doesn't have a "park" position, you have to use the handbrake. Are the indicators on the left or right of the steering column (left on my car, right on my wife's and I've even driven a car where the indicator switch was on a separate console)? Where is the headlight switch (I've seen them on the dash, on a stalk you twist, on a stalk you lift and some cars even had them on the floor, (likewise with the starter))? On a manual, where is the bite point of the clutch? Is reverse left and up or right and down and is the interlock push the lever down or lift the knob up (As a student, we once "borrowed" a friend's car and ended up having to push it out of a parking space because we couldn't figure out how to select reverse)?

    But then, there's more to driving a car than turning wheels and moving levers. If I go to another country, I have to (usually) drive on the other side of the road and sit on the other side of the car, not to mention have a reasonable understanding of the local rules and laws (roundabouts vs 4-way stops)

    In summary, about the only thing standard about cars is the steering wheel/brake/accelerator setup and even then, since the advent of ABS, you really need to be learning a different braking style

    Rich

  192. Heuristic evaluation by ThePurpleBuffalo · · Score: 1

    There are nine basic things that make a good interface. (begin Plug) This was part of the material covered in a class I took at the university of Calgary under Saul Greenberg (CPSC481). It's a fairly good course if you're in the area. (End of Plug)

    Be consistent - from screen to screen and between your UI and the OS

    Provide Help - online help and navigation ques to help the user along

    Simple and natural dialogue - this involves a good grouping of items in a dialog and a layout that makes sense to the USER, not you.

    Speak the users' language - The software will do no good if it uses terms that the user doesn't know.

    Minimize user memory load - Relevant information should be carried forward from one screen to the next.

    Provide feedback - If the user pushes a button and the computer is doing some complex operation, let the user know (roughly) how long it will take, and what it's doing.

    Provide clearly marked exits - Have you ever been unable to get out of a piece of software?

    Provide shortcuts - Although not crutial, for repetitive tasks these are nice.

    Deal with errors in positive and helpful manner - do not insult the user, tell them what's wrong in terms that they can understand, and tell them how to fix the problem.

    that about sums it up. have fun

  193. some thoughts by Blendi · · Score: 1

    -Menus for starting the programs Most "dumb users" dont know what a binary really is and how that all works, they need a menu with a good structure to select the apps they want started. I once saw somebody who couldnt read/write mail anymore because i deleted the eudora link from the desktop. eudora was still there. But how should a "dumb user" know how to start it ? All of the mentioned guis have this. -Automated file management I know many people who just cant imagine how a filesystem works. They get confused by folders and files. Sounds funny, but it is reality. I once saw someone going completely nuts because the new Version of an office app had a new default document directory, and she couldnt find her files anymore :) Somehow these "Desktop Environments" should help the user to organize stuff. Advanced users should still have the option to do everything as they want... In Unix thats easier because of /home/blah/... in Windows some Apps use c:\My Files\, some use their own dir somewhere in c:\Program files\ etc. that isnt good for "dumb users". -Not to many options "dumb users" can get confused by to many options. install 4 different archivers and some graphicviewers in windows and then rightclick on a file... you get "archive with blah1, archive with blah2, view with foo, print with bar" etc. confusing. -open file formats if i send something i wrote in MS word to a "dumb user" who doesnt have word, he cant open it. and he doesnt know how, because he doubleclicks it and nothing happens. :) With open formats, everyone can use the app of his choice and still open all documents. nobody is forced to use foo-office from bar-inc. just because his buissines partner uses it. thats all for now. :)

    --
    -- [This line has intentionally left been blank]
  194. Usability is tough by [Xorian] · · Score: 1
    Designing a good user interface is very hard, because it requires that you imagine how different people will interact with your software. It requires a lot of thinking ahead and considering different cases and understanding what may go on inside the heads of your users. A lot of people have lists of principles, here's some of mine:
    • The user shouldn't be able to shoot themselves in the foot. People, even experienced technical people, make mistakes. Often. This is why providing undo is far better than asking "Are you sure you want to do this?" (Usually, people don't even listen to questions like that and simply respond with "yes".) These problems get really bad when it isn't clear that the user is making a choice they won't be able to back out of. (I once had a friend who messed the driver for the CD-ROM on his Windows machine. Where was the driver software he needed to install: on a CD which came with the machine.)
    • Make the choices visible. Invisible or inaccessible controls suck. If I might need to change it, there should be a way to do so. Unless you're certain the user won't need it, don't hide it or turn it off. When something is disabled, the relationship between it and whatever controls whether its an option should be obvious. The worst is controls that can only be changed sometimes, but affect the outcome when they are inaccessible. (Yes, I've seen GUIs with this all too often.)
    • Provide feedback early. The smaller the temporal separation between a user making a choice and the time the users observe the consequences, the better. The longer the delay, the harder it is for the user to get the system adjusted to their needs. (Imagine, for example, trying to adjust a light with a dimmer switch if you couldn't see the light from the dimmer. It would be an iterative process of adjust, run and go check the light, run back and adjust, run back and check. Frustrating to say the least.) In other words: an interactive process beats a batch one. (This is also one reason why people choose interpreted languages over compiled ones: faster turnaround.)
    • Think about usability from the beginning. Software engineers tend to focus on functionality first and leave usability to the back end. This is why, for example, /etc is such a rats nest of shell scripts and configuration files, each with its own format and oddities. They weren't designed for uability, they evolved to provide functionality. Sure, they work, but when something goes wrong or when you need to change something, figuring it out takes way too long. (And don't kid yourself, the number of people who fully grok the /etc on their system is really small.)
    And another thing: Usability is not just for newbies. The other day I built a custom kernel for my Alpha, and I had a hard time figuring out why aboot (an Alpha bootloader) said to me:
    • aboot: expected 1, not 2 program headers
    Turns out, the kernel image was too big, and I had to move some things into modules in order to get it to work. There are two obvious problems here:
    • I had to ask somebody else who had the same problem before, which shouldn't have been necessary. One person should always be able to debug a problem. If it requires this sort of "oral tradition," then the error messages, comments, and documentation are inadequate.
    • Why exactly is there this spooky limit on the size of the kernel, and how does it relate to my choices? If it was clear to me when I'd been configuring the kernel, that would have been great. (Imagine if the X configurator said "Whoa there, you kernel's gonna be too big to load, maybe you should make sound support into a module?") If it warned me when I was building it, that wouldn't have been too bad. (Obviously, it would be easy to make a post-build tool which checks for this problem.) But no, I had to attempt to boot this kernel in order to find out that it wouldn't work. (Like I said, provide feedback early.)

    Anyone who designs user interfaces (which really includes any software which will ever be used by humans) should read Donald Norman's "The Psychology/Design of Everyday Things." It will change the way you look at the computers you use and the software you write.

    --
    CVS is teh suck. Use Vesta instead.
  195. Voice tech isn't that great by Mr.roboto · · Score: 1

    I borrowed a copy of IBMs viavoice from a buddy to try out from him, and it messed up everything I said. There's that breakin period and recignition stuff, but I never got it to work right. After a while, we were trying various words to see how badly it would mess up what we said. It was promptly deleted off my parent's box, even though the uninstaller didn't do a very good job, and left traces of the prog on the system. I've heard that there are better progs on the market, but havn't obtained any to try yet. If you decide to design one, please test it extensively.

    --
    Don't call my crazy, that's what they called me back in the home!
  196. Re:Different things to different people. by shandrew · · Score: 1
    Quicktime 4 doesn't have an interface, aside from settings in a control panel. You're talking about the movie player which comes with quicktime 4.

    If you don't like the interface, there are hundreds of other quicktime-capable players out there.

  197. Re:Choice of interface by buzzcutbuddha · · Score: 1

    I'll second your article...further down the page FascDot Killed My Pr on talks about how we shouldn't care about what someone's grandmother needs because we don't want a simple-minded Linux, but I don't think that attitude is going to carry us very far.

    Our goal should be to make several different levels of use into a UI. If you want things simple, then choose the simple user level and the UI will do most everything for you, and prevent you from breaking stuff. More of a power user? Bump up the skill level.

    I know it's a simple analogy, but video games let you choose what skill level you're going to play at so you don't get fragged at the start. Why not let the GUI's and UI's act the same way?

    That way, my grandmother can use Linux too, and I can share files back and forth with her, or even sign on her computer at my skill level and use it without going crazy, and without making it impossible for her to use, etc.

    Other than that, scripting, extensible, and lots of options. Make it so there is more than one way to do anything...hmmm, like Perl...
    (DUCKS FLAMING ARROW)
    whew that was close, lucky I wore my asbestos slacks today.

  198. Re:Choice of interface by buzzcutbuddha · · Score: 1

    True! :) But you get that tingle of thrill too... hehehehehe, let's break something.

  199. Yes, you CAN script in Windows by dr.+greenthumb · · Score: 1

    You can script in Windows using a VB'ish scripting language. You'll need Windows Scripting Host installed (default on Win98). Scripts need a *.vbs extension.

    However, the only home-made scripts I've ever seen are worms, which, due to the lack of security in Windows 9x, spread very easily by overwriting default scripts in Pirch/mIRC with malicious code (dcc's itself to others onjoin and such). Pure heaven for script kiddies!

  200. Re:You've got it backwards by dehora · · Score: 1
    Form follows function.

    Oh not that Mies van der Rohe nonsense. FFF was simply a soundbite to justify the appearance of buildings that nobody much liked, or understood. FFF barely exists in architecture and product design, it simply isn't present in computing.

    There are no bandsaws covered in wrapping paper in computers, chiefly because there are no bandsaws, only layers of wrapping paper. You peel them all away and at the center it's just electrons banging about.

    All computing interfaces are syntactic sugar and all computing forms are interfaces. So what are little computers made of?

    Each layer is either a patent misrepresentation of the layer below it, or an empowering abstraction, depending on how you want to look at it.

    The functionality of computers are in the main formless, that's why they are so powerful. Maybe Morphic is a better word than formless, since really, the form is fully arbitrary. For a computer to be used you have to make a decision on how to represent function. When I say used, I mean allowing a person to operate and interact with the functionality of the computer, maybe that involves building new functionality or new uses. Each of these uses requires an interface.

    The truth of computing interfaces is that each interface is a mistruth, because the form of computers functions are arbitrary. A command line interface is no more accurate or correct than a voice command interface. Since you can't prove the correctness of interfaces (they are all lies), you have to justify them. It reduces to pragmatics, personal preferences, rhetoric, force, metrics. Interfaces are political in nature.

    The problem with the kind of generic multi-purpose computing tools we have today is that there are too many functions and not enough flexibility with respect to form. You don't have this problem with other mono-purposed computing tools. Most great tools do at most a couple of things very well, ideally they do thing very well. Think paperclips, or toasters. since the function range is limited, the number of potential forms is also constrained. Generic computers are like the spawn of victorinox and the hydra. You close one blade and another three pop-up.

    The notion that there is an ideal user interface for a very large set of functions is just that. The idea that a UI like Gnome or Windows, or Bash can accomodate the use of all available functions in a modern computer is just wrong. Now if we want to think about the ideal approach to designing a generic computing device that needs to be used by people, then it seems to me what we need is the ability to move between various misrepresentations of function and chose the one that is least untruthful at any given time.

    --
    I saw that ...to search was not always to find, and to find was not always to be informed -Sam Johnso
  201. What would make a good UI by Trinition · · Score: 1

    I'll try and keep this independent of GUI so it could be applied to VUI, etc. A user interface is kind of like an API in that it let's users control a complex system through a limited number of methods. The key to a GOOD UI is making those methods distinct, concise, consistent and customizable. DISTINCT: The more distinuighable two methods are, the easier it will be for the user to interface to the system through. There will be less time deliberating which method is which. As an example, consider the addition of icons to file listings. Rather than having to actually see the letters in a file's extension, now you can get a breif distuinguishment between file types by the color of their icons. Many OSes do things such as dimming hidden files, white paper-looking icons for documents, gears and such for system files, etc. These shapes and colors can be conditioned in one's mind and allow for faster recognition. CONCISE: Whether typing, speaking, or clicking through menus, the shorter the action is, the better. In most cases, you are doing a limited number of actions very frequently. The more rare actions need not be accessed so readily. Microsoft did this in their latest version of Office by hiding not-so-used menu items. I arrange my Programs menu by putting more frequently accessed programs and documents closer to the root (or even on a launch bar). It just makes things more efficient. CONSISTENT: I hate starting up some program and trying to remember if it's 'exit' or 'quit' to end the program. If identical actions in different contexts are expressed to the user in the same way, the user will have a faster learning curve and a better intuition for the UI. To take this idea to the extreme, Microsoft Windows always look the same. Close, Max, Min all in the right, control-icon in the left, scroll-bar on the right, menus along the top, etc. In fact, a lot of GUIs to it this way. Where there are visual clues, there is at least a way to figure out inconsistent commands and controls, but just imagine trying to GUESS which voice command would exit a program in a VUI. CUSTOMIZABLE: In order for a user to better experience something, the user might want to tailor a UI to themselves. In a VUI, this is just about necessary (voice training). In a GUI, the basic customizations include colors and font sizes. But other systems let you customize futher by adding menu items, changing the arrangment of window buttons, etc. One thing to note is that this breaks with consistency. If one is not careful in their customization, they could also ruin distinguighability. But you can potentially gain efficiency. You could even in fact use it to increase distinguishability. I use a switch box for my WIndows 98 and Windows NT systems. I have a diferent color scheme in each so that I can easily realize what computer I'm using. it's so subconcious it seems I just *know* which one I'm using.

  202. A few points by scruffyMark · · Score: 1
    This is all assuming we're sticking with the prevailing desktop GUI idea, as opposed to, say, a Canon Cat type thing. So this is possibly a case of making an abolutely state of the art ox-cart, but what the heck.

    Efficiency and speed of use shouldn't be all in things you have to spend some time to learn. What I'm talking about is the little things not getting in your way. An example is Mac menus being always right up at the top of the monitor - you can't overshoot them, since you cursor won't dart through the top of the screen. This makes it that little bit quicker to open a menu. However, Mac doesn't take it far enough - the corners are the easiest to hit/hardest to overshoot parts of the screen real estate, but by default the Mac doesn't put anything useful in the corners of the screen. Essentially, the most commonly used things should be in the quickest places to reach.

    Also, UI considerations should extend into what might seem like non-obvious places like the filesystem. I recently had a good laugh at an installer message in Windows NT that went something like, "For your convenience, the file VCVars32.bat has been placed in your bin directory."
    "/etc/rc.d/" does not impart much information about the contents of the directory, whereas "System Folder:Startup Items:" is pretty straightforward. You know where to go looking when you don't like what your computer does at boot-time

    Another non-obvious place to put UI stuff is in scripting languages. People talk about scripting like it's some sort of thing only for the very nerdy super-user, but there's no reason it should be. When I first decided I needed to write an Applescript, it took me all of fifteen minutes to learn. Granted, it's not a super-powerful language, but a relatively new user can do a heck of a lot with it.

    A CLI is vital, as a built-in part of the interface. I suppose it's hardly necessary to mention that on Slashdot, but... A CLImay not be used by ninety five percent of users, but that other five percent shouldn't have to learn a dozen different different types of subtly different consoles. Here again I speak from a Mac user's perspective, obviously.

    --

    What is the robbing of a bank, compared to the founding of a bank? -- Bertolt Brecht

  203. Re:One feature is necesary by scruffyMark · · Score: 1
    Don't get me wrong, scripts can automate a lot of things, and I like them, but do they necessarily come into the "User interface" part?

    Well, you use it to make your computer do things, so yes, when you run or write a script, that is part of "user interface", and as such, subject to improvement through, e.g., better documentation of scripting languages, the writing of languages that the average user can at lest easily get started with.

    --

    What is the robbing of a bank, compared to the founding of a bank? -- Bertolt Brecht

  204. Re:Choice of interface by dweezil · · Score: 1

    You've limited you solutions by assuming the application must be monolithic. That need not be the case. All applications can be logically divided into three parts: UI, Business and Data. In this case, business may be "Update customer address" or it may be "Get URL". Data may "Execute stored procedure" or "Make TCP/IP connection".

    If this business piece is written as a library or as a server process, any number of specialized UI's can use it. Each UI will be percieved as a different application by it's users, but the real work (everything that isn't about interacting with the user) will be common across all UI's. (There are a number of X Windows utilities that are strictly UI and use command line tools to do their real work.)

    This is esentially what all the "N-Tier" hullaballoo is about.

  205. Re:Choice of interface by ballestra · · Score: 1
    Your mom and my mom should form a mutual support group. I can't say RTFM to her, I'm like, "please, please read the f-, um, manual I bought you."

    Damn MS for designing an interface that lets you change things you don't want to change, instilling fear in the hearts of newbies who know not where they just clicked.

    "What I cannot create, I do not understand."

  206. Re:Easy question by phossie · · Score: 1
    Steep learning curves are good ones.

    Nope. I think you mean exponential. Steep simply comes down to being really difficult in the beginning. Learning curves should take into account the knowledge gained by the user. There's no reason not to make the 'baby steps' easy... that way you can get to (and comprehend) the adult/expert steps sooner.

    --

    [|]
  207. One-button mouse clicks -OR- pen based interfaces by dara · · Score: 1

    I know this goes counter to X11, but I'm not all that keen on multiple mouse buttons. It definitely confuses beginners (I have friends who don't know what the second mouse button on Windows 98 is for), and it means you must learn an alternate way of doing something if you use a pen based GUI (which I'm hoping will become more popular - way less potential for RSI). I never got used to Apple, but I think this is the one thing they got right.

    In order to make GUI's more pen friendly, this trend to use "hover icons" needs to be rethought. I find it distracting anyway (I like minimal animation on my desktop). A simple clean interface should make it obvious what parts of the screen are clickable and what parts aren't.

  208. Re:wow, so wrong it's not even funny. by fsck · · Score: 1

    Want to explain to me how the fuck you can get Windows 98 SE installed and running in 25 minutes? Between all the "scanning your system" and rebooting, there is no way it takes 25 minutes.

    --

    Lars - ...I could always phone Linus when I had a problem.
  209. Re:Some problems I've seen with UI's by SaXisT4LiF · · Score: 1

    >2. People aren't used to having to organize their >files in a thougtful manner. Many users give >their files names like 'Bob.xls' or 'Mary.doc'. >What
    > directory are they saving to? Many >(maybe even most) people have absolutely no idea. >
    >
    > If the computer organized the >user's data into a searchable database, rather >than a hierarchial filesystem, information would >be much easier to
    > retrieve and reuse.

    In case you didn't notice, most operating systems already have ways for searching for files. MS has it's little find dialog, *nix user have the rather powerful combination of find and grep.

    The problem that you in counter is that some people don't know about the find tool. They scroll past it time they click the start menu, and never actually realize it's there. They're not *exceptionally* ingorant, they just refuse to spend the three seconds to explore the fold out menus. In Window 98 (I hope it rots in hell) the menus are even animated so it takes 4 times as long to look through the menus.

    I guess the point is, users need accessabily. The things that people need most should be right in front of their faces, unless they choose to get rid of it.

    --Ryan
    "And if I could change the future,

    --
    Fight or flight its all the same
    Live to die another day

    --Ryan
  210. Re:Choice of interface by grubby · · Score: 1

    If I am not mistaken we already have this in virtually every unix operating system. If you use linux then you can switch from xfree to metrox, or you could use kde, instead of gnome. Or you could use csh instead of bash, the possibilities are endless, I thought this was one of the main reasons most of us love unix, linux os's?

  211. The intuitive shut down from Redmond by afflatus_com · · Score: 1

    Conversation with my mother (age 59 at the time), when she was watching a Windows desktop for the first time to see how they worked. Her: "So how do I turn it off the computer if someone leaves it on?" Her: ..."So I press the 'Start' button to shut the computer off?"

    ---
    "And the beast shall be made legion. Its numbers shall be increased a thousand thousand fold."

    --

    -----
    Cast a Cold Eye
    On Life, on Death
    Horseman, pass by
    --W.B. Yeats' gravestone
  212. Why are computers still hard to use & re: GUI by AgentIpso · · Score: 1

    okay, the GUI. here goes: firstly, it's all well and good how we feel as proficient computer users. i think it's paramount to simplify Cliff's initial question of why it is hard for his mother to use a computer. think communication here people! written language, visual and audio seem to be our mediums. who makes a GUI? who as in, who are the people that actually create the interface to perform which tasks? i ask myself this far too often, especially when looking at a pc's navigation aspects.

    perhaps it is not the entirely a programmer's job to interperet what visuals offer which obvious responses? imagine if microsoft had hired a team of specialists in the field of audio impared communciation. that would offer the most obvious, visual communication. not exactly sign language, but limiting communication to visual triggers. suppose such a team was not designed to create the parameters, but to create a facilitation resource for thousands of experts in this field to contribute concepts. would that not allow for an effective approach on visual communication? why has this approach not been considered? (this is to my knowledge) especially since internet and post secondary / technical training institutions have more and more common ground these days?

    maybe we have a cart before the horse issue here? i mean if this means adding on, or recreating the logical course of computer use, why not? i could go on and on, but in my opinion, such a first step would be more effective. programmers could work along side with communication experts, and even psychologist to derive a consensus on functionality and effectiveness. isn't that somewhat a funcion of slashdot persay?

    sure the designs to date are lacking, but the approach is to blame, not the result. personally i think facilitation is the problem, and not all the right people to accomidate this task are working together to create an even more expansive network to really understand an interface. adoption of past methodology will only work so well. purist attitute i guess is where i'm coming from. anyway, enough.

  213. Re:One feature is necesary by bolthole · · Score: 1
    (bars are for pushing, handles are for pulling - one way for identifying the correct way to open a door)

    Hmm. Originally, I thought by "bar", you meant those wierd horizontal handles. I think that is an example of a poorly designed UI. But perhaps you meant those embedded long things that move into the door about an inch. The problem is,some of those things look grabbable.

    The "intuitive" interface for doors, is:

    FLAT panels for pushing

    Some grabbable thing for pulling

    This is the best way to design the door interface, since obviously if there is nothing to grab, the only thing you CAN do, is push.
    The trouble being when you have some kind of locking mechanism on the door. The ideal mechanism would sense that a "user" was trying to gain access by pushing/pulling, and automatically unlock without further manipulation required.

    There's probably an application of the flat-vs-handle principle to UIs. Ah, i think it would be:

    Grey out options that are not applicable in the current context.

    Unfortunately, the "automatically unlock" part only is applicable when there is one and only one operation. That is almost never true with your average GUI.

  214. Re:Choice of interface by bolthole · · Score: 1
    Our goal should be to make several different levels of use into a UI. If you want things simple, then choose the simple user level and the UI will do most everything for you, and prevent you from breaking stuff. More of a power user? Bump up the skill level.

    I know it's a simple analogy, but video games let you choose what skill level you're going to play at so you don't get fragged at the start. Why not let the GUI's and UI's act the same way?

    You know it's time to be nervous, when your GUI asks you,

    Are you -]]SURE[[- you want to turn safety interlocks off?
  215. Re:Easy question by bolthole · · Score: 1
    No, steep learning curves *are* best. If the amount of stuff you've learned how to do is on the Y axis and time is, as always, on the X axis, a steep curve indicates very rapid learning.

    Try to be more flexible in your thinking next time. Who exactly made a rule, "time is always the X axis"? There is no such rule. The commonly understood meaning of "steep learning curve" means, :difficult to learn".

    Therefore, if you were plotting a "learning curve", it should be inferred that

    Y = effort put into learning

    X = percentage of product learned.

  216. Re:Highly wrong and contemptuous of users by bolthole · · Score: 1
    You seem to suggest that a computer that responded to "affective" behaviour (i.e. swearing) would be a better interface for the naive user. I guess you really love the animated paperclip in Word. This is lazy thinking.

    I'm not the original writer, but I actually agree with the sentiment: A computer that responded to user swearing, COULD be a better interface.

    If a user is banging around completely lost, then a computer that asks in a nice way "I'm sorry. Can I help you out somehow?" would be an EXCELLENT user interface.

    Unfortunately, the problems come with how to do this without pissing off the user more, and how to make sure that the help offeredis relevant to what they actually want to do.

    Being able to concisely ask the user what they want to do, would be helpful. Understanding [insert human language here] would be even more helpful, of course.

  217. Re:Key Combinations..... by bolthole · · Score: 1
    This is of course one place where MS Windows beats Linux hands-down at them moment. I hate X because it forces me to keep grabbing the mouse.

    No, linux does not.

    Your lame choice of window manager does.

  218. Re:big things for a GUI by bolthole · · Score: 1

    >I'd also like to perform every operation (except
    >text entry) with the mouse.

    No, INCLUDING text entry.
    What if you're a parapalegic with a trackball mouse and one working finger?

  219. The Best (IMHO) Website on this topic by TheShrike · · Score: 1
    Learn from other people's mistakes.

    Visit the Interface hall of shame

    Other than that, ditto on the consititency argument. Then make it easy to customize for the power users. One of my Linux gripes is that in my .Xresources file, if I want to make all scrollbars wider, there are about 5 different widget sets for which I have to specify settings - if I want them all consistent.

    --

    --
    If R is the set of all sets which don't contain themselves, does R contain itself?
  220. the only thing that I need by toddmilburn · · Score: 1

    I just need an interface with multiple desktops... BeOS, most X windows managers... there's nothing I hate more than having just one desktop (right now I'm using 7 out of my 9 desktops...)

  221. What's important? Depends on the user... by Vorro · · Score: 1

    What is really important in a UI is the ability to configure that UI. For example, I use LiteStep, a AfterStep clone for windows, on my windows partition. LiteStep is quite configurable, with new modules being added and refined every day. There are tons of authors that make dazzling themes, and anyone with a little graphics and LiteStep knowledge can make their own themes to suit them as they please.

    For example, if a person wants, they can have a control panel for an MP3 player such as winamp on their desktop, a small module that automatically checks their mail, a module that updates the weather conditions, one that monitors system load (and Mobo temperature as well)... as well as plenty of other things. It's this configurability that makes configurable UI's such as LiteStep excellent choices. There is literally something for everyone.

    Besides, if you do it right, it looks sweet as hell... I enjoy it every time someone comes into my room for computer help and they see my desktop... :)

    Hope this is helpful.

    Vorro
    ---------------------------
    A wise man speaks because he has something to say.
    A foolish man speaks because he has to say something.

    --
    ____________________________
    What did the Buddhist say to the hot dog vendor?

    "Make me one with everything."

  222. wish? by yerricde · · Score: 1

    So when the next Windows version completely eliminates DOS, what shell will replace command.com? Will it be a shell like `wish' (Windows interactive scripting host) as opposed to *nix's `bash' (BourneAgain scripting host)?

    --
    Will I retire or break 10K?
  223. Tired of Notepad? Try Emacs. by yerricde · · Score: 1

    Compare Notepad to vi. Notepad meets your criteria. Does it have a better UI though? You'll probably argue that it does, but many will argue that it doesn't. The thing is, the better UI depends on the person. If you edit a text file once every couple of weeks, notepad is probably great. It gets the job done, and you can figure out where stuff is. But if you edit text files all day long every day, vi is probably better. Sure, it's got a steep learning curve, but it's worth it for those that need to edit text a lot.

    I like to compare M$ Windows Notepad to GNU Emacs. In Notepad, select is Shift+arrow, cut is Ctrl+x, copy is Ctrl+c, paste is Ctrl+v. In Emacs, select is Ctrl+space arrow, cut is Ctrl+w, copy is Alt+w, paste is Ctrl+y. So similar; yet we haven't even drawn in the dust on Emacs, let alone scratched the surface.

    graphical version of VIM has menus and supports "point-and-click" operation.

    So does Emacs on Windows or X. It feels like Notepad with different key bindings, and even those can be remapped.

    --
    Will I retire or break 10K?
  224. Re:we're talking about GUI's here by yerricde · · Score: 1

    and for simplicity of a GUI they have that as well. A single button to launch scroll out menus that collapse when you select something

    GNOME has the foot menu, which is enough like the Start menu.

    --
    Will I retire or break 10K?
  225. Re:No, that's awful, but how about this? by WireWolf · · Score: 1

    Granted, there is no way for currently command line interfaces to communicate back to a GUI. So, perhaps, we need to start coding command line interfaces that return error messages in a way that GUIs can understand. Now, I'm a DOS guy mostly (I keep meaning to move to Linux, but trying to dual-boot my already set-up Win95 machine takes more free time than I have) so I don't know exactly what Linux is capable of, but it's probably hard. Is there a way for a GUI to find out what the command line program returned? If so, a well documented I/O interface for the c/l prog would allow it be controlled easily by a GUI.

  226. Re:Voice Recognition/Activation by AnarchoFreak_00 · · Score: 1
    Bill Gates: "128k should be enough for anyone"

    Well... that might not be the exact quote, but the point is that if you say "never" especially in something like the computer industry, chances are it will happen.

    "Never" is a word of the narrow minded.

  227. Re:no windows by AnarchoFreak_00 · · Score: 1
    I acctually like the window environment... At the moment, I'm reading slashdot, whaching TV (small window in the corner), using winamp, and have a few of my friend floating about (ICQ). If i was using some sort of 2d, one-app-at-a-time interface, i wouldn't be able to do this.

    Dialog box's give the user the feeling that they are still in the program they are using (since u can see it in the background). And they interupt the user from the program. I.e. the "Do you want to save the changes" dialog box forces the use to take action, other wise, they might exit and not save with out even knowing.

    Anyway, with windows, when everything is maxamise, and u just use the task bar to switch applications, it isn't like a windowing GUI, more like what u where wanting.

  228. Re:better GUI? by AnarchoFreak_00 · · Score: 1
    I'm not sure how lynx works, if it's completely keyboard driven or if u can acctually use a mouse. But with a mouse, all i have to do is click. command line, i'm sure u'd have to press the down arrow a few time at least.

    And when it comes to computer graphics, 3D modeling. A command line interface would just be insane.

    Not to mention having to learn all the commands.

  229. Re:Disgruntled Help Desk Tech by kd5biv · · Score: 1
    My dream is that a UI will be able to test the user for average intelligence then bring up an interface that is on the level that the user is on.
    How about a 'User Parameters' control that allows the user to select how verbose the dialogs are, how much help the user wants with using the OS, and how much protection they want from doing stupid things like reformatting their startup disk?

    I agree different people have different needs, and giving an expert user enough functionality to make the system useful is incompatible with protecting a novice user from their own mistakes. Then again, see following ..

    But Above all, make it stable! Even if they have 50 million applications open and a huge Access Database plus Oulook, make it so it doesn't crash and my life will be a whole lot simpler!
    Fine, as long as you can take all the developers that write third party apps for your OS/UI and lock them in your basement and feed and water them regularly. If they don't work for you, keeping their UI's consistent with yours and keeping their apps from walking on each other all the time is kind of like herding cats.

    Then there are the one that decide to get cute and use undocumented internal stuff in your OS to get that 0.1% performance increase and then gripe at you when their code breaks with your next release .. but I won't go there ..
    --


    73 de N5VB (ex-KD5BIV) AR SK
  230. Re:One feature is necesary by DNAGuy · · Score: 1
    I think it's interesting that everyone in this conversation (well, all the comments I got a chance to read) forgot all about WSH or Windows Scripting Host. I can script Windows tasks using VBScript, JavaScript, Perl, or whatever I feel like using. I have full access to any objects in my scripting context and can access the filesystem, mail messages, web objects, whatever. I use it a lot, and I would argue that it's comparably powerful to most *nix based scripting models.

    BTW, I'm calling the fire department right now, in anticipation of my post bursting into flames any minute. :)

    --

    BRENT ROCKWOOD, EST'd 1975

  231. The TRUTH by ryanw · · Score: 1

    Okay everybody, here's the TRUTH.

    What you NEED in "USER INTERFACE" are the following:

    1. Stability
    2. Functionality
    3. Configurability

    I have been heavy into unix for a while now, I LOVE unix! I have pushed for a WHILE now to have many of my friends put linux on their machines to replace windows. DOWN WITH THE MAN! Recently my cell phone has seemed to become a Linux Technical Support hotline it would seem. There's no one else I could refer them to because they don't have enough knowledge of networking or other things to fix their problems by theirselves.

    In the last month I have come to a realization. There are MANY functionality pieces that people are used to having that unix "INTERFACES" do not have. (ie Gnome, KDE, CDE, etc.) .. Also those pieces are not STABLE yet, but hell, they're REALLY configurable! (BTW: The one user interface on unix I've never had crap out on me is CDE. The others are still BETA as far as I'm concerned)

    As much as you would like, an INTERFACE does not NEED to be as configurable as most linux users want. Sure, it's nice to be able to completely change your desktop EXACTLY how you want it or ever would want it to be. But I think before configurablity should be addressed, I think Stability should be #1 on the list, and #2 is functionality.

    As much as I hate microsoft and their tactics, they have a LOT of people working on functionality for the end user. Sure, their products are TOTALLY BLOATED, etc., but right now there are things I can do on a windows box that I will not be able to do on linux for another few years.

    One of those things are Multi-Track Recording with my 8 channel Layla sound card (by www.echoaudio.com). This is one of the things I need to make money. Along with that is DirectX functionality for audio plugins, etc..

    I sure hope people do not DESTROY Linux by potentially turning a server class operating system into a user desktop for every day tasks!

    Linux should be focusing on SERVERS, Unix Desktops, etc. It should not be focusing for becoming the Low-End User Desktop Platform. People should learn from Microsofts Errors.

    Microsoft in my head should have STUCK to the desktops. They were doing good. There was not even ONE other company that was providing software that they had. At least not with the functionality that people wanted or THOUGHT they needed. If they would have FOCUSED on the DESKTOP and not decided to do this NT thing and say, "Hey, lets turn this crappy desktop into a server.." and left all their programmers focusing in perfecting Windows 3.1 and then windows 95 today Windows 9X would not be as bloated as it is today and possiably the total solution for the end user.

    Now what does that mean in linux terms? Well, get a clue. Linux is doing GREAT in the server market. SGI, IBM, HP, etc.. are ALL stepping upto the plate to bat for LINUX! RUN WITH IT!!! Linux should focus on the functionality of the Kernel, support for drivers, support for hardware, and LAST a desktop box for playing games on.

    Sure, that would be nice if down the road linux would take the world over microsoft in every market. But if linux can just keep growing in the market they're in, in the SERVER market and Network Engineer Desktops or SysAdmin Desktops that would be great!

    I don't know. I just think linux should be focused as a server. Leave the desktop to the kiddies for now. At this rate if linux user interfaces keep growing at this rate, they will end up just like a windows 98 or Windows 2000 desktop. Just as buggy, just as bloated, and require just as much power to run. What's the point in that?

    Please, focus on the kernel. Focus on the support for more hardware, focus on stability as a whole as a SERVER!!! I DON'T RUN X ON ANY SERVER! Keep that in mind.

    Thank You.

    Ryan Wyler
    elna@aubevmba.arg
    (rot13'ed so I get feedback from at least somewhat intelligent people.. =))

  232. The most elegant UI feature.... by 4iedBandit · · Score: 1

    Alright, I haven't read all the posts and I hope they all aren't Mac vs Windows crap. Here's something I sincerely hope all user interfaces pick up in the near future: The disappearing mouse cursor. Don't get me wrong, I like mice. All kinds. Single button (got one of them), multibutton (have several of them), field mice (they eat the candy in my desk at work). But what I'm talking about is a feature I've enjoyed in the MacOS for years that dosen't seem to exist in Windows, CDE, KDE, GNOME, or anything else I've tried. To put it simply when I start typing the mouse cursor disappears. Sure it's seems insignificant, but right now as I type this from a windows box the mouse cursor stays right there, in the way of my typing. It's just annoying, especially when I think I've misspelled a word which happens to fall right behind the mouse cursor, so I have to take my hands off the keyboard and move the damn thing. That's one of the little things that I think makes a UI elegant.

    --
    "The avalanch has already started, it is too late for the pebbles to vote." -Kosh
  233. A better reason for not using Voice Rec by delevant · · Score: 1
    The regexpt argument isn't terribly compelling for me, given that a truly adequate voice recognition system would handle natural-language queries as well (so you wouldn't use a regex).

    For me, the more important reason to avoid voice recognition interfaces is simply this:

    I do NOT want to hear all of my coworkers yammering away to their computers!!

    I mean, geez, cube-land is already loud enough -- I don't need to have everybody talking to their PCs. Maybe if we all had private offices or something, but in a world where the majority of workers occupy cubes (or, hell, just big tables) there's no damn way voice recognition will take off.

    It would just be too damn irritating.

    . . . and hey, that's saying a lot, seeing as how I've recently started developing an RSI in my right hand (argh!).

    --
    I have no .sig, and I must scream.
  234. Re:Choice of interface by Wraithlyn · · Score: 1

    Well there is the key... a good interface needs to be simple and intuitive enough for basic users, yet highly flexible and customizable for advanced users. Windows is about as flexible as a tuning fork, but it's definitely easier for the average bear to pick up than the ultra configurable *nix's.

    --
    "Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
  235. Re:wow, so wrong it's not even funny. by Wraithlyn · · Score: 1

    Sure. Take a blank hard drive. Copy the CAB files from a Win CD to the HD. Turn the power off, switch your HD jumpers around, boot from floppy and away you go. Scanning is painless with a blank hard drive, the actual install only takes 12-15 min on a decent speed (~500 MHz) computer.. then yes, you have to reboot way more times than you should.

    The point of my post wasn't the speed anyway, my profane friend, it was the ease of hardware driver setup.

    --
    "Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
  236. Re:bandwidth, I want more bandwidth! by Ron+Harwood · · Score: 1

    That's not a bad point...

    You'd like to be able to do more things - with less effort, right?

  237. Re:Easy question by Keith+Maniac · · Score: 1

    On a side note, I've always wished the mouse cursor could be controlled by arrow keys when a mouse isn't detected. I'd love it. Oh well, I'll just have to do it myself someday I guess.

    Well, if you *really* want it, ye olde FVWM2 will let you bind mouse cursor movement to keys.
    You'll need to use a modifier key, or every other app will flip out, but those are just details...

    Enjoy.

    (holy crap, I just recommended someone use fvwm... what the hell am I smokin'?)

  238. flexibility, stability, and effiency by characterZer0 · · Score: 1

    A GUI has to be customisable to fit a persons needs. Good: KDE. Bad: MacOS. I want to be able to choose where everything is shown, in what manner, how windows overlap, where my taskbar is, what's on the start menu, how my file manager works.

    I don't want it to crash. Ever.

    It has to be quick.

    Cool logos are always nice too.
    stephen byrne

    --
    Go green: turn off your refrigerator.
    1. Re:flexibility, stability, and effiency by CrazyJoel · · Score: 2

      "A GUI has to be customisable to fit a persons needs. Good: KDE. Bad: MacOS. I want to be able to choose where everything is shown, in what manner, how windows overlap, where my taskbar is, what's on the start menu, how my file manager works."

      The problem is that if you get too used to doing it your way, you won't be able to use a different computer. You'll have to redesign your interface every time you get a new computer.

      Neither will you be able to help anybody else. They won't be using the same interface as you.

      --

      Such is the infinite Grace of Popeye.
  239. Re:One feature is necesary by coolgeek · · Score: 1
    care to elaborate on that? i've deployed plenty of windows systems, and i'm yet to find the scripting.
    .bat files are somewhat limited, but they do not provide the flexibility to do entry-level things like start an app, then hit file | new
    activeX surely does not count as it requires development tools to implement, and still has the same limitations
    macro recorder was a good start, and they seem to have deleted it

    so what is this windows scripting you are talking about? i would truly like to know, i still have some windows users to support and they are just too dumb to "get" certain things that need to be automated for them.

    --

    cat /dev/null >sig
  240. Re:One feature is necesary by coolgeek · · Score: 1
    Scripting is NOT a poweruser feature, although many a poweruser enjoy it. It is a great tool that can enable system admins to build on the basic building blocks of the GUI, and provide simplified UI for the users. For example, the Add alias to Apple Menu script in MacOS takes what is a 10 step process and makes something useful for an end user. It also communicates that putting things in the apple menu _is_ an option for the end user, something that is not obvious to many of them.

    Many times I have written a step-by-step procedure for my users that would have been more elegantly presented as a icon connected to a script.

    --

    cat /dev/null >sig
  241. Re:Windows Scripting by coolgeek · · Score: 1

    Thanks

    --

    cat /dev/null >sig
  242. Re:Choice of interface by grnbrg · · Score: 1
    Guess it's "bash something MS for some (+1, Funny) points" day. That was a lot of effort for a few points -- having to open Office and all.

    The truth hurts, hmmmm?

    Lighten up!

  243. Re:multitasking... by Hadlock · · Score: 1

    Yes, the fact that windows throws up windows when they're ready to run after you've put them in the background annoys the hell out of me too. I don't recall having that problem in my original version of win95, but then again the OS hadn't bloated itself with browsers and whatnot yet, and the programs at the time weren't exactly CPU intensive, even for the 486 I was using.

    --
    moox. for a new generation.
  244. Humility by lcrocker · · Score: 1

    The most important feature of any interface, and one that is missing from many, is humility. That is, making sure the interface doesn't try to be trendy or cute or interesting or novel. Just make it right. Just make it look like what the user is already used to. Don't take up too much screen space or menu space or other resources, don't demand user attention unnecessarily, play nice with other apps, use standard, common formats. In other words, just be humble, and don't pretend your little app is the only reason I bought a computer.

    --
    --Lee Daniel Crocker : http://www.etceterology.com My life is in the public domain.
  245. Speech Recognition by Refrag · · Score: 1

    Isn't speech recognition just like going back to a CLI in terms of intuitiveness? They're both verbal interfaces (VI). I honestly think that some form of GUI is always going to be more intuitive than a VI. I'm not talking strictly about Apple's, Microsoft's, or Be's vision of a GUI, but anything that resprsents the interface visually -- be it 2D or 3D.

    --
    I have a website. It's about Macs.
  246. Re:Voice Recognition/Activation by Refrag · · Score: 1

    Mental controlling won't work! Haven't you ever seen Macross Plus? ;)

    --
    I have a website. It's about Macs.
  247. Consistency! by Refrag · · Score: 1

    ...and a plan.

    --
    I have a website. It's about Macs.
    1. Re:Consistency! by Hotaine · · Score: 1

      Agreed - So long as the "standard" used to determine consistency doesn't totally suck.

      Now please excuse me. I must go put a "Start" menu in all my Windows apps so I can put "Exit" there.

    2. Re:Consistency! by TheTomcat · · Score: 2

      Cars are not easy to drive, but practically everyone learns how, and they don't have to re-learn a new interface for each model year.

      Good point, but the automobile has been around for around 100 years now, and the GUI, 30(ish). The gui, really, hasn't been in mainstream use since 1985-1990(ish).

      The gui can't settle down until it has matured. Imagine if we hadn't developed new concepts since Win3.1?

      Basic things like Drop Down Lists, Radio Buttons, and different types of scroll bars, most certainly have evolved over time. Multi-Select, for instance, boxes still don't work all that well. How would a new user know to press CTRL to select more than one item?

      We've still got a way to go before we can make every interface behave the same release after release.

    3. Re:Consistency! by PotPieMan · · Score: 2

      Yes! Consistency is one of the most important aspects of increasing usability in a GUI. Until recently, Mac OS and many of the apps that ran under Mac OS were consistent with each other, largely because of the style guides that Apple wrote and published for Mac OS (see the Human Interface Guidelines). Guidelines seem less stringent for developers these days, and fewer applications meet all of Apple's "rules" these days.

      Above all, behavior of interface elements must be consistent in order to maintain intuitiveness. GNOME and KDE are actually doing quite well in implementing consistent interfaces while allowing for themability (one thing that is lacking in Mac OS because Apple has refused to release the Appearance Manager theme specs). My only gripe about GNOME and KDE is that both desktop environments are setting things up a lot like Windows, which often fails to maintain consistency and "sensible" behavior. For instance, why is shut down under the Start menu? Why does Windows hide important options that should be grouped throughout different control panels--hardware management (under Windows 98, you have the System control panel the Add New Hardware control panel, and the Modems control panel (which controls COM port assignments, speaker settings, etc.)), for example. Also, the design metaphor used in Windows sometimes confuses new users. Thus, the fact that GNOME and KDE are being used to attract new users to Linux is a cause for concern.

      People often don't understand that the little details in Mac OS make it a stronger interface than many of the others. (Another strong interface is the one in BeOS, for various reasons.) The close box for windows is on the opposite side as the grow and window shade boxes to denote the strong difference in behavior (which is one thing that might change in Mac OS X--bah). Windows that have the focus have textured title bars, while windows in the background do not. Granted, there are some weird aspects of Mac OS--like dragging removable disks to the Trash and restart and shut down being under "Special."

      Anyway, consistency and well-planned behavior are highly important. Flexibility (and themability) are also significant to strong user interfaces. GNOME and KDE are showing great potential, and I think that with time they will develop into strong desktop environments.

    4. Re:Consistency! by rossz · · Score: 2

      I agree 100%. In most cases, how something is done is unimportant so long as it is always done that way.

      One of the annoying details in Windows is how to do a search. Sometimes it is F3, sometimes Ctrl-F, sometimes Alt-S. Damn it! I don't care which one it is, so long as it is ALWAYS the same thing.

      The ONLY purpose of a UI such as X or Windows is to provide a consistent interface to the user. If it fails in that it doesn't matter how good it looks, or how stable the OS is (and I'm of the school that does not confuse the UI with the OS).

      Graphics are not a requirement for a good UI. Always using "--help" to bring up help on switches and supporting "info name" makes for a friendly environment. I'm new to Linux, but knowing these to features are available makes the learning curve a little less steep.

      --
      -- Will program for bandwidth
    5. Re:Consistency! by hanway · · Score: 3
      Right! Computers will be hard for your mother to use until the GUI styles settle down and stop changing so that a normal person can learn them once and only once. Cars are not easy to drive, but practically everyone learns how, and they don't have to re-learn a new interface for each model year.

      However, I don't think it's a good idea to force a stagnation of GUIs yet. If automobile controls had been standardized too soon, we'd still be starting them with cranks and steering them with tillers.

  248. crosstalk by silicon_synapse · · Score: 1

    Besides the noise being annoying, it could be harmfull. Suppose the person next to you has a voice pretty similar to yours and you can hear them fairly clearly. You have just finished a huge presentation and saved it to a folder. You highlight the file so that you can move it to a floppy or whatever. Meanwhile, the person next to you was playing around and needs to delete some files. They tell their computer to clear the folder and confirm. Works fine for them, but hey! where'd that presentation go!? Maybe this is a stretch, but it's definately something to think about.


    How am I supposed to hallucinate with all these swirling colors distracting me?

  249. Re:Easy question by silicon_synapse · · Score: 1

    I agree completely. There should not be ANY function that can't be completed with only the keyboard. Sometimes I make a config error or just don't feel like using the mouse, and nothing bugs me more than not being able to push a graphical button because I don't have the mouse working and I can't tab to it or use a shortcut. Make sure there are multiple ways to accomplish a task (e.g. keyboard, mouse, telepethy).

    On a side note, I've always wished the mouse cursor could be controlled by arrow keys when a mouse isn't detected. I'd love it. Oh well, I'll just have to do it myself someday I guess.


    How am I supposed to hallucinate with all these swirling colors distracting me?

  250. UIs yet to come... by spoonboy42 · · Score: 1

    It's interesting that the initial posting mentions the concept of a voice interface. We've seen this concept used so often in movies and talked about so often by pundits that we accept it as the natural next-generation UI after the conventional GUI. Is this assumption correct, however?

    Let's contrast a couple of human behaviors, and see how they map to interaction with computers. Verbal communication, while the base of most adults' thought processes, is a *learned* behavior. We're constantly bombarded with spoken language at an early age until it becomes second nature. On the other hand, manipulating our environment is an instinctive behavior. A baby with no exposure to civilization will automatically begin experimenting with the objects around it.

    It's my prediction that the ultimate UI (at least for the forseeable future) is the virtual environment. Instead of asking for the news vocally, or picking up a newspaper (even a virtual one), the user can simply make contact with an object which, for them personally, has connotations with current events. Whether the object is a television, a camera, or a newspaper is irrelevant, the system will be customizable. By beginning to interact with the object, the environment around the user will transform itself into a new scene with several objects representing different types of news. A flag for politics, a gun for war, a computer for technology. The user can then begin to interact with these objects, once again transforming the scene. The user then becomes an eye-witness to whatever news interests them, whether it's a campaign rally or a football game. The user will also have the option to interact with other people around the world who are accessing the same information at the same time.

    Of course, the processing power required for such an interface is, by today's standards, staggering. Still, within the next 20 years, the technological obstacles to the "object interface" will disappear. In the interim, voice will be the first post-GUI interface. Afterward, cybernetics may open up the possibility of the native thought-based interface. But the model of interaction with one's environment is one that I think can't be ignored.

    --
    Anonymous Luddite: "What do you think of the dehumanizing effects of the Internet?"
    Andy Grove: "Not Much."
  251. Re:wow, so wrong it's not even funny. by cvillopillil · · Score: 1

    I don't usually to reply to replied posts, but I want to clear up a few things here, Mr Wizard. My female collie and I have discussed it, and she thinks that I should reply, as to correct some of the assumptions you've made here.

    Something bugs me about this post - you claim that all this hardware has "been thoroughly tested by the Microsoft Corporation". Lets see dual P3, 80GB RAID array. No, I don't think you are using hardware that was around in 1996, when the code for that NT4 CD you used was released.

    I know the tendency to blame M$ is very strong and often justified. But how can you expect them to have drivers for equipment to be built in the future? Had you RTFM, you would have realized that you needed to customize your install disks, with the correct drivers.


    I did in fact use all driver disks provided by the OEM for the dual P3-600 in question. The fact that the system crashes several times during the installation and again during the video card driver installation is testimony to the futility of the argument that "incorrect drivers" were the cause of the problem here! Even my female collie noted this. She could probably also write a better system than NT 4 (yes, it was NT 4). When even a female realizes the problem, you know there really is a problem.

    A good example is the tulip driver that comes with Red Hat. It didn't work! Only after I found out(after several frustrating unsucessful tries) that I had to download the C code and compile the driver did I get my ethernet card to work. Now you tell me, when was the last time you had to compile a driver for NT?

    Funny you should mention that. I assisted my father in installing Red Hat the other day. He claimed that he couldn't get the NIC to work. After asking about the steps he'd taken, I couldn't understand the problem. The driver installed was Tulip, I thought that might have somethign to do with it. The problem turned out to be this: The network in /etc/rc.d/init.d/ hadn't been restarted properly. I instructed him to issue the command and the network came up. No problem.

    --
    no sig
  252. Re:wow, so wrong it's not even funny. by cvillopillil · · Score: 1

    From your first post I gathered you took the CD install route, which doesn't work if you need to load custom drivers during the install.

    Absolutely correct. I figured this out quickly (hehe), but the crashes in question happened after that.

    thank you for clearing that up and I hope you didn't take anything personally

    No problem at all. I didn't take it personally, I just wanted to clarify a few things.

    next time i'll try to be more careful if I don't agree with a post.

    And I'll try and express myself more clearly:)

    --
    no sig
  253. Re:two words... by Duke+of+Org · · Score: 1

    HEY, I detest to this, I have installed Win98 on several machines, and have had no problems what so ever. And I have yet to use a piece of equipment for my computer that windows would not supply a driver for, or that you could not download off the internet

  254. Re:Different things to different people. by Alomex · · Score: 1
    The current UI model has very little state information across transactions. This results in unfriendly UIs. A friend of mine says it more succintly:
    "No wonder people think apps are dumb. We lobotomize them every time we turn them off!"
    Recently, a few apps have started to carry history info (netscape url completion, vi cursor positioning, MSWord completion). Adding to the list by seebs:

    8. A good operating system will remember what I've done in the past and *ask* if I want to do the same at appropriate times.

    Here's an example: You have eight files named grups.1, grups.2, ..., grups 8.
    Open xterm

    % mv grups.1 groups.1
    % mv grups.2 groups.2
    % mv grups.3 groups.3

    ***Right about here I expect an intelligent OS to butt in and ask: rename grups.4 groups.4 (y/n)? ***

    The same principle can be extended to any other number of situtations.

  255. Mac OS corrections by inditek · · Score: 1

    many of the points that have been brought up have been very reasonable, very innvative - and true. But many of the complaints i've heard about Mac OS are simply untrue.

    i haven't the time to see if anyone else corrected some of the atrocious assumptions or time-warped facts, so i'll list the ones i remember from scanning this awfully cluttered discussion...

    • you can bring a window forward as the active window without using the mouse... it's command-tab
    • if a user wishes to get rid of their horrid hockey-puck mouse and purchase a multi-button one (from Kensington, Logitech, Microsuck, whomever) they often come with Mac OS control panels so that the mac user can enable right-click and third button actions of their choice! However, my *grandmother* likes the one button
    • Mac OS X is an apple original (the underlying unix may not - but the interface - the os, so far as the consumers are concerned - is theirs now. as much as microsoft owns their windows gui.)
    • Mac OS X is VERY scalable. anyone who reads mac oriented news sites will know that the interfaced demoed by steve and on apple's website is in "dumb mode." it's something my *dad* likes. you can make it as old-school mac or as complex as you want... many useful things like the NeXT file browser have been brought over. the current Mac OS even has an "easy finder" (totally mouse driven, removes menu items that most simple users don't use) and regular. you can navigate the "regular" mode nearly totally by keyboard.
    • want a clean desktop? or don't like the clutter in current Mac OS? open windows with "command-option" and anything open before is closed as a new window is open.

    those are petty points but the ones who rail against the MacOS typically aren't users... and they aren't up on it's current status.

    i use many things, including Mac OS, linux - with both Gnome and KDE or no X whatsoever, and Windows. they all need work. Apple and the various desktop environment designers for linux have a lot e left to do. i'd rather Msuck wouldn't bother...

    i don't remember the article, but slashdot a coupel months ago linked to an AskTog column about GUIs. he had *legit* and serious criticisms of the coming OS X gui and talked about some patents apple held (like stacks, etc) that are true gui enhancements that NO ONE has put to good use.

    in my opinion, *new* concepts for navigation will greatly benefit powerusers - but so far, from my experience (in tech support and user consulting), nothing is more solid for the beginner than just what he/she wants and one clear way to get to it. the more methods you add, the more confusing it is at first. the MacOS, of all things, mastered that simplicity - and now they're among the first to make a decent attempt at the duality of accomodating both the new 'puter users and the power user.

  256. [fresh from the lab] by altserver · · Score: 1

    heck, all you really need are dip switches and a logic analyzer...anyhting else is gravy :-)

  257. Re:Some problems I've seen with UI's by cmat · · Score: 1

    "If the computer organized the user's data into a searchable database, rather than a hierarchial filesystem, information would be much easier to retrieve and reuse." -- Excellent idea, the only problem ofcourse with this, is that searching techniques are even worse off than UI. Hold on! =) Before I get flamed, I meant the "UI to search engines" is worse... ;) It's almost a catch-22... use a searchable database to file your files, and then you need a UI to the engine to retrieve them... but you need the search engine to help with the UI... *brain-hurt*. In my eye, a database-like filesystem would be helpful in designing a UI, and maybe it should even be the basis for a UI design, but until searching becomes intuitive, it's sure as heck not going to help a UI become more intuitive. Cheers, Chris

    --
    -- Humans, because the hardware IS the software.
  258. Re:Some problems I've seen with UI's by cmat · · Score: 1

    "If the computer organized the user's data into a searchable database, rather than a hierarchial filesystem, information would be much easier to retrieve and reuse."

    -- Excellent idea, the only problem ofcourse with this, is that searching techniques are even worse off than UI.

    Hold on! =) Before I get flamed, I meant the "UI to search engines" is worse... ;) It's almost a catch-22... use a searchable database to file your files, and then you need a UI to the engine to retrieve them... but you need the search engine to help with the UI... *brain-hurt*.

    In my eye, a database-like filesystem would be helpful in designing a UI, and maybe it should even be the basis for a UI design, but until searching becomes intuitive, it's sure as heck not going to help a UI become more intuitive.

    Cheers,

    Chris

    --
    -- Humans, because the hardware IS the software.
  259. Re:no windows by Fzz · · Score: 1
    Anyway, with windows, when everything is maxamise, and u just use the task bar to switch applications, it isn't like a windowing GUI, more like what u where wanting.

    Actually this isn't what I want at all. Right now I'm sitting in front of two 1600x1024 SGI flat panels. I've got perhaps 40 windows on those two displays, and about 10 of those are actually visible. I need to have many tasks going on at once, and see those tasks (some of those windows monitor a whole load of machines, some monitor network status, some handle email, and there are a bunch of xterms where I'm doing real workl). But what I don't want to do is waste time tiling windows and sorting through them. If I give a window any real-estate, it should do its best (with the help of the window system) to display usable stuff in that space. What I want is more like Frames in a web browser, but where I give hints to the wm whats important to me right now, and the wm does its best to arrange the screens' real estate in a manner that satisfies my requirements and those of the applications I'm running.

    --Fzz

  260. Re:One feature is necesary by Xiphoid+Process · · Score: 1

    It is quite unfortunate that masses are mixing up the notions of system functionality and of the actual science of User Interface.

    It maybe a necessary functional requirement for an operating system to allow scripting capability, however user interface has actually nothing to do with that.

    Scripting should be an essential part of a GUI. Apple has taken steps towards this (I've not really used it yet, and wonder how well it works), but until we are able to graphically/intuitively show the computer a task, and tell which set of objects to enact it on, computer UI's will remain in the dark ages where they are now. XMLTerm is taking great strides towards slick intergration of GUI and CLI, which is one step towards the future.

    - Josh "Yoshi" Steiner
    - Josh "Yoshi" Steiner

    ---
    Xiphoid Process Records - http://xiphoidprocess.com
    San Francisco based electronic music.
    --
    got drum'n'bass?

    http://mp3.com/vitriolix
  261. Read Edward Tufte's books by dazedNconfuzed · · Score: 1

    Most user interfaces are designed by people who really don't know squat about the subject, and have no clue that they don't know. Edward Tufte carefully examined the requirements and implementations of user interfaces. Read his books for a reality check and eye opener on what is really needed, examples of great UIs, and what people keep screwing up thinking it's the "right" way.

    --
    Can we get a "-1 Wrong" moderation option?
  262. Keep it simple, keep it standard by _xeno_ · · Score: 1
    Keep the UI simple - make it easy to understand what something is. If it's a button, make it look like it can be pressed. Make sure that the UI looks standard across the entire platform. There is nothing more annoying that having to learn a new look and feel while using the same platform.

    As for elements of a UI, you need to use what has become the defacto standard UI elements:

    • Buttons - pushable elements that take immediate action
    • Scrollbars - scroll other elements
    • Windows - things which hold content
    • Checkboxes - boolean indicators
    • Radiobuttons - multiple selection
    • Text boxes - places to input text
    There are many other possible too - but these I think are the basic core - they also happen to be the elements included in the HTML form layout. Look at other UI kits, pick and choose the elements they present based on usefulness. Remember what you do like, what you don't.

    Also, be wary of skinning - skinning things may make something look distinct, but it just confuses the end user. Be careful about confusing the user - you want as low a learning curve as possible. You want the UI elements to look as much like UI elements that the user has seen elsewhere as possible. That way the user needn't learn a new system.

    --
    You are in a maze of twisty little relative jumps, all alike.
  263. Highly wrong and contemptuous of users by brevity · · Score: 1

    >You equate the user's conceptualization with irrationality, and the programmer's with rationality. This is wrong. The programmer is in the business of creating an environment and manipulation language for the user. All failures of the user to understand are entirely the fault of the programmer.

    There is no particular association between the programmer's way of thinking and "logic", and no reason to associate the user's way of thinking and "irrationality".

    You seem to suggest that a computer that responded to "affective" behaviour (i.e. swearing) would be a better interface for the naive user. I guess you really love the animated paperclip in Word. This is lazy thinking.

    If you are unwilling to do you job of bringing computer power and user understanding together, maybe you shouldn't be a programmer.

  264. user interface design by gorgano · · Score: 1

    If you are talking about user interfaces for OS's then i would take a look at geoshell. Its another shell that runs on top of win9x. I'm actualy using it right now. The thing that i think is very important to keep in mind about any interface you are using is: keep it simple. Yeah its great to have all these extra features, but in reality, who really uses them. Find out what people need and just put thouse in there. And make sure its in a easy to find, accessble place for your user. Lets just take geoshell for an example. You can basicly clear every thing off of your desktop if you want to and alow your start menu to be hung off a right click anywere on your desktop. This is nice because you can make more room for your applications and not have the stupid start menu bar clutering everything up. The other thing i like is that it is writen somewhat more modular. You can 'plug in' applications that you want to use. Like vertual desktops. So keep your basic design simple and if you want to add features make it so they are easy for the user to add and plug them in themselfs.

  265. Think like your computer by bonzoesc · · Score: 1
    Some artsy-fartsy people have trouble with their OS/WM because the computer has inherent problems in simulating human behavior. It does not act irrationally, do dumb things, or actually do anything at all. Since most OSes are designed by programmers, everything tends to be handled logically. However, OSes for non-programmers rarely work well because non-programmers figured that a programmer would be able to, say, write something that could not be written. (For this post, a programmer is basically somebody who thinks logically, not specifically programs anything.)

    Computers don't have emotions like people do. If an angry person takes a file and types swear words into it, the computer records, not interprets the swear words. Non-programmers often try to reason with their computers, or coax them to working. If an OS were written that responded to everything the people did, and not those actions that the computer records via keyboard, mouse, or other input device, and actually reasoned things out like people, computers would be more accessible.

    Unfortunately, the reason we use computers is because they are really fast at mathematics and transferring data around. If a computer were to toss the massive amounts of data that people do to have emotions, they would be really slow at multiplication, dividing, and surfing.

    "Assume the worst about people, and you'll generally be correct"

    1. Re:Think like your computer by daninja · · Score: 1
      Some artsy-fartsy people have trouble with their OS/WM because the computer has inherent problems in simulating human behavior.
      But many of the tools used by the artsy-fartsy have inherent problems in simulating human behavior, and yet they're not a source of trouble.
      It does not act irrationally, do dumb things, or actually do anything at all.
      Computers do things, amoung other things, they compute. That's why they call them computers.
      Since most OSes are designed by programmers, everything tends to be handled logically.
      Wrong. Since most OSes are designed by programmers, everything tends to be handled in way that supports the goals of programmers.
    2. Re:Think like your computer by taliver · · Score: 1
      I completely agree with this post. There is absolutely no logic that people put into their daily lives, and therefore no way to write a user interface for these people.

      I have actually watched student in a intro to computer science course attempt to write programs for problems that they did not understand. These student would just sit at the computer and complain that it was broken because the problem wasn't being solved.

      Writing an interface for a user that doesn't even know what they want, and one that will change on a daily basis depending on their mood, it a near-impossible task. In a lot of ways it's akin to "making the perfect car". There's no way that an automaker would even try to design a vehicle that absolutely everyone would love to have, so why do we do it with interfaces? Or even OSes for that matter?

      --

      I demand a million helicopters and a DOLLAR!

  266. A good user interface... by wholesomegrits · · Score: 1

    will include all of the major ideas outlined in the 1993 book MacIntosh Human Interface Guidelines

    Why does QuickTime 4 player and Sonique take forever to get used to vs. WinAmp? Sonique and QT 4 said "screw it" when it came to designing a user interface.

    Apple did good by ripping off the Xerox people in the 80s. The Xerox people did good by ripping IBM off. Designers today think that 40 years of development are bogus apparently, as evidenced by user interfaces like Sonique and QuickTime 4. The beauty of the Apple concepts is that if you learn one Mac program, given that it's written according to the guidelines, you've already learned how to use 90% of any other Mac program on the market.

    Look at the Windows environment: if I learn how to use BulletProof FTP, can I immediately sit down and use CoffeeCup FTP in just a few seconds? Hardly. CoffeeCup has a piss poor user interface which differs RADICALLY from every other FTP client for Windows. However, if I use Fetch on the Mac, then sit down and use Transmit (both FTP clients) they're very similar in look and feel.

    For the biggest change in UIs, look at Macster and Napster. Macster is a breeze to use and sports an awsome UI vs. Napster. I'm jealous to be stuck using Napster.

    What's written in the Apple book isn't just for the Mac, it's for anyone who wants to write a program or website, that doesn't need any explanation. Until windows came out, with it's atrocious interface and programs which subscribe to 15,000 different theories about UI, nobody had a "help" menu on their programs. Today a "help" menu is standard. That's says something about the quality of programs (not to mention cheapass companies which no longer include a printed manual)

    --
    No sig is worth reading.
  267. The Anti-Mac Interface by cheekymonkey_68 · · Score: 1

    The ACM have a very interesting (if old) article arguing that there has been no real innovation in UI design since the WIMP was introduced.

    They postualte on what could be acheived if we we violate each of the Macintosh human interface design principles and start again from scratch ?(They choose the MAC as Windoze, Motif etc are based to a large extend on those guidelines)

  268. Re:Disgruntled Help Desk Tech by chipuni · · Score: 1

    Freefall had a cute series about this idea a few months ago...

    --
    Never play leapfrog with a unicorn. Or a juggernaut.
  269. Here's what I want... by JCMay · · Score: 1
    I consider myself a "power user," in several respects. First, the work I do requires a large machine-- EM analysis. 1GB of RAM is a normal requirement for a run. (That sounds so wierd, '1GB of RAM.' I couldn't have imagined that when I got my first computer-- a Sinclair ZX-81!)

    Secondly, I've written my own programs that I've released to the public. Mostly Amiga stuff, a long time ago. I enjoyed the Amiga API, it was so simple to open a window and draw stuff into it. I didn't even use MUI or anything else that wasn't part of the regular shipped OS. Asl.library was about it.

    My wife got me a book on Win32 programming a while back. Ugh. How ugly.

    My grandparents have a computer that was given to them by my aunt. Neither of them make much use of it for different reasons: Grandpa can't see well enough to read the monitor (macular degeneration), and grandma isn't strong enough to use a mouse (muscular atrophy).

    Any new OS needs alternate UI systems. Keyboards and CRTs are fine, but howbout voice I/O for others? Maybe a bitmapped braille display? These should be available, and transparent to both user and software.

    Finally, the API needs to be simple. Not sparse, but simple. DLLs in the microsoft sense should be avoided, but shared libraries, in the Amiga sense, are fine.

    I've been very disallusioned with computers of late!

  270. Read a book! by Bladetooth · · Score: 1

    "The Humane Interface" by Jef Raskin.
    Excellent book. Goes into interface design of all kinds. It will be very helpful to you if you but read and understand. It expresses ideas I have always felt (and some that I genuinely understood) in a very easy to understand way. EVERYONE should use this book when designing their UIs!!!

  271. Enough about gramma and newbies! by DavittJPotter · · Score: 1

    OK. How many people are actually honest-to-goodness computer newbies? Granny may be. Some others may be. But honestly, granny's going to kick off soon enough. The people we should be focusing on most are already using computers. Be it the CLI, a GUI (Pick your flavor), or a VR interface, why should we dumb things down? Isn't that the reason most of us don't LIKE Windows? Hell, Mandrake 7.0 has the xdm startup, and to use your comparisons, my mom can logon to her machine, and after a little messing about the first time she used it, she can now do whatever she likes, same as her Windows box. What we need to look at is how things are going to change - there is already *so* much data coming our way that it's becoming very difficult to deal with all effectively. Is there a way we can do that? Certainly. Unfortunately, I don't have the answers right now. If any of us did, we'd probably be making pretty good money. ;)
    How about dual-boot type modes? Or a Palm-style interface? I know that works pretty well for me for the limited tasks I use it for. Click a picture, get another set - no foldouts, menus, sliders, context menus - just straightforward. When you're ready to move up, just boot into your other OS. Isn't that what most of us did when we left Windows for Linux/Unix?

    --
    "If there's hope, it lies in the proles..."
  272. cruel joke by daninja · · Score: 1
    Multiple overlapping windows are very hard to sort out for someone who's not used to it.
    Even if you are used to it, it can be painful. Implying that I should organize my computer screen like I organize my desk...it was a cruel joke.
  273. Re:One feature is necesary by pjc50 · · Score: 1

    Hmm. Windows _used_ to have rudimentary, really easy to use repetition-enabling software- the windows recorder. Why did they kill it? It did only one simple thing, but did it well ...

  274. Re:wow, so wrong it's not even funny. by Pinball+Wizard · · Score: 1
    thank you for clearing that up and I hope you didn't take anything personally. From your first post I gathered you took the CD install route, which doesn't work if you need to load custom drivers during the install.

    my main interest is that incorrect information regarding MS only makes the open source movement look dumb. So if I see something that slams MS and is not based in fact I might try to correct it. I'm quite over my zealotry days, and I use both Windows and Linux successfully, working together in the same network.

    next time i'll try to be more careful if I don't agree with a post.

    --

    No, Thursday's out. How about never - is never good for you?

  275. Re:You've got it backwards by Pinball+Wizard · · Score: 1
    Thank you, jargonne, if I wasn't posting I would have moderated your comment up. I've been looking for something like this for NT/W2K.

    I don't suppose you know of a free NFS implementation for Windows, do you?(I'm aware of Samba, but I want NFS) Add that to the unix commands you mentioned, and ActiveState Perl, and you'd have the same thing as MS's Services for Unix, sans the $150 price tag.

    --

    No, Thursday's out. How about never - is never good for you?

  276. I think a better question might be... by Pinball+Wizard · · Score: 1
    Can the open source model for development create a good GUI?

    I'm well aware that most /. readers use Linux as their primary desktop. I use Linux and Unix as a server OS, but so far, I've been unwilling to switch from Windows as my desktop. I've been through KDE and Gnome, both of which appear to me as second rate Windows copies. I've used straight X-windows, and I've finally settled on WindowMaker since it seems to be a somewhat uncluttered GUI.

    The only thing I ever actually use a GUI in Linux for is to have multiple terminal sessions going. Ocassionally I'll use it to see what certain web pages look like under Netscape/Linux.

    I have thought about the reasons behind why I don't switch. I've found that the consistent user interface of Windows and the programs running under it enable me to work faster and more comfortably. I also use a MS mouse and keyboard, primarily to avoid carpal tunnel.

    I guess the point I'm trying to make is that Microsoft has spent big bucks on the subject of user interface, and I can benefit from that research. User interface for me is about getting the job done without getting hurt. If I switched to Linux exclusively, I can say that I would be slower and less productive.

    I do a lot of coding and here is another example of good interface design. Visual Studio color codes my code. Call that crap, but when you are working on a page with 1,000 lines of mixed HTML and code that color coding makes it a hell of a lot easier on your eyes. Another example, you go to use a predefined class and all the members of the class appear in a drop-down menu, making it easier to code and harder to make a mistake.

    So, given the fact that Microsoft has spent big bucks researching user interface, how can open source keep up with that? Its an important question, and I'd be very interested in the /. opinion.

    --

    No, Thursday's out. How about never - is never good for you?

  277. Counter-question by Scritch · · Score: 1

    I can't resist questioning the relavance of this article. Who exactly is "fosh" to be asking for a broad survey of UI needs? And if "fosh" truly is in a position of authority to advance the state of the art of UI, why is he asking random lunkheads on Slashdot their opinions?

  278. Visibility, accessibilty, consistency by ForbiddenDonut · · Score: 1

    A UI shouldn't take up all your screen space or make it hard to see the controls. A UI should guess what you want to do before you do it (drop down boxes are always better than edit boxes). This is the best way to speed up the manual part of the program. It should be self-explanatory (you should never have to even look in the help file). I hate having to learn new shortcuts or go through the entire menu just to find "prefferences". These are the 3 main gripes I have against most interfaces.

  279. Computers Are Doomed by bellmyers · · Score: 1
    The problem with all computer UI's ever made is that the computer is a general use device, not directly suited to any particular task. A word processor is so completely different from an MP3 player that any virtual UI would fail to work as well for both. What do I actually have to work with? A keyboard (a bunch of buttons that all look and feel alike) and a mouse (a generalized pointing device).

    Want a good MP3 player interface? Buy a Rio. Specialized devices will be the next thing - real world devices that meet the specific need of the task. Generalized computers will be relegated to geeks like me, as should be.

  280. Re:You've got it backwards by jargoone · · Score: 1

    Did you somehow miss the magical word if in my post? I gave examples of OSes for illustrative purposes. If you're attempting to judge my opinion of OS superiority, you're missing my point entirely.

  281. Re:You've got it backwards by jargoone · · Score: 1
    2) A lot of people who take more than 5 minutes to think about UI's will respond with "but my grandmother doesn't need to run pipes and greps and stuff". OK, but that's not an argument for a simple (minded?) Linux UI--it's an argument for your grandmother to use a different OS.

    Wrong. What has the lack of need for certain programs to do with an OS? That's like saying that you should get the 4 cylinder instead of the 6 cylinder because you don't need the navigation system. You can get a grep that will work in Windows, too, you know. Most people don't need it, though. Just because it's there doesn't mean you have to use it.

    If Linux is, in fact, superior, there should exist an interface that makes it so for everyone. And that includes your no-grep-needing grandmother.

  282. Re:One feature is necesary by georgie_boy · · Score: 1

    I just want to be able to do everything with out ever touching the mouse. I love the keyboard.

    --
    I'm an applied mathematician, there's nothing pure about me.
  283. Re:two words... by xenon54 · · Score: 1

    For a novice Windows is way easier to setup than Linux. I can just imagine my mother trying to install RedHat 6.1. First she would have had problems wiht the "what IRQ does your mouse use?" question. Then she would have been totally confused by the "select a mount point." Come on. Linux may have advantages over Windows but ease of installation is not one of them.

  284. Re:wow, so wrong it's not even funny. by xenon54 · · Score: 1

    On standard PC configs, a monkey could install Win9x. Last time I blanked my hard drive to reinstall Win9x, I had all the driver disks ready for cdrom, mice, etc but I didn't need any of them. It did everything automatically. And it worked right the first time. As far as NT goes, I don't remember that much trouble with raid drivers from last time I tried it. No OS is going to install perfectly easily every time. I don't think you are a moron for having a little trouble with NT, but it is also true that linux installs can get just as nasty.

  285. Re:bandwidth, I want more bandwidth! by pyrrho · · Score: 1

    I've seen keyboards that did a little of this, badly and expensively, but you could make a cheap one right now! do it... you'll get rich, it's a good point. Keyboards where the keys or at least the Fkeys could be labled would double or triple the effectiveness of even current (i.e.badly designed) interfaces.

    --

    -pyrrho

  286. People and computers by IllMnec · · Score: 1

    The biggest problem with UI's and new users or for that matter any user is that a computer has alot of information to give, and not alot of space. New user get confused because they don't know where to look. You have multiple windows, icons, start menus, menubars, etc. Alot of elements containing alot of information. I guess the ultimate UI would be one that would show only the information currently necessary to the user. No multiple windows, no menubars, just what you need: the text your typing or the image your editing, with context menus appearing when you click the mouse or something.

    --
    Illegal Mnemonic Character

    * Stay Simple *
  287. Windows Scripting by tringstad · · Score: 1

    Getting a bit off topic now, but if you look here you will find everything you need to know about Windows Script Technologies.

    Again, I am not supporting M$, just reporting the facts.

    -Tommy

    ------
    "I do not think much of a man who is not wiser today than he was yesterday."

    --
    "I got a half gallon of Jack, and 2 dozen Ant Traps. I'm about to get wild." -me
  288. Re:One feature is necesary by tringstad · · Score: 1

    I'm sure I'll get flamed for saying this, but Windows DOES have scripting.

    Not that I'm advocating Windows (or anything else), but just because YOU don't know how to do something, doesn't mean that it CAN'T be done.

    ------
    "I do not think much of a man who is not wiser today than he was yesterday."

    --
    "I got a half gallon of Jack, and 2 dozen Ant Traps. I'm about to get wild." -me
  289. User interface by HollowGraham · · Score: 1

    I personally think that the user interface will be basically the same. Voice recognition will more or less just replace your mouse. I'm sure there will be other advantages and different options with voice recognition but the the visual interface will remain somewhat the same. Now a revolutionary new visual interface would be cool like a 3D display of some kind, not virtual reality but more like that dogfighting game you see those aliens playing in the bar in the original Starwars. Anyone heard of anything cool like that in the works?

  290. GUIs by Penguin_99 · · Score: 1

    I have done a lot of work in various fields of HCI, which is one of my areas of study. There is an excellent book available by Alan Dix called Human-Computer Interaction that pretty much sums up the fields of HCI (such as groupware, interface design, distance learning, etc...) and goes into depth on good and bad interface design practices. What makes this book a good one is that it is co-authored by a psychologist and that adds the human element in with the CS element.

  291. Re:a problem by Penguin_99 · · Score: 1

    There are methods of making computers easier to use for novice users and keeping experienced users happy. One example is the little paper clip agent that MS uses in Word. Although most expeinced users find it annoying, novice users tend to like the help it provides them. As the users get more and more experienced with the software, they can customize the paper clip to interfer less and less until they don't need it. Now, the bad part of the paper clip is that is does not teach users how to do things, it does performs tasks for them. So, they never actually learn how to do things. Another example of an usability feature is the balloons in MacOS. A beginner can get information about how to perform tasks by mousing over things, but someone who already knows can turn the balloons off. However, I do agree that it is nearly impossible to get an interface that is so easy to use that is, dare I say, intuitive to novices but keeps the "power users" happy too. There has to be a middle ground and a way for beginners to get there.

  292. Re:Choice of interface by LoonXTall · · Score: 1

    it's the difference between using a box wrench to turn a nut, and a ratchet wrench with extension levers and flexible shafts or other goodies.

    There needs to be a third level to that analogy. Most of the scripts in my \bat directory are named for what I happen to like from various other UI's (cdup, mkd, list) or something that I do a lot (z <command> = pipe <command>'s output through More), not necessarily stuff that takes many steps. (And a couple of jokes... you must type "lose" to start Windows instead of "win".) I see myself in this analogy as using a crescent wrench over a normal wrench: I take something and stretch it to fit, but it's not like writing configurable setup batches that use choice, errorlevel, Norton BE commands, etc..... that's where the ratchet wrench comes in.


    -- LoonXTall
    --

    ~~~LXT~~~
    Life is like a computer program: anything that can't happen, will.

  293. Scripting for multiple user skill levels by LoonXTall · · Score: 1

    The problem is that novice-usable UI scripting that is also useful to power users may not really exist yet.

    One word: ScripIt.

    Scripit is an Amiga program that runs under Workbench 1.3 (and maybe others, but that's what I have) and can do some pretty nifty stuff. By running the Recorder, you can do something, which is then saved as a Scripit script. Running the script reconstructs the action. Since it's an automated tool, the Recorder writes huge-ish files, but is simple enough for a beginner. All that's really missing is a couple of GUI tools (to run the Recorder and the finished script) and some docs. Neither of these is too hard, though.

    OTOH, power users can write their own scripts from scratch, which can be much smaller/smarter. Scripit can also do neat stuff AmigaDOS scripts can't, like manipulating the GUI. And ADOS can do stuff Scripit can't. So true power users can blend the two.

    If I had a Scripit-like toy for Windows 95, I could write a "Check Email" script and park it on the desktop, which would take care of deactivating the answering machine (so rnaapp and tapiexe can use the modem) [dos+scripit], connecting to my ISP [scripit], launching the email reader [dos], and downloading any new messages [scripit].


    -- LoonXTall
    --

    ~~~LXT~~~
    Life is like a computer program: anything that can't happen, will.

  294. Mouse via keyboard by LoonXTall · · Score: 1

    I've always wished the mouse cursor could be controlled by arrow keys

    The Amiga can do that. You hold either the right or left Amiga key and an arrow, and your mouse goes that direction. You hit the left Amiga and Alt, you get a left click. Right Amiga + Alt = right click.

    You can also do it in Windows, just not very well. Activate MouseKeys in your Accessiblity Options. You can then use the numpad to drive the mouse, single- or double-click, and click-and-hold. Unfortunately, you have to remember to hit / (left), * (both), or - (right) if you want to change the mouse button.

    This looks like a good spot to mention IBM's thingamajig on their laptops. A little post sits kind of between the F, G, and V keys (I think). It's pressure-sensitive, very intuitive, small enough not to get in the way of typing, and you never have to leave the home row to use it. IIRC, buttons are right in thumb-range below the spacebar.


    -- LoonXTall
    --

    ~~~LXT~~~
    Life is like a computer program: anything that can't happen, will.

    1. Re:Mouse via keyboard by jdehaan · · Score: 1

      thingamajig: TrackPoint (TM) They also make desktop keyboards with it, if you're into $150 keyboards.

  295. Relearning GUIs by LoonXTall · · Score: 1

    But GUIs, they move things around a lot from one to another. They change the appearance of things, and generally make it confusing to learn a new GUI. Thus, the lack of conformaty in UIs makes it so you have to re-learn each UI instead of being able to apply previous knowledge and pick it up quickly.

    I disagree. In transmuting from Amiga to Windows, I put all the Windows gadgets in terms of Amiga ones. "Minimize" is roughly equivalent to "move to back", and "Maximize" is "drag this thing up to the corner and resize it". I would like to shoot the scrollbars, though, for not being active when the mouse strays too far from them (during a drag).

    So all one really has to do is learn where they put a particular action. For instance, instead of a size gadget, Windows has an incredibly narrow strip around the entire window which you can grab to resize. And there are no front/back gadgets. You're just stuck with having the window with focus in the front.


    -- LoonXTall
    --

    ~~~LXT~~~
    Life is like a computer program: anything that can't happen, will.

  296. Re:Newbies and experts by LoonXTall · · Score: 1

    (5) Allow the sysadmin to lock keyboard mappings, or allow an un-remappable combination to reset it to default.

    The open computer labs at my college would become a disaster without this.


    -- LoonXTall
    --

    ~~~LXT~~~
    Life is like a computer program: anything that can't happen, will.

  297. Re:Some problems I've seen with UI's by LoonXTall · · Score: 1

    Have you ever seen people clicking on a window background, getting beeps back, just because there's a modal dialog open and they don't really realize it?

    Under MacOS, the titlebar likes to flash when you do that. This inevitably drags my mental focus up there, where nothing is happening. What needs to be done is for the dialog to move to where you just clicked (centered under it?) and/or get a nice big (8px?) border around it in some contrasting color. Just don't let it blink.


    -- LoonXTall
    --

    ~~~LXT~~~
    Life is like a computer program: anything that can't happen, will.

  298. Re:Many things matter; users are diverse by LoonXTall · · Score: 1

    The buttons in the Win95 taskbar don't go all the way to the edge of the screen.

    True. But I've gotten so used to trying to hit the resize-line on my way through that the taskbutts are huge targets.


    -- LoonXTall
    --

    ~~~LXT~~~
    Life is like a computer program: anything that can't happen, will.

  299. Re:multitasking... and focus theft by LoonXTall · · Score: 1

    And what about applications that pull themselves into the foreground when THEY want attention.

    Focus should ideally follow my stream of consciousness. Failing that, it should stay where I put it. I am not a touch typist: I look at my keyboard. When an AOL IM window comes up and steals the last half of my sentence, it is most annoying. That's why I don't use it much anymore. As I told Google (but they didn't listen)... "Multitasking is worthless when the last half of my ICQ password ends up in the search box."

    Hmmm, I think I've found a solution. The OS should learn the typing rate of the current user, and avoid allowing the focus to move until a break in the typing. Then it can make a "focus moved" sound to inform the user (that's me) about what's up.


    -- LoonXTall
    --

    ~~~LXT~~~
    Life is like a computer program: anything that can't happen, will.

  300. A favourite (if standard) "feature" by -Harlequin- · · Score: 1

    Just thought I'd note - while it's almost universal now, the UI breakthrough that takes my vote as one of the most important was the elimination of the need to hold down the mouse button when browsing drop-down menus and the like. It makes a world of difference, and its absence makes a UI feel like obsolete junk from the 80's or early 90's.

    Er... yeah, that about sums up the only contribution I can make here...

    BTW, as I first met this approach in Win95, it was a _big_ feather in the cap for '95, which overnight made the acclaimed Mac UI of the time painful to use. Did it originate with Win95, or was it already in some major packages that I wasn't using at the time?
    (Retarded morons note carefully: taking the question into stupid platform advocacy crap is not helpful, useful, intelligent, or desirable).

  301. It should look and feel... by B-B · · Score: 1

    just like Microsoft BOB!

    Yes.

    With lotsa dancing Paperclips!

    --
    Reality does not happen until you analyze the dots. -Don DeLillo (Underworld)
    1. Re:It should look and feel... by the_other_one · · Score: 1

      Well there is the vigor editor.
      It's a vi editor with a paper clip
      Does anyone have an URL for this

      Also is there an open source effort to duplicate Bob?
      Should one be started?
      And most importantly what should it be called?

      GNUBlob?
      GNUFred?
      GNUTaco?
      GNUHemos?
      ThisSucks?

      --
      134340: I am not a number. I am a free planet!
  302. A difficult question by Ian+Wolf · · Score: 1

    IMHO... a "good" user interface is a combination of five things. The primary requirement of any good interface is usefulness. The interface must give the user the ability to accomplish as many if not all the things the user wishes to do with that system. Stability is second only because a stable UI still needs to be able to do something. Performance and flexibiility are also very important. The interface must be swift enough to be usable and flexible enough to be extensible. The final requirement is "ease of use". The biggest failings of MacOS and Windows is that their GUI's put a premium on "ease of use" at the expense of stability, performance, flexibility, and usefulness. "Ease of use" comes after everything else. I believe that the largest faults with MacOS and Windows is that a premium was placed on ease of use and not on the other more fundamental requirements. While I

    --
    "The words of the prophets are written on the Slashdot walls."
  303. What Is Important In A User Interface? Voice UIs by oldCoder · · Score: 1

    The difference between Visual (windowing) UIs and Voice UIs isn't just the front end of the UI. It's the whole engine.

    I've tried navigating through menus and icons using voice tools. Very clumsy. A natural voice command would be "Change that last sentence to bold, 10 point". Visually, that's a mouse-down, drag, and mouse-up, a click, and a list selection.

    The only practical way to make these more-intuitive interfaces is with a voice-oriented scripting language. The now-obsolete Dragon Dictate had a scripting language that did exactly this.

    Scripting Rules!


    --
    --

    I18N == Intergalacticization
  304. Re:One feature is necesary by stephenbooth · · Score: 1

    My feeling is that for a UI to be good the 'default' appearence should be easily understandable by a novice, ideally be familiar to users of similar products, but also allow more experienced users to customise the appearance and access more powerful faccilities that the novice is unlikely to need.

    Therefore all basic tasks should be possible through drag-and-drop or menu/button clicks for the novice, through key presses for the slightly more experienced user (with more complex tasks also available) and through scripting for the power user who has both the need and ability to use more advanced faccilities.

    Stephen

    --
    "Don't write down to your readers, the only people less intelligent than you can't read" - Sign on Newspaper Office Wall
  305. Re:multitasking... by arpajian · · Score: 1

    Gee... I guess you don't like modal dialogs (those are the ones that cannot be moved or made temporarily inactive) Modal dialogs are supposed to be used only when user input is required for the machine to continue/ execute the requested task. They are also supposed to present all the information the user needs to answer dialog's questions. Unfortunately this is not always the case. Blame that on the application programmer. The only modal dialog currently used by the macOS is for media format. I believe that will also be modalless in OS X. The application programmer has the option of modal/ modalless dialog, and most use the correct type in the appropriate settings. Some do not.

    But, anyway, back to the main point: "What is important in a user interface?"
    1) Consistency: Having frequently used, common commands, in a familiar place/form significantly reduces user frustration.
    2) Keep the main part of the user interface simple. Not every user needs every command at his/her fingertips. This also reduces the fear factor for newbies and/or the slide-rule generation. We don't always need superuser status.
    3) Customizable but retaining the ability to easily return to "factory" defaults.
    4) Consistent API's!!!... ('nuf said on this one?)

    Aside from those? I'm not sure... After all, we're talking about UI, not OS...

    --
    -dean
    -----------------------
    hey, well, its just my $0.02us
  306. layered approach: core > descriptor > tweaks by pshlortz · · Score: 1

    In therms of user interface rather than graphical user interface design we have to think of a "program" as 2 things, a) a collection of code to perform tasks and b) a way of interfacing with the tasks available An ideal computer would have a collection of code which the application is capable of performing a task with a standard interface. This is where the data crunching would go on. The data crunching core would have a intelligently designed descriptor file which would explain in a computer-friendly format what the applications core is capable of providing. In a worst-case-situation; like within a graphical user interface such as gnome; this descriptor file would give the gui enough information to automatically generate a useable tho poorly optimized graphical interface. on the same note; this descriptor could be used to produce a text-based interface on the fly equivalent to a console mode; as well as future interfaces such as voice. Obviously; these unoptimized interfaces won't cut it in most cases so the application designers can write a optimized gui; or voice interface or optimized console. Regardless, this model is incapable of accomodating every sort of application; but it would give all programs a better capability to adapt to better or worse "interfaces" as well as future computing platforms while still offering the full featured gui systems we are used to today. Surely Photoshop (or gimp; don't lynch me) won't lend well to a voice or text interface; but building with a file describing the api as a standard feature can't hurt... and really if you want to type in "draw type=spraypaint weight=102 position=123,345 color=39ff93" why not let them?

  307. Re:two words... by genki · · Score: 1
    Ok - you're trying to do configuration tasks. Advanced ones, at that. The speakers problem - did sndconfig play its stuff properly? Or did it bomb with an error? If it didn't, try a 'killall esd', and then select the OSS output plugin in xmms. Also play with gmix to make sure your volume is turned up.

    I'm no fan of Bill Gates or Windows. And Windows isn't always a piece of cake to install. But do you really think the people who can't install Windows would be able to handle the average Linux distro? Puh-lease!

    Nope - the point is that they're all too hard, but so is windos. And RedHat's installer is about 2x easier than Windos's, and others are even better than that.

    ---------------------------------

    --

    ---------------------------------
    Visit
  308. Re:two words... by genki · · Score: 1

    The Linux distro. Better yet, BeOS. But, I've seen people who had to re-install Windos. They couldn't even figure out how to switch out of VGA mode! The windos setup procedure is absolutely horrible, and the drivers are even worse. The only reason people use it is because it comes pre-installed.

    ---------------------------------

    --

    ---------------------------------
    Visit
  309. UI by genki · · Score: 1
    First post that espouses BeOS as the UI solution!

    Ok, now that I've done that, I'll have to put in my two bits for enlightenment, as a geek. It's customizeable, and efm looks very promising in terms of a desktop shell. I don't use GNOME/KDE/etc simply because I can't stand the way they lock you in to one UI metaphor. They look the same, no matter what you do to them, in terms of the interface.

    ---------------------------------

    --

    ---------------------------------
    Visit
  310. Re:two words... by genki · · Score: 1

    I meant an absolute newbie. You can do it, sure, but you could do it for Linux too. Try to get your father/mother/grandfather/grandmother to reinstall windows. Then watch as they pitifully use their computer in 640x480x16 colors because they don't know how to change it back...

    ---------------------------------

    --

    ---------------------------------
    Visit
  311. Re:better GUI? by Mojojojo+Monkey+Inc. · · Score: 1

    I want to know how full my partions are?

    bash = df (disk free)


    How obvious is this to a new user though? A new user (in windows, as an example) can open "My Computer" and just click on each drive to see that "dorky pie graph."
    This can be done without reading any manuals at all, just a little experimentation in most cases. How long did it take you to memorize the plethora of Unix or Dos commands?
    Dos/Unix may be nice to use, once you're familiar with the commands, but unless you have the time to read through a nice thick manual you're not going to be able to figure out jack shit on your own.

  312. Re:Choice of interface by Shoikana · · Score: 1

    Wow a choice of interface would just be too cool. Imagine for instance all the blind users that could just, at the touch of a button, have all the functionality of windows on a command line! Unfortunately, another factor is fear. I suspect it doesn't matter how easy I make a procedure for my mom, she's still going to think she can't do it without me because she's afraid of her computer.

  313. a problem by Spud+the+Ninja · · Score: 1

    What makes an interface usable for, say, your mom is not what makes it usable for you. In fact, idiot-proofing tends to infuriate power users by making it a pain in the ass to have the system behave how they'd like.

    Teething is definitely an issue that is tough to resolve. I never did see it, but isn't that what MS Bob tried to resolve? Since I don't think you can buy it any more, I'm guessing it failed.

    So, ideally, you need a UI that can make the experience user happy, but will accomodate a beginner too. Perhaps there is no such thing.

    --
    You can never put too much water in a nuclear reactor.
  314. Nice interface..... by hdcool · · Score: 1

    It should be nice, fresh, fast, "new" Something like WindowMaker or BeOs itself. Wouldn't it be a great idea if there was a windowmanager for linux like BeOs (Or is there already one? ) Also, I think the "change" from text to graphical should be more fluent. Not so boring gray and then a nice desktop. ( BTW this was for linux )

  315. Oh boy! by el_mex · · Score: 1
    You've really asked a good question!

    In all seriousness, go join the ACM (www.acm.org). They put out an issue of Communications of the ACM that addresses all your questions and more.

    To partially answer your question: What's necessary? A command prompt. What is required for good interaction? at least a GUI. What are the faults in the current interfaces? Please go check the back issues of Communications of the ACM, they printed a lot of stuff about this before.

  316. Re:GET REAL! by jaga~ · · Score: 1

    I thought this article was about the GUI, not the good and bad of different OS's installations, and how long it takes. lets talk about the interface, ie ON TOPIC? moderators?

    --

    "This is where god would go if he wanted to get off blow!"
  317. Re:My Mother by Atticka · · Score: 1
    agreed

    my dad took a basic "howto" class and learnt how to navigate windows, he was in my pr0n in no time at all, even when they were hidden! (and who said you cant teach old dogs new tricks!). I think the Windows line of OS's is fairly intuitive, you have a "START" button with all your options, select one and you either get more options or the program you want to use, simple to me. whether or not the program is easy to use is a another issue, I find MSoffice convoluted and not intuitive at all.

    Atticka

    --
    No sig here...
  318. What do you want your GUI to do? by Jetson · · Score: 1
    Part of the confusion over "what do you need in a GUI" is due to the unstated question of "what do you want the GUI to do?"

    Some people are talking about vitualizing the desktop. That's great if you are using the GUI to emulate a desktop, but useless in a single-task computer such as an ATM. Other people are talking about extensible functionality, which is great for programs that use plug-in technology but useless on a monolithic application. Some people think that consistency between applications is the holy grail, while others think it's minimizing mouse travel or allowing experts to define hot-keys.

    At a very basic level, a GUI needs to enable a user to perform a defined set of tasks with as little diversion of attention as possible. The perfect GUI should be mentally invisible to the user. How this is done will vary from user to user, task to task, and computer to computer. Standardization makes learning easier but may end up making the interface harder to use. Do you want a GUI that is consistently difficult to use?

    At risk of seeming contradictory, I'll point out that sometimes the key to an effective GUI is to make things more difficult for the user! For example, the proposed GUI for a system I am testing had a number of buttons that were placed together on a menu bar because they act on the same data and the designers figured putting them together would make learning the system much easier. They neglected the fact that the consequence of choosing the wrong button was very high and their adjacent locations made that selection error an unacceptably high risk. In the end, a recommendation was made to "denormalize" the GUI so that human error would be less likely.

  319. Re:Disgruntled Help Desk Tech by Raveness · · Score: 1

    Which is a good reason the cats need to go...

    Microsoft makes Outlook and Access and Windows, but yet it keeps crashing it's own OS constantly! So that theory doesn't work either. But if you're going to build an OS, then strive to make it flexable enough to make it stand up to stupid programmers as well as stupid users.

    *disclamer* I know little to no programming and I don't pretend to know either. *end disclaimer*

    --
    ~Raveness "I never let schooling interfere with my education." -Mark Twain
  320. Too much whining! by Golias · · Score: 1
    Let's be honest here. Even the worst UI choices available *cough*Windows*cough* are pretty damned good. Learning to use a computer effectively takes less time than it takes to learn how to drive a car safely, and driving is a much simpler task (Speed up, slow down, back up, change gears, turn, don't hit anything) than setting up a new ISP connection and exchanging e-mail.

    If you really want to improve the user interface, let's talk about improving the actual physical interface between man and machine. The QWERTY keyboard is clumsy, hard to learn, and has injured more than a few of my friends, but so far nobody has managed to get a good replacement thought-to-text vehicle to catch on. Voice-only is not the answer, because we don't talk nearly as fast as we think. Personally, I am hoping that biofeedback labs find a way for us to train ourselves to type with our minds.

    It is not as far-fetched as you may think. When we are new-born infants, we learn how to wiggle our feet by watching our hands as our brain tries various electrical impulses. When we stumble on the right "command" for "bend left knee" a few times, our brain remembers it and we can do it without conscious thought. Stroke victims often need to go through the same training over again to route around damaged nerves pathways.

    With a good monitoring device (perhaps not an implant... a simple tape-on job over the back of the neck might do the trick), connected to a text screen that offers meaningful feedback, it seems like it should just be a matter of time and effort for the average person to control a text editor as they would an appendage of their own body.

    IANACE (I am not a cybernetics engineer), but I find it easy to belive that something like this could happen in our lifetimes. I suspect that it is more likely to come from an overzealous hacker in a garage with $5k startup from selling his/her car than from the Silicon Valley research labs... but that might just be the romantic idealist in me talking. Any thoughts, gang?

    --

    Information wants to be anthropomorphized.

  321. Re:Easy question by G+Neric · · Score: 1
    Intuitive - no learning curve

    this statement contains two errors:

    you meant to say "obvious". Intuitive in a UI means that things that you learn are generally applicable, like the same paste key always pastes, not just sometimes. But, you still have to learn which one it is.

    Second, learning curves measure learning correlated to experience. So, no learning curve would mean no learning: the interface would remain as difficult to use the Nth time as it was the first. You could make the case that if an interface were completely obvious, that this is how it would operate :) but I'm pretty sure that's not what you meant. Steep learning curves are good ones.

  322. GUI - What does it need? by zTTTz · · Score: 1

    When building a GUI, you need to accomodate EVERYONE. What does this mean?
    Keyboard Savy people can use it.
    Click freaks can use it.
    Accessiblity-requiring ppl can use it.
    Grandma can change the wallpaper.
    Grandma can move the taskbar.
    The whole kitten caboodle. Everyone needs to be able to use it in any way they are used to Ctrl+D, Click Delete, Hit the Delete button all do the same thing.

  323. User Interface Musings by Devolver42 · · Score: 1
    The largest problem with current user interfaces is that they are stuck firmly with the WIMP or S&M (scripting and macros) paradigms. The next step forward in interface design will happen when an appropriate successor to the WIMP is developed.What will an appropriate successor need to have? My thoughts....
    • It will have to have an interface simple enough so that any user can manipulate the input in some fashion.
    • It will have to be able to be scripted and modified to provide options for the power user / hacker communities.
    • It will have to provide a vital function that makes it superior or at least equal to the standard WIMP and S&M interfaces.
    I personally feel that laser pointing devices, eye recognition, and a focus on document production are interesting avenues to be looked at.
    --

    Devolver's Homepage... more fun than a box of crackerjacks.
  324. Here's how it is, dammit by Wolfgang+Anonymous · · Score: 1
    Never steal my window focus. Just don't.

    Have one standard help system. Forgiveness can be given during transitions, i.e. .hlp or man to http-based, but do not invent a fancy new help system for every application.

    Have different icons for minimized apps and for starting apps. (Not much of a problem anymore.)

    Have a centralized application for configuration. Control Panel/s, etc.

    Use symbols/metaphors that make sense. Say for a mouse configuration tool's icon: A mouse is called a mouse because (if you squint really hard) it somewhat resembles a rodent. The connection may not be clear between a ponting tool and icon with a fuzzy rodent on it.

    --
    I'll call a fig newton a cookie if I want to
  325. User error by DoubleEdd · · Score: 1
    A critical factor is tolerance of user errors. Look at it this way:

    A simple command line interface is very likely to throw something back in your face if you make a speling mistake. If you have command-line-completion and spell-checking things get a whole lot easier, there are fewer keys to press wrong.

    A GUI makes things even easier - you just point at the right icons. In this respect being able to see what you are doing as you are doing it may make it better than a voice interface. How many times have you made a verbal slip-up in conversation today? And how many times did you pick the wrong icon in comparison?

  326. A Good UI! by +Majere+ · · Score: 1

    A Good UI Must have these things:

    1 - Simplecity, It has to be easy to use. I don't want to read a 200 page manual, or try to figure out what 1 of 200 buttons and menus do!

    2 - Customizable, I wanna be able to have the functions I use most right up front, in a menu, button, macro or something.

    3 - A Good help system... I never read manuals, why bother hehehehe

    These are the things I look for in a UI, but they are common sense.

    -= Majere =-

  327. One thing I would like to see by the_other_one · · Score: 1

    Is formatted text entry. Are there any old XBase programmers
    who remember picture clauses. Both GTKEntry and java's JTextfield are simple text entry devices
    If one want't to do formatted input (i.e. force upper case, currency, brackets arount negative numbers ...)
    One usually has to do some heroic hack.
    It would be usefull to define some standard formatting specification
    that once implemented would result in a common experience for text entry

    --
    134340: I am not a number. I am a free planet!
  328. instant gratification vs. long term efficiency by Nidhog · · Score: 1
    An Interface that one's non-techie mom can use is often not any good for real power computing. Software that has just a few big buttons to do the common tasks with is easy to figure out, but as soon as you want to do anything uncommon, or interesting, there's not a tool in sight.

    Pretty interfaces often are not ideal either. Having rows and rows of hieroglyphic icons in a program looks nice, but is rather counterintuitive. My Favorite UIs are those with a lot of text buttons, like newteks Amiga-style designs. Lightwave 3d has my favorite interface of any program.

    There is no perfect interface. everyone has different preferences. The Ideal solution as I see it is to start with a strong and well tested interface, and allow a huge degree of cutomization. It's not always easy to code, but imho is worth it to allow users complete control of look and feel.

  329. The State of UI's by Flatlander · · Score: 1

    It would seem that with Windows 2000, MS has come a lot closer to making the thing work right. I've been using it since the first beta for intensive database work with not a glitch. However, after years of suckling from the MS teet, I've come to the conclusion they will never drive forward fast enough to re-revolutionize the UI the way science fiction demands. They are far too consumed with following market trend now that they are not the only game in town... ala the recent and dramatic shift to software as service via web delivery. Indeed the days of FPP are numbered... The Console model makes a good start at a generic snap-in driven architecture, but they've a long way to go before this is a crowd pleaser. Besides, it's Yet-Another nomenclature for the kids to learn... we can put a man in space, but we can't settle (even 50%) on a diction and object model that will carry us for a few years, let alone the next decade. I find most folks fall into three categories these days... 1)Power Hungry Cammand Liners 2)Patient Mac-heads 3)Reluctant Windows Junkies (speaking from experience on the latter). The original comment about voice recognition is spot on. I won't be happy till I'm having a near-intelligent conversation with my house... at high bandwidth to boot. Perhaps before we revel in flight, though, we might first expect an intermediary step with the integration of voice recog with flat-panel touch screen technology sitting on top of a highly definable Windows-esque OS.(Yes, I enjoy Star Trek) Until then, I continue to point... and click. Business at the speed of my Grandma. Flatlander Ex-Microsoft DBA and Project Manager Australia

  330. Let's take a step back..... by daemonenwind · · Score: 1
    We're forgetting one of the most important parts of a good user interface - the hardware device used. Just think about handing a mouse to someone who's only ever worked on mainframe terminals for the past 20 years. "You mean I have to use thingy X to make thingy Y point at something? I have trouble lighting a cigarette!"

    The reason Palm OS (a very nice UI) works so well is that it uses things we've all done since we were 6. That is,
    1. Take a stick and point at what we want.
    2. Write notes on a small piece of paper.

    Want a good UI? Work with what people already know and trust. It may sound a bit odd, but when you want ease of interface, go for a touchscreen. "Drag and drop" and "Open/Run", the two most common operations, become simple, even for Grandma. Because it makes sense. I want that, so point at it. The mouse just makes it complicated. If you want advanced options, drag the icon to a special place, like on the Launcher III for Palm.

    And, for advanced users, have an icon that reads 'advanced' and let the options unite under menus! Grandma will be too scared of the A-word to touch it!

  331. UI Design vs. Programming by Lone+Eagle · · Score: 1

    Unfortunately most UIs are done by programmers, not UI Designers. Design of Everyday Things is a great book to understand what User Interface Design is about. One of the most basic concepts is "affordance." A door handle "affords" itself to be pulled, while a push plate "affords" to be pushed. An to echo what others have said, consistency. This the Mac OS has done very well. Consistency helps the user learn the "language" of the interface. It is impossible to create an interface with no learning curve, but it should be very small.

  332. Re:One feature is necesary by gwait · · Score: 1

    Yes! - scripting, and as a learning aid create a logging history in the same script language for both. Oh, and use an available language - why reinvent the wheel?

    One size does not fit all either. It really annoys me that people are asking for a standard UI now. I think we could use another 20 years in experimentation, and I still think one size won't fit all.

    Here's my rant which I emailed to TOG years ago in a similar debate - why on earth do you put the floppy disk icon in the Trash to eject on a Mac? And why those numeric error messages that Mac's (used to?) give out when things went bad?

    Whilst I'm at it, yes a GUI is great for a lot of tasks like word processing, or painting, but not for other tasks. I run electronics engineering software as part of my work (schematic tools etc). The gui is fine for drawing, but when it comes time to process the design, I have to mouse click thru a bunch of menus, and memorize the steps I use to make sure I don't forget the steps every time. If there was a history script window running, I could save the steps and call the script later.

    Also, a command line interface is more what we'll need for voice command. If we go too far down the gui path, you end up using voice commands to manipulate a mouse on screen. Which is more like you want for voice command?

    Move mouse up Pull down edit menu Select search enter text in search box "chapter 3" execute search

    or

    Jump ahead to chapter 3 please

    My two bits for one day.
    --
    Bavarian Purity Law of Rice Krispie Squares: Rice Krispies, Marshmallows, Butter, Vanilla.
  333. What's important in a UI? by Scott_Marks · · Score: 1

    Mostly that it is "consistent." That means, "it doesn't surprise me by not doing what I think it ought to, or by doing something I don't want it to." The interesting fact is, users get used to almost any kind of trash, so long as it doesn't startle them. I think that means some kind of contract on the part of the UI designer. One bit of the MS world worth preserving is COM (the original concept, not the COM+ metastatis), where interfaces are (1) simple, i.e. networkable and (2) immutable. An underemphasized part of a COM Interface is the "contract" part: what the interface needs and guarantees. That can't change, either! I think most users would rejoice if Version N+1 of MegaWidget just gave them the option of using the Version N UI they have managed to internalize. Of course, the Keep It Simple part is important, too. Running your UI past 3-5 uninitiated users should make that prescription pretty clear.

    --

    ... an idea, the fugitive fermentation of an individual brain ... -- T. Jefferson

  334. cold, bland uniformity and lots of it! by krinje · · Score: 1
    Gnome vs. KDE vs. Motif vs. MS vs. MacOS vs. ...

    Where does it end? I think what's important is that UI's offer a consistent feel on the platform they're written for. X apps in Linux are already doomed because that platform looks inherently inconsistent to begin with.

    The new trend in apps (like Mozilla / Netscape 6, StarOffice, Corel Office (for Linux and to some extent, Windows) to provide their own UI layer, or worse, a user-customizeable look and feel go against the whole notion of having an operating system provide that goodness for you. Microsoft is no exception because they keep reinventing their UI with every iteration of Office and their cursed MFCs.

    What is truly needed is consistency. Some form of standardized input protocols might be even more useful than a new UI look and feel.

    --
    "He treats objects like women, man!"
    - The Dude, The Big Lebowski
  335. Re:Mac OS corrections - Mac has it right. by borkus · · Score: 1
    My top two GUI's would be the mac and Palm OS. For the typical computer use, the complexity of the operating system is not interesting. The stability and power of the operating system is only relevent to them in how it doesn't get in the way of their work. While the MacIntosh OS "dumbs down" the user's experience of the computer, it allows a user to quickly get to his applications without having to adapt much to the operating system. I find GUI design has a lot to learn from industrial design. GUI's are designed to be functional, the same way that the interior of a car or the controls on a microwave are functional. An interesting analogy is to the automobile. On early automobiles, you had to work very closely with the limitations of the automobile. You used a crank to start it, you had to turn the wheels using your own strength, and you had to change gears to maintain the optimal RPM's for your speed. Now, an electric motor starts the engine, power steering turns the wheels and an automatic transmission keeps the gears set. While all of these involve technological changes, they seperate the driver from the inner workings of the car, allowing the driver to focus more on his central task - getting from Point A to Point B quickly and safely. Even today, while cars with manual transmissions are cheaper and generally get better mileage, the vast majority of cars sold are automatics. I know many people who can't even drive a manual transmission. In fact, there is a surprising number of people who don't know much about how their car works. They're not necessarily dumb; for the last 150 years people had to use technology they don't understand and can't fix themselves. This started with people who rode the first trains and farmers who used the first combine harvesters to people today buying their first computer. The big divide in computer users is between people who know how a computer works versus those who know how to use the applications they need to use. While not frequent posters on slashdot.org, the later is the majority of people who sit in front of a desktop computer. Open source GUI's have a good chance of making it if they can do three things -
    • Leverage the stability of Linux and open source applications to provide the user a more consistent and bug-free experience
    • Colaborate to develop sensible standards for GUI's.
    • Use tools like TCL/TK, GNOME, and PYTHON to create a user environment that is simple, customizable and free of MS's "wizard" stupidity

    Damn, and I almost made it all the way without slamming Microsoft. I guess I just can't help myself.

  336. Re:two words... by Anonymous Coward · · Score: 2

    Now you might have a point on "speed", but Microsoft has failed at simplicity? Hah. You tell me which is easier to set up, Microsoft Windows 98 or any distro of linux.

    And when I say "set up" I mean drivers and everything working properly.

  337. Scripting isn't just for power users by Ian+Bicking · · Score: 2
    While scripting arguably makes life easier for power users, it is pretty much useless for novice users. Shells, emacs and vi are nice if you already know what you're doing.
    I haven't scripted in the GIMP yet, but I've used other peoples' scripts with much success and enjoyment. Anyone can, no matter how uneducated or uninterested in scripting and programming.

    It's a matter of making it easy to extend a program. When it's easy to share those extensions, you make the program better and easier and allow it to evolve.
    --

  338. Re:Choice of interface by Danse · · Score: 2

    I think what is needed goes well beyond simple "themes." Entirely different kinds of interfaces should be possible. Simlar to switching from the GUI to the CLI on a Unix/Linux system. Each of these UIs may be themeable in some way or to some extent as well.

    I don't think switching UIs is too advanced of a concept for people to grasp. Its like using a different tool for a task. If they are presented with an option, they will have the ability to decide which interface they like. As long as it is easy to switch between the different interfaces, there shouldn't be any real confusion. It will probably increase the complexity of support, but that can be dealt with. It's just another fork to take when the helpdesk people try to figure out what to do about your problem/question.

    --
    It's not enough to bash in heads, you've got to bash in minds. - Captain Hammer
  339. Ah yes, Microsoft FUD by Danse · · Score: 2

    Different window manager are one of the weak points of unices, which is very much different from the lies you are trying to spread.

    How is having options a weakness? People are free to use the wm that makes sense to them. There are some that look nearly exactly like Windows and use all the same terminology and metaphors. There are others that are very different and satisfy different types of users. There is no weakness in having options available. If I'm an OEM, then I'll use the wm that I think my users want. If they don't know what they want, then I'll ask them what OS they have experience with and I'll give them the wm that most closely matches that OS. If they have no experience, then maybe I'll give them the wm that is easiest to learn, or that is the most like Windows if Windows is still the dominant OS. The fact that there are options is not a weakness, it's one of the things that makes Linux better.

    --
    It's not enough to bash in heads, you've got to bash in minds. - Captain Hammer
    1. Re:Ah yes, Microsoft FUD by Danse · · Score: 2

      Oops, I meant to say one of its weakness when it comes to UNIX becoming mainstream as a desktop standard.

      Even as far as becoming a mainstream standard, multiple window manager options is still not a weakness. Perhaps a lack of a consistent default interface could be considered a weakness (and is considered one by many), but having options available is never a weakness for an OS. I, personally, don't think that a lack of an official WM for Linux is a weakness. OEMs will figure out what their customers want and give it to them. If they want a wm that looks like Windows, then that's what they'll get. If they want something else, they can have that too. If the customer is a company and doesn't want multiple window managers on their machines, then the OEM will just make sure that only the wm that the customer selected is loaded. It really makes sense to handle things this way. It gives OEMs the maximum flexibility to serve their customers and to differentiate themselves, while at the same time, it gives customers a choice in how they will use their computers.

      If it's done right, you could easily switch from that baffling UI to one that you understand and can use.

      --
      It's not enough to bash in heads, you've got to bash in minds. - Captain Hammer
  340. UI Aspirations Limited by Linux? by SoupIsGood+Food · · Score: 2

    The main problems with the modern interface is that it is tied to closely with the decrepit old computing paradigm that runs just about everything: the dichotomomy that separates applications from OS, and OS from the user environment.

    Linux isn't likely to help much, because as a Unix derivative, it is a programmer-centric system that clearly delineates individual exectuables from the rest of the system. Great for folks who know and love programming, especially C and Perl, lousy for people trying to interact with data in a logical, consistent and sophisticated manner.

    The largest enemy of a good interface are proprietary data formats. It requires you to operate an application rather than edit data. Tools are tools, and should be applicable to any given set of data depending on what you want to do with it. The single largest obstacle to effectively managing data from a user-centric perspective is modality. You are in a text editing mode...save, quit, open up gimp, import the text and now you are in a graphics editing mode, so you can flow the text into a pretty png. If you screw up, begin all over again. In an ideal interface, the user could not distinguish between an application, like gimp, and a set of tools available to her regardless of what else she's doing with the system.

    An ideal interface can recognize what data is, and offer you the proper tools to work with it. Here's an example from the mac: highlight http://slashdot.org. You can drag the highlighted text to the desktop, where it becomes a URL icon. You can change the name of the URL file you just created: call it "News For Nerds". Double click on it, and the browser of your choice opens up and takes you to slashdot. Drag the icon into a text editing window, and it pastes in http://slashdot.org wherever the cursor is. The Mac groks data and how it's used. So should any modern OS: a dot-three extension is a sad and sorry substitute: like nailing two sheets of plywood to the top of your car and calling it a Concorde jet. Linux, and other Unices, don't implement this, because they assume that anything that isn't an executable is text. They can't grok data, and rely on the user or an application to tell them what to do in all instances.

    I don't know if we can fix this in Linux without a deep and honest appraisal of the limitations inherent to Unix-like systems. Perhaps the best we can hope for is a poor copy of the Windows GUI, considering the tools we have to work with.

    SoupIsGood Food

  341. Familiarity is all by Sludge · · Score: 2

    One of the most misused definitions when speaking about GUIs is 'easy to use'. There are two separate directions for a good, heathly UI to go in: Either it can be easy to learn, which usually incorporates large images on icons, lots of help files, massive amounts of mouse usage and a stripping of most functionality, or you can have TRUE easy to use, which assumes only that the user is willing to memorize many commands, is lightweight on screen real estate when it comes to help, and just basically has a lot more features.
    Case in point: Emacs. Certainly harder to use than Wordpad, Word, or Notepad. Is it more efficient? (Minus formatting.) Hell, yes. Once you've put the time in to learn something like emacs, you can very simply open another window, display two buffers on the new window, open a file on the second one and switch to it: cx-5-2, cx-2, cx-o, cx-bn .

    I, personally think it's a shame that EVERYONE is aiming for easy to learn. Once you've learned a program, you're stuck with the interface you learned it on. Why not become familiar with something efficient?

  342. Two words: Brenda Laurel by spun · · Score: 2

    Anyone interested in interface design should read "Computers as Theater" and "The Art of Human-Computer Interface Design" by Brenda Laurel, VR pioneer and creator of Blue Moon Software, a company that designed computer games for girls until it was bought out and closed down :-(. "Computers as Theater" is especially thought provoking, as it explores the idea of interface by applying the concepts of Aristotelian Poetics. Basically, Brenda throws out the book on interface design and starts over from first principles. Rather than focusing on the interface itself, she draws parallels between human interaction with computers and the formal philosophy of drama as explained by Aristotle. This may not be an obvious parallel, but it makes perfect sense after reading her book. I have just finished reading the book, and feel I will probably have to reread it several times to really comprehend all she has to say, as her ideas are very different from the common thought on the subject. A human computer interaction is a collaboration between a human and various "agents" that perform actions based on the human's requests. These are the actors in the drama. It has a plot with a beginning, middle and end (which is hopefully the successful, and even more importantly in Mrs. Laurels world-view, enjoyable creation of a finished product.) It has dialogue and dramatic tension. Mrs. Laurel postulates that focusing on these aspects rather than the mechanics of the program and it's interface will ultimately lead to software that is more enjoyable and easier to use. I really haven't done her ideas justice here. As I said, I have just finished reading her book, "Computers as Theater" and am still digesting the dense load of new ideas presented therein. All I can really say is, buy the book, and keep reading it until you understand it, and you will design better interfaces, by ceasing to think of them as interfaces and beginning to think of them as dialogues between active agents within a virtual world.

    --
    - None can love freedom heartily, but good men; the rest love not freedom, but license. -- John Milton
  343. Re:Easy question by Rob+Parkhill · · Score: 2

    Actually, a good UI must first complete the task it was designed to do.

    A UI for those FedEx package tacking/customer signature tablets is completely different from the UI for a Boeing 777 Jumbo Jet. Yet both are interfaces to computer systems.

    I can't imagine that computers as we know them today will be around much longer than another 20 years or so. Sure, there will probably always be a need for the developers and hackers to get right into a system and program it, but for the average user, the computer needs to become more of an assistant than a tool.

    The term 'Intelligent Agent' has really been watered down in the past few years, but I still see that as the way UIs are going to go. The intelligence of the system is going to be far more important then wether you use a keyborad, mouse, voice recognition or telepathy to communicate with the system.

    Most developers and hackers today don't delve into dip switches and machine code anymore, but they sure did 25 year ago. 25 year from now a developer or hacker might not ever touch a keyboard. Who knows? It's fun to speculate, but until it happens, no-one knows what it's going to be like.

    As for how a general-purpose PC interface could be improved upon today, well, my bets are on MacOS X as being pretty much the best thing since NeXTstep 2.1 :-) Sure, it's not going to be perfect, but it's going to be a lot better than everything else currently available.

    --
    "Tomorrow's forecast: a few sprinkles of genius with a chance of doom!" - Stewie Griffin
  344. Re:Easy question by Malc · · Score: 2

    "Be physically easy to use (single key-strokes and mouse use - you shouldn't have to let go of the mouse to use the keyboard for the basic UI) "

    But at the same time, you should be able to use it without the mouse.

    The mouse causes me the most pain in my arm and hand; mice seem to miss-behave more than keyboards, and mice are a lot slower for most tasks than keyboards. On top of that, other people do crazy things with their mouse settings (more frequently than re-mapping keyboards), such as switching buttons, making single-clicks act double-clicks, changing the acceleration, etc.

  345. Re:You've got it backwards by Malc · · Score: 2

    "2) A lot of people who take more than 5 minutes to think about UI's will respond with "but my grandmother doesn't need to run pipes and greps and stuff". OK, but that's not an argument for a simple (minded?) Linux UI--it's an argument for your grandmother to use a different OS."

    So I guess you want to limit your potential marketshare. I can't see companies like Red Hat listening to you - they will continue to try and push the Linux GUIs in the opposite direction to the one you want.

  346. Re:Key Combinations..... by Malc · · Score: 2

    This is of course one place where MS Windows beats Linux hands-down at them moment. I hate X because it forces me to keep grabbing the mouse.

  347. Re:One feature is necesary by i,+Mac · · Score: 2

    A GUI on top.
    A CLI for power users.
    Open formats (XML, Java, Apache, TCP/IP, etc) underneath it all.... heck, even Open Source?

    Sounds like Apple's plan for Mac OS X.

    Are we beginning to get the idea that perhaps Apple does Get It?

    Apple's long history of GUI development has given them a unique perspective on the new computer user. After all, they wanted to develop computers "For the Rest of Us.." and some of the features of the Mac OS that frustrate power users are exactly the features that enable newbies.

    Apple may just be the one company capable of making *NIX palatable to the masses. Eazel may improve the top level of Linux with their work, but as someone noted above, consistency is a major problem with Linux (look at all the config formats, at the distribution layouts, ...) and, though it's getting better, documentation is a problem as well.

    I hope Apple can pull it off, I really do. A successful Mac OS X will in one stroke create an OS that is powerful enough for the most powerful user yet easy enough for the newbie, and do a great service at legitimizing bringing the core of one's business into Open Source with Darwin.

    :)

  348. The most important element in a GUI has to be... by VAXGeek · · Score: 2

    the dancing paperclip...
    ------------
    a funny comment: 1 karma
    an insightful comment: 1 karma
    a good old-fashioned flame: priceless

    --
    this sig limit is too small to put anything good h
  349. Re:multitasking... by Skavookie · · Score: 2

    Windows does the same thing: modal dialogs. Dialogs in general are, as my dad would say, "evil." They interrupt the user's flow of thought/work even if they are not modal. There are some rare cases where dialogs are the best solution (like when you're under tight time constraints) but most of the time there are better solutions.

  350. UI for Programmers -- online book by jwag · · Score: 2

    Here is an online book entitled "User Interface Design for Programmers" that gives an opinion on the question "What is Important in a User Interface?".

    --
    -- jwag
  351. UI doesn't necessarily mean GUI by drig · · Score: 2

    One thing I've heard often that I simply have to disagree with is that the command line is not a user interface. Granted, it may be more difficult than a GUI, but the Unix prompt does present one of the best command line interfaces made.

    GNU utilities are extremely consistent. For instance, if you want help on something, type in command --help or command -h. Almost every command line option has two forms, long and short. Someone who learns how to use a basic GNU setup can easily switch to almost any new GNU program. Consistent and well designed, despite the lack of a GUI.

    Also, this idea that GNOME and KDE are Windows wannabes. Windows isn't the beginning and ending in GUIs. Windows looks like Macintosh. Mac looks like the Xerox Star. They all use WIMP (Windows Icons Menus Pointers) so they all kinda look alike. The concept is public domain. But, GNOME at least (I don't really use KDE so I can't talk about it) goes beyond Windows in a number of fashions. Better theming, better adherence to Fitt's Law, all of the panel applets, use of XML for application configuration (as compared to the nasty registry), a cross-platform, network aware component system, etc. Sure, the aim is similar and the methods of attack are similar, but GNOME is designed by the users of the system, as compared to Window's method of "take what we give you".

    -Dave

    --
    Citizens Against Plate Tectonics
  352. Re:One feature is necesary by Zagadka · · Score: 2

    I think you're completely missing the point here. While scripting arguably makes life easier for power users, it is pretty much useless for novice users. Shells, emacs and vi are nice if you already know what you're doing. Sit a computer newbie down at a login: prompt and give them the task of writing an email to their buddy in Australia, and you'll see (or not) just how necessary scripting is for a good user interface. I'd argue that one of the most basic needs for a good good user interface is for a user to immediately be able to identify the first step they need to take to perform a desired task.

    Actually, I think you're missing the point. Experts are users too. For experts, a user interface should probably include scripting. Even newbies eventually get to the point where they would like to automate some tasks. The "Startup folder" idea is an extremely simplified type of automation.

    And your assertion that "one of the most basic needs for a good good user interface is for a user to immediately be able to identify the first step they need to take to perform a desired task" doesn't always hold true. Compare Notepad to vi. Notepad meets your criteria. Does it have a better UI though? You'll probably argue that it does, but many will argue that it doesn't. The thing is, the better UI depends on the person. If you edit a text file once every couple of weeks, notepad is probably great. It gets the job done, and you can figure out where stuff is. But if you edit text files all day long every day, vi is probably better. Sure, it's got a steep learning curve, but it's worth it for those that need to edit text a lot.

    It really comes down to whether you need a basic "I just need to do this simple job" UI, or an industrial strength UI. You simply can't make a simple UI for certain tasks, because these tasks are inherently complex. An F16 has a more complicated UI than a VW beetle, and for good reason. It does a lot more.

    Of course, in the world of software, we're not restricted to static fixed UI's. Some programs are starting to offer both an easy UI and a powerful but complex UI in the same package. VIM is one example. The graphical version of VIM has menus and supports "point-and-click" operation. While in insert mode, it behaves quite a bit like an improved Notepad. But it's still got all of the normal vi features (and then some...). You can make mappings, and write scripts to do common tasks. You can even get it to behave almost identical to the original "plain ol' vi" if you like. The one big problem with VIM for newbies is that it starts up in "normal" mode (aka command mode, or "beep" mode).

  353. a big "click here to begin" arrow by ch-chuck · · Score: 2

    that swishes across the bottom evertime you startup, even if you've been using it for 4 years. Oh and an awesome Brian Eno ambience wooshing sound every time you start up.
    Um, screensavers, cool wallpaper, CD player - Uh, I guess that's it!

    --
    try { do() || do_not(); } catch (JediException err) { yoda(err); }
  354. I agree completely with your agreement by ch-chuck · · Score: 2

    with the original post - computer's are both relentless logical and complete arbitrary. However arcane it appears at first, people willing to learn a little pick up on LiSt (ls) and conCATenate (cat) - unix and c really do grow and mature well. There is, however, complete freedom to alias commands to anything you want, from dir to zous for 'ls'. I think the major cause of Msft 'blotoware' is the fact that they are pandering to contradictory demands of illogical users, i.e., trying to please everyone - it has to be 'easy to use' for beginners, which it pretty much fulfills, and 'powerful' for experts, which it could but tends to fall short, experts not being their primary target market. People want it to automatically correct spelling errors, but they don't want it to change foreign words in docs, blah blah etc etc.

    --
    try { do() || do_not(); } catch (JediException err) { yoda(err); }
  355. Re:One feature is necesary by Col.+Klink+(retired) · · Score: 2

    I think *you* missed the point. I don't think he was calling for the elimination of GUIs, just that the scripting must be there, *somewhere*, available for when a user gets over being a novice. If a User Interface completely lacks the ability to script, you'll be stuck using the GUI for even the most mundane repetitive tasks.

    Imagine, for example, if the only way to copy a file was via drag and drop. Even Windows isn't so stupid to restrict the user that way, but they put comparable restrictions around so much of their OS. They certainly don't make it easy to change things.

    --

    -- Don't Tase me, bro!

  356. What the interface needs... by Mr.+Flibble · · Score: 2

    I was teaching an introductory course for Linux and one thing surprised me. Two of the students were older and wanted to learn Linux. They were very computer literate, but due to their age they had trouble with the command line because they had trouble controling their fine motor movements. This meant that they often mystyped commands.

    After I noticed this, I went to help my mother who uses win 95, and I noticed the same thing. She is having trouble clicking on the proper icons, you hear the familar complaint "But I did not tell it to do that!" Which, before I noticed the motor control thing, used to make me angry because a computer just does not "go ahead and do things". You need to tell it to do something.

    The problem that the older generation (and non computer savvy people) are facing is that they cannot communicate with the interface, either because they cannot understand it, or because their fine motor skills are gone and they end up clicking on the wrong icon, or double-clicking when they are trying to single click.

    I still think that the interface of a computer needs a palm-style interface. It needs to be made really simple. I watch people wrestle with Windows Explorer all the time, but everyone I have handed my Palm to has understood the interface very quickly (my mother included).

    I think that double-clicking needs to go, and right on the desktop should be the following icons:
    INTERNET
    EMAIL
    WORD PROCESSOR
    GAMES
    SCANNER
    INTERNET CHAT

    Thats about all that the newbies need. They do NOT need a "AOL" "MSN" etc folder on their desktop that will never get clicked, and just consume precious desktop space. They need to be able to navigate their most used programs (see above list) in just seconds. Move mouse over icon - Click - Done.

    Now, you could argue that you could modify the interface, or that many interfaces currently DO this already. Well, Windows does not. Not right out of the box it doesn't, and due to antitrust rulings they CAN'T include some of the above.

    Sure, a computer guru can modify the interface for someone so that it conforms to the above... But note that someone else who knows how must do this for these people.

    So what an intuitive interface needs is NOT more buttons apps and "innovation". There is just too much "innovation" going on. Things need to be removed from the interface.

    As per voice control? A good idea, its not ready yet, but its a very very good idea.

    --
    Try to hack my 31337 firewall!
  357. Why computers are hard to use by Bongo · · Score: 2

    For an excellent rendition of the problems, see Thomas K. Landauer "The Trouble with Computers" ISBN 0-262-12186-7.

    "Computers are often used to do things that are irrelevant or detrimental to true productivity, such as purely share-shifting marketing or excess report generation.
    And when computer applications are intended to increase worker or process efficiency, they often don't help. ... managers have been so interested in short term market share that they have not devoted needed resources to making computers do better things.
    But also it has proved so much harder to make computers do serious work that they have been diverted to easier but more frivolous employment. ... Foremost [there is] a reliance on traditional design and engineering methods that are not sufficient for the development of tools fgor intellectual work."

    The author advocates a deep analysis of 'user centred design".

  358. Probably... by Graymalkin · · Score: 2

    the two most important things in a user interface are consistancy and quickness. This applies to both businesses and homes. In a corporate environment time is money, if you have to spend more time learning a new program or fiddling with something to make it work you're losing money. People at home also don't want to spend hours setting up and learning to use something. The most successful tools in the history of civilization are the tools that everyone can use. The first tools had a user interface (a rounded end for gripping) and a utlity side which performed a function, anyone with a moderate level of intelligence could figure out which end you were meant to hold as the converse end could cause pain if you held it. Computers ought to learn from the neanderthals. Interface goes beyond applications, it is also hardware and software installation.
    To me the perfect computer would be one that I could customize entirely for my needs and wants. Sure you 3l337 hax0rs think everyone who doesn't enjoy writing in assembler an idiot, some of us just have better things to do. A good UI offers the user anything they want in any form they want to see it in. Regardless of the internal plumbing a system should recognize all files as MIME types and are opened by modules that run inside the main interface, much like a web browser. The user shouldn't even have to know a plug-in (modules whatever) is being used, the file ought to just open for the user to view and/or edit it. Besides that a UI should be nearly infinitely customizable with several default settings for different types of users. This also means all programs should have ascii configuration files so they can be edited on the most raw of levels if you're interested in doing so. Large intuitive icons for new users and minimalist icons for people like me who want less overhead. As for the interface, all interfaces across all applications should be alike, if they can be themed thats great but they need to all work in the same fashion. This goes for visual apps and CLI ones, it is a waste of time to learn 20 different interfaces. If you want everything like pico you can have it so or everything like vi, as long as it's uniform. And that is that.

    --
    I'm a loner Dottie, a Rebel.
  359. Most important by Zico · · Score: 2

    Keyboard shortcuts to access all, or at least the vast majority of, functions. Along with this, the defaults should be pre-set to what people are most accustomed to, like the standard shortcuts for open, cut, paste, etc. A neat program will get an early boost from its wow factor, but to get people wanting to continue to use it, the power user needs to be able to get things done quickly and efficiently, not constantly reaching for the mouse.

    One of the reasons why Mozilla has seen so little testing on my computer is because of the long lack of keyboard shortcuts -- browsing a lot of sites just gets to be a pain, and a slow one. Speaking of which, Netscape deserves some boos for changing ctrl+O to ctrl+L for opening up a URL box, as well as for not implementing backspace/shift-backspace for going forward and back. You should be able to retrieve both local files and web urls from a single ctrl+O action. (Actually, I can't even get alt+-> or alt+<- to work on the Preview Release, but surely they'll at least change this by the actual release.)

    Cheers,
    ZicoKnows@hotmail.com

  360. vi is scriptable? by doom · · Score: 2

    Since when is vi scriptable? Is this some new
    feature in vim?

    1. Re:vi is scriptable? by doom · · Score: 2

      So vi has a keystroke recorder now, and the keys
      can be rebound. That's nice, and it sounds like
      an improvement [1], but it doesn't sound like
      a full scripting language to me.

      [1] One of my peeves about the vi/emacs wars is
      that for years if you told the vi guys about some
      cool emacs feature they'd respond "You don't
      need that!". Now that they've all switched to
      vim, they respond "We can do that now!"... but
      I thought you didn't *need* to gang?

      Typically you do an "ESC $" in emacs to run the
      spell checker.

  361. Re:One feature is necesary by doom · · Score: 2

    Here's a thought: anyone out there remember
    Wordstar? In many ways it was a traditional
    program using lots of odd keystroke commands to
    get things done. You could do a lot with it
    (for a program on an 8bit CPM machine with
    preciously little memory or disk to speak of).
    The keystrokes certainly weren't "intuitive"
    right off the bat, but they did their best to
    make it easy for new users to pick up on them
    by *putting the cheat sheet on the screen*.
    The program was configurable with "beginner" and
    "expert" modes, and in the "beginner"'s mode
    half of the screen (14 lines that is) was
    taken up with a description of common keyboard
    commands. A very slick touch was that this
    menu was context sensitive. For example the
    "Block" commands (used to do stuff like cut and
    paste text) were all two keystroke commands
    beginning with Control-K. When you did the
    first Control-K, the menu would change
    immediately to show all of the Block commands.

    There were other things that were cool
    about Wordstar's command set, as well...
    for example, the cursor controls were an
    embedded "star" pattern (C-s, C-d for forward
    and back, C-e, C-x for up and down), with
    other motion keys logically grouped around
    the star, e.g. C-f takes you forward a
    a word, because it's next to C-d that takes
    you forward a character. And the delete keys
    were all grouped together as well C-t, C-g and C-y.
    This sounds crazy at first, but it turns to be
    really easy to get into once you've used it
    for just a little while.

    So the point is you want software with some
    depth to it, which in all likelyhood means
    some complexity, but you want to be able to
    ease a new user into it gradually. This is
    a concept that was lost in the post-Macintosh
    scramble to make a computer "as easy to use
    as a telephone".

  362. SImplicity, scalability by redhog · · Score: 2

    In all other directions in this industry, scalability is an honored word. But not enought in user intarface design. A user interface most important task is to scale with the user. It should be good both for a novice a power user and a hacker. It should provide easy and intuitive ways of doing things, while not slowing down the power user by having him to retype a slightly modified command hundreds of time (Or move the mouse nearly the same way hundreds of times).
    Simplicity is another important factor. Hundreds of bells and wistles won't help anyone, if he/she can't find the forrest for all the trees.
    Graphical junk is something most of the "new" UI's for X has - for example, most of the enlightenment themes doesn't provide any new functionality to the user interface, just a new look, with even more lines, shades, 3d-borders and so on. Very few window managers (vm2, the pie-menu extended fvwm2 and one more that I have forgotten the name of) have really new concepts.
    Orthogonality. If something can be performed on one screen object, it should be possible to perform on (nearly) all of them.
    Every program should use standard interfaces to each other (E.g. sending guile scheme expressions to each other) for interaction. In addition, they should have good interactions between command-line and GUI. All graphical programs should read their stdin anyway, and interpret command they get from there, and do tasks based on them, possibly affecting the GUI data.
    Finally, a set of important concepts:

    *Drag'n'drop.
    *Scripting
    *Simplicity
    *Intergation beteen programs
    *Embedding of document inside each other (pictures in text)
    *Speed of usage
    *Speed of learning
    *Orthogonality
    *Minimalism


    --The knowledge that you are an idiot, is what distinguishes you from one.

    --
    --The knowledge that you are an idiot, is what distinguishes you from one.
  363. Re:Bad GUIs put the computer first by seebs · · Score: 2

    Drive structures shouldn't be exposed? What, you think the computer knows how to correctly organize my files?

    Should I be able to find a file without remembering where I put it? Certainly.

    However, the drive structure has to be there, and I have to have the option of deciding how I want things sorted.

    --
    My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
  364. Re:Different things to different people. by seebs · · Score: 2

    MacOS used to be consistent. Look at Quicktime 4. One of the most abysmally awful interfaces I've ever seen. It doesn't look like anything else, it doesn't work like anything else, hell, it doesn't even work like *ITSELF* from one window to another.

    The NeXT and the Amiga were my two favorite examples of "consistent" interfaces. I miss them both horribly. (Apple ripped the 2nd mouse button out for MacOS X, I'm told, so the NeXT is truly gone from us now.)

    --
    My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
  365. C O N S I S T A N C Y by mindslip · · Score: 2

    I think the *single* most important thing in *any* interface is consistancy.

    Books are no different one to the other. Copyright page, Table of contents, Prelude/Prologue/Introduction, Chapters 1 through X, Epilogue, Appendicies, Index.

    Commercial hi-fi/entertainment gear is no different one to the other... Channel up/down, volume up/down, play, stop, rewind, fast forward, pause, previous track, next track.

    Cars have a turn signal that clicks up for right, down for left, a gearbox that goes RPND321, a brake on the left and a throttle on the right.

    Windows, as much as you may hate it, is solidly consistant (in most places). File/Edit/View/Custom/Help/About

    I know it's ALWAYS Ctrl-X/C/V for cut/copy/paste, and Ctrl-Z/Y for undo/redo.

    Which leads me to the second most important thing in a user interface... keyboard shortcuts!

    mindslip

  366. Re:Some problems I've seen with UI's by Azog · · Score: 2

    I agree with the modality issue. When I was teaching my parents to use the computer, the "overlapping windows" concept was the hardest thing. The whole visual metaphor of the "desktop" and clicking on things to bring them to the front was a real challenge for them.

    After Mozilla is really stable and KDE 2.0 is out, I plan to create a customized UI for my parents.

    The idea is a tool bar down the edge of the screen with a few big, friendly buttons on it. These buttons will start up a web browser, a word processor, and maybe some other essentials.

    The window manager will always run programs full screen, except for the reserved space for the tool bar. Eliminating overlapping windows will remove a major source of confusion.

    If a program is already running, the toolbar button will just make the window visible. This will eliminate the confusion between starting a program and switching to one that is already running.

    This will actually be a little like the Palm OS - everything seems to be running all the time, and you just push buttons to switch between apps.

    Other things: Simplified menus. Or even no menus at all: just a short tool bar in each program. And, simple dialog boxes that are really obvious when they grab the focus - maybe even graying out all the background when they are up. Have you ever seen people clicking on a window background, getting beeps back, just because there's a modal dialog open and they don't really realize it?

    All these things can be reduced or eliminated for people that just want to use the computer to do a few simple things, never want to change the settings, never want to install more software, and never want to think about "using the computer".

    You could even create a distribution based on this. Call it "Linux for Grandma." Forget simplifying the installation - grandma will get her 13 year old granddaughter to do that.

    But once it's up and running, all the complexity will be hidden away, and the user will never need to think about it.


    Torrey Hoffman (Azog)

    --
    Torrey Hoffman (Azog)
    "HTML needs a rant tag" - Alan Cox
  367. User Interface Wish List by angst_ridden_hipster · · Score: 2

    These comments apply to the current standard graphical user interface we see on computers, PDAs, VCRs, etc, but should not be construed to apply to ALL user interfaces.

    I've been watching my grandmother learn to use Windows 98. It's painful. First of all, her motor control is not perfect. Second of all, Windows is highly inconsistent in how you approach actions. It's been very instructive, though. These observations are based on what I've seen:

    1. Consistency. There should be a standard "meaning" for each action. These should not change unless the context is really significantly different.

    2. Clarity. Controls and Widgets of all kinds should emphasize comprehensibility over coolness.

    3. Feedback. When something's happening, I should know what's going on.

    4. Performance. If the interface is going to stall while something is happening, it should provide feedback immediately, rather than waiting and then presenting a progress bar or the equivalent.

    5. Safety. Any destructive action should have at least one warning and a chance to cancel. These safety warnings should be set up so a pro can de-activate them if they want to live risky.

    6. Configurability. If I have a way I like to work, I should be able to streamline the process. If applicable, I should be able to script common tasks as well.

    -
    bukra fil mish mish
    -
    Monitor the Web, or Track your site!

    --
    Eloi, Eloi, lema sabachtani?
    www.fogbound.net
  368. The Tao of UI by Crutcher · · Score: 2

    "And so it came that one day I asked my Master, and how shall I design the user interface, shall I make it objects? shall I make it text? Shall there be menus or shall there be keystrokes, or shall I use voice?

    And he raised an eyebrow, and then snapped a finger, and then wiggled his fingers, and then waved his hands, and only after all this di he speak, and I was enlightened."
    - From The Tao of UI

    It is so very important to remeber that the phrase "User Friendly" does Not mean "Instant Usability", or "Simple Commands". When designing UI, one must take into account the number of core commands that must be represented, and the speed, not complexitiy, with which the truly core commands can be executed. I do NOT want a UI that makes me speak ever time a basic command is used, I would have a sore throat before lunch time. So make the core fast to execute, a key-combo perhaps, make the next level out a command of the form of a menu or typed command, and use things like voice to call up third teir commands, which you use infrequently, but want to execute quickly.


    ---
    "Elegant, Commented, On Time; Pick any Two"

    --

    -- Crutcher --
    #include <disclaimer.h>
  369. Re:multitasking... by GregWebb · · Score: 2

    Dialogs are often useful, and modal dialogs are sometimes necessary. It's perfectly possible for you to have a sensible, useful dialog which could be completely stuffed up by changes to the data in the originating window.

    Modal dialogs can be necessary for them to be meaningful and avoid data corruption. The problem is that there's an awful lot which are modal because it saved the UI coder thinking about whether this was necessary or not. But banning modal dialogs completely creates its own problems.

    --

    Greg

    (Inside a nuclear plant)
    Aaaarrrggh! Run! The canary has mutated!

  370. Voice commands will be just as big a problem by Noodle · · Score: 2
    Believe me, I work in tech support. A new user today has to learn what an icon is, how to manipulate them, etc. A popular conceit is that once voice recognition software gets good enough, the problems of acquiring computer literacy, or, if you will, a 'vocabulary', will disappear, but I disagree.

    Even people who have learned the GUI vocabulary enough to get their work done have no idea what I mean when I say "launch this program" or "open this file"... Hard to believe, but true. And the people who have the GUI down are definitely in the minority.

    What I'm saying is that the average user, in my experience, has trouble grasping the abstractions that we understand almost implicitly, and that is not going to change with voice recognition, any more than it changed when CLI was largely supplanted by point-and-click. A user still needs to know WHAT to click on, and when voice finally arrives, he will need to know what to say.

    --

    -Noodle

  371. UIs are static, but should seem *dynamic* by J.J. · · Score: 2

    What I mean is that as you, the user, learns how to use a given interface, navigating the interface should become quicker and easier at the same pace that you learn.

    When I initially pick up a piece of software, the menus are quite helpful, as I learn what the software does. But after several times of using a command, option or feature, I generally remember the keyboard shortcut. As I learn the interface, it "grows" with me, and I become quicker.

    The real difficulty is that almost none of the window driven programs today incoporate these design features and elements at the necessary scale. Sure, ctrl-B is bold and ctrl-I is italics, but full functionality through keyboard shortcuts? Yeah, right. I still love Wordperfect 5.0 - the last of the great purely DOS-based word processors. I used it enough that I knew that the bullets of the arrow style was Shift-F5, 1, 3, 1, Enter. How long does that take with MS Word?
    1) move had from keyboard to mouse
    2) click bullet in toolbar
    3) right-click over bullet in text
    4) select arrow
    5) click OK
    6) move hand back to keyboard and resume typing
    or
    Shift-F5, 1, 3, 1, Enter? You decide.

    I'm not claiming to be a guru, but I'll go out on a limb and say that a majority of software that is used by someone all-day, daily, (data entry types, I'd guess) is not window driven. I know the ones I've seen surely aren't. They're obscure, CLI-type interfaces that appear just awful to use. But it you sit there and watch someone, they're tap-tapping away at those keys pulling up the information quicker than you can believe. But even those UIs aren't the best, because the learning curve is so steep. In order to become that proficient with the interface, someone must spend a lot of time guessing and worrying.

    Unfortunately, the majority of the world has moved away from good UI design principles with Windows. Too many people aren't power users - the software winners have been winners because of time to market, not quality. A fact seen clearly in the success of Microsoft.

    Is there a perfect solution? (shrug) It's a hard middleground to master. I think the *nix world comes a whole lot closer than the Windows world. I've got my fingers crossed though - I think the rush to get software out the door is about to slow down - perhaps then companies can afford to spend time on good UI design.

  372. Ease of Use != Ease of Learning by vanyel · · Score: 2
    ...but usually when people say "Ease of Use" what they really mean is "Ease of Learning", resulting in an interface that is clumsy and slow to use. UI designers need to think about what people will actually be doing, and how they'll be doing it, and then include tutorials so people know that's how they're supposed to be doing it.

    Another failure is help systems that give abstract information, but no concrete information and in particular, rarely are examples given and even rarer are cross references so if you don't understand a concept, you can look it up.

  373. i'm suprised no one has said this: by coaxial · · Score: 2

    Themeability.

    Nothing's more iportant than having EVERY WINDOW look absolutly different with inconsistent controls!

  374. This question almost cannot be answerd by hey! · · Score: 2

    At least the more generally you pose this question, the more abstractly you have to answer it. There are so many considerations.

    Is this an interface that will be used frequently (word processor, cell phone, PDA), occaisionally (web order page) or rarely (911)?

    Do you need to support a heterogenous or homogeneous user population (issues of handicap access; training; literacy)?

    Does the user have to multiplex the tasks supported with other tasks (e.g. word processor vs. inbound telemarketing system vs. car MP3 player)?

    How tolerant of user errors can the software be, and how does this balance with the need of the software to be responsive?

    What range of form factors will the application work in (PDA vs. laptop vs. large screen desktop)?

    Just to cook and example, lets say I want to deploy an application which coaches people through performing CPR. If this is as a training aid, the user can be required to spend ten or fifteen minutes figuring it out; if it is a field aid, this would render the system rather useless. If I am targeting PDA as my platform, then I'm pretty sure I have somebody who is literate. If it is a public kiosk, say at beach or industrial site, I don't know for sure whether the user is functionally literate in my language.

    I know what you're primarily asking is about desktop GUIS, but I think it's helpful to keep in mind that the answers you get are probably going to be slanted toward office productivity type applications. While these are important, the shrinkage of computing power and proliferation of networking is going to render this a minority niche in a few years.

    There will never be a one size fits all GUI, let alone UI in a general sense.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  375. Bad GUIs put the computer first by costas · · Score: 2

    ...good GUIs put the human first. It's just as simple as that.

    Why is that I can find something easier on the Web (thanks Google!) than I can on my hard drive? Why can't I use the same spell-checker (yes, including the same custom dictionary) in my MUA that I use for word processing? Why do I have to dig through directories, hierarchical structures and all that crap to find a file? Because someone, somewhere, was coding an application and stuck to the design that was easier to *implement*, not easier to *use*.

    A drive structure should not be exposed to the user; documents must be tracked by the OS, not the user. Functions and functionality should be transparent and consistent in all applications. The Macintosh succeeded in the first points (hide the machine complexity away behind closed doors), Windows succeeded in the last --all Windows apps (make that *Microsoft* Windows apps) share components, functionality, and up to a point design philosophy (yes, I know, that's not 100% true, Word doesn't do everything the same way that Excel does, but they are very, very close).

    Gnome and KDE should learn from their predecessors' successes and failures, rather than copying them blindly --and if you're gonna copy antyhing, please not CDE ;-)...


    engineers never lie; we just approximate the truth.

  376. Re:One feature is necesary by prizog · · Score: 2

    I'll just reply to everyone at once.

    Windows may allow scripting - but it doesn't provide it. You have to buy/beg/borrow/warez additional software to do it. And that's not good.

    It is nice if a user interface teaches itself to you, but not necessary. For simple applications, it may be necessary... but for complex applications, you'll end up spending so much time using them that it's a good idea to RTFM anyway.

    Are scripts user-interface features? You bet! You're a user... and you're using them to control the program.

    Scripting is not sufficient for a good UI. But it is necessary. Given sufficiently powerful scripting, even the crappiest UI can be re-made into something vastly more powerful. As an example of this, someone brought up WindowBlinds.

    I think that's about it.


    -Dave Turner.

  377. learning curve required by seanw · · Score: 2

    I disagree with those who demand "no learning curve" or a system that works with "no training required." I think that, computers being complex machines, the UI by definition inherits a certain amount of complexity.

    You couldn't, for instance, sit down at a large bench saw with no training or experince and reasonably expect to operate it (more likely you'd cut your arm off). Moreover, the saw shouldn't be designed FOR the inexperienced at the expense of the experts.

    A computer is ridiculously more complex than a saw.

    The UI should present a clean, consistent, pleasant(!) method of control, but the user must sit down with a clear goal in mind, and at least a modicum of basic training. Given experience, they will benefit from consistencyt expecally (newbies often ask me how I knew how to use Windows a program I'd never seen before. The answer is that I can click my way around ANY app with File, Edit, View menus, toolbars, etc.)

    Embrace a common ground, but don't design for the ignorant.

  378. Yay modality by goliard · · Score: 2

    Hear, hear. Modality easier for the beginners, and more powerful for the power-users. It's also easier to integrate with keyboard-only I/O than non-modal interfaces, which for those of us with mousebite is a serious win.

    There needs to also be non-modal interfaces, but right now we've moved almost completely away from them. The pendulum should swing back.

    The things for which modality is crucial is for any program which provides a user experience of "environment". When a user is "within" a program, doing something, interacting with the program, then modality is powerful. By way of contrast, when a user experiences the program as a "thing", then a non-modal interface is probably best.

    For example, compare a word processor to a cd player. The first is something you work in. Contrary to everything everyone expected based on ideas of modality being "hostile" and "unnatural", the most preferred word processor in history was Word Perfect 5 -- which was strictly modal. Meanwhile, a cd player is something you want to set up to do something (play a cd) and then have it function without you. It doesn't need a modal interface.
    ----------------------------------------------

    --
    -*- Any technology indistinguishable from magic is insufficiently advanced -*-
  379. Re:One feature is necesary by Mr.+Slippery · · Score: 2
    While scripting arguably makes life easier for power users, it is pretty much useless for novice users. Shells, emacs and vi are nice if you already know what you're doing.
    But what is often forgotten is that novice users don't stay novices forever. (It's like arguments to "protect the children" at the expense of adult liberties, forgetting that children might want to be free adults someday.)

    What's needed is a layered system, with a GUI or menuing system on top for newbie, a CLI for "power users", and open formats and protocols and system utilities for the hacker to get in under it all.

    Example: I use exmh - a Tcl GUI program - to handle my email. I can also use the MH CLI programs (very useful when I'm telneted in to my box). I can also get underneath it all and just access mail messages as files - using grep to search them, moving them between folders manually, etcetera.

    --
    Tom Swiss | the infamous tms | my blog
    You cannot wash away blood with blood
  380. Re:multitasking... by kaphka · · Score: 2
    Windows does the same thing: modal dialogs.
    But system modal dialogs haven't been allowed since Windows 3.1. Only the OS can prevent you from switching out of a dialog box to another application. (And it only does that rarely... e.g., for the "Are you sure you want to shut down?" box.)

    Unfortunately, DirectX provides a lot of loopholes. It's pretty easy to break task-switching on a Win9x machine using DirectX -- the EverQuest client is a notorious example.

    Since I've switched to Win2K, no application has ever succeeded in taking exclusive control of the system (not even EverQuest,) but I have occasionally been forced to log off to kill a program.
    --

    MSK

  381. my wacky idea by eric17 · · Score: 2

    Well, IMO, one of the major problems is the way that documents are organized. The hierarchial file system is not appropriate for the common document oriented user. The user should be able to arbitrarily and easily organize documents into whatever groups they want independent of how or where the documents are stored on disk. The same document should be able to go into more than one group without dealing with symlinks or shortcuts.

    The grouping should also be "active" rather than passive, like a folder. You should be able to open a group up and have all of your documents exactly where you left them when you closed the group. You should be able to bookmark the view state of the group as well as any individual document. Selecting a group bookmark returns you to the bookmarked view in all of the open documents. One predefined bookmark would be the initial view of a document. For example a web document would consist of a particular URL which is its initial view. After browsing you can go back to that URL by selecting this bookmark.

    Another problem is there is often obscured elements in the "desktop metaphor". Windows can obscure other windows and also icons on the "desktop". A good interface would provide some clue that something is obscured.
    At all times there should be some visible representation (icon?) of open documents even if the document is not itself visible. Documents that "need attention" but are otherwise obscured would flash this icon.

    -- Eric

  382. UI Features by kayser_soze · · Score: 2
    I think there are several things that a user interface needs in order for the user to be comfortable and productive using it.

    First, the UI must be customizable. The needs of a user change over time, and the UI should change accordingly. If something can be streamlined by the user for his/her particular situation, then the UI should be able to accomodate them.

    Second, the UI must find the delicate balance between feature-rich and simple. The truly good UIs will be the ones that provide what the user needs, not more and not less. Any added "fluff" features will go ignored by the user adding overhead to the program for no reason. Conversely, missing features will frustrate the user anddiminish productivity.

    Third, it must be attractive. A UI that sucks visually, misses the point entirely. Style is a form of usability...nobody wants to look at an ugly screen all day. This applie to text interfaces as well. Well designed textual interfaces should have a professional-looking layout just as if it were a graphical app, and/or well designed key "shortcuts".

    Lastly, a good UI will be well designed internally. It should be as modular, code-wise, as possible to allow for customizability, as well as be streamlined and efficient.

    Well just my 2.....

  383. big things for a GUI by Mr.+Punch · · Score: 2
    Well, here's what matters to me:
    • FULL keyboard and mouse support. I'd like to be able to perfrom every single operation with the keyboard. I'd also like to perform every operation (except text entry) with the mouse. Mac OS is bad for this because there's a lot of mouse only stuff. Windows, for all that it sucks, is actually not too bad.
    • Good memory management. Don't you just hate it when you have to sit and wait for a window to refresh?
    • Configurability. I might not want my system to look like yours. I might not like a taskbar and a start button. Or I might. Nobody else should choose for me. This should also apply to what the mouse buttons do.
    • The ability to save/backup the desktop and all configuration settings.
    • The ability to escape back to a command prompt when necessary.
  384. Unfortunate trial by Greg+Merchan · · Score: 2

    One of the sad things about the anti-trust trial is that Microsoft had not long ago started an R&D division that is researching user interfaces. Among the things I remember were voice control and facial response recognition (the paperclip is watching :-). With the cost of the trial and whatever penalties they may suffer, they'll probably have to cut back on R&D since that kind of investment is usually undertaken by a stable company that is able to plan decades in advance.

  385. I disagree. by Inoshiro · · Score: 2

    If you'd read an elengant discourse on the subject, you'd find that without scripting, or similar, you've doomed the user to do multiple, repetitive tasks. Have you ever had to rename 50 files before? That's either a lot of time clicking, typing, and clicking again in an interface (such as the Macintosh's finder, or Windows Explorer), or a few seconds writing a shell script (once you get the hang of shell scripts, of course).

    If your interface can't free the user form the original hard work you intended to eliminate (the whole reason to use a GUI in the first place), you're back on square 0. True, a newbie won't know about it, but when they do need it -- it's there.
    ---

    --
    --
    Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
  386. Re:My Mother by dsplat · · Score: 2

    No! No! No! Security through obscurity is not a viable solution. Mom may be unable to find your (ahem) personal files, but your blackmailing younger brother will threaten to show them to her. What you need is good encryption.

    --
    The net will not be what we demand, but what we make it. Build it well.
  387. Object->Action vs. Action->Object by Sajma · · Score: 2

    Most modern GUIs focus on the object->action technique: select an object, then select an action to apply to that object. For example, select an icon on the desktop, then double-click to Open or right-click to see other options...

    The problem with this is that it doesn't intuitively allow someone to start new documents or find old ones. To start a new letter, you first need to start the application for letter writing, which means you have to know where to look. To load an old letter, you wither have to go through the application, the "recent documents list", or the file system...

    As you can see, the verbs here are "start", "continue". and "write". The user's action is TASK oriented, not object-oriented. An interface that allows you to do choose a TASK at the top level gives a better starting point to the user (I use uppercase to denote the specific idea I'm discussing here). Note that none of what I'm about to describe are new ideas, but they're worth considering...

    A TASK menu might have choices like "write an e-mail" or "play a game"; though, of course, more specific. Some may think at this point, "Well, that's just like the "Start" menu in Windows!" Not quite: the TASKs must be listed with intuitive, easy to understand names. "Write a Letter" as opposed to "MS Word 2000" or "Emacs". In a sense, the TASK menu is more like the "New..." submenu you'll find when you right-click on the Windows desktop, except TASKs are not always for document-creation.

    A TASK menu wouls also support continuing saved work: "Work on an existing letter", "Continue a StarCraft campaign", etc. One must be careful to balance what is available at the top-level and what choices become available under specific applications. "Print letter" may be useful at the top-level, but it would be better if this option were only available whle one was working on the letter.

    A few more notes:
    1) The file system should be invisible. As someone proposed in another comment, the OS should support finding saved work using searches or heuristics (ie. recent document lists, etc). A hierarchical directory scheme should still be available for users who like to organize their data that way, but it need not necessarily reflect the underlying data structures.

    2) Applications should be invisible. Applications implement some set of TASKS for the user; we might expect that in the near future all apps will be downloaded, so users can simply search the net for a new TASK they may want to do. For example, I may not have "Create flow chart" implemented by any app on my local machine, but I could search for that task and find a number of apps (Visio, etc) that can implement it. I choose one, it downloads and installs itself, and I'm up and running. Maybe even better, the actual app is stored remotely -- my system just stores my files and configuration information.

    3) There's no idea of "saving" a document: all work is logged (as with a versioning system); users can return to any snapshot of their work through history. By default, the most recent version is loaded, but a "Continue from old version" option might be available as well. Check out the Elephant File System to get a better idea of how this might work.

    Well, I've gone on quite a bit about what I hope is a different way of looking at things than what you're used to. I'm sure there are plenty of issues that would make this sort of system a pain for current computer users, but remember we're thinking about future users. Also note that voice recognition won't solve anything without a redesign of the standard UI: I'd hate to have to spell out filenames and name specific applications when all I want to do is "Start a new letter..."

    --Sameer

  388. Many features are necesary by neowintermute · · Score: 2

    We need to look at this on a number of levels:

    - One of the most interesting UI ideas I've heard of comes from the Oxygen project at MIT. Apparently, they have realized that the computer we know today is a terrible interface for most of what we do. Their idea is to have smart dust that is constantly around you and takes shape according to your needs. There is a lot of organization required to manage today's GUI's. Our handy icons, folders, etc require lots of time to manage. This should all be hidden from us. Computers are smart enough to find the data we need, it's just a question of a good indexing method. For most communication purposes, we wouldn't need a monitor and keyboard of we had good enough speech technology.

    - As far as speech recognition goes, it'll be useless until we have seamless natural language processing. Then we'll only need monitors for reading. And then your grandmother will be able to use your computer without any difficulty.

    - Computers need to be able to learn about their users. What OS have you ever seen offer to place an icon on your desktop for mozilla after it noticed that you used it everyday? (and speaking of ui's, I wish copy/paste even worked in mozilla)

    - And gui, oxygen, or speech based, whatever the OS, the _BEST_ feature any UI can have is to be organic. The best thing about the macOS is that it's organic. It lets you know when the network is down with a dialog, and when it is returned. It refreshes the contents of network volumes for you, without your having to hit F5, F5, F5. It responds (like gnome does sometimes) when a disk is inserted. Machines that are more self propelled will be the answer to truly augmenting human ability, as opposed to hindering it with slow launching, whiz-bang email suites (can you say, Outlook!) that are more of a problem then they're worth. The most pleasing thing about slackware is so tiny, but it's amazing. Just the simple touch of adding fortune to the .bashrc makes the user experience radically happier. Just a touch of organic, proactive, non-order lifts things up so far.



    ___________________________
    Michael Cardenas
    http://www.fiu.edu/~mcarde02
    http://www.deneba.com/linux

  389. Re:Just two words... by Speare · · Score: 2
    "About Face" is one of Alan Cooper's earliest books. It's a bit raw, and I found a few disagreements with him, but in general, it's got a lot of wisdom.

    I don't have his current book's title, but it would also be a solid read on interfaces.

    Alan Cooper started Cooper Interaction Design as a consulting firm that specializes in optimizing any human-machine interaction. They've helped with cell phones, programmable toys, word processors, hospital records management vertical databases, you name it. They don't write the code. They help you build the RIGHT interface for YOUR application.

    Cooper has trademarked the term, "Rich Visual Modeless Feedback." Rich: lots of it; Visual: seen on the screen; Modeless: doesn't interrupt you; Feedback: lets you see what the computer thinks. A classic example is the red squiggly underline in Microsoft Word: it happens automatically, you see it, you know the word is misspelled, it doesn't interrupt you, you can go back to it when you want to.

    There's two sides to any interface. In computer user interfaces, the computer and the human should be considered in an implicit partnership to get the human's tasks done.

    In essence:

    • The Computer should be able to figure out what the Human is thinking, and
    • The Human should be able to figure out what the Computer is thinking.

    Alan likes to say things like "Don't make the user feel stupid!" By that, he means situations where the computer program seems to delight in stopping the user's flow, just to pop up annoying messages. Or they can't seem to remember the user's preferences.

    Anyone who has used a computer before, bitches loudly at the Win95 default setting of showing subdirectory contents without a tree view.

    As it turns out, in many useability studies, some Microsoft, some not, it turns out that a frightening percentage of people (even existing computer users) were unable to grasp the concept of a hierarchy . They just can't get it. Win95 hides the tree by default, since people can get used to "click this, click that, click that," sequences, much like driving-by-landmark.

    One of Microsoft's aphorisms, which unfortunately they fail to follow, goes something like:

    Make the everyday tasks simple; make the more complicated tasks possible.

    --
    [ .sig file not found ]
  390. Object-Oriented User Interface by LordNimon · · Score: 2
    The most powerful and useful GUI out there is actually an OOUI, and it's called the WorkPlace Shell, available on an OS/2 desktop near you.

    I had high hopes for GNOME, but the truth is that the GNOME developers are only interested in making a Windows-like desktop, which is a real shame. Both GNOME and the WPS are CORBA-compliant, but I wonder if the GNOME developers really understand what that means.

    --
    And the men who hold high places must be the ones who start
    To mold a new reality... closer to the heart
  391. Re:One feature is necesary by wrumsby · · Score: 2

    All of the above has been stated by Donald Norman (former Apple Fellow and now member of the Norman [Jakob] Neilsen Group).

    Course Don Norman's new thing is Internet Appliances and the industry is gradually catching up. It makes a lot of sense, Don's fond of talking about the interface of doors and the like, the interface of any/ever computer/os is too hard and not intuitive, by building computer controlled appliances/tools with discrete functionality, the task of creating a sensible interface is a lot easier/actually achievable.

    Linux UIs suffer from lack of consistency amongst applications and the proliferation of too highly customisable window managers that never seem to get to a 1.0 release (Linux is stable but the window managers aren't... to the user [who views their computer as a tool, not a forver hackable toy] this translates to an unstable computer/os).

    My concern with OS X is that Apple has lost so many of it's UI scientists (Don Norman, Brenda Laurel, Tog, Jeff Raskin, etc...) that the Aqua interface is going to break so many ui design principles in the interests of looking cool. Hopefully Aqua 2 will get rid of the candy and Apple will have the sense to bring back some of its old ui team.

  392. Just two words... by pongo000 · · Score: 2

    "About Face," by Alan Cooper. Probably one of the best books ever written about proper UI design. It has everything M$ ignored when Cooper was trying to help them with their UI development. It should be required reading before anybody is permitted to develop a UI.

  393. You can do better than that. by guran · · Score: 2
    The switch statement you make should be treated as part of the (G)UI.

    I generally try to separate application logic from UI as much as possible, since it is a real pain to change code because of UI changes.

    Let the core functionallity of the program have a well defined interface (use CORBA, EJB, ActiveX or whatever) and *then* build a UI shell around it. That way, the next person who touches your app has a fair chance to make UI adjustments without groking every detail of your code.

    Fitting a GUI on top of a CLI is rather easy, the reverse can be almost impossible. Ergo: Never think just GUI.

    --

    All opinions are my own - until criticized

  394. Re:Some problems I've seen with UI's by sylvester · · Score: 2
    1. Multiple overlapping windows are very hard to sort out for someone who's not used to it. Notice that on video games, ATM's and the like that everything is completely modal; you're not distracted by everything else that's going on.

    This is a biggy when i'm helping out my dad. I just "know" which window to be dealing with, but he doesn't. perhaps an optional dim-everything-but-the-window-in-focus feature would be good, to make it clear.

    or, perhaps neater, dim-everything-except-what-you -need-to-read-or-can-click-on. ie: window titlebars would not be dimmed (unless they had an overriding modal window up), nor would the text in your current window, but everything else would be.

    might have some interesting consistency problems (under windows, I can do a single click to ICQ to pull up their menu, even though it's in a window that is not the current window.

    certainly I think we have enough horsepower to do this, considering it would be a reasonably rare occurence with the kind of person that would be helped with it. I can deal with most dialog boxes without looking, using only keyboard shortcuts, so they're gone as fast as they're up. but my dad usually takes a few seconds, so this sort of background-fading wouldn't be so bad.

  395. Bauhaus or Baroque? by mindstorm · · Score: 2

    There are two thoughts in design: Bauhaus and Baroque. The Bauahus School is one of elegance and simplicity. The other goes over the top.

    The best analogy and comparison is the diffrence between a Buick LeSabre GS and a BMW 540ti. Both are luxury cars but one was designed with Bauhaus principles that put the user first while the other has all the toys thrown in with little thought to ergonomics. I can drive the BMW without taking my eyes off the road because everything in the cockpit was purposefully placed for my comfort and safety. Whereas with the Buick, I have to futz with the light switch because some dumbass GM engineer decided to obscure the light switch with some useless decoration. I take my eyes off the road for 5 seconds, and I hit a Mack truck!

    If I were driving the BMW, I would of kept my eyes on the road and I would still be alive or walking.

    As computers enter into mission-critical areas like medicine, the UI design becomes a factor if someone lives or dies. If a nurse can not grok a interface panel on a computer-controlled piece of med equipment and presses the wrong button, he/she can kill the patient.

    Keep it simple, especially when time to make a decision is crucial.

    Also remember that mistakes do cost money, whatever you can do to lessen errors in your UI will save people time and money.

    The overiding principle when designing a functional object, like a UI, is to follow the mantra contained within my sig:




    If design is not Bauhaus, it is Baroque.

  396. the ultimate solution by kaoshin · · Score: 2

    Rather than make computers easier to use, how about making the people smarter. After all, you aren't trying to control us... are you?

  397. testing by non-programmers by Tise · · Score: 2

    A huge number of the really bad problems I've seen could have been avoided had the UI been tested (or even looked at) by someone who thinks "television" when someone says "program". Most computer users in this day and age are not programmers and have no more interest in how their hard/software works than in how the tv networks pick reruns of Gilligans Island. Less, probably.

    A few basic rules:
    0) An attempt should be made to accomodate people with disabilities/the differently abled.
    1) number sequences start with 1 (one) not zero.
    2) never scare the customer unless that is what they paid for. Most people are scared of things they don't understand, and most error messages are completely incomprehensible to a non programmer. That's just plain mean.
    3) Most users don't want to adjust, change, modify, tweak or otherwise fiddle with their computer much beyond the desktop theme any more than the average car driver wants to manually adjust the idle.
    4) Consistency is key. The same types of actions should have at least similar results.
    5) Simplicity & legibility are more important than being cool, fancy and/or cutting edge.
    6) If you're reading this, odds are your computer is light years ahead of the average users. All software developers should have access to a box with the minimum system requirements, and should be forced to actually use the software they developed on said machine. For more than five minutes.

    Some useful URL's:

    a [free!] web-based tool that analyzes web pages for their accessibility to people with disabilities:
    http://www.cast.org/bobby/

    Interface Hall of Shame
    http://www.iarchitect.com/shame.htm

    http://www.useit.com/

    User Interface Engineering:
    http://world.std.com/~uieweb/moreart.htm

    Other Software testing and QA resources:
    http://www.softwareqatest.com

    Bad examples:
    http://www.webpagesthatsuck.com/

    --
    Life is a banquet, and most poor suckers are starving to death!
  398. GUIs are not good UIs by jorbettis · · Score: 2
    As I see it, GUIs are good for three things: idiots who like to see dancing paperclips, pictures, and games (of course, there are some bitchin' text based games.

    GUIs are inherently flaky. Question: How often does X crash on your system? How about your *sh?

    There are just too many things that a GUI has to do to keep everything running right. There are too many environment things that can fcsk it up. Now, I don't think that GUIs should be eleminated entirly, I need to play Quake III, but the drive to make everything use gtk, Gimp, or K is wrong.

    I like to point at Pine as an excellent example of a curses UI done right. It is outrageously simple (proving that the claim that Text UIs are hard to use does not hold water). My mother would be able to figure out Pine quickly, much quicker than the brain damaged GUI mail readers (exchange anyone?).

    I think curses based UIs should be applied much more than they are. I am appaled at Red Hat utilities which use gtk (userinfo and linuxconf for example) instead of curses. There is no good reason why Red Hat decided to do this, and I hope that that is not the way Linux is headed.

    --

    Jordan Bettis

    ``Wherever you go, there's another stupid sigfile quote.''
  399. No, that's awful by Animats · · Score: 2
    Then you've got software such as xcdroast that essentially acts as a graphical front end; when it needs the services of either of the previously-mentioned pieces of software, it simply opens a pipe to them and lets them do the work. The result is that if you prefer working with a command line (as I do), you're good to go. If you prefer working with a GUI, you're still good to go.

    The trouble with bolting a GUI on top of a command line tool is that the interface tends to be one-way; the command line generation part works fine, but the error messages that come back aren't meaningful to the GUI user. If, say, option -x isn't applicable in the current situation, the GUI probably doesn't know that, and you'll get some message back like "unable to use option -x", which will be meaningless to the GUI user.

  400. Dealing with old aged or shakey-handed peole by bolthole · · Score: 2

    Some window systems have more finely tuned mouse configuration options.

    So those folks would need something like delayed, yet very high mouse acceleration.

    The idea being:

    move the mouse a little in a small area = dont move the pointer at all

    move the mouse medium amount = move the pointer a little

    move the mouse a lot = move the pointer a lot

  401. Re:My Mother by roman_mir · · Score: 2

    What the hell! Just use Linux for christ sakes, or Unix (Solaris or SCO or something).

    You are the root, make everyone different user name and password for their accounts and make your own pr0n account.

    There!

  402. we're talking about GUI's here by ArchieBunker · · Score: 2

    Your average person doesn't want a fancy looking WM with tons of buttons and icons. Thats why people are scared of computers, they see a screen full of buttons and icons and feel overwhelmed. MS does have the speed, windows is the best platform for gaming and multimedia (besides BeOS) and for simplicity of a GUI they have that as well. A single button to launch scroll out menus that collapse when you select something.

    --
    Only the State obtains its revenue by coercion. - Murray Rothbard
  403. Essential UI Features by Tassach · · Score: 2
    The most important attributes of a user interface (regardless of type) are simplicity and consistancy.

    Simplicity does not exclude complex functionality -- take the game of Go for example; you can learn the rules in a few minutes, but it takes a lifetime to master. A user should be able to sit down and start using the product (at least in a basic mode) with no training

    Consistantcy is probably even more important: a program that performs similar operations in a consistantly bad manner is better than one that does those same operations in several different (but individually elegant) ways.

    For extensive information on usability, visit Jakob Neilson's website useit.com.
    "The axiom 'An honest man has nothing to fear from the police'

    --
    Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
  404. Utility by Skald · · Score: 2
    what are the elements that make the user's experience better?

    One of Perl's little slogans, as most of you know, is that, "easy things should be easy, and hard things should be possible." (Whether Perl makes things so is beside the point.) This seems a pretty decent way to look at the whole thing, since after all, a language is ultimately a user interface.

    We want to communicate with computers. A flexible grammar and, unless you're into ones and zeroes, a rich vocabulary are needed for hard things to be possible. The Windows GUI notoriously lacks these. Trying to get anything unusual or sophisticated done with it is like trying to write a novel in simple sentences. You'd better be Ernest Hemingway.

    Unix, just by virtue of using symbolic language as its primary interface, tends to make hard things possible. It is notoriously difficult to learn, but then natural languages aren't any easier. Funny how we expect kids to work their butts off, and all kids' stuff to be educational, when most adults watch Baywatch and get distressed when the file doesn't look like a file. The secret to learning to use a computer well is the secret to doing anything well: work hard at it.

    Anyway, I think easy things being easy is largely about abbreviating common tasks. Aliasing, making shortcuts, dragging and dropping, and so on. Discovering which tasks are common is an inherently empirical matter, which is why it's nice when the end user can abbreviate things himself. Of course abbreviating things is itself a common task, and needs to be easy.

    And of course, the patterns recur at different levels. You could almost see Unix config files like Grep's command line switches. Both programs exist to make common tasks easier, the options to make more difficult things possible.

    Which presents us with questions. When we argue about choice and consistency, do we mean within the UI, or between UIs? We like it that we can choose different Unices, but we want each to be internally consistent. But the functionality within each is not static; it's partially determined by your shell or window manager. Fine... we like our choice of shells, but we want each to be internally consistent. But the functionality is partially determined by your utilities.

    I guess I'd say that the big thing about a UI is that it be useful. Useful for some person or people for some task or tasks... and the more of each, the merrier. But asking what is necessary in a UI doesn't make much sense to me, because it depends on both the user and the task. I want my car to have a different UI than my toothbrush, and from my mother's car... the latter is an *automatic* (ugh!). Don't try to reduce all tools to the One True Tool.

    --

    "The best we can hope for concerning the people at large is that they be properly armed." - Alexander Hamilton

  405. ease of use question by flatrabbit · · Score: 2

    I don't think ease of use automatically equates to learning easily. GUI's have come a long way in the past few years especially. I also think that the younger generations have a distinct advantage over those of the past few generations when it comes to learning computers. I grew up around computers all my life and found it easy to grasp basic and advanced functions rather easily whereas my parents struggled to follow some of the most basic functions. The best part is my son is going to surpass me when it comes to computer knowledge. He has multiple computers at home to work on. At his age I had only one at home and an even worse one at school. It's almost genetic in it's evolution. The next few generations will have an almost instinctual knowledge of computers and technology in general.

    Almost scary isn't it?


    flatrabbit,
    peripheral visionary

    --



    "Never wrestle with a pig, you both get dirty and the pig likes it."
  406. simple/advanced use by silicon_synapse · · Score: 2

    I think any simple user interface is inherantly limited in function. Find the most commonly used features and make those the easiest to find. Put them up front so to speak. Keep the other functions set aside but still easily accessible. Maybe even allow the user to select an advanced option. Even with a GUI, an optional CLI or even just a window where you can enter the advanced commands would be great.

    Just make sure you don't confuse the less experienced users, but keep other more advanced functions available nearby so that you don't limit those who want those functions


    How am I supposed to hallucinate with all these swirling colors distracting me?

  407. Re:Choice of interface by daninja · · Score: 2
    Almost all UI designers are motivated by seeking the "holy grail" of UI's, so to speak.
    This is pure nonsense. There are plenty of good UI designer's out there, and every good UI designer knows they cannot please everybody, and that the first item of business in designing a UI is to determine who you're designing it for.

    Strange thing about UIs is that good ones tend to be unremarkable, only bad ones get attention.

  408. Re:One feature is necesary by slycer · · Score: 2

    OK, but, my grandma don't care whether or not she can automate her word processing, she just needs to find a start button.

    Don't get me wrong, scripts can automate a lot of things, and I like them, but do they necessarily come into the "User interface" part?

    What I feel is necessary for most people is simplicity, and secondarily, speed.. My dad was happy enough double clicking the "Outlook express" icon, that would dial his net connection , check his email, and disconnect after 5 minutes of inactivity.. he did this on a 486 with 12 meg of RAM.. speed comes secondary to simplicity. And he hardly needed me to help him get this working..

  409. Re:wow, so wrong it's not even funny. by Pinball+Wizard · · Score: 2
    Lets see here...you mention NT specifically and not W2k, so I'll assume you tried to install NT4.

    Something bugs me about this post - you claim that all this hardware has "been thoroughly tested by the Microsoft Corporation". Lets see dual P3, 80GB RAID array. No, I don't think you are using hardware that was around in 1996, when the code for that NT4 CD you used was released.

    I know the tendency to blame M$ is very strong and often justified. But how can you expect them to have drivers for equipment to be built in the future? Had you RTFM, you would have realized that you needed to customize your install disks, with the correct drivers.

    Drivers are a tricky thing. As a system administrator, its your job to make sure you have the right ones. Install procedures for servers are almost always difficult, regardless of the server.(If you don't believe me try installing the code for slashdot on a Linux box next time you have a few free hours) If its not the drivers then its the software configuration. This problem could have happened just as easy on Linux or Unix(trust me, I've done both.)

    A good example is the tulip driver that comes with Red Hat. It didn't work! Only after I found out(after several frustrating unsucessful tries) that I had to download the C code and compile the driver did I get my ethernet card to work. Now you tell me, when was the last time you had to compile a driver for NT?

    --

    No, Thursday's out. How about never - is never good for you?

  410. How to measure UI appropriateness by gwernol · · Score: 2

    The starting point for this discussion has to be the meta-point that there is no single "right" user interface. I need a command-line and a set of UNIX-like command-line tools that support pipes and redirection. Without these I am less productive. I am a software developer. But what is a highly appropriate user interface for me will not be useful to many other users.

    That aside, its worthwhile looking at the broadest category of users. If you are developing a UI for the majority of users, you need to understand their requirements. They are not developers or geeks. The probably want to run a limited number of productivity apps (typified by Microsoft Office or Star Office). They will want to access the Internet (run Mozilla or iCab or Internet Explorer). They may want to play games on their machine. They want to organize and access their documents. They may want to do some cool things like edit their desktop video.

    For this class of user, you can measure the appropriateness of the UI by looking at how much the UI allows the user to get their tasks done, and how much it gets in their way.

    Note this is not the same as ease of learning, though it is also good if the user can figure out how to do new tasks quickly. That's why consistency of basic commands and operations as enforced by GUIs like the Mac OS is a good thing for most users. Once I've learnt that Cmd-C/Cmd-V cuts and pastes in Word, I know it will also do that in Mozilla.

    But you only learn a UI once (assuming you have a functional memory :-), but you use it all the time. That's why its important that beyond ease of learning you have ease of use.

    A good UI should be easy to configure. I don't mean skins. I mean, for example, if I have 25 apps installed on my system and I regularly use 5, I should be able to put aliases to those 5 apps in an easy to reach place, and the other 20 apps should be accessible, but not as in my face.

    Another facet of a good UI is giving me control of those things I want control of, and hiding the details I don't want to deal with. I may care a great deal about the fonts I use in my documents, and require fine control of them. I may not care if the printer driver uses PostScript or spaghetti to get my fonts onto paper. I should at least be able to specify to the UI when I want control and when it shouldn't bother me with unneccesary detail.

    --
    Sailing over the event horizon
  411. two words... by laserjet · · Score: 2

    speed and simplicity. microsoft has failed at both.

    --
    Moon Macrosystems. Sun's biggest competitor.
  412. Design of Everyday Things by edp · · Score: 2

    I recommend Donald Norm's Design of Everyday Things. Written before computers and the net exploded, it's a book about how to design things -- doors, stove controls, car dashboards, anything. Even though he didn't think about computers originally, his ideas are about interfaces, and he offers seven points that userfaces should strive for. I don't remember all of them, but they are something like:

    • The state of the system should be apparent to the user.
    • The changes that can be made in the state should be apparent.
    • The controls should be apparent.
    • It should be apparent what changes the controls can make.
    • It should be apparent what manipulation the user performs on a control, and what that manipulation will do.

    These sound simple, but it is amazing how many interfaces fail. How many stoves have you seen where the controls are in a line while the burners are in a square? Wrong! Put the controls in a square, and the user knows instantly which control is for which burner. Similarly, too many graphic interfaces just throw information and controls at the user, without organizing it well.

    Norman makes these points with wonderful examples, and he discusses how controls can indicate their functions and the affordances (available manipulations). E.g., a plate on a door says "push", and a vertical bar says "pull".

    Similar rules apply to graphic computer interfaces. Style differences between interfaces are irrelevant, but style differences between active controls and passive parts of the display make all the difference in the world. A "raised button" appearance tells the user a lot.

    Some affordances are natural -- to increase volume, a control should be moved up, or an up arrow should be used. Some require the user to learn a metaphor, and then are natural to use. (A set of lines drawn on a screen isn't a "window" until you've played with it a bit. But after that, it's properties are completely apparent to you.) Some are cultural convention. Whatever they are, the designer should pay attention to them and use them.

  413. bandwidth, I want more bandwidth! by Alien+Perspective · · Score: 2
    I find that one of the most important features is the effective bandwidth of the interface.

    Just think of a human as an i/o device, and you'll get the general idea.

    To get high input bandwidth to your human, visual media are best; not much argument here, I suspect.

    But for the best output bandwidth from the human, you have to get all 10 fingers involved. So a keyboard with *copious* function keys is much better than anything with a rodent.

    One beef I have with mainframe unix/Xterm keyboards is that they have the functionality of an ADM-3A. You'd *think* things have improved since those days.

  414. Re: two words by Noonian · · Score: 3

    I'm sure everyone will agree that speed is crucial, but simplicity takes a little more convincing. One of the distinctions that many people fail to make is the difference between the complexity of a task and the simplicity of the interface to that task. Where Apple has made a lot of progress is in maintaining the simple interface to a complex task. Consider the rocker arrows on many of the progress dialogs: in its default configuration, the dialog informs you of the percentage of the task completed (by the visual cue of the progress bar). Click on the rocker arrow, and you get a veritable cornucopia of information -- what file/folder is being processed, how many have been processed/how many remain, time elapsed/remaining, etc.

    Just because an interface is simple, doesn't mean that it can't be complex. Just because an interface is complicated doesn't mean that it's powerful.

  415. My (YMMV) take on the UI by jht · · Score: 3

    A UI should present a simple view by default to the user that makes most, if not all, of the functionality of the software available. 10% of the learning should be able to accomplish 90% of the tasks you'd need to perform. Ideally, the user should be able to happily use the product without ever being forced to dig deep into customization, preferences, skins, or any of the like - the UI should, however, offer any additional chrome as an option. The original Mac (with a few exceptions like dragging disks to the Trash) came pretty close to this ideal - but has become more complicated and convoluted with time.

    Installers should be smart - either dragging the application to the hard drive should be sufficient to install it properly (like much of the simpler Mac software), or a simple installer (the new Windows Installer isn't bad), or a .configure script that handles everything necessary. Reasonable defaults should be set, and the advanced user should have a simple way to access those defaults to change them.

    There's nothing inherently wrong with a CLI - so long as users can function without it. In that sense, it'll be interesting to see how MacOS X turns out. Applications should be consistent to the OS's bulit-in UI functionality - using the system's UI elements should be the default behavior for any application. Chrome and skin use should be optional, if used at all.

    Finally, the keyboard/pointing device combination should be enough for most anything. Not that there's a lot of alternatives out there, but I don't see voice recognition (in cubicle farms?) or touchscreens (the old "gorilla arm" syndrome) being too useful for anything but a specialized environment. Day-to-day applications should not be designed with those type of inputs in mind. More audio feedback would be nice to see in the future, so long as it's not required to use the systems properly.

    For the most part, I remain a relative fan of the MacOS for UI consistency and design. Though it's a lot more complicated than it used to be, and there really isn't easy access to the underlying OS (AppleScript is great and powerful, but a CLI would have been nice years ago), I agree with the pundit (I can't remember who it was) many years ago who said, basically, "The Mac is the first and only personal computer that's good enough to dislike". And though I own and use systems running Windows 98, Windows 2000, and Linux, when I go home and just want to turn on one of my computers and just get something done quickly and easily, without having to think about how to do it - 9 times out of 10 that means turning on my Mac. So I really guess a good UI should steal as much of that as possible.

    - -Josh Turiel

    --
    -- Josh Turiel
    "2. Do not eat iPod Shuffle."
  416. UI Must-haves by kcbrown · · Score: 3
    After 20 years of GUIs, you'd think we'd have them pretty much nailed down by now, and that we'd have learned much more than was known when the Macintosh UI was designed. But interestingly enough, the same basic principles and requirements still apply:
    • Consistency
    • Predictability
    • Simplicity
    • Obviousness
    • "Least Astonishment"
    • Fitts' Law


    A GUI under Linux or any other Unix system will have a tougher time of meeting all these requirements than a GUI built on a newly-designed OS. The reason is that Unix already has certain ways of doing things and the requirement for consistency demands that those ways be complied with in a GUI. An example is the documentation access method: Unix uses manpages, and so a GUI should also use manpages. There's nothing that says that you can't build on that, but it's very wrong, IMO, to build an entirely new documentation structure because it violates the rule of consistency and predictability (those two tend to go hand-in-hand).

    Thus far, pretty much every Unix-based GUI (and Windows, too) violates Fitts' Law, which basically says that larger targets are easier to hit and thus more desirable, so edges of the screen are prime real-estate since they are infinite in at least one dimension. Gnome has the additional problem that its default scrollbars are far too narrow and thus are difficult to hit, which makes them difficult and annoying to use. Why the width of the scrollbars isn't included in the .gtkrc theme settings (it can only be changed in a binary theme) is beyond me.

    Both Gnome and KDE are making slow but steady progress towards being easy and pleasing to use. But I think it's very important that they avoid the mistakes made in Windows, even at the cost of compatibility with the Windows GUI: it's more important to get the UI right than it is to get it to be compatible. People can learn, especially if what they're learning conforms with the principles listed above.



    --
    --
    Use 'slashdot stuff' in the subject line in any email you send me if you want to get past the spam filter.
  417. You, sir, are an idiot by binarybits · · Score: 3

    I'm sorry, but you seem to have no respect for anyone whose life doesn't revolve around computers.

    There is nothing "logical" about most *nix GUI's. What confuses people is not relentless logic, but incredible arcaneness, the assumption that the user has a great deal of computer knowledge, and no clue whatsoever about where to start in getting a job done.

    If a user wants to make a text file (and most users aren't even clear what a "text file" is) there is nothing "logical" about typing "vi newfile.txt." And there is *certainly* nothing logical about the controls in vi.

    A computer is a tool. For geeks, it's an extremely important tool, and one that we therefore become intimately familiar with. For us, the primary job of a GUI is to get the hell out of the way so we can get our work done. We memorize key shortcuts, write scripts to automate common tasks, and do most of our work from the command line. Therefore, any attempt by GUI writers to add features is likely to just get in the way, since we already have things just as we like them.

    Most users have neither the time or the interest to become this familiar with their computers. This does not make them stupid, lazy, or irrational. It simply means that learning the inner workings of a computer is not a priority. For these users (and 90% fall in this category) the interface needs to be simple, consistent, and provide the user with a limited set of high-level choices that are clearly marked and make it clear what options the user has. A good interface for these users also hides and automates as much as possible the nitty-gritty details of computer operations.

    In other words, a mechanic might be perfectly happy reaching into the engine and manipulating it directly, but the rest of us like our steering wheels, dash boards, turn signals, etc. The fact that I can't distinguish a spark plug from an air filter does not make me stupid or irrational. I shouldn't have to know how to rebuild the engine before I drive to the store in my car.

    So for geeks the interface doesn't matter that much. We work with our machines long enough that we'll figure out practically any interface. So for us, the priorities are power, flexibility, and minimal intrusiveness.

    There *are* however, several facets of good UI design that should be observed in all good GUI's reading these comments I see that most open source types seem to be oblivious to the importance of good UI design. Some of the most important, just from my personal observations:

    The possible actions should be available at all times. This is the biggest factor in reducing the learning curve for a new interface, and it's the primary purpose of menus.

    Unix GUI's are just awful on this score. If a new user sits down at an average Unix terminal, he's not going to have a clue where to begin. I know I didn't. You *have* to have someone sitting at your side to explain shell commands to you, and even then there are dozens of little tricks that I have learned only by watching other users. Compare this with the Mac OS, in which--although there are still lots of tricks-- all the important functions are either done by direct manipulations or are listed in menus.

    Once a user becomes familiar with the interface, this is less important, but even then there are going to be features that the user hasn't used yet.

    The second requirement is consistency. The Mac OS imposes a fairly strict set of conventions for widget behavior, menu placement and layout, etc. There are standard shortcuts in almost every app for cut, copy, paste, quite, etc. Unix apps have nothing that vaguely resembles this level of consistency.

    If you think that the computer is simply a device to be "really fast at mathematics and transferring data around," I don't think you understand what the information revolution is all about. The whole point of the last 20 years of UI development is that the user can get work done with the computer without understanding its inner workings. A good UI hides unnecessary details and provides simple, high-level abstractions to accomplish the user's objectives. Often these interfaces are poorly done, which is probably why many power users have turned to the raw simplicity of the command line. But the fact that most GUI's today get in the way does not mean that all GUI's are useless.

  418. more variety by jetson123 · · Score: 3
    I think different user communities have very different needs and preferences. Here are some of the parameters along which UIs can vary:
    • simplicity vs. features
    • reliance on keyboard vs. mouse
    • command language, scripting, or "pure" UI
    • dense UI with lots of features visible vs. sequential screens with big fonts and limited information
    • UIs that are easy to learn vs. UIs that cater to the experienced user
    • UIs with lots of visual features (e.g., 3D buttons and textures) vs. very simple UIs
    • easy customizability vs. predictability of the UI across installations (for easier training)
    • easy prototyping (for developers)
    There are probably many more. I find it regrettable how most of the current UIs just keep copying each other. They all seem roughly like clones of the original MacOS and Windows and somewhat related to Smalltalk.

    What are some alternatives? Here is a list:

    • The free Squeak Smalltalk system has a UI called "Morphic", which looks fairly conventional on the surface but supports visual programming and scripting. Even the traditional Smalltalk UI (which it supports) is still rather different from the current Windows stuff.
    • The Oberon system (Wirth, ETHZ) is text oriented in a rather interesting way.
    • The Plan 9 window system (called 8 1/2; from Bell Labs) is also oriented towards consoles and commands and supports network transparency.
    • The Symbolics Lisp Machine UI (some of which lives on in CLIM) could be transcript oriented: you interact through something like an xterm, but the program output contains buttons, input fields, graphics, etc.
    • The Mathematica notebooks are also an interesting example of a new kind of UI (partly implemented transparently over the web in Schelter's netmath system).
    • Web browsers themselves do represent a kind of new UI paradigm: text oriented with input elements scattered throughout.
    • Scalable UIs (implemented in Pad++ and Jazz) represent another interesting new UI paradigm. (Scalable UIs are basically toolkits similar to 3D toolkits, but only allow 2D view transformations plus zooming.)
    • There has been some work on true 3D UIs with things resembling real-world "objects". (These may be particularly intuitive to get started with but somewhat cumbersome for expert use.)

    Window management itself is also an area of variability.

    • Most window management right now requires explicit manipulation and placement.
    • There have been some tiling window managers (even for X11) that distribute screen space automatically among windows. Some may go as far as to switch windows for you (e.g., when opening a new Netscape window).
    • Zoomable UIs present the possibility of an interesting new approach to window management.
    • Emacs is another example of tiling window management, and Emacs has managed to support a useful set of keyboard based "window management" operations. Maybe someone can figure out how to capture X11 desktop windows and place them under Emacs management so that some eoplec can live completely in Emacs?

    Altogether, I feel that there isn't enough experimentation with new UI styles, but I can see reasons for it. I hope this posting will encourage people to look around a bit more and think about alternatives (Google will quickly find pointers to the systems I mention). Most likely, in the near future, new UI styles will simply live within the current system, just like web browser and Mathematica notebooks exist within pretty sparse UI frames.

    As far as UIs go, I think one size doesn't fit all. There are too many different applications and different cognitive styles. Let's hope that with Microsoft receding in significance, we'll see a new wave of experimentation and different systems.

  419. Re:One feature is necesary by re-geeked · · Score: 3

    Actually, he is right that even novices should be able to construct complex activities that the computer can perform again and again. If the UI has such a feature, you can have elegance and modularity in your tools. Without it, you get feature bloat.

    The problem is that novice-usable UI scripting that is also useful to power users may not really exist yet. If it did, I'd think that the world would be beating a path to its door.

    --
    "You can't get something for nothing." - my grandfather, on the stock market and Reaganomics.
  420. Re:Choice of interface by grnbrg · · Score: 3
    Having different interfaces (e.g. voice recognition/GUI/command line) is vital for a usable computer. So is being able to change the interfaces you are given. MS don't seem to be aware of this fact.

    Whadda mean M$ isn't aware of this? You've got lots of interfaces to choose from! There's

    • The paper clip
    • The dot
    • The Genius
    • The HoverBot
    • The Office Logo
    • Mother Nature
    • Power Pup
    • Scribble the Cat
    • and William Shakespeare

    See? Lots of options!

  421. Universal UI. Already here. by cvillopillil · · Score: 3

    I think most people would agree that with changing technology, dynamic corporations and rollercoster-esque stock markets, software politics, and a huge number of other factors, there should be some universal way of accessing hardware, which is powerful, yet not overcomplicated, fun and yet useful, fast yet flexible. It's estimated that in 20 or 30 years, comptuer literacy will be almost as important as conventional literacy, in many areas, more important. The key to true computer literacy is programming, and finally there's a language that combines all of these factors: ease of use, portability, openness, and flexibility - Python. That language will soon replace conventional UIs.

    --
    no sig
  422. no windows by Fzz · · Score: 3
    A good user interface wouldn't use windows. At least not windows as pretty much all current window systems function. Humans just aren't good at handling the pseudo-3d stacking of windows in a way that makes good use of screen space.

    What does a UI use windows for?

    • Context switching between applications
    • As a metaphor for a directory
    • For pop-up dialogs
    For none of these tasks is a window a good mechanism.

    For context switching, the stacking and overlapping of windows confuses people, makes partially obscured windows fairly unusable, and results in poor usage of the limited screen real-estate. This isn't to say we don't want multi-tasking - just that the pseudo-3D window is a pretty clunky way of managing the interaction. Modern window systems should be able to perform more active management of the division of screen space between apps, scale the results, etc, etc, so that all apps are usable to some extent if they're given any screen space at all. This becomes especially important if voice-command interfaces ever become popular.

    As a directory metaphor, a window filled with icons is a terrible user interface - really bad use of screen space, and provides no context as to what a file is for (other than filename and file type) or where it actually came from. A better interface could be based around HTML, with automatically generated web-like pages serving the purpose of a directory, and having the advantage that they can be annotated by the user so she doesn't lose track of what the file is for.

    For dialogs, windows are pretty poor too - they're only appropriate for cases where some catastrophic event occured and the user's work flow absolutely must be interrupted. Even then, you want to tie the dialog to the window that generated the error, rather than have it pop up in the middle of the screen and where it needs to be managed separated from the application.

    Unfortunately, window-based applications are really easy to program, so the interests of the user play second fiddle for many applications.

    -Fzz

  423. Re:Easy question by gwernol · · Score: 3

    A user interface should let you: Run programs Alter system settings Allow your programs to communicate with each other (drag and drop, calling up a browser when you click on a URL)

    A few more things an OS should let you do:

    Store documents

    Locate documents

    Find the program you want to run

    Open documents

    Connect to external devices

    Locating external devices

    Allocate memory to a task

    Stop programs running

    Manage screen real estate

    Arbitrate CPU time between running programs

    Plus many others. And OS is a complex beast that has to do a lot of things.

    A user interface should be:

    Intuitive - no learning curve

    Unfortunately there is no such thing as a UI without a learning curve. All UIs are learnt. Sit down with a truly novice user some time.

    The question is how easy is a particular UI, and the answer is complex and depends heavily on the skills, knowledge and previous experience of the user trying to learn it, as well as on the nature of the UI and its documentation.

    Be physically easy to use (single key-strokes and mouse use - you shouldn't have to let go of the mouse to use the keyboard for the basic UI)

    With the caveat that what one user finds easy, another might not. Not to mention that not everything can be accessed by simple operations, so you have to choose some things to be a single click, and other require several clicks to make happen. The question is which operations do you make easy and which hard? That's what UI design is all about...

    --
    Sailing over the event horizon
  424. Disgruntled Help Desk Tech by Raveness · · Score: 3
    My dream is that a UI will be able to test the user for average intelligence then bring up an interface that is on the level that the user is on.
    • If the user is too stupid to use a computer it will show in big white letters on a black screen. "You are too stupid to use this computer. Please get a clue then try again."
    • If the user has the intelligence of a child (whatever the actual user's age), then make it with only a few large buttons and heavy restrictions.
    • If the user is average and has at least a lick of common sense, then at least make the errors give the people a clue what is going on. Instead of "memory dump..." put "I hope you saved whatever you were just working on or you're screwed. Don't bother to call Tech Support, they're just going to tell you to reboot it anyway."
    • If the user is advanced then go ahead and keep the UI the way it is.
    But Above all, make it stable! Even if they have 50 million applications open and a huge Access Database plus Oulook, make it so it doesn't crash and my life will be a whole lot simpler!
    --
    ~Raveness "I never let schooling interfere with my education." -Mark Twain
  425. Re:Choice of interface by Kaa · · Score: 4

    What programmers and designers need to realize is that they need to provide alternatives. Or at least, they need to make it possible for the user to choose/install a third-party UI if they so choose.

    That's a laudable goal, but a very hard thing to implement. Consider this: we pretty much agree that the interface across the applications has to be consistent (for obvious reasons). This means that all applications must be decoupled from their interfaces, and that's nontrivial if possible at all. An application will no longer be able to do

    switch(some_event) {

    ...

    case button_1_release: ....

    ...

    }

    because it doesn't know whether the user interface used actually has buttons (maybe it's voice input). I actually don't think it is possible to decouple an application from it's UI to this extent.

    On a simpler note, consider writing an application the full functionality of which is accessible through (1) command line; (2) GUI; (3) voice input. It's much harder than make a just-GUI or just-command-line applications.

    The second problem is: how do you plug in a new user interface for an application? An application has a set of inputs that it reacts to -- the user interface has to know each one of these inputs and map each of it to some mouse/keyboard/voice even. Retrofitting a new user interface onto an application is going to be pretty hard (and demand the application's source most likely) and writing a user interface that you can plug into existing applications is going to be basically impossible (no, I'm not talking about simple things like theming and keyboard remapping).


    Kaa

    --

    Kaa
    Kaa's Law: In any sufficiently large group of people most are idiots.
  426. You've got it backwards by FascDot+Killed+My+Pr · · Score: 4

    What kind of handle should a tool have?

    Form follows function. The user interface is defined by the application and the people who use it. That's why it's called an "interface".

    It's also why I cringe when I see GNOME/KDE/UI of the Month (well-intentioned as they are) essentially trying to port the UI from Win95/MacOS (OS's that, IMO, are utterly powerless) to run on top of Linux. It's like covering a bandsaw in wrapping paper: it looks pretty, but now you can't use the tool.

    To forestall the inevitable "what about my grandmother" arguments:

    1) I'm not saying "keep it ugly and complex to keep the lusers out". I'm saying "think about the power of the tool, THEN decide on a UI." For instance, "gless" (a GNOME pager) is completely useless. How do I pipe to a graphical tool? And even if I could, does it provide me with anything I didn't already have? Does it take anything away?

    2) A lot of people who take more than 5 minutes to think about UI's will respond with "but my grandmother doesn't need to run pipes and greps and stuff". OK, but that's not an argument for a simple (minded?) Linux UI--it's an argument for your grandmother to use a different OS.
    --
    Have Exchange users? Want to run Linux? Can't afford OpenMail?

    --
    Linux MAPI Server!
    http://www.openone.com/software/MailOne/
    (Exchange Migration HOWTO coming soon)
  427. Some problems I've seen with UI's by chroma · · Score: 4
    Working with people who are new to computers, I've noticed several common problems:

    1. Multiple overlapping windows are very hard to sort out for someone who's not used to it. Notice that on video games, ATM's and the like that everything is completely modal; you're not distracted by everything else that's going on.

    It would be better if computer GUI's took care of some of the complexity associated with arranging windows, dialog boxes, etc.

    2. People aren't used to having to organize their files in a thougtful manner. Many users give their files names like 'Bob.xls' or 'Mary.doc'. What directory are they saving to? Many (maybe even most) people have absolutely no idea.

    If the computer organized the user's data into a searchable database, rather than a hierarchial filesystem, information would be much easier to retrieve and reuse.

    3. Collaboration is excessively difficult. This could be remedied through better versioning, easier interfaces to web publishing, and the like.

    There are a lot of other problems, too, such as creeping featurism, emphasis on style over substance, etc., which I'm sure will be mentioned in other posts.

    --

    Your design to a real part online: Big Blue Saw
  428. One feature is necesary by prizog · · Score: 4

    Every decent interface I've used has scripting. Shells, Emacs, vi, GIMP, Blender - they're all scripable. An interface without scripting is like .... Windows.


    -Dave Turner.

    1. Re:One feature is necesary by roman_mir · · Score: 4

      It is quite unfortunate that masses are mixing up the notions of system functionality and of the actual science of User Interface.
      It maybe a necessary functional requirement for an operating system to allow scripting capability, however user interface has actually nothing to do with that. An operating system may impose certain functional restrictions and it may provide standard user interface libraries, this does not mean that those restrictions are good or those libraries are at all usefull.

      If I remember correctly from my UI classes the major problems in creating a successfull user interface are always related to certain restrictions in functionality and thought barriers.

      Well Designed User Interface faces many challenges, here are some of them:

      1. Interface must allow new user training and it can gradually allow more and more difficult tasks.
      2. Interface must have the possible minimum number of movements (levels) to do a task (instead of moving a mouse onto a menu item, click the button and a circular menu appears where the cursor is with the cursor in the middle, let's say you divide the circular menu into four sections, once you strike in the direction of the needed section without releasing the finger, another circular menu appears with the cursor in the middle, then you have another hand motion to do instead of selecting an item from a bar menu etc).
      3. Good interface provides analogies - if you want a magnifying glass, why can't you actually take a square or otherwise shaped magnifying glass from your office desk. So in VR, you actually would have items physically associated with your tasks. Pull your magnifying glass over your text and it magnifies for you (not just zooming in and out, actually moving the real magnifying glass over something). (virtual office)


      In fact there are departments totally devoted to user interfaces. Without these departments, what kind of user interfaces would we have for a computer? a car? a tv? a vcr? your stove, your microwave (bad example), even your door - How many times have you being in a situation where you walk into a door and you don't know whether to push or to pull the handle? (bars are for pushing, handles are for pulling - one way for identifying the correct way to open a door)

      Most of the time we all are users of someone elses idea of a user interface

    2. Re:One feature is necesary by Sunpig · · Score: 4

      I think you're completely missing the point here. While scripting arguably makes life easier for power users, it is pretty much useless for novice users. Shells, emacs and vi are nice if you already know what you're doing. Sit a computer newbie down at a login: prompt and give them the task of writing an email to their buddy in Australia, and you'll see (or not) just how necessary scripting is for a good user interface. I'd argue that one of the most basic needs for a good good user interface is for a user to immediately be able to identify the first step they need to take to perform a desired task. -Sunpig.

      --
      Amazing but false: If taken at once, the amount of natural arsenic in the human body would be a lethal dose.
  429. A quote I just found by LiNT_ · · Score: 4

    I just found this the other day on some linux quotes list. Sorry I can't find the link

    "The only "intuitive" interface is the nipple. After that, it's all learned."
    -- Bruce Ediger, bediger@teal.csn.org, in comp.os.linux.misc, on X interfaces.

    LiNT
  430. multitasking... by smoondog · · Score: 4

    M$ used to make fun of this when IBM was bragging that you could format a disk in OS/2 and still do other things, but I think they had a point. I hate it when an OS makes me sit while it is doing something stupid or nothing at all! (Like dialog boxes on Macs). Sometimes on Macs I get a dialog that doesn't allow me to switch windows, but I need to see another window to know that answer it wants.... Arghh. There is no excuse in this day and age to not have an interface that allows you to click between windows and objects seemlessly.


    -- Moondog

  431. Consistency! by JamesSharman · · Score: 4

    I can't speak for anyone else but I value consistency in the interface above almost everything else, this can of course only be achieved with well-written style guides etc. One of my biggest gripes with windows recently has been the seemingly diverging application interfaces, many apps even go so far as to design pretty graphical controls which may look pretty but are eroding the intuitiveness that remains one of windows few good points. Projects like GNOME and KDE should pay careful attention to interface design trends and encourage consistency in the different applications.

  432. Easy question by Ron+Harwood · · Score: 4

    A user interface should let you:

    Run programs
    Alter system settings
    Allow your programs to communicate with each other (drag and drop, calling up a browser when you click on a URL)

    A user interface should be:

    Intuitive - no learning curve
    Be physically easy to use (single key-strokes and mouse use - you shouldn't have to let go of the mouse to use the keyboard for the basic UI)
    In obtrusive - in other words, it's not the end goal, it is a means to a goal.

  433. Different things to different people. by seebs · · Score: 5

    Consistency is a primary feature for most users; "easy" is often irrelevant, because beginners end up using a cheat sheet of some sort anyway. Consistency is one of the things that allows rapid learning, and is vital to the success of an interface among non-expert users. It's actually fairly valuable to experts, too.

    GUI? CLI? Voice? Who cares! The key thing is that:

    1. You can get a list of plausible options in most cases. The list may be a bunch of icons, any of which you can click on. It may be a dock. However, somewhere, there should be some kind of guide to what your choices are.

    2. There will be cases where no such list can be made, because there are thousands of entries; in these cases, a little sorting goes a long way.

    3. You must be able to pick an action unambiguously.

    4. You must get feedback as to whether an action has succeeded or failed, and if it failed, you should get an indication of what prevented it.

    5. You should be able to control the level of feedback based on your needs.

    6. You should be able to abort unintended actions. Undo is nice, but abort is absolutely essential. For newbies, dangerous actions should come with a clearly labeled delay during which an abort will be harmless.

    Most UI's try for some portion of some of these. Some attempts to make "easy" user interfaces end up falling down. How do you rename a file on a mac? Click on the name and wait a while, and it becomes a text box. However, if it can't be renamed, no one tells you, because there's no reason to believe that you really meant "rename", not just "select", and it would be stupid to give you the warning if you were just selecting a file.

    This gives us also:

    7. Explicit actions are preferable to implicit actions. You should always know what the computer thinks you're doing.

    --
    My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
  434. Many things matter; users are diverse by ToyKeeper · · Score: 5
    There are lots of things which matter in a UI. Different people care about different parts, which explains why some people use Enlightenment and others still use twm.

    But a few big, important things:

    • Ease of learning - steep learning curves bother people!
    • Power - it must accommodate both novice and advanced users (scripting is good here)
    • Consistency - users should be able to use new programs without having to relearn a new interface each time
    • Response speed - it must respond quickly when the user tells it do do something
    • Efficiency - it must allow the user to complete tasks quickly, rather than getting in the way. This is one spot where Windows has really failed.
    • Aesthetics - yes, most people care about how pretty their desktop is (me included)
    • Appropriateness - the UI should reflect the task it was designed to facilitate. For a computer, this means it must be flexible enough to allow many different kinds of applications to work
    • Flexibility - both for different types of tasks (word-processing really is quite different than video editing), and different kinds of input devices (why can't I use the joystick to navigate programs?)
    • Predictability - things should do what they look like they'll do; nothing more, and nothing less
    • Context - the UI should give obvious context to the user, so they'll know what they need to do. Conversely, it should also provide simple and easy ways for the user to specify a new context (multitasking, etc)
    That's only a few things which matter, but hopefully it illustrates the difficulty of doing it well...
  435. Newbies and experts by Kaa · · Score: 5

    I think one of the major requirements for a user interface is a very hard one -- it has to simultaneously:

    (1) Allow newbies to understand what's going one and learn (e.g. menus);

    (2) Allow casual users to use "standard" skills in an application (consistency across applications);

    (3) Allow experts to use fast but nonintuitive ways (e.g. keyboard shortcuts) and to considerably modify the user interface if desired (e.g. remap keyboard).

    (4) Allow a smooth progression from the newbie status to the expert status (newbie and expert should not be two completely different interfaces).

    Kaa

    --

    Kaa
    Kaa's Law: In any sufficiently large group of people most are idiots.
  436. Absolutely correct. by cje · · Score: 5

    This is one area where I think a lot of the open source tools get it right. A good example would be the utilities that are available for burning CDs under Linux (and other operating systems) such as mkisofs and cdrecord. These tools provide the functionality that you need to premaster and record CD-Rs on the command line. Then you've got software such as xcdroast that essentially acts as a graphical front end; when it needs the services of either of the previously-mentioned pieces of software, it simply opens a pipe to them and lets them do the work. The result is that if you prefer working with a command line (as I do), you're good to go. If you prefer working with a GUI, you're still good to go.

    In many ways, this type of architecture is an extension of the classic paradigm of Unix tool development: have a lot of tools that accomplish small tasks, and have the ability to chain those tools together to perform more complex operations. Only in today's environment, "chaining together" often involves wrapping a functional GUI around them to make them easier and more intuitive for users to navigate. This type of architecture really does offer the best of both worlds; it gives users the tools they need to perform a task, and it offers them a choice as to how those tools will be used.

    --
    We're going down, in a spiral to the ground
  437. Choice of interface by JimDabell · · Score: 5
    Recognise that one interface cannot possibly be the best thing for everyone in every situation. What I need from an interface is significantly different from what my mother needs. Also, my needs change depending on the task at hand.

    Having different interfaces (e.g. voice recognition/GUI/command line) is vital for a usable computer. So is being able to change the interfaces you are given. MS (as well as other companies) don't seem to be aware of this fact.

    1. Re:Choice of interface by Gurlia · · Score: 5

      Absolutely agreed!

      I think one of the major factors in people's dissatisfaction is due to the designer of the UI recognizing that there is no such thing as one UI to suit everybody. Almost all UI designers are motivated by seeking the "holy grail" of UI's, so to speak. This is especially true of GUI's. However, my opinion is that there is no such thing as a Holy Grail of GUI's (or any other UI for that matter). Everyone has their own preferences, and different people have incompatible preferences.

      This is why GUI's like MS Windows are loved by some and hated by others. This is why debates over whether or not Window's GUI is good or not will never be resolved. There is no one UI that satisfies everybody, and until UI designers realize this, we will always be complaining.

      What programmers and designers need to realize is that they need to provide alternatives. Or at least, they need to make it possible for the user to choose/install a third-party UI if they so choose. What turns people off is when they are force-fed with one and only one, irreplacable UI, which they happened to dislike, be it CLI or GUI or whatever else is out there.

      We can argue forever over what features are "necessary" and what features are "superfluous" but IMHO we will never get anywhere until we accept the fact that different people consider different things as necessary, and they are often irreconciliable. Let's not even talk about GUI's: even with CLI, some people prefer bash, some prefer csh, others prefer other shells out there. Just try to convince a csh lover to switch to bash and watch their reaction.

      There are already too many UI's out there designed by people who are seeking the "holy grail" of UI's. IMHO what we need isn't a "better" UI, what we need is a system where the user can choose his/her own UI easily, and where there are many alternatives that the user can choose from to find one that best fits his/her need.


      ---
      --
      mikre he sophia he tou Mikrosophou.
  438. My Mother by Lan-Z · · Score: 5

    "Why are computers still hard to use for people like my mother, and how can we make this better?" Hmmm...then she'll find all my porn. I wish not to make this better.