Blooper 35: Speaking Geek

    From GUI Bloopers, by Jeff Johnson (Morgan Kaufman Publishers, 2000). Used without permission.


    As the number of people who use computer-based products increases to a larger share of the population, more and more people are finding themselves in a similar situation, except that the “foreign” language their software displays is not Greek, but rather Geek.


    Figure 1: Speaking Geek


    There are several different ways to speak Geek:

    Variation A: Using programmer jargon. Many software developers don’t switch off their use of jargon when writing software for nonprogrammers. This can happen for a variety of reasons:

    • A lack of awareness that there is anything to switch off: they don’t realize they use a highly specialized jargon
    • An inability to switch the jargon off even though they are aware that they use it
    • A belief that if people want to use a computer, they need to learn to understand computer jargon.
    • A tight deadline and insufficient writer support

    Variation B : Turning common words into programmer jargon.

    When developers redefine commnon words and expect the users to adapt to them, they are not being considerate of users.

    Examples:

    • word "resources" (English meaning: "something useful that that one has a certain amount of"). A lot of GUI-based software in today's market misuses this word for what are really attributes or properties (Note: if you want to use it inside your code, it's fine, but it should not appear on the user interface).
    • word "dialog" (English meaning: "conversation") In GUI-based software it's a shorthand for the term "dialog box".

    Variation C : Turning verbs into nouns

    • Examples: Phrases such as "the compile failed", "start the build", "do a compare", "finish an edit", "do an explore", "do a compare"

    Variation D : Exposing terms from the code

    Lift terms right out of code and include them in the user interface. A very common way of exposing users to terms from the code is to include the GUI toolkit name of a component, control, or datatype in its name or label.

    Figure 3: Dialog box that includes the word "Dialog" in its title, a "Name" setting that tells users that the value is stored as a string, and a menu that has "Menu" in its label

    Lifting words and phrases straight out of the code is also common in error messages


    Variation E : Assigning arbitrary meanings to short, nondescriptive terms.

    e.g., making "Find Again" and "Search Again" are different even though it is not clear from their names.

    The Design Rule: Avoid speaking geek

    The Geek-speak has to go.

    • Know the users
    • Develop a product lexicon based on the task domain
    • Leave GUI component names of the GUI