On 8/27/10 11:02 AM, Ken Kixmoeller f/h wrote:
> Just wondering what others have done in *user interface* to save users
> from doing something that the application needs to do, but "you just
> shouldn't" except in extraordinary circumstances.

Make it technically hard for them to accomplish (so they only do it when 
necessary). 
My favorite is making it a program argument. For instance, in my VFP apps I'd 
allow 
an argument of 'rebuild' so when my app was run and if 'rebuild' was one of the 
args, 
it would go into rebuild mode which would:

1) warn the user
2) ask them to make sure all other instances of the program are shutdown
3) ask them to confirm
4) check to make sure we have exclusive access. If not, bail.
5) do the rebuild, present a status dialog
6) when user clicks 'okay', the application exits.

Every dialog before the rebuild includes a cancel button, which exits 
immediately.

If they didn't make a desktop shortcut, they'd need to do something like 
opening 
Terminal, cd'ing to the program directory, and typing "program.exe rebuild" to 
even 
see this run mode in action. So they'd have to know about it in the first 
place, 
which means they are above-normal-user level already.

Of course, making things hard likes this tends to mean I get called to do the 
job 
instead, which actually is probably the better outcome for all involved. But on 
the 
other hand they are still in control, which is also better for all involved.

Paul

_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/profox
OT-free version of this list: http://leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/[email protected]
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

Reply via email to