I know there is a question of data integrity.
OK. Ever wondered when writing to a floppy if it was safe to remove it?
But you have to understand that one thing overrides that:
The user must always be in full control.
I don't agree.
root must be in full control. the
luser is an ignorant fool who is only (unknowingly) intent on compromising the system.
The correct order of actions when using a CD or DVD is:
- physically insert the disk
- mount the disk
- use the data on the disk
- unmount the disk
- physically remove the disk
It is an unfortunate misunderstanding on the part of Microsoft that it doesn't have steps 2 and 4. Somehow they assume that every disk/partition I have in my system I also actually want to use; quod non. Missing step 4 means a compromise of data integrity for all (writable) removable media such as floppies and USB sticks.
As you see, there is nothing wrong with blocking the action of the open button of the drive as long as you haven't performed step 5. Steps 4&5 are also clearly the symmetrical actions of steps 1&2, and, as to be expected, in reverse order.
If he pushes the button, that means he wants to open the drive. He takes specific action - action that he normally performs when he inserts/removes disks from the drive. The button is near the slot, it makes sense that it is there, rather than for the user to look for some icon or function more-or-less hidden away on his monitor.
See below.
Can he push the button by accident? Sure! Can he lose data that way? Sure! Is there a guaranteed way that he won't ever lose data? Nope!
Not on a system I'd administer. The sysadmin - yes, but s/he knows this and can find out which application is blocking the unmount by typing something like
# fuser -m /media/mydisk
But the sort of luser-friendliness you advocate is precisely why the average home Windows PC is infested with viruses, worms and other kind of malware.
The question is: Who is in control here, the user or the software? Both are error-prone, but it is far better to have the user make his own mistakes, than to have the computer take control.
It's clear we have a different outlook about which one is more error-prone.
By default, the software should not prevent the user from pushing the button. The software should only step in with a warning in case all data hasn't been saved. Otherwise, the user must be free to do whatever he wants.
I did a little test on two of my machines: my Linux desktop (Fedora Core 6) and my iBook G4 with MacOS 10.3 "Panther".
First Fedora Core 6 with a Gnome desktop. After inserting the DVD, it detects it and automatically mounts the disk. Pushing the open button on the drive makes it automatically unmount the disk and open the tray. Right-clicking on the icon on the desktop and choosing "Eject" did the same.
Then I inserted the DVD and subsequently did a 'cd' in a terminal-window to the root-directory of the disk. Both actions outlined above (pressing the open button, resp. right clicking the desktop icon) resulted in a pop-up with a message like: "Could not unmount volume. Try quitting applications".
Secondly MacOS 10.3. My iBook has a slot loading drive, so it has no open button. I tried (1) to click the "eject" icon in a Finder window, (2) to Ctrl-Click the desktop icon, and (3) to press fn-F12. All cases resulted, of course, in ejecting the disk.
Then I inserted the DVD and did a 'cd' in a terminal-window to the root-directory of the disk. Cases (1) and (2) both led to a pop-up window with the message: "The disk "Fedora 9" is in use and could not be ejected. Try quitting applications and try again". Case (3) did not result in any action or pop-up window.
From a usability standpoint, I'm satisfied with this behaviour in general - except for case (3) with MacOS, and I couldn't test what MacOS does when there is an eject button. But in the other cases - it gives me a message that it is unsafe to eject the disk and I should first solve that.
No, that's what the button should be for. The paperclip-hole should be for ultra-emergencies, to circumvent the lock in case the button doesn't work.
Does that mean we agree? I'd qualify the case where you can't kill the apps that use the disk as an ultra-emergency. There's always a text-terminal you can log into as root and kill them, isn't there?
If you can open the drive at any time anyway, why have a software lock on the button?
As long as there's nothing in the drive, or there is a CD in it that is not mounted (which is possible), it is safe to open it. As soon as you have the disk in use, it is not.
Oh, incidentally: My professional field of expertise is usability and user interface design.
My expertise is UNIX/Linux administration. Does it show?
