Re: user levels, disclosure triangles, and preferences (was GNOME user environment brainstorming)



On 06 Jun 2001 14:41:15 -0700, Darin Adler wrote:
> On Wednesday, June 6, 2001, at 02:17  PM, Havoc Pennington wrote:
> 
> >> 3.) It hides preferences and features from users in a way not easy to
> >> override.
> >>      If there is a pref or feature that is not in the user's currently
> >> selected userlevel, they will almost certainly conclude that the feature
> >> isn't there. If they do know about user levels, but like their interface
> >> as-is, they would need to go to the selector and select "Advanced", then
> >> enable the feature they want, then go back to "Basic", and repeat this
> >> procedure. And just imagine how many questions and feature requests will
> >> flood in because of users who are not familiar with the user level
> >> system ("How do I do X, I used to be able to...").
> 
> This is a misunderstanding of the user level feature we implemented it in 
> Nautilus. Switching to a higher user level has two effects:
> 
> 	1) Shows more preferences.
> 	2) For a few select preferences, uses a different default.
> 
> There are no other effects beyond these. A side effect of this is that any 
> behavior that you get at a lower user level can be reproduced at a higher 
> user level by setting the appropriate preference.

I probably should've prefaced my response with the disclaimer that I was
not ragging specifically on Nautilus' user levels, which--though I
personally wouldn't have coded them--are actually one of the best
examples of user levels I've seen. So, while I don't necessarily agree
with the decision to put them in, I realize they probably won't go away.

Sawfish's configuration UI, on the other hand, implements user levels
very, very poorly, and most of the examples of the potential problems
with user levels I've seen are basically gleaned from my and others'
experience with that configuration UI.

Really, what I wanted to do was to keep user levels out of anything else
(since I view it as unecessary). Since the title of the suggestion was
"Global User Levels", I was attempting to voice my objections to
expanding Nautilus' user levels outside of Nautilus (which is where it
appeared to be heading).

If I was wrong in the assumption that the purpose was to suggest
expanding the user levels outside of nautilus, I applogize for adding
fuel :-).

> >> Plus, it's pretty obvious that related
> >> preferences should be grouped together, but user levels breaks that.
> 
> I don't understand how user levels breaks this. Groups of preferences get 
> larger when you use a higher user level. User levels don't prevent you 
> from grouping related preferences.

Strictly speaking, you're right. User levels don't directly break the
grouping of items.

What I should've said was that they break up the conceptual model the
user has of the group, becase the user level is outside virtually all
groups, but it still should be in the user's conceptual model of every
group.

Hopefully that's making sense, but I'm really not as schooled as I
should be.

> > I think user levels as used by Nautilus affect *only* the prefs
> > dialog, not the UI features. That addresses at least part of your
> > objections, right?

Well, there is the file properties dialog (the special flags section is
hidden in all but advanced), but other than that, this does address part
of my objections, yes.

> >> I believe that a better method to handle advanced preferences is the one
> >> taken by MacOS, the disclosure triangle. The little right-pointing arrow
> >> that expands a dialog, prefs pane, or whatever to show more complicated
> >> options. The advantages of this approach are:
> 
> Saying that this is the approach taken for advanced preferences on the Mac 
> OS is greatly overstating the case. It's true that the disclosure is used 
> in some places to have simpler dialogs that can expand into more complex 
> dialogs, but I just checked all the programs I use on Mac OS every day, 
> and not a single one of them uses it to disclose additional Preferences.

I don't remember exactly where I've seen it, but I have seen a
disclosure triangle used to hide advanced preferences or properties on a
Mac.

> I think the disclosure triangle (invented by John Sullivan, by the way) is 
> a great way to have a window with a hidden piece, and works well for 
> things like a file selector with some extra controls that you don't 
> normally use. But I don't understand specifically how you'd apply this to 
> GNOME preferences.

Well, I think a way to handle some of these things (like window manager
selection, for example) is to have the prefs applet for them not be
listed in the control center. Having the UI exist is ok, but I really
think that eliminating prefs from the standard UI is a better solution.
     In this case, the crack-smoking option is still available in a GUI,
but not unless the user knows what they are doing or talks to someone
who does (and in either case, it is restricted simply to the part of the
interface they are interested in, it doesn't spill over into other
parts).

Other things, like the more advanced features of XScreenSaver (the
daemon, not the modules -- I'm talking about priority, time between
screensaver start & lock, etc.), I think would be nicely hidden by a
disclosure triangle. But, as with everything else, I'd really like to
get hard data on which way the users are better able to get accustomed
to for things like this.

// BTW, thanks John :-).

> > Fair enough. I'd love to hear rationale for the Nautilus approach
> > vs. this one from the Nautilus developers.
> 
> I don't understand a specific proposal for using the disclosure triangle 
> to handle preferences, so it's hard to compare and contrast.

It was not a specific proposal, just something to think about (that is,
it may be nicer to hide advanced prefs behind a disclosure triangle than
a user level).

    Jim Cape
    http://www.ignore-your.tv

    If the United States Government spent as much on education
    as it did on the military, every student could fail in a
    solid gold desk.





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]