Stupid Windows

November 8, 2007

Just hypothetically, imagine that you are working in a Windows environment [sigh] and want to copy a selection of files in a folder to a new location.

You select the folder. Copy. Select the destination. Paste. Windows helpfully alerts you that it is getting ready to copy (lucky, I was worried about that). Then it starts copying. Copying. Copying.

Now, it’s a pretty big folder, so the operation is apparently going to take about five minutes. Whatever. You go and make a coffee. You get back to your desk expecting the operation to be complete, and instead find a dialog box telling you that “file x has a lock blah blah and can’t be copied. Whatever. So you click OK and think nothing more of it.

Later you waste a hypothetical hour or so troubleshooting a problem that appears to be occurring because your system can’t find the files you just copied over. And why pray tell can’t it find the files you just copied over? Because apparently you didn’t.

You see, when Windows encounters a problem during a copy operation, not only does it stop copying and wait for a user to click OK (some obscure reason requiring acknowledgment for something the user has has no option to fix), but once you have accepted that yes, yes, file x can’t be copied for some reason that I really don’t care about, the copy operation stops without completing the rest of the copy.

So the operating system:

  • Takes the list of files you have asked it to copy.
  • Decides on some completely arbitrary order in which it will execute that copy.
  • Then if it encounters a problem partway through that arbitrary order, makes the assumption that it is safest to not finish the completely non-destructive operation you just fracking asked it to do.

Why is this so difficult? Just:

  1. Continue the copy operation in the background while it waits for my input, and
  2. Finish the copy.

Or I’ll make it even simpler:

  1. Don’t wait at all, just keep a running list of files that failed to copy while you complete the operation.

I know, some monkey is going to complain that they didn’t want to copy those files, and if the copy finishes they would have to go to all the trouble of deleting all those files that they didn’t mean to copy. Boo hoo. Good design should engineer for the common case, and then allow handling for the exception. Windows appears to have this arse backwards.

EDITED TO ADD: This story is entirely true. Not even the name of the operating system has been changed to protect the innocent. I must however thank the sadly finished Logically Critical podcast (Episode 26 to be specific) for the rage that inspired it, and apologize for inadvertently ripping off the description of a similar incident (involving deletion of files) described therein.

Actually just listen to the podcast. He’s wittier than me and he does funny voices.


10 Responses to “Stupid Windows”

  1. CarrieP Says:

    You don’t listen to logically critical, do you? His next to last episode dealt with this very subject…

  2. Dave Says:

    Heh. Yeah, after I finished I realized that I’d reproduced most of his rant about deleting. Maybe I should cite him.

  3. I’d love to hear a single use case (no matter how contrived) where this behaviour (aborting a partially-completed directory copy because of a failure on a single file) would be the desired outcome. I just don’t know how people think this stupidity up.

  4. CarrieP Says:

    Sweet. Love the link.

  5. Man I hate windows Says:

    Windoes is fuLL ov Errorz

    I’m hate it!

  6. Agus Ramadona Says:

    facing the same problem here!..and it suck!..this kind of problem makes me headache to trace which file(s) are triggering the failure of copying process..hundreds of file..!!! it too hard for you guys in the microsoft lab to fix this???

  7. chan Says:

    generally i hate windows. it is the most stupid OS that ever exists.

    often you make some changes, and it just hang. one recent example, i change the domain of a vista to join my test domain.. and it was successful but i cannot login as the domain user after that. i was told that i must not change the domain straight away from another domain, i should instead select a workgroup. so i click workgroup and assign a workgroup name, and then it took 25 minutes for some stupid unknown process to work and then i was present with the login screen. i was really piss… and that is not the worst, when i try to login, it hang… guess for how long? 30 min? wrong! 1 hour wrong! 24 hours wrong! it is eternality!!! i gave up…

    but i got no choice , as my stupid company choose windows as the desktop for this project.

    and in the past, M$ is often criticised for poor security, and now in Vista, you got prompt for passwords EVERY time you do something the OS deem is critical… it is really a waste of time… they should name themselves MicroStupid.

    there are just too many frustrating experiences… especially after you experience Linux , FreeBSD , you will grow impatience with this stupid idiot Windows …

    fuck you Microsoft!!!

  8. john yang Says:

    Windows is so stupid.
    I upgrade my Win 7, unnecessary.
    so my nightmare comes. I can restart my conputer normally, every time it will ask to restore to last correct set up. so every soft ware and document will restore to the last setup before upgrade. That is so stupid. And I became a little laze, since I use MAC for a while. So I always forget to save my file manualy. So yesterday. I lost may doc and have to repeat my work for three days. That is so stupid. I really hate it, but I have use it in office that is only one I can use.
    It is shame of Microsoft.

  9. Charles Swain Says:

    This is why I love Ubuntu over any version of Windows.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: