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.
The apps being mixed in the dock is a legacy of NeXT UI principles. They figured that with modern computers that preemptively multitask and with endless virtual memory (theoretically), the user shouldn't care or think about whether a program is running or not, he should simply use the right tool for the right job. There is even less of a difference between running and non-running apps (just a tiny grey ellipsis) in NEXTSTEP. I dig it, and I like the principal.
There should be a moratorium on the use of the apostrophe.
Max V.
NeXTMail/MIME Mail welcome
Herein lies an important tenet of usability testing, which is Jakob Nielsen's "First Rule of Usability:"
Don't Listen to Users
You may think the Windows interface is OK, but your saying so is no substitute for observing you in action. Chances are--and no offense intended--you probably don't get along as well as you think you do.
And you have to have something to compare it to. When compared with the Macintosh, the Windows GUI is much slower. Just, Ask Tog. Finally, as MaxVlast points out,
- the user shouldn't care or think about whether a program is running or not, he should simply use the right tool for the right job
It goes by many names, but this concept is what Alan Cooper calls "Goal-Directed Design." Design the system so the user can do what they want to do. The underlying technology should be transparent.Apple came up with what I believe to be the best human-computer interface idea in a long time during the late mid-90s. It was called OpenDoc, and the idea is that what matters to people using a computer is the data, rather than the applications. A document was a collection of elements of different types, and there were tools for editing different types of data.
For example, you might be putting together a presentation with some textual information, some graphical images, a chart and some sound clips. When you click on the text, your menus and commands change to those of the text tool you've chosen. When you click on a chart, your menus and commands change to those of the chart tool you've chosen. Word would be the equivalent of a text tool that does outlining and such, combined with some other small tools that work with graphics and such. Say you didn't like the graphics tool that came bundled with Word? No sweat, just tell the computer to use a different one instead.
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.
-- Two men say they're Jesus. One of them must be wrong. - Dire Straits
It involves a keyboard and a piece of paper.
I'm being serious.
Want to write something? Pull out a Bluetooth keyboard, and an 8.5 x 11 touch-screen OLED, what I like to call "Bluetooth paper". Start typing on the Bluetooth keyboard, and watch your text appear right on the paper, with quality as good as a laser printer. Or you can dictate it. Or you can handwrite it. It's completely up to you.
Want to check your email? Press a key sequence, or say "email", or write "email", and your email is shown right on the paper. Flip the paper over to see the second page, flip it over again in the same direction to see the next page, flip it in the other direction to go back.
Want to print something? Put the paper near a printer, press a button on the printer, and whatever's on the Bluetooth paper will be printed out on the real paper; a permanent copy.
Want to surf the web? Type in, or handwrite, the URL; the page will load up, viewable on the paper. If you've got another sheet, it can split itself, showing content on one page, and navigation on the other. Touch a link, and it opens up.
Now, tell me you wouldn't want to use an interface like that. The OLEDs and keyboards (of course) are in production today, even if the paper's a bit expensive. All you'd need is a device that would intermediate, that would accept input from whatever source and broadcast the raw pixel data back to the paper. It could be in a hub-like box, in a cellphone, even in a wristband. Anything.
To make it work optimally, you'd need the Bluetooth paper to be a touchscreen. That's not possible yet, but it will be soon; until then, you could use a wireless Bluetooth "remote control", or trackball. Also, you'd need to embed a Bluetooth chip in the OLED; again, if it's not possible today, it will be by this time in 2003.
Revolutionary? Not quite. It's simply making computers more natural. And until what I describe is widely available, we need to make existing computers work more like that. One wonders, why aren't all current desktops running WinCE or Symbian? Both of those OSes are powerful enough to run productivity and email apps, and WinCE is powerful enough to run games, too (if the Dreamcast could use it, so can desktops). Imagine if someone could press the power button on their PC, and have a list of applications come up *instantly*, because the OS is installed in ROM! It might mean multitasking isn't as powerful as it is now, but no users use multitasking anyway; just us geeks, and our boxen are not desktops, but workstations.
So, in the short term, what should we do? Extend the LinuxBIOS project to be a full-featured OS with a Palm-style interface, that can load applications off a hard drive, but caches the most frequently used apps (browser, email, word processor) on flash for fast access. Obviously, X is completely out of the picture; really, gtkfb should be appropriate. Start shipping 64MB flash cards, in USB2, FireWire, and IDE versions, with LinuxBIOS, some GTK launcher applet, Galeon, Balsa, and AbiWord preinstalled; you could charge, say, $150 for the initial device, $20 for future upgrades on CD-ROM (or free download). And make very liberal use of AutoPlay for the CD-ROMs; for example, if someone wanted to play Alpha Centauri, all they need to do is pop in the game, click Install, and *everything* happens for them; in the future, all they need to do is pop in the CD-ROM and it loads. For system upgrades, you pop in the CD, wait for a dialog that says "OK" and ejects the CD, take the disc out, and watch it restart itself.
And better still, we could ship a computer, with a custom mobo (or at least, a mobo with a custom BIOS), that has the whole thing built-in to the computer; so it's even faster than IDE, in fact instantaneous. And that computer could be quite small and cheap. Why? Base it on VIA's VPSD Mini-ITX mobo. Smaller than FlexATX, it clocks in at 17 square centimeters - quite possibly, the world's smallest x86 mobo. It has an embedded processor, and sells for $125 from PriceWatch (including shipping). About the only thing it doesn't have onboard is RAM. You could sell one of these things for cheaper than a Dell, and that's including a 15" flat-panel monitor! As long as it had game support, I imagine lots of people would buy it.
The problem with all the other devices that were like this was that they didn't run standard apps. This box, being a real PC, would run standard apps; it could run most any console or GTK program, even if it required a recompile. The killer app, though, would be games. Sell the box in two editions; regular, and gamer's edition. The game one comes with a GeForce 4 Ti (or the latest card at the time), VGA-to-RCA converter cable, and no monitor.
Sounds like a console? So it is; essentially the Linux version of Xbox. But it can also be used as a regular computer; considering that, it wouldn't cost very much at all, and importantly, neither would the games. No subsidised loss-leaders here.
So, enough of my rambling. Between all these ideas, we should be able to do *something*. So why aren't we?