[long] Re: Legal traps in open source *WAY* OT.
Alex Satrapa
grail at goldweb.com.au
Thu Oct 31 17:59:05 EST 2002
Doug.Palmer at csiro.au wrote:
> And, in the meantime, if you're not totally concentrated on what you're
> doing -- oh, I don't know, say you're doing something at home with the kids
> fighting and dinner just on the table, or your boss is breathing down the
> back of your neck, or ... -- and have hit the tab key a little too
> enthusiastically, you don't lose your file system. Good programs and systems
> are built to accommodate people operating under stress and with partial
> knowledge; anything else is just a cop-out by programmers too lazy or
> ignorant to consider HCI issues.
*laughs*
the problem is if you're answering some set of confirmation dialogs over
and over again, you end up just answering "y" automatically.
"Do you really want to delete this file?" 120 times in one day, followed
by one single "Do you really want to reformat this disk?"
Oops. (I must admit that I have done this - fsck and mkfs are both
commands that result in a non-corrupted disk ;)
> Including the mistakes which occur when you think you've saved something,
> but haven't? Or, if you've got one of those programs which automatically
> saves modifications, when you don't think you've modified something but
> have?
Most of my editing style programs ask "You have unsaved changes in
<filename>." with the options "Don't Save", "Save" and "Cancel" (which
should probably be "Quit without Saving", "Save then Quit" and "Don't
Quit").
I just have to remember to sit in front of the computer when logging
off, and wait for the login screen to appear. Many times I've started
the logout process then walked away, then come back hours later only to
see the unsaved changes prompt sitting there because I used BBEdit to
store some information I was copy/pating between applications (so the
empty document was still marked as "dirty";)
> ... who's going to be more pissed off,
> someone who lost an hours work or someone who had to click the "yes" button?
Who's going to be more pissed off, someone who just slid their car into
the armco because they hit the brakes too hard, or someone who had to
hit the "yes" button every time they use the brakes? I've never seen a
car that asks you to confirm application of the brakes ;)
> The level of confirmation required should be tailored to the level of
> consequences and the frequency of operation.
Deleting email and files is one of the most common things I do. Thus
the delete operation itself should be reversible. On Mac OS X, when
using the graphical interface, this is true. When using any of the
other systems I commonly use, this is not true.
> Or, as many people do, you put "alias 'rm=rm -i'" and then use /bin/rm when
> you really want to do a bulk remove. The act of typing /bin/rm (or -f, or
> any other explicit flag) provides an internal prompt to think about what
> you're doing.
Except that commonly used commands get performed automatically. If you
have to keep hitting "y" when deleting files, you'll end up doing it as
a matter of habit.
Thus the "best" solution to the deleted files problem is to make rm
reversible.
> Just begs the question as to what kind of "expert" is so incompetent as to
> design an environment where you need to pay an expert to safely remove a
> file.
An expert in sponging money out of customers.
> So the program can't tell if you're about to
> commit a common error, such as a misplaced space, and query it.
A simple solution to the deleted files problem is for rm to realise that
there were two arguments, where any one argument would delete all the
files in the directory. I can't remember which OS is was I was using,
but the rm command was smart this way - I think it was Darwin (Mac OS X
again).
ie:
$ rm * # Doesn't quibble
$ rm *.c # Doesn't quibble
$ rm * .c # Asks "Are you sure you want to delete all files in
/home/grail?"
> What are the consequences of turning the key? The car starts. Does the car
> automatically move forward?
In industrial machinery, there are heaps of interlocks. For example in
a skid-steer loader (which is hydraulically driven), the operator must
lower a safety bar when the machine is started. This safety bar is
mechanically linked to the "park brake" mechanism which closes the drive
valves for the wheels, and clamps the wheels. you cannot move the skid
steer loader unless the bar is lowered (in fact, you can't operate any
of the hydraulics). In some machines, you cannot start the motor if you
are not sitting in the seat.
In some cars these days, you cannot start the engine until the gears are
in neutral - this is common in automatics (there is no clutch), I don't
think I've seen it in manuals yet (the manufacturer assumes you'll have
the gears in neutral or the clutch disengaged).
In my car, the motor will start regardless of being in gear or not. So
yes, my car will automatically move forward as the starter motor drives
not just the motor, but the drive train as well. The user has to know to
disengage the clutch before starting the motor.
> Or, if reversing a truck where there's a rear blind spot, a little
> beeper starts up.
The little beeper doesn't stop you running into things. On a
construction site, these beepers are going all the time - you end up not
hearing them at all after a while. The only way to survive on a
construction site is to use your eyes and actually look for things that
might be dangerous to you.
That's the way the brain works - it knows to pay lots of attention to
things that are unusual, but to ignore environmental noise (of any kind)
that is common. The first few minutes of a rain storm are the noisiest.
The first day on a construction site is the noisiest. The first few
weeks with a baby are the noisiest.
After a while, you adapt to what represents "normal" conditions.
I hate confirmation dialogs, because they only have the *appearance* of
trying to prevent catastrophe. The tools should me more intelligent
about deciding what requires warning and what doesn't (eg: this rm
command that I'm now becoming quite thankful for).
Alex
PS: The "blind spot" in a truck is everything that's not in the
120degree arc in front of the driver. Thus the "ha ha only serious"
style stickers:
<-- Suicide Passing Side -->
More information about the linux
mailing list