Slashdot Mirror


The Future & History of the User Interface

An anonymous reader writes "The Mac Observer is taking a look at UI development with lots of video links to some of the latest developments in user interfaces. It also has links to some of the most interesting historical footage of UI developments, here's one of the 1968 NLS demo. From the article: 'Sadly, a great many people in the computer field have a pathetic sense (or rather ignorance) of history. They are pompous and narcissistic enough to ignore the great contributions of past geniuses... It might be time to add a mandatory "History of Computers" class to the computer science curriculum so as to give new practitioners this much needed sense of history.'"

21 of 249 comments (clear)

  1. Overlapping windows by Peaker · · Score: 4, Insightful
    Heh, the issue of User Interfaces always makes me laugh at the incompetence of seemingly the entire world when it comes to User Interfaces (or the whole computing world in general).

    Some obvious trivial faults:
    1. The whole overlapping window model is bankrupt. You want to minimize the amount of information, especially redundant information, that the user has to input, and output as much information in an accessible way. The overlapping window model does the opposite: it requires that you tile your windows manually (or through tedious, inaccessible menus) rather than specifying which windows you want to see. If you don't do that (and due to the required effort, most don't) then you don't see all of the information you want even though most of the screen is wasted space!.
      For reference, just look at your screen now, and watch how much of it is covered by empty "gray areas". When you open a new window, does it hide gray areas, or real information?
      This is even more absurd when there are just a couple of windows, hiding each other, when the entire screen is free space! The computer expects YOU to work for HIM and move these windows from hiding each other.
      This phonemenon is also felt in list boxes, where you are expected to adjust the column widths manually to not be too short/too long, even when there is an optimal adjustment readily available. You again have to work for the computer, and ask for a ctrl+plus to set it up. Most people don't even know about ctrl+plus in column-listboxes.
      Some programs make it even worse, and don't let you resize their windows when the entire screen is free, and you have to scroll through their data in a little window.
    2. Internationalization and shortcut keys.
      What's so fascinating about this example - is how common it is across platforms, programs, operating systems.
      The feature is called "shortcut keys" and yet everyone is implementing it as "shortcut symbols".
      This is terrible - when you switch between languages, all shortcut keys break!
    3. Multitude of widgets, with overlapping functionalities. This is just silly and confusing to beginners. We need less widgets, not more.
    4. "Jumpyness". Today's GUI's all "jump". What I mean by that is that they don't smoothly switch from one state to the next, but rather do that with a single screen refresh. The human mind doesn't read that very well. For example, scrolling down "jumps" down a pageful instead of scrolling down a pageful in a smooth motion.
      The fact that fixing this would require modifications of all existing GUI programs is a certificate of poor architecture of GUI software.


    There are many more trivial issues to fix. Until they fix these, I find it very funny to talk about future directions for the User Interface. We haven't even gotten the basics right yet!
    1. Re:Overlapping windows by dr.badass · · Score: 2, Insightful

      If you don't do that (and due to the required effort, most don't) then you don't see all of the information you want even though most of the screen is wasted space!.

      Why make the assumption that you always want to see all of the information in all of the windows you have open? Just because a window is visible doesn't mean it is relevant to the current (and ever-changing) task.

      Right now I'm typing a comment on Slashdot, but my mail client is open behind this window because I was reading email just a few minutes ago. When I'm done typing this comment, and close this window, I'll be back in my email client. Without the very simple ability to have windows overlap, I would be looking at two completely different and unrelated tasks, which doesn't seem like an improvement.

      Today's GUI's all "jump".

      All except Mac OS X.

      --
      Don't become a regular here -- you will become retarded.
    2. Re:Overlapping windows by CaptainCarrot · · Score: 4, Insightful

      I disagree.

      1. Overlapping windows are used to make more information available to the user than can be displayed on the available screen real estate. The RL metaphor is a collection of papers on a desk. You can't see every paper all at once, but you bring to the top of the pile those which you need. You do this for your own benefit, based on the needs of the moment, not for that of the desk -- or the computer. The whole point is that the space isn't tiled. I don't like working that way personally, and I suspect the reason we've moved away from that model is because most people don't. Remember the early Windows versions?

        You asked how much of the screen was empty space and therefore wasted? Very little of it, most likely. Very little of mine is as I type. Space with no content in it is not necessarily wasted. In fact, it most likely isn't. Space is crucial to how our brains orgainize what we see. If every square inch of space on the screen was being used, we'd see it as a jumbled mess. The best and most eye-pleasing data presentation use of designs very carefully balance empty space against that occupied by content. Take, for example, your original post against my reply. See how I create spaces between my paragraphs with properly structured P tags? See how much more readable that is?

        I agree that some programs are badly designed and make poor use of the model. That doesn't mean the model itself is broken.

        Yes, it would be nice for those very particular about their screen arrangements if they could save state between sessions and recover it immediately when they start back up again. This is an implementation issue 00 remembering, of course, that most people prefer not to tile.

      2. Yes they're shortcut symbols really, but people have a hard time remembering arbitrary symbols. That's why we employ mnemonics, which naturally relate to the language of the interface. For example, it's easy to remember the shortcut to open a file in most word processors (ctrl-O) because "O" is the first letter in the word "open". It's not reasonable to expect such mnemonics, input through an alphanumeric keyboard, to work any other way -- unless you can think of a better one where alphanumeric input is both easy to remember and language-independent. Good luck.
      3. This is not an inherent fault in the model, but is a failure across an industry to standardize. In my own GUI design work in Motif, this is why I use the default behavior of the default widget set as much as possible. The users most often know exactly what to expect then.
      4. I remember when some word processors and the like included a "smooth scrolling" option. No one used it. It turned out that most people wanted the screen to scroll quickly instead.

      --
      And the brethren went away edified.
  2. The Future is easy to predict here. by Anonymous Coward · · Score: 5, Insightful

    In the long term, we'll be communicating with computers the same way we communicate with our pets, kids, and coworkers - with a combination of body language, voice, gestures, etc.

    In the short term, we'll see Longhorn slowly and sloppily copy whatever Apple's doing; and we'll see KDE and Gnome both copying the bad parts of what the Gnome and KDE are doing respectively; and we'll see all real computer users using emacs/vi/pine/xterm/screen like they always did.

  3. Nobody's paying attention by quokkapox · · Score: 4, Insightful

    At least not to common consumer devices. I cannot even count the number of remote controls, microwaves, cellphones, dishwashers, ATMs, and other devices which are seem to be designed completely without thought for the human who will need to use them.

    Remote controls - ever heard of making the buttons distinguishable by FEEL, so I don't have to look down to tell whether I'm going to change the volume or accidentally change the channel or stop recording?

    Microwaves - make the buttons we use all the time bigger and obvious. I can't use my microwave oven in near dark because the stupid thing's start button is indistinguishable from the power level button. That's just dumb. I don't need two different buttons that say "Fresh vegetable" and "Frozen vegetable" which I never use; and I have to babysit the popcorn anyway, so I don't need a "popcorn" button hardcoded for some random time limit. A microwave should have a keypad for entering time and bigger buttons labeled +1minute, +10seconds, ON, and OFF. That's all 99% of people use anyway.

    The people who design interfaces should be made to use them for long enough so that they work out at least the most obvious design flaws.

    I keep putting off buying a new cellphone because I know I will have to learn a new interface even to set the freaking alarm clock and it will probably take six menu choices to do it.

    --
    it's a blue bright blue Saturday hey hey
    1. Re:Nobody's paying attention by EvilIdler · · Score: 2, Insightful

      Analog knobs rock. Heavily computerised interfaces outside actual
      computers can be very annoying. Get a nice, cheap Korean microwave :)

    2. Re:Nobody's paying attention by evilviper · · Score: 3, Insightful
      I can't use my microwave oven in near dark because the stupid thing's start button is indistinguishable from the power level button.

      Better question: WHY THE HELL ARE MICROWAVES DIGITAL? What part of "close the door and turn the dial" was so hard for people to understand, and how did typing in digits help? Microwaves aren't phones.

      Was it the extra precision? People need to be sure they are microwaving their sandwich for exactly 2 minutes and 45 seconds, and ABSOLUTELY NOT 2 minutes and 46 seconds?

      Are there a lot of people out there with only one finger, who find it faster and easier to type in 1-0-0-0-Start rather than turning the dial a quarter turn to "10m"?

      What in the world makes people believe replacing analog with digital is the answer to absolutely everything?
      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  4. Sorry, I've got work to do... by Ralph+Spoilsport · · Score: 1, Insightful
    I don't see how the UI issues matter. I have work to do. If the UI does XYZ and I'm doing ABC, the UI is of no consequence. We regularly have idiotic flamewars here between people glued to CLI, and the zealots of GUI. Here it is, 2006, and I'm kicking builds in CLI using UNIX commands. I remember when the Mac came out all these CLI shitheads were barking "the Mac is a toy! REAL MEN use CLI and DOS!" Whatever. DOS bit the dust, and CLI is marginalised, but it hasn't disappeared because in specific ways, it's very useful. GUI was able to do 90% of what CLI did, and did it intuitively and easily. I don't see how these new UI innovations are going to improve on the work I do in a GUI in the same way the GUI improved on the CLI.

    All that gestural stuff will make my work better exactly how? It's not gestural - it's just arm-waving of the "IN THE FUTURE..." variety.

    HOWEVER: the I/O brush IS very k3wl. I can think of all kinds of fun stuff to do with that. It's an app, not a UI, but it's definitely fun.

    RS

    --
    Shoes for Industry. Shoes for the Dead.
  5. Re:Assuming that I won the lottery tomorrow... by pugh · · Score: 2, Insightful

    Dude, If you win the lottery have some fun. Buy a Ferrari, hang out on a tropical island for a while, do whatever you want. You don't have to go back into full-time education if your're rich.

    --
    "I am a die-hard capitalist....but unethical, lying, bastard capitalism is really no better than socialism" - unknown
  6. Re:self study as elective was denied by Anonymous Coward · · Score: 1, Insightful

    My cynical viewpoint is that certain parts of history are buried quite deliberately. Or at least I can understand you not being encouraged to research it, to some people it's controvertial. Why? Partly because of the current madness regarding patents and partly because modern culture encourages an arrogant disconnect from our greater history. No longer is it "the shoulders of giants" we stand on, kids today seem to think everything was invented in the last 20 years, instead we live on the roof of a great skyscraper built by magicians. To understand your technological history is to grasp the context, the limitations, and then to develop a little healthy contempt for soothsaying futurist punits who whip up a frenzy of hype around each dull and trivial new technological advance.

    Many of the things we believe are new are just rehashed ideas that were ahead of their time. As we go forward, ideas that were too advanced get second chances at coming into the mainstream. Sometimes they succeed, other times they have to wait for the third or fourth chance. A generation kept in ignorance of its history can be fooled into thinking those old ideas are the creation of new developers.

    Please, write your history of computing, research it well and thoroughly starting with the Babylonians, but remember to include multiple perspectives, generally unquoted and unrecognised foriegn acheivements, look for prior art on every claim made in the last 30 years and you'll
    probably find the person with their name to the acheivement "borrowed" it from work within a timeframe of 10-50 years previous.
    Nothing upsets "historians" with a vested interest more than revisionists, but it's a necessary part of the very formation of history and informed hindsight .

  7. Two mice. by Poromenos1 · · Score: 2, Insightful

    Seriously. Most of that stuff can be done with two mice. Why hasn't anyone implemented that yet? Just grab the image from the ends and drag to resize, or drag one end to rotate, or whatever. Two mice would be much more natural. Sure, you'd probably use the one in your good hand more, but for some stuff it would be great (perhaps handling 3D models?).

    --
    Send email from the afterlife! Write your e-will at Dead Man's Switch.
  8. I kind of did something related during my degree.. by Anonymous Coward · · Score: 1, Insightful

    During my degree, I studied a module which was essentially "The History of Programming Languages".

    Suffice to say, it was the most soul destroying, mind numbing, useless waste of time that anyone on my course ever encountered. I'm sure it's down to the lecturer's "style", but it was really, really god awful.

    But I agree, perspective is important...just like everything though, it has to be taught well! :)

  9. apply it to a calculator... by 3seas · · Score: 3, Insightful

    take these fancy UIs and use them to control a calculator and then decide if it right for the job.

    "Right for the Job" is the key phrase.

    There are three primary UIs:

    the command line (CLI)

    the Graphical User Interface (GUI)

    and the side door port used to tie functionality together. known by many different names, but in essence an Inter Process Communication Port (IPC)

    Together they are like the primary colors of light or paint, take away one and you greatly limit what the user can do for themselves,

    But if they are standardized with the recognition of abstraction physics (in essence what a computer impliments) then the user would be able to create specifically what they need for the job they do via understanding and applying abstraction physics. The analogy would be mathmatics and the hindu-arabic decimal system in comparison to the more limited roman numeral system.

    There are all sorts of user interfaces that can be created but they all are made up of some combination of the primary three, perhaps lower down on the abstraction ladder but none the less there.

    The reason why this is unavoidable is simple due to the nature of programming.

    Programming is the act of automating some complexity, typically made up of earlier created automations (machine language - 0's and 1's is first level abstraction - all above it is an automation). The purpose of automating some complexity is tocreate an easier to use and reuse interface for that complexity. And we all build upon what those before us have created. Its a human unique characteristic that make its our natural right and duty to apply.

    What the failure of so called computer science is guilty of is distraction by the money carrot, starting with IBM and wartime code cracking paid for by government/tax payers.

    This distraction has avoided genuine computer science, or abstraction physics as it would be far more accurate in description.

    Abstraction physics to the creation and manipulation of abstractions as mathmatics is a creation and manipulation of numbers, as physics and chemistry is a creation and manipulation of elements existing in physical reality.

    With the primary three colors of paint you can paint anything you want, but you cannot call a painting "the painting" any more than you can call a mathmatical result mathmatics. Nor can you call some interface built upon the primary UIs the silver bullet of UI's.

    All this will become much more clear, common and even second nature once we all get past the foolish fraudlent idea that software is patentable.

    A roman numeral accountant, in defending his vested interest in math with roman numerals, promoted that only a fool would think nothing could have value (re: the zero place holder in the hindu arabic decimal system.)

  10. Re:Assuming that I won the lottery tomorrow... by tchapin · · Score: 2, Insightful

    Here's a listing of Human Factors (and associated) graduate programs, which is published by the HFES. http://www.hfes.org/web/Students/grad_programs.htm l

    Todd

    --
    -- !todd erases a red dot! I steal music on the internet.
  11. Re:Whatever the next UI is, it won't be "intuitive by mincognito · · Score: 2, Insightful
    It appears that Jef was wrong: even nipples are not an intuitive user interface.

    But for a breastfed child a nipple on a bottle is an intuitive interface.
  12. No, no, user interface design isn't about gimmicks by Animats · · Score: 2, Insightful

    Apple, in its early days, had a good sense of what was important in a user interface, and that was expressed in the "Apple Human Interface Guidelines". Much of that knowledge has been lost.

    One of the original Apple rules was "You should never have to tell the computer something it already knows". Consistently applying this rule requires a clear separation between infomration about the host environment and individual user preferences, something most programs don't do well. Apple was reasonably faithful to that rule in their early days, but over time, got sloppy. Microsoft never did as well, and it was an alien concept in the UNIX world.

    It's common, but wrong, to bind environment decisions at program install time, which means that a change in the environment breaks applications in mysterious ways. The whole concept of "installers" is flawed, when you think about it. You should just put the application somewhere, and when launched, it adapts to the environment, hopefully not taking very long if nothing has changed. That was the original MacOS concept.

    Much of the trouble comes from failing to distinguish between primary and derived sources for information. "This program understands .odf format" is primary information, and should be permanently associated with the program itself and readable by other programs. ".odf documents can be opened with any of the following programs" is derived information, and should be cached and invalidated based on the primary information. "I would prefer to open .odf documents with OpenOffice" is a user preference. None of the mainstream operating systems quite get this right. That kind of thing is the frontier in user interfaces, not eye candy.

  13. Re:Multi-touch by Eideewt · · Score: 3, Insightful

    Agreement here too.

    My biggest gripe with today's computer interfaces is that attempting to funnel everything you might want to do through a mouse plus (if you're lucky) a keyboard forces you (as an interface designer) to make a difficult decision: either waste huge amounts of screen real-estate on functions you need to include, or hide them away.

    What we need are interface devices that aren't so bandwidth limited. When we want to make the computer perform an action, all we are generally able to do is locate it on the screen and say "Do." On systems with multi-button mice the situation is somewhat better. Most Firefox users are familiar with "left click to follow a link, middle click to open it in another tab, and right click to get an [ick] context menu" idiom. Scroll wheels are another instance of a bandwidth-increasing addition to the system. Rather than clicking an arrow to scroll, we are now able to spin a wheel while pointing in the general area of the thing we wedant to scroll.

    Some systems put the physical controls available to even better use. The Sam text editor, its successor Acme, and basically all of the Plan 9 operating utilize the mouse buttons to perform distinct and consistent actions. In Plan 9, button 1 selects, and the other two buttons, when used in conjunction with it, perform other useful actions. The exciting feature of this setup is that it moves the selection of possible actions out of the computer, where navigation is inefficient, and puts it literally under your fingertips. Rather than selecting an object on the screen then selecting an action, or vice versa, one can simply point at it and say "do this." The ability to convey specific actions in one fell swoop is what makes command line junkies (myself included) swing the way they do. What could be more exciting than marrying that power with a GUIs flexible expression?

    An even more extreme example is the five button keyboard (for the left hand) + three button mouse featured in the Doug Engelbart video linked from the summary. I'm not sure how his system used them, but this setup allows for eight functions using the most obvious mapping, many more than modern interfaces. Not only that, but with chording, it's possible to increase the number of possible actions to a dizzying 255, which is probably way too many to actually make use of*: Engelbart's system uses typed commands as well as clicks rather than attempting to assign a meaning to each combination of button presses. One good way to cope with the number of possibilities is to assign a general funtion to each button, and to combine those functions to perform actions. For example, if the left mouse button selects text, the middle button pastes it, and the right mouse button cuts it, one can copy by selecting with LMB, then pressing RMB, MMB in succession. Other button actions might be "system" to trigger global system functions, "window" to do window management and "inspect" to look more closely at an item. What might happen when you press these together? Exposé, anyone? But without reaching for the keyboard.

    Anyone interested in user interfaces should take a look at the Sketchpad computer program for starters, which was simply amazing, and at "Alan Kay: Graphical User Interfaces" on Google Video. GUIs have a rich history that is not evident in modern interfaces.

    * This is a good thing! Even when a the system allocates a set of global button presses and applications implement their set of commands, there will still by plenty left over for the rest of us to allocate as we see fit. This is the one point where I disagree with Bunions: I love that multimedia keyboards aren't standardized, because it means that programs don't depend on the buttons they provide, which in turn gives me 32 keys (on the keyboard I have) that I can bind to any action I want, without losing any functionality.

  14. Anybody else think that video is a fake? by Kodack · · Score: 2, Insightful

    I can't think of any reason why someone would want to fake a 1968 computer GUI video but there are several things here that confuse me.

    1. The mouse and GUI were not invented until the 1970's by Xerox. In 1968 the microprocessor hadn't even been born yet.

    2. Look at the headset that the guy is wearing. They did not have small compact, against the ear, short tube microphoned, headsets in 1968. They used around the ear headphones hte size of your fist with a boom microphone sticking out the side. They just did not have those kinds of headsets back then. Look at any vintage NASA or military video, and they had the best that money could buy.

    And last but not least, despite the fact that there were no micro processors in 1968, there were also no video displays capable of rendering a rasterized mouse cursor..... They used teletype formated rows and columns of ASCII characters. Hell in 1968 even super computers still used teletype terminals and punch cards......

    It looks like a well done fake using computer effects to age the video.

  15. Re:I'm outraged! by Webz · · Score: 1, Insightful
    In each of these cases, user feedback was nearly universally negative, and yet the "improvements" remain in place.

    As an interface/interaction designer, your product is like your baby, with all of its quirks and whatnot. Even in the face of criticism, rarely would designers "go back" on their decisions. That would force them to acknowledge two things: 1) my baby is ugly! 2) i was wrong!

    And who wants to do that?
  16. Touchscreens and desktops don't mix. by default+luser · · Score: 2, Insightful

    For simple things, sure, a touchscreen works wonders. Kiosks and self-contained systems (such as medical equipment) would be complicated without them.

    But for any other general-purpose computer, the touchscreen lost out long ago. There were a number of touchscreen monitors for sale in the 90s, all the way to today, but they never made inroads over the mouse. The problem is two-fold:

    1. people don't like raising their arms to horizontal and manipulating a screen while seated. It is an unnatural position. See, normally when you're STANDING and your arms are horizontal, you are using your entire body as a pivot point. Watch a painter at-work: they move more than just their upper-body, and this makes the work feel "easier" because the loads are distributed to more muscles. When you sit at a touchscreen, you have to use just the upper-body to move and keep your hands horizontal, causing you to wear out faster.

    2. touchscreens are inherently large with low-resolution, like all monitors. What this means is you end up moving your finger a lot further than you should have to, because your shoulder-arm-wrist-hand-finger is capable of much higher reolution than the screen (typical mouse resolution is 600 dpi, typical screen resolution is 100 dpi). The end result is more strain than you should have to endure.

    In fact, the modern touchpad on laptops is proof that these two issues make touchscreens unusable:

    * touchpads are MUCH higher resolution than their respective screens, yet they are as usable as mice or trackballs.

    * touchpads are at the horizontal position, a much more natural position for your hands while seated.

    Leave the touchscreens to their niches: self-contained, rugged computers, and kiosks. For seated computing, the mouse is a better extension of the human hand than a touchscreen will ever be.

    --

    Man is the animal that laughs.
    And occasionally whores for Karma.

  17. let's hear it for OS level voice recognition! by ffflala · · Score: 2, Insightful

    Use voice recognition on a phone tree lately? It is improving. Hell the default voice-recognition that comes with XP works accurately enough with a little training. Application commands are part of the package -- why not OS commands?

    I can map my own shortcut keys if I desire. Have I simply missed the possibility of how to map a selected vocabulary of voice commands to my OS? Without having to pay for Dragon Naturally Speaking, that is. (I'm cheap, and I have good projection.)