Nirmal Mukhi (firstname.lastname@example.org)
developerWorks contributor, IBM
November 1, 2002
No matter how much time you spend developing your new project, it'll never become the next killer app without one key ingredient: a great acronym. In this week's
lol:>, Nirmal Mukhi gives you an introduction to the Science of Acronym Development (SAD).
For a piece of software technology to be a success in the marketplace, it has to have a name with a cool acronym. It's become the first phase of software development, whether you follow the Waterfall model, RAD, or Extreme programming. That being the case, we decided that it merits some study -- an effort we could only call SAD: the Science of Acronym Development.
After extensive research, we classified acronyms into the following styles:
- The classic acronym is a complete English word or pronounceable set of letters that says something about the technology or process it names when expanded. Recent consensus views such acronyms as being downright boring.
- Such acronyms deviate from the standard view of an acronym -- they are
just plain confusing. But their offbeat nature makes them attention-grabbers. Take .NET, for example. Is it even an acronym? Who knows, but putting punctuation in the acronym is a deft touch, kind of like the first person who decided to wear a baseball cap backwards. Besides, the presence of a dot in the acronym itself lends itself to endless possibilities when you use it within Internet domain names.
- Acronyms that include scientific notation fall into this category, as does the acronym GNU, which throws in recursion to make things interesting. When you type "ls" to retrieve a file listing, "GNU is Not Unix" is a cool acronym.
- Hoodwink 'em
- Acronyms of this type really aren't acronyms at all. They are just clever words positioned to make you think they're acronyms, thereby enhancing the coolness factor while
taking minimum effort to dream up.
Take, for example, SOAP. This acronym for a popular protocol in distributed computing started out in the classic style as an abbreviation for "Simple Object Access Protocol." Soon enough, people realized that it wasn't particularly simple, had nothing to do with objects, did not really access anything and wasn't, in the strict sense, a protocol at all. Sure enough, the writers recanted, and the next version of the specification had, hidden in crevasses of the change logs, the solemn statement: "SOAP V1.2 will not spell out the acronym." Why? Is it a secret? Isn't it the right of people at large to know why Web services geeks display a
sense of bewilderment when conversations turn to baths and other matters of personal hygiene?
The fruits of our research have yielded a prescription for creating your own acronyms:
- Start top-down (with the acronym) rather than bottom up (with the words you are trying to capture). Remember, people will see and remember the acronym far more than the words themselves. After some time nobody cares about the expansion at all. If you do really well,
the acronym itself will become a word -- quick, do you know the expansions of RADAR or LASER?
- Sometimes, try as you might, you can't get a pronounceable word. If this happens, accept it. There's nothing uglier than forcing pronouncing an unpronounceable acronym (pedantically speaking, all acronyms must be pronounceable, but let's not call the word police).
The Web Services Description Language (WSDL) is a good example. My stomach churns whenever people call it Wiz-Dill or Wuz-dill, or make other feeble attempts at pronouncing it. In such cases, just say the letters, please.
- If you have an unpronounceable acronym, don't use ugly letters like "W". WWW (for the "World-Wide Web", immortalized in Internet domain names) just rolls off your tongue, doesn't it? That acronym also demonstrates the drawbacks of the bottom-up approach.
- Don't say too much. Brevity is one of the essential features of the
acronym. Remember that a bad acronym mars your technology, idea, or
product forever, and long acronyms are always bad.
There's a new Web services specification, BPEL4WS (Business
Process Execution Language for Web Services), whose potential success is seriously challenged by the lack of creativity of its writers.
Is your project acronymically challenged? Try the Acronym Generator by the University of Oregon's ParaDucks research group that generates useful if unimaginative combinations of letters. If your project has a deadly edge to it, Cyborger is the perfect tool. Here's what Cyborger generated from my name: Networked Intelligent Repair and Mandatory Assassin Lifeform. Who knew?
|About the author|
When N.I.R.M.A.L. isn't obsessively listening to weather reports, he
can be found pretending to work with the Component Systems Group at IBM's T. J. Watson Research Center where he muses about Web services and uses SOAP -- even for personal hygiene.