3d Desktop : Does it make sense?

Okay, first off, the ScribeFire Firefox extension is pretty cool.  It would be a good thing for some Open Usability folks to help out, but the extension itself seems pretty functional.  One large thing, though, is that there is no “New” button for Posts.  This functionality seems to be accomplished via the “Clear Content” button, which is very non-intuitive.  “Clear Content” is typically associated with a destructive operation which removes something.  “New” is a creative operation, which will also technically “clear the content” in the editing fields, but the mindset is a very different one.  An interesting usability issue, to be sure.  =:)

Secondly, this YouTube - 3d desktop video prompted an impromptu debate in #kde4-devel with zorg_the_false, which was the original impetus for this post (the “hey, dangit, I should be able to click a ‘blog this’ button somewhere was what caused the ScribeFire extension download…). 

Don’t get me wrong, I think the video is really cool and for eye-candy alone, it is slicker than hot butter on a bald monkey.  But I think this comment says what I was thinking:

This does look fairly cool and imaginative…but its just useless. The whole point of a computer desktop is that its efficent and easy to use. They don’t even have the file names on the files. This is just imitating the unwanted qualities of an actual desktop.

And, I might add, that most similar concepts will suffer from one problem: you simply do not have the real-estate that a physical desktop will have on an electronic desktop.  While you might have a pile of papers and books on your physical desk, you can easily see each physical thing that you have there.  An electronic desktop (unless we get to the point of having 30″ x 50″ electronic desktops, in which case we’ll have a new set of issues…) simply can’t afford that.  So we have to shrink things down in our electronic world and then zoom in when needed to make things recognizable again.

But this particular attempt at a 3d desktop strikes me as taking the advantages that computers provide and throwing them away in an attempt at trying to represent the cluttered world of a desk.   If I could organize my physical desk the way that I can organize my computer desktop or filesystem, I would much prefer to.  The organizational concepts that this video speaks to are things that people have done to get around the limitations of the physical space in their environment.  And it’s only a pretty small subset of people who do some of the things they talk about too (do you turn magazines in different directions on the stack on your desktop??).  Computers have allowed people to think differently about how their information is stored, presented, and organized.  It is indeed a new paradigm.  Trying to make a computer environment mimic a cluttered desk of yester-year seems extraordinarily backwards. 

Think back 100 years… this is analogous to the guys who made the typewriter trying to figure a way out to make it look and feel like a quill pen, just so people don’t have to learn how to use a new thing.  There are times when paradigm shifts are extremely good and evolutionary and should not always necessarily be viewed as bad just because they force people to learn how to do similar things in a new way.   This kind of desktop might have been revolutionary 20 years ago–before we had a different model to use for organization and information.  But to step back 20 years and say that we now want the computer to try to model a cluttered desk before there were computers is a tad silly. 

And to clarify:  I am definitely not saying we shouldn’t keep trying to make computer systems usable and intuitive.  I am also not saying that this video in particular is bad.  But I do think that this is a good thing to keep in mind as we shape user interfaces and try to make them as user-friendly as we can.  There’s a common misconception that says that we shouldn’t try to get people to learn new things just because there’s a learning curve.  I don’t always agree with that sentiment.

Anyway, the triune purpose of this post has been accomplished:

  1. Find a “blog this” Firefox extension
  2. Try out said “blog this” (ScribeFire) Firefox extension
  3. Capture an impromptu (yet still very relevant) friendly debate on irc.

=:)

Usability Heuristics and Color Theory

I came across this really nicely-explained list of things to keep in mind when designing user interfaces. I’ll copy the short list here, but you owe it to yourself to check it out in full….

Ten Usability Heuristics

by Jakob Nielsen

These are ten general principles for user interface design. They are called “heuristics” because they are more in the nature of rules of thumb than specific usability guidelines.

Visibility of system status

The system should always keep users informed about what is going on, through appropriate feedback within reasonable time.

Match between system and the real world

The system should speak the users’ language, with words, phrases and concepts familiar to the user, rather than system-oriented terms. Follow real-world conventions, making information appear in a natural and logical order.

User control and freedom

Users often choose system functions by mistake and will need a clearly marked “emergency exit” to leave the unwanted state without having to go through an extended dialogue. Support undo and redo.

Consistency and standards

Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions.

Error prevention

Even better than good error messages is a careful design which prevents a problem from occurring in the first place. Either eliminate error-prone conditions or check for them and present users with a confirmation option before they commit to the action.

Recognition rather than recall

Minimize the user’s memory load by making objects, actions, and options visible. The user should not have to remember information from one part of the dialogue to another. Instructions for use of the system should be visible or easily retrievable whenever appropriate.

Flexibility and efficiency of use

Accelerators — unseen by the novice user — may often speed up the interaction for the expert user such that the system can cater to both inexperienced and experienced users. Allow users to tailor frequent actions.

Aesthetic and minimalist design

Dialogues should not contain information which is irrelevant or rarely needed. Every extra unit of information in a dialogue competes with the relevant units of information and diminishes their relative visibility.

Help users recognize, diagnose, and recover from errors

Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution.

Help and documentation

Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation. Any such information should be easy to search, focused on the user’s task, list concrete steps to be carried out, and not be too large.

My favorite is “Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions.” I came across this just the other day, in real life (i.e. not in front of a computer display). I was exiting a parking garage and instead of using the familiar “Exit” word, this particular parking garage used the word “Out”. Does it mean the same? Yeah, probably. But users of parking garages are looking for the familiar word “Exit”, not “Out”. Just something to keep in mind…. =:)

Also, this very nice page on color theory deserves review, especially by those whose job it is to maintain corporate websites. =;) *wink*

Some Inmates and an Asylum

VERY nice post on usability over on icefox’s blog. It’s always good to keep these things at the forefront of our collective geeky brains, since as is stated yonder, “users will suffer until good design comes along.” This is precisely the point that so many people miss–good design is not an option or an afterthought. It is a must and it must come early in the process.

Most of the time, this (intelligent, well-thought-out design) is overlooked until it’s painfully obvious that it’s broken–and this is also (not conincidentally) the most inopportune time to be thinking about it, since in most cases what is required to fix the problem is deeper than cosmetic changes, going down into deep architectural problems and costly redesign issues.

A close cousin to this problem is that which presumes that everybody that you need to care about runs Windows, Internet Explorer, a < 2-year-old computer, is ignorant about standards, and likes paying money through the nose to use his/her equipment.

Blah. I just got myself into a foul mood again.

/me looks around at the Asylum again and feels just a little more hope having been eroded away. =:/