Journal

Understanding the Subtleties of the Mac

Posted on April 7th, 2005 at 03:10 pm under Opinion, Apple, Development

With great interest, I’ve been reading the comments on Matthew Mullenweg’s recent post, Braindead Finder Behavior. Up until today, I had never realized that there was a difference between the way Windows and Macintosh replaces a folder. Before commenting on the issue, let me make it perfectly clear how both operating systems work.

On the Mac, dragging a folder to a location with a folder of the same name prompts you with the following confirmation dialog: “An older item named ‘test’ already exists in this location. Do you want to replace it with the newer one you are moving?” The two context-sensitive buttons are “Stop” and “Replace,” with ‘replace’ simply overwriting the old folder with the new one.

On Windows, dragging a folder to a location with a folder of the same name prompts you with the following confirmation dialog: “This folder already contains a folder named ‘folder_name’. If the files in the existing folder have the same name as files in the folder you are moving or copying, they will be replaced. Do you still want to move or copy the folder?” In this case, Windows provides you with four buttons titled “Yes,” “Yes to All,” “No,” and “Cancel.” Now, if you press either ‘yes’ or ‘yes to all,’ your files are merged unless there are conflicting names, in which case, the files are then overwritten. The difference with ‘yes’ and ‘yes to all’ is whether or not you would like to be prompted for each conflicting file. ‘No’ and ‘cancel’ provide you with the ability to skip a conflict or to cancel the full process.

Wow. I had always assumed (incorrectly) that replace meant just that, “to put something new in the place of” as defined by Merriam-Webster Online. This is what the English language means by the term. However, as can be seen, the actions for both platforms are completely different, leading to the situation that Mr. Mullenweg encountered; the loss of files.

I think there are several things that can be learned from this. First of all, it’s imperative that dialogs always be read. Granted, often I simply click on the buttons without reading the text, assuming that I know what will happened. I’ve been burned before and will be in the future too. So, as developers, we should be writing concise, meaningful dialogs that can be easily understood. Second, and more importantly, is the need for dialogs to be absolutely clear in what will happen and for the buttons in the dialog to reference their actions. Having ‘yes’ and ‘no’ buttons require the user to read the dialog text before clicking them. As is often the case, this doesn’t occur and a guess is made. By providing context-sensitive buttons, that describe the action (replace meaning to replace, as opposed to yes doing a mix between a merge and a replace), users will be able to infer the action more clearly and for those who skip over the text, a better guess can be made. Third, it’s absolutely clear that manufactures and developers need to follow general English rules when it concerns grammar and diction. I’m not sure what made Microsoft decide to call their merge-replace function simply replace, but had they from the beginning used correct diction, we wouldn’t currently be in a situation where 95% of computer users (Windows users) are being trained to think that a replace acts as a slightly modified merge function. Finally, it is clear that in a situation that can result in the loss of files, undo should be implemented. It is unforgivable that the Mac doesn’t provide a means to undo a replace. Sure, a dialog in this case was provided to Mr. Mullenweg, but obviously, it didn’t do the trick. John Gruber suggests that instead of simply overwriting the folder, it be moved to the trash so that the folder being moved simply takes its place. This is a wonderful, easy to implement, suggestion. The fact that Mr. Gruber has suggested this for the past two years and given that he is an influential Apple user (at least in the eyes of the general Mac community), emphasizes Apple’s decline in usability.

3 Comments

Of course, the fallacy here is talking about some mythical function called “replace”. I’ve seen no operating system mention any function called “replace”. The only function names I can recall from using GUI OSes are “Copy”, “Move”, and in some of them a pair of two-steps called “Cut/Paste” and “Copy/Paste”. The term Copy itself is ambiguous when you come to a case like this, and thus we come to a case where two OSes decide to settle the ambiguity differently. Apple’s OS assumes you mean to replace Folder A with Folder A’, obliterating Folder A in the process. Microsoft’s OS assumes you want to mix the contents of Folder A with Folder A’, like mixing drinks. I don’t think either assumption is wrong, but both are very dangerous.

Anyway, I never moved one folder on top of another, simply because I was never sure what was going to happen. Now I know. And using that knowledge, I will never move one folder on top of another. Computers are still not very good at assuming what I want to do.

After reading your original entry, and following a period of deep personal reflection, I have determined that you are surely facing serious medical peril by staring at your monitor long enough to consider such an asinine topic as prompt boxes.

I wholeheartedly recommend you seek out your local chapter of P(rogramers)A(nnoymous): a support group for loopy computer people.

Woefully,
Neutron Ned

LOL! Thank you John for that… I’ve been wondering myself whether or not I’ve been going crazy for worrying about such small details!

Leave a Comment

Your Name ››
E-mail Address ››
Website ››
Comment ››