Warning: The software you are installing does not match your mental model

This morning I talked to my dad. After a few minutes of polite small talk, I heard the 10 little words I have come to dread: “I had some problems with my computer the other day.” The video card on his laptop had died. The screen was just black. He has a Dell Vostro, so he called Dell Technical Support. They sent a contractor technician out; with a motherboard. The technician, having no real qualifications other than the need for a job; and no real training other than how to fill out the repair paperwork, installed the motherboard. Three days later he returned with the video card the computer actually needed, and the computer started again.

At this point, the following conversation ensued:

Dad: When I started the computer I got an error message

Me: What did the message say?

Dad: How should I know? It was written for “people” like you. I didn’t understand a word of it. It just said something about some software not working and it should be reinstalled

Me: Which software?

Dad: I don’t know. I told you, I didn’t understand it.

Me: So what did you do?

Dad: I figured it must have been Windows. Windows never works properly, so that made sense. I thought if I reinstalled Windows it would all work.

Me: And…?

Dad: Now Office doesn’t work.

Me: When you say “reinstalled Windows” did you do an in-place upgrade?

Dad: Can you restate that again in Human?

Me: Did you upgrade Windows?

Dad: No, the upgrade option was grayed out.

At this point, if, like me, you are a cubicle-dwelling, bespectacled nerd with the social skills of a turnip you know exactly what happened. He created a new side-by-side installation of Windows. Sure enough, in the C:\Windows.Old folder were his old Users folder, his old Windows folder, his Program Files folder, and all the other contents of his hard drive. I pointed this out to him to explain what happened.

This is when Dad drew the completely logical assumption: “OK, so if I just copy the Microsoft Office folder from there to C:\Program Files it will work?”

No. It won’t. It would if software were designed for the humans that actually use it. Unfortunately, it is not. It is designed by and for the same people: cubicle-dwelling bespectacled nerds with the social skills of turnips; people who have never spent any significant time interacting with humans, and who have never met any of the real users who will use the products they design. If we had actually met and interacted at length with real people at any point over the past 15 years, we probably would have realized already that designing a “program” that consists of 3,829 files, spread over 60 folders, is not how people expect it to work. That, by the way, is not a random figure. It is the number of files and folders in C:\Program Files\Microsoft Office on my laptop. Lest you were now to say that someone else knows better, iTunes vomits 2,718 files over 1064 folders, in two different hierarchies. Why don’t you try to move either to your cavernous external hard drive to save space and see how well that works?

Is it that my dad was being illogical? No. Moving the Office folder would indeed be incredibly logical; totally rational in fact. If you bought a new file cabinet, you could easily take the files out of the old file cabinet, put them in the new one, and they actually still remain readable! You could even take one of your old pens, scribble a note on them in the process, and a year later you can read the note! Amazing that ain’t it? If file cabinets were computers you certainly could try to remove the file from the computer. It would prompt you with a dialog asking if you really wanted to do that, once per character on the page. Once you accepted the prompts, you could insert the file into the new cabinet. When you tried to read it, however, you would find that the ink fell onto the floor between the two file cabinets. The magic fixative that keeps the ink on the paper works only as long as the paper stays in the old file cabinet.

We have a mental model consisting of physical, tangible things. There is a school of thought in Cognitive Science that believes the basic wiring of the human brain was forged in caves. Our brains were designed to address the biggest concerns of the day: evading the saber-toothed cat, spearing a wooly mammoth for dinner, and, for at least half the population, clubbing a suitable mate to drag home to the cave. (Presumably, the other half of the population lived in fear of getting clubbed and dragged away). Our brains were not exactly wired to understand the convoluted product management decisions that resulted in almost four thousand files and thousands of directories. And they certainly were not wired to understand that all those files and directories are utterly useless without the settings, which are stored elsewhere – in a place that does not really exist – and are joined to the file system manifestation of the software only in the very loosest sense of the word.

 Every time I boot Windows these days – and especially Windows 7 – I feel like the software is designed to be some kind of punishment. It’s meant to exact revenge on us for the designers being bullied in elementary school. So much of the software we software engineers design feels vindictive, counter-intuitive, and illogical. When the users finally figure out basic interaction styles, we change it all. When people finally learn that you can click on things on the quick launch menu to start them, we get the bastardized task bar in Windows 7 that only activates existing copies. When we finally figure out how to make find things on the start menu it becomes polluted with several hundred useless icons like iSCSI Initiator. Rather than features to make it easy to use, we bloat software up with new features because that’s what the computer journalists look for. I keep hoping for a release of a major piece of software that just works; that is elegant, that shows thoughtfulness in how the software was plumbed together, and that is designed from the ground up not to add new features but to be intuitive to the poor people who have to use it. Unfortunately, I never will. “Intuitive”, “elegant”, and “just works” are words you never see in computer journals, except maybe in Macworld. 

Sometimes I feel like the only piece of software ever designed to work EXACTLY the way its intended users expected it to work is Solitaire. Predictably, my sources tell me that Microsoft laid off the guy who wrote it in May.

Published Mon, Jul 20 2009 10:10 PM by jesper

Comments

# Sharon Myers said on 21 July, 2009 02:11 AM

When I got to the part where your Dad wanted to just grab the folder and drag it over, I immediately flashed back to my Mac LC I had in 1991.

Sorry ... I know that was some salt in the wound but it is the truth ... MacWorld and all. I commiserate.

# Dale said on 21 July, 2009 05:23 AM

Now Jesper, if we didn't have change, we wouldn't have a shiny new operating system to use.  And Microsoft wouldn't have anything to sell.

Having said that, if the Windows 7 GUI erks you so much, switch it to the Windows Classic theme.  

That's what we'll probably do for customers we deploy 7 to.

# Barrett said on 21 July, 2009 08:02 AM

I do believe dragging the Office "folder" from computer to computer works in OS X (just like pretty much every appliation) :P

# George Pribeag said on 21 July, 2009 09:07 AM

I only home that the technology improvement will enable the computers to mimic better the tangible world thus to cater to our monkey brains.

# Matthew Mucker said on 21 July, 2009 01:51 PM

Oh, if only we could get this blog post on the required reading list for MSFT devs....

# Susan said on 21 July, 2009 03:32 PM

Unless there's something in the RTM I'm not aware of... question to Dale... what classic menu bar in Win7?

As far as I know, there is no such beast and any blog posts that you find are hacking various things up

windows7forums.com/.../1358-classic-start-menu.html

# Rosyna said on 21 July, 2009 09:03 PM

Barrett, I believe that ability has been removed as of Office 2008 (but was there for 2004). I think it was due to the "rush" to switch from CodeWarrior to Xcode without fully understanding dyld.

As for the iTunes thing, do you mean the iTunes music folder? You can move (copy and delete) it to another volume just fine. iTunes should ask you to choose library when it next launches, in which case you just point it to the new folder.

# Magnus said on 22 July, 2009 03:26 AM

Thinking differently? Are you contemplating traversing to the Other Side - getting a Mac?

Your blog post almost exactly mimics my thought process when I went Mac a few years ago.

I am a longtime Windows consultant that, for my own computing uses completely switched to Mac. I also gave my relatives and friends an ultimatum: no more support unless you also "switch". Me and my relatives have never looked back.

# Lars said on 23 July, 2009 04:49 PM

I cannot even begin to tell you how powerfully this resonates for me as a consumer, power-user, network admin, and now project manager.  

We don't even have a clean model for Joe home user to upgrade from one version to another of Windows.  Migration sort of works for some (Microsoft) apps.  Don't get me started on license transfers -- which can transfer, which cannot.  Which go with the machine, which go with the user, which have to be re-purchased.  

This is a complete and utter nightmare we have created for our consumers.  

There are four things our consumers need: speed, simplicity, consistency and reliability.    

If you have a dialog box with an error message, it better not say "Unexpected error.  Did you find this message useful?" -- that dialog box has an extremely negative hardware lifecycle impact (picture fist in screen).

Thanks very much for the complete breath of fresh air and common sense.

# Matt said on 24 July, 2009 09:10 AM

@ Susan

I suspect he is thinking it would be there as it was in XP and, I presume, Vista.  Since the old classic theme has lower system resource overhead, The inclusion would seem obvious.  Apparently presumptions are a bad thing.

# Alun Jones said on 24 July, 2009 04:08 PM

Solitaire's undo function fails to let you undo a losing move.

# TheOtherMe said on 25 July, 2009 03:22 PM

App-V seems to be the way things are going and then its just one folder you have to move.

# Prashant said on 31 July, 2009 08:50 AM

Quite impressive!!! the thought process is nice and can bring revolutions in computing world. But my friend we need to understand that the concept of file cabinet has been around for ages and as a concept has matured enough to be in the genome of the human. Whereas software are relatively too young to behave as perfectly expected.

It’s not just about the cabinet........ we end up comparing a lot of stuff and the ease that they have brought with software's. That’s not correct. If you compare 1970's when a UI used to be an alien concept and processing speed of KB's used to be great. Comparing that we have been continuously growing and I say that this kid is growing relatively fast.

Probably some 200 yrs down the line when we are not there the software would become simply a file cabinet.

# Chris Walker said on 28 August, 2009 06:57 PM

Solitaire is just lucky.  It has no reason to be embedded in other documents via OLE for example.  A "copy install" would almost work as long as the PATH variable sees it.  The whole concept of an application just organicly grew.  Think of the problem of uninstalls of one app where it shares a DLL with other apps (Solitaire has this problem with cards.dll)  How about on the fly updates without reboots or terminating the app.  Solitaire keeps track of high scores (if memory serves me -- the other games in-box tend to) by changing the registry.  Copy install will NOT copy these over.

Kind of a mess.  Not the decent people haven't tried to fix it over the years.  Lots of people.