Path: utzoo!attcan!uunet!wuarchive!mit-eddie!uw-beaver!milton!blake.u.washington.edu!dlarson From: dlarson@blake.u.washington.edu (Dale Larson) Newsgroups: comp.sys.amiga.tech Subject: Re: GUI Style Question Message-ID: <10219@milton.u.washington.edu> Date: 30 Oct 90 15:16:12 GMT References: <6919@sugar.hackercorp.com> <10177@milton.u.washington.edu> <6927@sugar.hackercorp.com> Sender: news@milton.u.washington.edu Organization: The Evergreen State College, WA Lines: 32 In article <6927@sugar.hackercorp.com> peter@sugar.hackercorp.com (Peter da Silva) writes: >Great, now what happens when you decide to go back to the previous fields >to change it to make the next field valid? I don't know how many times I've >been waiting in line behind someone and the operator on the point-of-sale >terminal has screwed up. Often, even with the intervention of the store >manager and once or twice myself (though I can usually help if they have a >manual), it proves impossible to do anything but abort the transaction and >start over because the UI wouldn't let them go back. You make a good point. Idiot proofing is very user-hostile! Not just in the sense that it can make uncommon events difficult or imposible to handle with the software, but it is also de-skilling in that it removes any need (or possibility) for significant human thought or action. I bring up a requester which basically says "This doesn't look right" and give the user the option to ignore the warning. Many proposed guidelines for making software user-friendly include something to the effect that feedback should be immediate. If you are entering a date and you find out right then that it isn't a valid date it is easy to change. But if you've gone on and done several other things, you have to mentally 'shift gears' and try to remember or figure out which date you really want. Further, user-friedliness includes providing reasonable default values when ever possible. Often, the only was a reasonable default for a later field can be determined is through knowledge of an earlier field. Though for this sort of thing, I suppose you want to check the current value of the string gadgets buffer, not what it's value was when return was entered. -- -Dale Larson (dlarson@blake.u.washington.edu)