[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-look
Subject:    adaptive software [was Re: UI design proposals]
From:       Christoph =?iso-8859-1?Q?Sch=F6nfeld?=
Date:       2000-03-05 14:23:58
[Download RAW message or body]

Chris Cook wrote:
> I hate to be a naysayer here but...
I didn't expect everybody to say 'Yes, fine.'. This wouldn't get us any
further. The reason I posted was to start a discussion about how to
improve machine user interaction and speeding up detection and display
of user errors. 

> 
> I have to mostly disagree with your proposals and points.  One of the worst
> ways to cause code-bloat is to force the program to do the thinking for the
> user.  Error checking is something that is necessary in any program simply
> to prevent it from blowing up in your face when something unexpected
> happens.  However, when you want to start building into a program routines
> for recognizing and allowing for every possible human action, behavior,
> misconception and/or error, then you are making it needlessly complex and
> quite possibly more error prone than otherwise.
> 
> Just look at all the great ideas that Microsoft is building into their
> products.  Do they add functionality?  Yes.  Do they make the program easier
> to use and minimize user errors?  I really doubt it in most cases (like the
> instance you describe with Word).  Do they introduce more bugs and problems
> and generally slow down the operation of the computer?  Absolutely.
Maybe I was unclear or you misunderstood me a bit. The goal of modern
software must be the improvement of the user's productivity. It is
neither an aim to reach nor possible, that a program does all the
thinking. The only logical consequence is the automation of all tasks
that stop the user from concentrating on _what_ he wants to do, but
force him to wonder _how_ to do it.

The human brain gets used to processes quickly but it's always trying to
optimize the steps needed to complete a task so that you get annoyed
quite soon if you see the same message several times, or if you have to
click your way through confirmation boxes and follow stubborn
procedures. Everyone has his or her own way of doing things and noone
should be forced to do them this way or that way. 

Now, with that in mind, we should ask how an application could offer
help and guidance for unexperienced users, shorten their learning phase
and at the same time avoid to slow down hotshots and experienced users.

I think the trend is for adaptive software - software that changes and
adapts to the way the user uses it. Have you seen the new menus in
Windows 2000? After a while, they hide seldom used entries. This is
great, and I'm wondering about a way to expand this idea consequently to
the whole program, not only to menus. Customizable toolbars and the
latter are a step into the right direction, but this is not enough
because it's too much work to do for the user. I never do this, because
I dislike the idea of searching for a function in a list of several
hundred functions and finding an appropriate icon for it.
These steps should be automated. A user will very often use certain
functions. Programs should collect information about how often and when
functions have been used, remember user input and improve itself based
on this information. How? I don't know yet. ;-)

Let's discuss it!

I don't want to spoil this very general idea with a bad feature
proposal, because I think it is very important. So I just leave it open
for discussion. I'd be glad to see some proposals, crazy ideas, somehow
an uncritical brainstorming about "adaptive software".


Christoph

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic