I <3 Steve McConnell*
Coding Horror
programming and human factors
by Jeff Atwood

February 01, 2006

Don't Acronymize Your Users

As a commenter noted in my previous post on how not to give a presentation, I have another complaint about software development presentations that I didn't list. They're chock full of meaningless acronyms. SOAP, BI, SOA, RDBMS, SGML, CRUD, RMS, RDBMS, XML, ORM, FAQ. I appreciate the need for brevity on slides, but can you at least have one slide that explains what the acronym means before giving up on words altogether?

The problem of acronymization was highlighted in bold relief for me last night as I was browsing through Dell's Core Duo laptops. "Gee", I thought, "I wonder what resolution this laptop screen has?" 1600 by 1200? 1280 by 1024?

You might expect the resolution of the display to be expressed in something typical and understandable, like pixels. But you'd be wrong.

This particular laptop has a "17 inch Wide Screen XGA+ display". What the hell does that mean?

What's a "WUXGA"? You might make a stab at guessing it's a rare four-horned bovid found in Central Asia, but in fact it's one of the grotesque acronyms vendors of personal computers, display boards, monitors, and projectors use to obfuscate one of the most fundamental specifications of the gear they're selling you: just how many pixels it can display.

After the introduction of the IBM Personal Computer in 1982, the PC industry got into the (bad) habit of identifying various screen resolutions by the name of the IBM or equivalent display adaptor having the corresponding maximum resolution. At the outset, this made sense: a user whose machine was equipped with an EGA (Enhanced Graphics Adaptor) need only look for monitors labeled "EGA Compatible". As the years passed and Moore's Law worked its magic on display resolution as well as compute speed, more and more mnemonics were coined as higher resolutions appeared and were adopted, resulting in today's ridiculous alphabet soup. Many of the current acronyms are, in fact, examples of "nested acronyms" of which Lisp programmers and other über-nerds are so fond. "WUXGA", for example, is "Wide UXGA", where "UXGA" means "Ultra XGA", and "XGA" is itself an acronym for "Extended Graphics Array--three levels of acronyms!

I needed an entire translation page just to determine that "wide" XGA+ is probably 1366 x 768. Or thereabouts. I'm not entirely sure. Thanks a lot, Dell.

Don't do this to your users. If you must use acronyms in your application, be sure the acronym is explained up front. And in at least a few other places that are easily discoverable, too.

Posted by Jeff Atwood    View blog reactions

 

« How Not to Give a Presentation Smart Tags and Sane Keyboard Shortcuts »

 

Comments

In HTML, use the <accronym title="Accronym Tag">AT</accronym> tag liberally (assuming you are using Acronyms).

Haacked on February 2, 2006 02:41 PM

I hate the resolution acronyms, also. Fortunately the ever-valuable Wikipedia has the translation from marketing to engineering:

http://en.wikipedia.org/wiki/Display_resolution

Cheers

Ole Eichhorn on February 2, 2006 03:08 PM

When I was in the Military (know for having an acronym for almost everything) it was in our written guidelines to always spell it out first with the acronym followed in parenthesis before you every used the acronym on its own. I still use this technique today.

Example: I was in the United States Air Force (USAF). I learned a lot while in the USAF.

Erik Lane on February 2, 2006 05:22 PM

Just FYI(!) the page you link to has a tad over 2000 acronyms listed under "Computing: Software Acronyms" - more than enough.

Richard Gardiner on February 2, 2006 06:17 PM

Couldn't agree more: <a href="http://girtby.net/archives/2005/01/06/yaga/">http://girtby.net/archives/2005/01/06/yaga/</a>;

And can we just see the same sort of problems looming for the Core Duo? What's the next rev of that going to be called? "Core Duo Plus"? "Ultra Core Duo"? "Totally, Like, Awesome Core Duo"?

Alastair on February 2, 2006 06:21 PM

In editing, we use the same rule that Erik Lane does -- spell out on first mention. However, there are some exceptions. Protocols, for example -- FTP, HTTP. I have argued when I myself was being edited that for some acronyms, spelling it out doesn't add any substantive value for the user who doesn't already know the acronyn. I think FTP fits into that category -- if you don't know what FTP is, spelling it out is very unlikely, in my opinion (IMO), to help you.

For what it's worth (FWIW), we don't spell out HTML or XML any more. You have to know your audience, too.

mike on February 3, 2006 02:34 AM

I quite like mp3, which expands to:

Moving Picture Experts Group 1 Audio Layer 3

I can't quite see what music files have to do with moving pictures though...

Simon on February 3, 2006 06:24 AM

In HTML don't rely on the <abbr> and <acronym> tags alone - keyboard users won't have access to the attribute value, so always expand the acronym/abbreviation in the text, at least on first use.

@Haacked - what's the AT tag?!

Dan on February 3, 2006 12:02 PM

@Dan: Doh! I meant the acronym tag.

Haacked on February 7, 2006 02:25 PM







(hear it spoken)


(no HTML)




Content (c) 2008 Jeff Atwood. Logo image used with permission of the author. (c) 1993 Steven C. McConnell. All Rights Reserved.