KDE (vs GNOME) - Use Case

Robert Knight robertknight at gmail.com
Sun Nov 13 23:44:09 GMT 2005

> In Kexi, database app, there is a plan to impleemnt two user levels (1st:
> normal==default and 2nd: advanced) mostly because of database-related issues
> can be hidden from user's eyes.

One of the problems that has already been mentioned is that users may
want "advanced" level functionality in one area and "simple"
functionality in another.  This might not reflect ability either, I
often turn off 'advanced information' in applications simply because I
don't want to see it as it gets in the way.

Looking at how Microsoft handle this in Windows Explorer, they provide
options of "simple" or "advanced" on a per dialog / per feature basis,
rather than forcing the user to run the whole program in "Beginner" or
"Advanced" mode.  For example, this means that you can set to show
file extensions (which might be considered 'Advanced' mode), but only
show two options for file sharing and security (simple mode == Faster
to configure for most purposes).

In the use case you just mentioned, advanced users have the extra
hassle of entering both ID and Caption.  Why not unify both of these
modes by allowing the user to enter a caption, upon doing this Kexi
will suggest a latin1 name to use internally for the table.  More
experienced users can then customise it if it does not meet their
needs, while others can just accept the default suggested name.

I suppose the primary reason I don't like the idea of "user levels" is
because it could end up with developers having to design two different
interfaces, neither of which will get as well tested as a result. 
"Beginners" get a user interface which is too simplistic to perform
various tasks, and "Advanced" users get a user interface which is
overly complex and difficult to work with.  Either way, the user's
productivity is lowered.  It also seems like a cop-out from designing
a single well-thought out user interface, which can benefit newcomers
and experts.  If the needs of a "beginner" and an "advanced user" are
really very, very different, then why not make two separate
applications.  eg. KEdit and Kate.

On 11/13/05, Jaroslaw Staniek <js at iidea.pl> wrote:
> Being aware of pros and cons of implementing user levels, I'd like to add a
> specific note that can be considered as a very simple use case of "user
> levels":
> <background>
> In Kexi, database app, there is a plan to impleemnt two user levels (1st:
> normal==default and 2nd: advanced) mostly because of database-related issues
> can be hidden from user's eyes.
> 1. For "normal" level users will be able to name objects (liek table or
> query
> or form) using any unicode string they want (the only requirement is the
> name
> needs to be unique).
> 2. For "advanced" level users are required to provide both:
> - identifier (which is the same as identifier in most programming languages,
> i.e. latin1 string without spaces and so on)
> - caption, i.e. optional unicode string. The caption can be then displayed
> in
> any database-user-visible places instead of latin1 name and in the future
> can
> be even translated.
> Notes:
> -Think about names/captions as about QObject::name()/QWidget::caption().
> -Since certain database backends may require latin1 identifiers, these are
> created implicity for level 1 (user do not know about this).
> There can be more options that defines the difference between the two
> levels.
> User can switch between the levels.
> </background>
> Summing up: I would use global KDE "user level" setting if available but I
> know there can be advanced databases users who are not as advanced in other
> areas, like say, spreadsheets. It depends.
> Thus, I think the "user levels" could be rather carefully implemented at
> applications level, if needed.
> --
> regards / pozdrawiam,
>   Jaroslaw Staniek / OpenOffice Polska
>   Kexi Developer:
>       http://www.kexi-project.org | http://koffice.org/kexi
>   Kexi support:
>       http://www.kexi-project.org/support.html
>   KDE3, KDE4 libraries for developing MS Windows applications:
>       http://wiki.kde.org/tiki-index.php?page=KDElibs+for+win32

More information about the kde-core-devel mailing list