FSDN: PostgreSQL Techdocs Userlocal SweetCode Debian Planet
[GNU-Friends] Sections: Front Page News Interviews GNU-Friends Diaries
Menu: About Submit Story FAQ Donate Search
This page brought to you by: Xinit Systems, selling server and storage systems.
Havoc Pennington: Free software and good user interfaces
By atai, Section News
Posted on Wed Apr 24th, 2002 at 07:13:01 GMT
Havoc Pennington has written an article regarding the user interface design in free software graphical applications and desktops. His article is focused on the GNOME 2 environment. A good read for GUI design--an increasingly important aspect of free software. Havoc Pennington is the chairman of the board of the GNOME Foundation--GNOME is the desktop component of the GNU Project. Havoc is well known for his work on gtk+ (the GIMP Toolkit) (the GNU GUI toolkit), GConf and Inti, a C++ class framework.


< Bruce Perens' commentary on the CIFS license appears in news.com (0 comments) | Brett Smith Writes Open Letter about Free Software (28 comments) >
Make a new account

View: Display: Sort:
Havoc Pennington: Free software and good user interfaces | 2 comments (2 topical, editorial) | Post A Comment
[new] The Preference Problem (#1)
by kholmes (#316) () on Wed Apr 24th, 2002 at 07:59:06 GMT
(User Info)

I agree with Havoc Pennington completely on the preference problem---that preferences hinder a user interface. And perhaps the problem has a solution afterall.

It isn't possible to keep people from customizing free applications. Even if there isn't a preference dialogue box or a configuration script, the user can always modify the source code to their own preference. In fact, this is one reason I choose free software.

So perhaps with some options, this should be the only method. Many of the more obscure or advanced options could possibly need to be compiled in. Or perhaps the inclusion of a preference dialogue box should be a makefile or ./configure target.

It solves many of Havoc's problems:
Too many preferences means you can't find any of them.
This, I think, depends on the user. The more you use an application, the more likely you are to want to configure it and the more details you want to configure. However, if you rarely use an application, I don't think you want to become an expert with the application to use it. By including preference options only with compiled versions, you solve this problem elegantly, I think.
Preferences really substantively damage QA and testing.
Here's the killer. If you modify the source, then the user is responsible for his modifications. Not the maintainer. In the opposite scenario, with full preference options included in, then the maintainer seems responsible for the options he provides.
Preferences make integration and good UI difficult.
My approach (certainly not something I want to claim as original thinking, but I use this to describe for this comment only) I believe causes the developer to spend more time deciding sane defaults. That is, its not as easy to say to new users that if they want it a certain way, they should change this and this option. Rather, the developer may be more inclined to change the default setup to more reflect the setting prefered by most users.
Preferences can confuse many users.
There are no options unless the user wants to recompile the application.

All this does is require more of the user if he or she wants to change the application and requires more of the developer to make the defaults so the user doesn't have to change the application.

This idea is extremely obvious to me. I just wanted to write it down.

[ Reply to This ]

[new] [OT] Inti's dead. (#2)
by cyd (#42) on Sat Apr 27th, 2002 at 07:48:21 GMT
(User Info)

Inti development, such as it is, has halted, probably indefinitely. The gtkmm project is still going strong, though.

[ Reply to This ]

Havoc Pennington: Free software and good user interfaces | 2 comments (2 topical, editorial) | Post A Comment
View: Display: Sort:

Verbatim copying and distribution of this article is permitted in any medium, provided this notice is preserved. Images of gnu:s in the logo are © Free Software Foundation, Inc and distributed under the GNU General Public License. Comments are copyright by thir respective owner. All other material are © 2002 .