Fog Creek Software
Discussion Board

Off-the-wall UI

I've been working on some UI problems at work, and I'm spinning my wheels a bit. Just not feeling satisfied with how things are going, and I'm looking for a fresh perspective. Getting that uneasy "missing the obvious" feeling in the pit of my stomach.

Anybody come across some great wonderful incredibly-unique approaches to solving difficult UI problems? I doubt they'd apply directly to my challenges, but I'm trying to get my brain moving in a different direction.

Monday, May 31, 2004

Discuss it with colleagues, potential users, and the product manager; and look at similar products from other vendors.

Christopher Wells
Monday, May 31, 2004

Check, Check, Check, and I can't because it's hush-hush military stuff.

I know what the needs are, but just can't get the solution clear in my head.

Monday, May 31, 2004


shush, you
Monday, May 31, 2004

You and two or three coworkers in a room with a big whiteboard and a pot of coffee. Start drawing shapes.


Monday, May 31, 2004

Maybe you should quit the project and commit yourself to a life of unfettered simplicity (no material possessions, job, etc). Through that path, you will find what you seek.

anon-y-mous cow-ard
Monday, May 31, 2004

Without providing more detail it's difficult to offer much in the way of solutions to your problem.

Irrespective of what you have to do, your best bet is to sit down in a room with a few other people, one of them being a customer. Ask them what pisses them off about existing UI metaphors. Get them to discuss what they like about certain applications they use then run through a few straw-man solutions using paper/whiteboard prototyping.

Just remember that "off-the-wall" UI won't fly unless it's easy to use.

Good luck!

Monday, May 31, 2004

At the risk of sounding like a zealot...

If you want to learn what makes a good UI, one possible way is to compare different solutions to any given problem. Let's say you have your notebook hooked up by the analogue modem and want to switch your network setting to wireless lan. Look at how you would do this in Windows. Look at the Mac (!) and look at Linux too.

Compare how you manage your music in iTunes and with the Windows Media Player. Compare how you manage bookmarks or passwords in Firefox and Internet Explorer.

You will quickly learn to tell the easy ones from the hard ones. And you might start to appreciate the Mac (this is where the zealot part kicks in :-) ).

Monday, May 31, 2004

You could read Joel's book, maybe the online portions would jump-start some ideas. The book About Face 2.0 also has a fresh analysis of UI (actually Interaction) design and would probably exactly what you're looking for.

I also would agree with the previous recommendation to work with a Mac. I played with a Powerbook for a few hours six months ago and enjoyed the experience of working with a very polished UI that follows a different thought process so much that I went out and bought one of my own. I really think that it has expanded my UI perspective.

Hope that helps,


Tuesday, June 1, 2004


for some ideas and possibly inspiration, try

Slough Bloke
Tuesday, June 1, 2004

Edward, look at Edward Tufte's site -

It's not about UI design, but it is inspiring for clear design of information.  It's not what you asked for, but sometimes you get inspiration from tangential subjects.

yet another anon
Tuesday, June 1, 2004

Go find some individual with the clearance who is one of your target users and build UI in paper with them, or whiteboards or cut up bits of cereal box.

My 10 year old daughter is an excellent UI tester, get her clearance and she can probably tell you (in an extremely candid way and with a tone of voice that invokes wet Wednesdays in primary school doing French), what's wrong and what she expected it to do.

Simon Lucy
Tuesday, June 1, 2004

Thanks Slough and 'Yet Another'. Especially those Tufte books; I've seen references to them before, but I think I'm going to order one of them up.

Tuesday, June 1, 2004

Here are some things I do for inspiration:

- Review principles of UI design mainly to get focused on what's important in the UI

- Look for articles or standards for the genre of problem to be solved (you usually don't find much, but sometimes something pops up). Sometimes Apple's UI guidelines of the Java UI guidelines provide some tidbits, even if you aren't programming for the Mac or in Java.

- Generalize the problem being solved, then look at examples how the general problem is solved elsewhere. See if I can apply the same principle.

- Look at UIE's site for articles and inspiration (Jared Spool and )

- Look at Allan Cooper's site for articles and inspiration ( )

- Sometimes look at Jakob Nielsen's site ( ) for inspiration. Usually, his articles inspire a "yeah, that UI sucks!" reaction, rather than practical advice, but sometimes they can help with principles and focus.

- Review notes from any UI courses or seminars I've taken. This is what you take them for...

- Ask a naive user who isn't familiar with the product (if you can)

Hope this helps.

Lauren B.
Tuesday, June 1, 2004

Oy! I forgot my favorite.

Paper prototypes.

Low cost, relatively quick, and inspire rich discussion.  Get your favorite pencil and a good eraser and have at it.

Lauren B.
Tuesday, June 1, 2004

Write all your code for Windows in C++ .  Learn to owner-draw.  Re-invent all the things that Windows users expect to find and hide them inside of wacky graphics.

Go wild.

Jim Howard
Tuesday, June 1, 2004

I think you are making the waterfall design mistake here with the GUI. No one ever said that you aren't allowed to change the UI to meet users.

Ask customer what they need, design the UI, ask customers what they think, add changes from customers.  Ask again. In between release your product.

Tuesday, June 1, 2004

I've had the same feeling before.  Recently I came across a spreadsheet application that presents a very elegant solution to organizing data into groups and filtering.  I'd like to use some of the techniques they have in our apps at some point.

Tuesday, June 1, 2004

Get hold of several people. Ideally they would be the people who will use your software, but that is often hard, so you may have to make do with work colleagues (preferably not developers, though).

Get them in front of a white board, or give them some paper and a pen, and ask them to tell you how they'd like to perform tasks related to your problem. Think of a few typical tasks that a user might want to do. For example, if you were writing a military grade, GPS guided Word Processor, you might ask:

1. "Tell me which buttons you'd click to print your document."
2. "How would you find spelling mistakes in your document?"
3. "How would you find a document that you were recently working on?"

You will probably find a small number of people with "out there" solutions that don't fit into the set of existing UI metaphors you are using. Some of these ideas might be very good, but they might not. You'll probably want to go with the majority vote (if such a thing appears; if not, you have several ideas to pick from).

This is a good way of seeing if your users have some expectation of your software. If they do, then try to match it. But work out of you do need to match it. For example, the answer to number 2 might have been "I'd click the spell-checker button". However, a better answer is "the system would tell me when I made a spelling error, I wouldn't have to ask it" (e.g. the squiggly red lines in Word).

If you don't get consistent answers, use the Delphi (problem solving, not programming) method to improve upon the suggestions you harvest.

Tuesday, June 1, 2004

Well, thanks for all the advice I guess. I was just looking for a little inspiration on the side, and not so much a lesson in Interface Engineering. I'm sure it was all well intentioned though ;-)

You're pretty amazing though, Somorone. From a few sentences, you were able to deduce that my entire approach to my work is completely wrong! I'm awestruck.

Tuesday, June 1, 2004

*  Recent Topics

*  Fog Creek Home