Language In, Language Out

I learned an interesting lesson at my job today.

Our team recently gained a member who is trained in user experience stuff, actual testing and measuring it, not just eyeballing it like me. During a couple meetings lately, we’ve discussed the language used on the web site. We’ve changed the terminology a couple times during the course of development as we thought of new implications and also as we struggled to describe the technology in ways that people who are new to it can understand. When you’ve been working on a project for a couple years, learning how to talk about it to people who are brand new to it can be a challenge.

What do you mean you don’t understand what a child node is? It’s a node directly linked by a default or alternate path from a parent! (Note: Never end this type of sentence with words like “dummy,” “idiot,” “moron” or anything similar. For some reason it doesn’t go over well.) (See here for a partial explanation of child node)

One result of the changes in terminology is that the web site is inconsistent. Sometimes it uses one term, sometimes an older one that is no longer approved. This might be because we forgot to change it or it might be because someone was writing stuff and forgot that we had changed the term. An attentive reader might be thinking, “Ah! So you learned you should thoroughly edit everything when you make changes, maybe even have copy written by a professional who will be focused on the words and not think of them as a distraction from the real job of hacking code!” This would be wrong. Nice try though.

We figured out how to get to a better system, starting with having our new usability expert compile an approved dictionary for the web site and all the training materials. She’s not a technical person like the rest of us (mostly programmers. The boss is not a programmer, but he has a PhD in aeronautical engineering. He understands what a child node is) so she’s a good choice to repair some of the damage us tech geeks have done to the message.

No, that’s not the lesson either. It is VERY common for business development experts and all-wise columnists to explain that it is incredibly important for technical people to be able to “speak to non-technical business managers” or something like that. The conventional wisdom is that geeks only speak geek and if you can find one who can talk to regular people, you’ve struck gold. When I read this argument, I usually see Dilbert’s boss (in my head. I have not starting having such horrifying hallucinations yet) yelling, “Stop talking to me as if I have a brain! Use smaller words even if they don’t mean anything!”

Note to Scott Adams: I don’t remember if you’ve written the particular exchange just described or not. There was a time when, if I laughed at it, I would have been sad at the same time because it was so close to my real life job. Now that I work for a genuine rocket scientist (see above), would you consider having another boss who actually tops Dilbert’s big words with even bigger and more incomprehensible ones (while still technically accurate) until one of their heads explodes? Just a thought.

Where was I? Oh yes! Today’s lesson was not about the difficulty of finding technical people who can communicate with the non-technical. That problem will go away by itself when the day comes that the non-technical can drink a potion or take a shot and finally learn some minimal amount of real math (a minimal amount being about how much I know. Real math knowledge would be more like what my boss knows).

There was a real lesson that came out of the language discussion, though. It was that, as we discussed terms that users of our web site should not be exposed to (such as “node”) I realized that we could not simply banish those words from out vocabulary because we still needed them. “Node” has a meaning. The day one of my colleagues on the project first declared “everything is a node” it was a breakthrough that made several developments since possible. Even easy. “Everything is a unit abstracting all types of structural elements” or “everything is one of those web page type thingies and other stuff that we work with” would not have had the same value.

Sometimes we look at technical language as being like a secret handshake; it’s just something the in crowd uses to distinguish themselves from the rest of the world. When doctor’s say “myocardial infarction” or when computer science students say, “It’s not a hacker. Hacker is an honorable term for someone who likes to fix broken code in creative and efficient ways. The correct term for someone who invades networked systems is cracker” it seems more like melodrama than technical accuracy.

But there still needs to be technical accuracy somewhere, doesn’t it? We figured out today that it isn’t just us. We have plans to open up at least some portion of our code to outside developers. Part of the project is already out there as open source for anyone who wants to get work with it. That was the lesson, or at least part of it. After we have a complete dictionary for how to communicate our ideas to end users, we will probably need another one for when we’re communicating to other technical people. Those outside developers need to understand that everything is a node. (For some reason that phrase always reminds me of the song “Everything is Food” from the Popeye movie that starred Robin Williams in possibly his last really funny role. Maybe it’s just me.)

Our lesson today was something along the lines of how technical accuracy has to be preserved, even though it doesn’t help us communicate with end users. We also talked about creating a mapping of one set of terms to the other (a geek to English dictionary, more or less). A way to communicate with the people who aren’t inside without losing the information we need. It’s surprisingly hard. I’ve never heard of a project having that sort of translation layer before, though it seems obvious once you think of it.

But how many centuries have doctors been doing without anything like that either? If I knew some medical terminology, I’ll bet I could make some money selling a dictionary like that.

  • Myocardial: heart thing.
  • Infarction: ouchie.

Note: If you’re wondering what I do on my job that inspired this brilliant post, click the “trails” tab at the top of this page, or go to trailmeme.com. There’s some cool web tech here.

Share and Enjoy:
  • Digg
  • del.icio.us
  • Facebook
  • Slashdot
  • StumbleUpon
  • Technorati
  • FriendFeed
  • Reddit

Leave a Reply