7.08.2006

The Imaginary Invalid

As I've been editing those old software docs (and some new ones), a particularly annoying phrase keeps coming up: "valid [something-or-other]", as in "Enter a valid department code" or "The following valid entries may be made in this field."

For example, here's a section in the chapter I'm currently editing, entitled "Defining Valid Departments". I'm naturally expecting it to be followed by a companion section entitled "Defining Invalid Departments". I mean, really, if there are instructions specifically for defining valid departments, doesn't that imply that there must also be (presumably different) instructions for defining invalid ones? Alas, there is no such section: it seems that this section is simply about "Defining Departments", and that the very act of defining a department is, in fact, what makes it valid.

And so it goes.

A table lists "valid date entry formats", which seem to cover every conceivable way of specifying a date and some that I would have thought not conceivable; in fact, in the context of this documentation, I don't think there is such a thing as an invalid date entry format. Any combination of numbers seems to translate to some kind of valid format in this imaginary software world.

In the job scheduling software, "Jobs have three valid types of schedules". It doesn't say how many invalid types of schedules there might be. Inquiring minds want to know.

"You can enter data in a field ... by selecting a valid entry from a list." I sure hope the entries in the list are labelled so I know which ones are valid -- I wouldn't want to inadvertently select an invalid entry.

"Table 6-1 lists the valid record types" that are recorded in the audit file. So does that mean there may also be invalid record types recorded in that file, but they didn't bother to list them in that table? How the heck did they get there in the first place?

It was admittedly many months before I finally figured out just what it was that I found so irritating about the word "valid". Then it finally hit me -- it harks back to the heady design days of First Edition STCCG. The designers kept talking about how some action could be performed only as a response to another action. But when I proposed to perform that action in response to some specific action, one of the designers told me I couldn't do that. "Why not?" I asked. "I'm responding to my opponent's action." "But that isn't a valid response to that action," he said. That was the first time I had heard any indication that a "response" had to be "valid" -- whatever that meant. Because, you see, the designers had never defined -- at least not publicly -- what constituted a "valid" response as opposed to an "invalid" one.

When I think about "responding", I picture something along the lines of "You do something, and then I respond by doing something else." For example, you ask me what movie I want to see. I can respond by saying, "I want to see Superman Returns", or "I'd like Chinese food." Either way, I have given you a response, even if that response was a total non sequiter (i.e., an "invalid response"). But the designers were telling me that I wasn't even allowed to say "I'd like Chinese food". I either had to say "I want to see Superman Returns" (or some other movie) -- i.e., make a "valid response" -- or I couldn't say anything at all. Now, if I don't say anything, I haven't made a response, invalid or otherwise. So under the designers' rules, an invalid response is actually an imaginary concept. I can't make it, so it doesn't exist.

In the same way, "invalid" seems to be an imaginary concept in my software documentation world. If I define a department, it is by definition a valid department. If I haven't defined it, then it doesn't exist to be considered invalid. If the only items available for me to select from a list are "valid entries", then there is no such thing as an invalid entry.

It all gives me a low-grade headache. In fact, it's enough to turn anyone into a temporary (but only imaginary) invalid.

1 comment:

Shocho said...

That term is almost completely superfluous. Take the word out, and the sentence has the same meaning. Stupid nerdy people like that word but they do not know what it means.

I too, bristled at the term "valid response" when I started working at That Company. No one seemed particularly upset at the fact that it was used by designers, tournament directors, and players, and there was no definition of what it meant.