Sunday, February 28, 2010

Wizardry and Word

Here's a little quiz. I'm going to give you a passage from the 1939 novel The Sword In the Stone, about King Arthur's tutelage under the magician Merlyn back before anyone (except maybe Merlyn, who lived backwards in time) knew that the changeling boy Wart was really King Arthur. After you read it, try and think of a situation similar to Merlyn's that you probably find yourself in several times a week.

As the scene opens, Merlyn has just brought Wart back from a magical trip somewhere, and on their return, Merlyn discovers that he lost his hat. Here’s what happens next:

[quote—Google doesn't accept tabs!]

The Wart sat quiet while Merlyn closed his eyes and began to mutter to himself. Presently a curious black cylindrical hat appeared on his head.

Merlyn examined it with a look of disgust, said bitterly, “And they call this service!” and handed it back to the air. He closed his eyes and produced with growing indignation, in rapid succession, this . . . and this . . . and this. [In the original each “this” is followed by sketches of a top hat, a conductor’s cap, a Sherlock-Holmes style deerstalker, and a sailor’s cap.] . . .

“Now,” said Merlyn furiously, apparently to nobody, “do you think you are being funny?”

“Very well then, why do you do it?”

“That’s no excuse. Naturally I meant the one I was wearing.”

“But wearing now, of course, you fool. I don’t want a hat I was wearing in 1890. Have you no sense of time at all?"

Merlyn took off his sailor hat and held it out to the air for inspection.

“This is an anachronism,” he said severely. “That’s what it is, a beastly anachronism.”

Archimedes [Merlyn’s pet owl] seemed to be accustomed to these scenes, for he now said in a reasonable voice, “Why don’t you ask for the hat by name, master? Say, ‘I want my magician’s hat,’ not ‘I want the hat I was wearing.’ Perhaps the poor chap finds it as difficult to live backwards in time as you do.”

“I want my magician’s hat,” Merlyn said sulkily.

Instantly the long pointed cap was standing on his head.

[end quote]

If you are like me, as you read this passage it seemed strangely familiar. Where do you find yourself trying to do some simple, trivial thing, only to have your desires frustrated by an entity that gets it almost right, but not quite, and you have to keep trying again and again until someone wiser than you gives you the right advice? Then it works like a charm (so to speak).

If you say, "Operating any Microsoft product," you are right. Now, don't get me wrong. Microsoft comes in for a lot of criticism simply because its products are so ubiquitous, not because they are necessarily inferior or hard to use. But it is inevitable that in the case of something as complex and feature-filled as Word or Excel, that the average user who wants to do only a few things will sooner or later come up against a problem that is best described as a failure to communicate.

Whoever Merlyn was talking with (and we never find out), they seem to be peculiarly literal-minded—like computers. They're very fast—like computers—at doing something completely wrong, such as handing you a top hat when you want a magician's cap.

The other day, I was writing a list of things and wanted to head each item (a), (b), and open-parenthesis-c-close parenthesis. I spelled it out that way because if I tried just typing it literally the way I did the first two, I didn't get (c), I got the little "c" in a circle that means "copyright." Evidently there's a frustration meter built into the software, though, because the third or fourth time I erased the copyright symbol and typed (c), the machine finally understood what I meant and let me continue.

When things like this happen, I'm glad that I'm alone in the room and there's no one around to wonder who I am about to kill. I have conversations with Word and Excel, most of them printable, but I will not reproduce them here except to say that they have the same general tone as Merlyn's talk with his invisible servant.

How T. H. White got the idea for that scene is beyond me, writing well before computers were more than a gleam in a few inventors' eyes. The real joke is not so much that the invisible magic servant is incompetent, but that Merlyn can't be precise enough in his magical commands. Which is true for us too, by and large. I suppose somewhere in the universe, people teach entire courses on how to use Word and Excel, and there's all those online tutorials I never have time to go through—though I spend as much or more time trying to fix some annoying little problem that I might sail through easily if I'd had a formal course on the subject.

Part of the problem is the deep shadow of anonymity in which Microsoft cloaks its engineers. In this it's like the old Disney studios. No matter what talented people contributed to a Disney film before about 1970, all the credits said was "A Walt Disney Production." This is good for the head man if there is more praise than blame to go around, but I venture to say that Bill Gates is the most roundly cursed name in the phone book, especially around times when new Microsoft products are released. If Microsoft would allow a little public recognition of the people who are responsible for certain products, maybe the anger would be diffused some and we might even come to look up to these people as the sages they ought to be.

But knowing the typical software engineer, meeting the public who uses one's program is not ranked high on one's bucket list. So perhaps it is just as well that Mr. Gates is the public lightning rod for all manner of curses and denunciations whenever a Microsoft product fails to read our minds correctly. But if we knew who was behind the "wizards" of the software, we might act with less anger and more restraint against a fallible piece of software written by fallible human beings.

Sources: T. H. White's The Sword In the Stone is the first of a four-part series of Arthurian novels called The Once and Future King, and by most estimates, is by far the best one.


  1. The frustration of Merlin and his hat has an interesting parallel not just in Word, but in the path from concept to detailed design.

    Time and time again I see good concept designs broken by well intended interpretations and detailed implementation.

    Specifications need to spell out every little detail, otherwise an assumption will be made that could very well break the concept (the wrong hat). The devil really is in the detail!

  2. The frustration with Microsoft products isn't merely in their ubiquity - it's in the fact that there is no built in way to override the system's assumptions. I describe it as Microsoft believing that they know what I want to do better than I do. This, easily, is a definition for arrogance, regardless of how well-intentioned the programmers may be. Any system that has no method for the user to implement overrides is not designed for the user, it's designed for the designer.

    The most exasperating failure of Microsoft in this category is when there is an override feature (such as setting a UK English preference) which shuts itself off at random intervals. It does. No joke. One day you're typing in English without arrogant spell-check interruptions, and the next it's demanding that you type in American instead.

    It isn't only in Microsoft that you see this kind of overbearing over design, either, of course. Another excellent example is the Lamborghini Gallardo. It has a spoiler that rises up at 80mph, which makes excellent sense from an engineering point of view, but the speed limit on fast roadways in Britain is 80mph. It therefore announces to anyone who can see it that the car is speeding. Other vehicles with a variable height spoiler have an override button. The Gallardo does not.

    If Microsoft made it, however, there might be an override button; but would shut itself off every now and then without notification or reason. This would not only annoy the driver who's trying to get away with speeding, it might also interfere with his control of the vehicle by changing the driving characteristics without warning. It's unlikely to cause a crash, but then, changing my language preferences arbitrarily doesn't cause a "crash," either - unless, someday, I give in to the urge to smash the machine.