Universal GUI
Dan Shafer
dan at shafermedia.com
Mon Jul 28 12:27:01 EDT 2003
On Monday, July 28, 2003, at 09:01 AM, Dar Scott wrote:
> I prefer a setup panel show me what it can do rather than make me tease
> it out of it. My brain can easily skip over a block of disabled
> controls. Even when I look at them, they provide information about the
> nature of that checkbox or radio button.
>
Well, certainly to some extent it's a matter of personal taste. Study
after study has shown that *most* users do not react to things the way
you do. (The fact that you're a programmer/Rev user probably already
indicated that!)
But I don't think I was quite clear in my original post, either.
Progressive realization is appropriate when there are some choices
which are simply not relevant until and unless the user makes some
choice elsewhere in the user experience. In the specific case I was
looking at, there was a setting on the QuickTime property sheet that
was only relevant at very low modem connection speeds. High-speed
modems and broadband connections need not concern themselves with this
checkbox. So my design choice would be to hide the checkbox and show it
*only* if the user chose a low-speed connection from the popup menu.
Another example of this kind of progressive realization in UI design is
when there are two popups, the contents of one of which depends on the
user's selection in the other. We do not as a rule default to providing
every possible alternative in the second popup menu. Rather, we either
hide or disable it (or, my preference, set its contents to a default
string that makes it clear that it will be populated when the first
popup has been set) until the user makes a choice from the first popup
menu.
I fully agree with you that it makes no sense to have *relevant* UI
controls hidden so that the user has to sort of "unlock the puzzle" to
get at them. "Discovery" is the operative word; the user should
discover the new options if and as they become relevant to the task
s/he wants to accomplish.
More information about the use-livecode
mailing list