GUIs for Everyone
An anonymous submitter writes: "A former Microsoft and Creative Labs interface designer has an interesting diatribe on the approach of Linux GUIs on the desktop. Thomas Krul has three Microsoft patents for human factors research into digital interfaces and graphic software functionality. Probably most known for the interface work he had done on Softimage DS and its web site. Though not a technical read, it does provide an interesting note on the approach for Linux on the desktop." And headless_ringmaster notes that Jef Raskin, the guy who designed the first Macintosh and author of The Humane Interface, has a SourceForge project putting his ideas into action.
It seems to me that the GUI's available (including KDE) favor substance over style. To make significant inroads to the desktop market, that needs to change. People love flashy things!
Curb CO2 emissions: Kill yourself today!
I don't put a lot of stock into articles like these because the way I use my computer is so vastly different from others that most people couldn't even sit down and use my computer if they wanted to.
No, that's not "bragging" or me feeling "31337". It's just a fact that over the period of eight years of using UNIX, I've gotten things reduced to the minimum amount of stuff I need with the exact customizations I want.
My desktop has nothing but an xclock (yes, the real xclock in digital mode). My Emacs has no toolbars or scrollbars. All fvwm does for me is decorate my windows and give me a root menu. zsh is finely tuned for my daily tasks with all kinds of aliases.
And that's the thing... UNIX has always given me the capabilities to make my user interface work exactly like I want. This is something most other OSes just haven't given me. If you use Windows, you get a one-size-fits-all interface that assumes you do a particular set of common tasks. For many people, that's exactly what they want, because they do very similar tasks. But for me, I spend my days using a large number of xterms, Emacs, and Mozilla. I need nothing else, I want nothing else. Just give me screen real estate, UNIX, and I'll customize it to my precise needs.
I'd be great if Windows would give you those kinds of capabilities. I find myself frustrated every time I use it. Mostly because it's not what I'm used to, but partially because I can't change the way it works when I disagree with what the human-computer interaction, GUI-gurus have dictated everyone needs.
To make significant inroads into the desktop market, we need to learn how to make it so substance and style don't conflict, so we can have *both* at the same time.
The living have better things to do than to continue hating the dead.
Oh my god, Creative Labs produce software with some of the worst interfaces i've ever seen!
no sig.
The guy worked for creative, the live software has a crappy interface, their video card drivers have absolutely horrid interface and dont even talk to me about the infra drive software. So take what he says with a grain of salt.
"My head hurts, My feet stink, and I dont love Jesus." -Jimmy Buffett
great article. it points out one of the interesting things i witness over the past few years with linux guis. namely, the obscurity of the linux o/s, or any o/s for that matter, is difficult to hide with a gui. yes, it may look more appealing and candy like, but as the author says, when the system finishes booting, you're faced with thousands of options.
simply having a solid o/s and a vast open-source community does not make your gui any more successful. it feels that the general consensus about linux guis is: hm, now why didn't that work as well as we expected?
a previous poster asked if there were any aesthetes with input?
here are mine:
1. limit all fonts to a 24 point minimum
2. design the gui for a 3 year old -- make the boot screen look more like palm o/s
3. screw power users -- you want power-user mode, boot to an ANSI console (root doesn't get a gui)
tv manufacturers used to understand this: they even merged on/off with volume, and there was the channel changer. the power user could pop open a a panel to adjust contrast, brightness and hue, though i doubt anyone ever did.
then sony went bananas and added all this digital shit, audio stuff, PIP, sleep timers, gah...
https://www.accountkiller.com/removal-requested
"It's all about Pleasure."
"I used to derive pleasure when using my Apple, Amiga and sgi because they had a unique personality through various touches and tools that made the interface more cognicent of my existence. Windows completely lacks that interface. It's dumb and arrogant. It's heartless and ultimately disposable."
I don't know about other Linux users, but I do get pleasure in having a desktop with several windows that can all be doing something. I find typing enjoyable and flexible. I can write small scripts to automate some tasks or make some jobs more efficient. I like grep. Compare this to the mouse. The mouse is boring, and very one-dimensional. Without the OS, or a software package, the mouse is pretty useless. That is why there are so many menus (right-click) associated with the mouse. Typing can be melodic, but that click-click-click of the mouse about drives me nuts.
I think what the author is missing is that he thinks the user interface needs to be a GUI. No, that is what Windows offered, and they have pretty much taken it as far as it can go. I am not a Mac person, but I am guessing that the GUI there has gone about as far as it can go too. It's about going back to the basics, back to the keyboard.
Unless of course, someone can figure out a 3D UI like they have in the movies. But that always seems REALLY annoying.
My beliefs do not require that you agree with them.
But what did Windows revolutionize from the Mac or Xerox in the first place?
In fact, what did Xerox and Mac revolutionize from Doug Englebert? Not much.
In fact, no one has. Thats the problem, and it really seems that it is the problem that author of the rant. He isn't bemoaning Open Source GUI's so much as bemoaning "desktop" GUI's overall. No one has come up with anything better in over nearly 50 years now. We still have a mouse pointer, we still have WIMP, and we still have the whole desktop paradigm (Yes its a sucky word, but I don't care anymore).
The author may not see Open Source projects providing much inovation for the GUI, but thats a little unfair: No one is inovating for the GUI!
As long as developers just try to make a "better Windows than Windows", there will be no major upswing in the adoption of Linux on the "client" (whether you are talking about the traditional desktop, or other environments controlled directly by the user, such as handhelds). Until now, most efforts to develop Linux interfaces and applications have been focused on simply recreating equivalents of existing software products. As a result, mainstream desktop users have found few compelling reasons to switch to Linux because it does not currently offer an experience that is fundamentally any different from that of Windows or MacOS (notwithstanding its lower price and superior reliability). But as truly next-generation user interfaces for Linux emerge, they will enable the development of new kinds of applications that will be difficult or impossible to match on the existing platforms. Such "killer" applications (which are defined as applications that are so valuable that they justify adoption of a new platform simply to gain access to them) will start the virtuous cycle of platform-application interdependency that will allow Linux to break out of the server ghetto and take off with the masses.
Nooface
In Search of the Post-PC Interface
Oh well not for a weirdo like me. At first I was gonna scroll up to continue reading but then I realised that there's a (more) link and thought that this may lead me to another page but I decided to run my mouse over the link and saw that it actually scrolls up.
Sure it's nice but it required way too much thinking on my part.
I'm still waiting for the GUI where I have to navigate vis the NES powerglove.
The last UI "aha" moment I had was a taskbar for Win 3.1, and then Unix pipes. And I doubt either of these was thanks to an HCI "expert." What's the best way to regard such an nonproductive discipline? Ignore it.
Yes, go ahead and mod this as troll.
It appears that so many people here are completely missing the point of the article, and instead do the standard slashdot pessimistic "oh, well give us an example if you're so smart," or attacking the guy personally. Grow up.
The article's purpose is simply to provolk some thoughts: it's a big pointer to the situation, not a solution. The solution, my friends, is in YOU, the READER'S, hands. No one's going to hand you a vison of a better alternative on a silver platter.
I believe that despite the attacks on his credibility, he's right on mark. There's not much effort creativity-wise required in emulating Xerox/Mac/MS Windows, and "no one got fired for following the crowd." He is right, though: the current computing paradigm is inefficient and stagnant. The Linux/*BSD movement is a sign that there are many who believe the desktop paradigm isn't working, hence the inclination to use things like linux/*BSD which possess the previous paradigm, the command line (which is a much more powerful interface to the machine, but requires much more from the user).
Instead of spouting off like spoiled children about all the negative aspects about the article, what about actually getting up out of that lazy-boy, and doing something yourself. Use that mass of brains cells you've got crammed in that head and _think_up_ a better paradigm! Insults aside, I'd reckon that the vast majority of people here are actually very intelligent people (there's plenty of immaturity, but that's par for the course). You've got a good head on your shoulders, so why not use it.
If you want to make progress in this area, the way to do it is to set up a proper human interface evaluation. You need a quiet room, a camcorder or two, a Wal-Mart Linux box in its carton, and a half dozen or so people representative of the customer population. You put them in the room, start the camcorders, and give them a list of tasks, like "Unpack and set up the machine, connect to the Internet, compose an E-mail, and mail it to this address".
When you play back the tapes, you log everything that slowed the users down or, worse, stopped them. Then you make your developers fix all those problems. Repeat until the initial user experience is comparable to that of a new game console user.
>...Where you put ... the GUI ...communicates
>the buttons for the windows and what color the window borders
>are isn't what's important - it's how
>... in a way that doesn't provoke anxiety, is unambiguous, and
>fun.
Yeah. In particular, if you follow the directions and it doesn't work, that provokes anxiety. The typical Unix/Linux user instead sees a fun challenge. In other words, a non-GUI solution that works, first time - every time, is better than a GUI solution that doesn't.
> the people who have a complete blank slate about
> computers.... There are no such things.
Yes there are. You obviously don't run into many, but if you visited a rural area of a third world country, you'd meet a few. Maybe they call you "Michael Jackson" because that's the only American they've ever heard of. Maybe they don't know the names of the countries that border their country - why would they need to know? Granted, by the time any of these people actually get their hands on a computer, there will have been some learning.
BUT, to give you an idea of real live computer users who are clueless, my Mom couldn't cope when I changed my email address. I got no emails for months, and I still don't even after my sister fixed it. She didn't know how to go to this window or that to change the nickname, she understands three different windows: an incoming mail, an outgoing mail, and a mailbox list of emails. She doesn't know how to type in a raw email to a random person, she can only do what she's been told to do.
My dad drags the installer, from the CD, onto the disk, and he thinks the software has been "installed". He reboots and his current problem is fixed, that confirms it. It took years for him to understand the difference between Ram and Disk - he calls it "memories". I set up a web page for him, and he forgot he had it, and didn't know how to get to it.
so what - these people will check the brand of their video card and Ethernet chipset for a Linux install? don't make me laugh.
Marketing-driven companies end up over-marketing their products. Engineering-driven companies end up over-engineering
- No more overlapping windows. I found that a lot of my time is wasted resizing,moving,shading, opening,closing window. There shall be a better way. I know the experiments with non-conventional window management techniques, like ion or PWM or that other tabbed window manager
... they are not there yet.I'd like to see something which implements emacs window management. In one-buffer mode, every windows take the full screen. For special needs like drag and drop or multi-windows apps like Gimp or Glade, you can split the screen orizzontally or vertically and have one windows on each half, allowing users to resize the two halfs moving the separation bar.Maybe window belonging to the same class may share the same screen area and auto-arranged to look a feel like a MDI. All windows are resized to take all the space they can, unless they are marked non-resizable (like toolbars) or the user sets its own preferences.Dialogs always-on-top and centered wrt their application. - An active desktop background, which actually works as a full-screen, always-on-back file-manager window. It always show your current working directory..Able to split in a multiple-direcory view. With the capability to specialize background (and other user preferences) on a per-directory basis.I know, it looks a little like StarOffice 5.x desktop. But it wasn't a bad idea, it was only half-cooked: too simple and rigid for a desktop, too overwelming for an app main window.
- On the bottom quarter (or less) a shrinkable command line or mini-terminal, which is kept in sync and can interact with the graphical part, the way the mini-buffer of ROX Filer works (or the embedded Terminal in Konqueror).
As you see, no brand new ideas. But I'd love to see them put all togheter, even oly to discover that it was a giant mistake. Maybe one day I'll try it.Ciao
----
FB
...it's with the input devices. As long as we are still using mice as the primary input devices for our GUIs, we're going to be stuck with the usual descriptive buttons.
Not that buttons are a bad thing, does anyone here want to dial a phone number using a rotary dialer?
How about inputting your account # by lining up numbers a'la a bicycle lock mechanism?
There are only so many ways you can create a GUI as long as the user has to point at the screen and click on something.
new ideas for input devices:
How about gloves that allow you to manipulate the desktop? Want a file? Open up the drawer and get the file. Want to read it? Hold it up as if you were reading it. Yeah, yeah I know..old 80's movie cliche about how computers will work in the future.
Maybe the future of the GUI is that it isn't tied to a central information store. I can already enter my address book into my Palm Pilot and interact with that. If I want to watch a movie I have a TV. If I want to listen to music I have a stereo.
Maybe the role of the computer desktop should change from "tool" to "information storage and coordination". If I want to watch a movie, rather than opening up Windows media player or Quicktime, I turn on my TV, it connects to my computer and the computer plays the movie through my TV. Same with music.
Maybe the future of the desktop is extinction?
"For a successful technology, honesty must take precedence over public relations for nature cannot be fooled." -Feynman
Sorry, I don't mean to be mean or anything, but you are the exact reason why this approach should not be taken for the mass market. But I agree with you, for my own preferences.
But here is the deal - the mass market needs to be the same, or very similar. Think about TVs, VCRs, etc. They all have the same basic functions. On, off, channel up, channel down, vol up, vol down, play, pause, stop, fwd, rwd, etc. Everyone needs to have similar interfaces. Can you imagine being on the support line of a company that allowed you to configure the interface however you wanted it? Nightmare. It is a nightmare now, when all the interfaces are the same, but at least there is a common starting point. (Go to Start->Settings->...)
Most people don't want to configure that stuff, they just want something that works. I am stepping out of my techie shoes here, because MOST computer users don't care about all that crap. They don't mind that Microsoft makes all the decisions about this or that - as long as it works. I like Linux because it gives me the choice of what I want to use. I like trying out Mozilla, Opera, Konqueror, etc. My family doesn't understand why they would want to use anything other than what they are used to using. I recently got them off of Netscape 4.72 and put them on Opera. I still field phone calls and emails about various things, and get the inevitable "It didn't used to do that".
Microsoft knows what the average shmoe wants, they want things handed to them. They want to be spoon fed because they don't understand these scary computer thingys.
But I think that time could be changing. I have been playing with computers since high school back in the early 80's. I like computers. Kids growing up with computers are taking to them. The time is going to pass where people are scared of them, just like the fear of electricity, telephone, and automobiles passed. The new generation of computer users are going to be the ones who are not aware that computers didn't even exist at some point in time. (just like it is hard for me to imagine a time when telephones or cars didn't exist). They are going to be the ones who decide what direction the personal computer goes. They are the ones who are going to be saying "I remember my first computer, a Pentium 4 with 512MB of memory" instead of "back when I was growing up, we didn't have computers".
But until that time, whatever appeals to the unwashed masses will rule the desktop.
My beliefs do not require that you agree with them.
The problem with this, and it wasn't just a problem with OpenDoc, but it continues to be a problem to day with component models, is that the interface does change right out from under you.
I really like the idea of having a document-centric model. It just makes sense. But in the practice of using OpenDoc, it brought back the concept of modes. Unlike the command vs edit modes of vi, one of the greatest achievments of the Mac was to eliminate modes. You just opened up MacWord and typed your letter. Wanted to adjust formatting? No "format" mode, just edit it from the menu. The menu didn't change ever.
OpenDoc was confusing because it brought back those modes. You've got your word processor mode. You've got your vector drawing mode. You have your web browser mode. Etc, etc. This is bad, because the interface becomes a constantly changing thing. With separate apps, there are clear divisions between things, but not so with a document-centric model, because it's all data in the document. What if you just want to view the picture rather than edit it? What if you want to use the text in a page layout fashion rather than plain ASCII editing? Data is mutable and it makes the UI mutable too.
Honestly, I can't think of anything worse for the end user than a constantly shifting UI. You can set it up so that the UI components are your choice, but they are, by necessity, still shifting within a multi-type document. This difficulty on the user was particularly apparent in OpenDoc when you looked at the menubar to see what you were running and it didn't tell you. Strange problems abound in that UI (although it's been so long I don't remember a lot of my gripes). It was great tech, and great theory, but OpenDoc still had major problems that were never solved, mainly due to being killed in its infancy.
"I may not have morals, but I have standards."
This would have maximized competition, as well as making computers much more sensible, in my opinion. It got killed, and I'm not sure why, but I'd sure like to see it get revived.
I did a lot of research on OpenDoc around the time it was taking off, and worked closely with one of the companies that was doing tons of development for it. They bet the farm on OpenDoc and lost big when it tanked.
For those who don't remember it, the whole affair was based on a couple of core concepts:
(1) Big, monolithic applications suck. They never provide the perfect set of features for a given user, they're overkill for everyone, and they tilt the market in favor of huge companies with massive feature lists, punishing smaller companies that make focused products.
(2) Users don't care about applications: they care about documents and tasks. As long as the user's "favorite" tool works and lets them manipulate the same data as any other tool, the user will be happy.
(3) Creating solutions out of many tiny components instead of monolithic applications will result in a larger, richer software market.
Although it all looks good on paper, it didn't play out. In my opinion, it failed for the following reasons:
(1) may be true, but tracking down two or three dozen text manipulation components to build your 'pefect word processor' isn't much better than biting the bullet and buying MS Word. In fact, most Opendoc demos were really monolithic apps with a few custom components 'plugged in' to provide simple image editing, or graphing. It was the only way to provide a workable UI for users in the soup of 'universal data.' At that point, the 'revolutionary paradigm' is nothing more than a meta plug-in format.
(2) Users may care about tasks and documents more than applications. This point is actually the best one, but Opendoc's soup of "container apps," "editor components" and "read-only components" for distribution made building that 'perfect mix of features' more difficult for a user than just buying a monolithic app. Want to send a document to a friend? Unless they have the very same mix of components, you'll need to imbed them in the document. Watch that letter to grandma swell to a meg or so...
(3) Building software out of discrete parts was supposed to make everything cheaper for uesrs, and provide more opportunities for developers. Someone has to pay, though. Even if a user only has to pay $15 or $20 for each component of his perfect word processing solution, the aggregate cost is likely to be higher than a monolithic solution. Apple talked about companies selling 'pre-packaged' collections of OpenDoc parts as readymade solutions and making a profit on the integration work, but this is no better, in the long run, than monolithic apps with hooks for other programs to integrate with.
In addition, it would require complete re-writes of existing monolithic applications with no benefit to the companies save additional competition. Since it was a Mac-only technology, it would have made porting software nigh impossible as well.
Mind you, I never actually DEVELOPED OpenDoc software. I used OpenDoc software o nmy own maching for almost six months, and I spent quite a bit of time talking to developers who were willing to bet the farm on the idea. I'm still sad that Apple didn't succeed -- the problems they wanted to solve wree real ones, but the solution died under its own weight. There was no real value proposition for end users or software companies.
Apple eventually realized this, and axed it.
--the verb
If the user is typing something really important in an IE text field, and then all of a sudden the text field loses focus and they hit the backspace button (thinking they're doing a backspace in a text field) guess what happens? They go back to a previous page and in many cases the text field they have been typing in get's completely blanked out when this happens. We UI designers would typically call this an "unexpected action". The user expected hitting backspace by itself would do a backspace in the text, and instead it brought them to a previous page. And wiped out all the valuable work they had done in the process.
Other examples of microsoft incompetance include window-in-window MDI, multi-row tabs, and their latest shennanigan, the adaptive menus that constantly change position on a user (which screws up the users motor muscle memory for where the menu selections are). All these "features" have been harshly criticized by many in the HCI community.
For further reading, check out the Interface Hall of Shame, of which Microsoft is the most frequent inductee.
To see Microsoft usability get slammed by one of the most prominent members of the UI design community, check out AskTog.com
Microsoft is so successful in the UI biz despite their poor usability for precisely the same reason they are so successful in the server biz despite their poor security: they've got a monopoly, a proprietary file format, and the ears, hearts and minds of every pointy-haired boss and every clueless IT manager in America.
Ergonomica Auctorita Illico!