Tech companies spend a lot of time and money coming up with cool names for their products: just think PlayStation, iPod, Xbox, even Windows - iconic monickers all.

But the name you see printed on the box is usually the last in a long line that range from the brilliant to the downright bizarre. Would you have stumped up for Microsoft Frosting, for example? Doubt it.

Yet tech companies use names like these all the time - partly as a way of easily identifying a product from others that engineers are working on; and partly as way of obscuring what a product might be.

Whistler's children

Sometimes, of course, names are picked because engineers simply can't think of anything better. Sometimes they're simply a reminder of good times, just look at the number of code names Microsoft engineers came up with after a design retreat to the Whistler Blackcomb resort in Whistler, British Columbia:

• Whistler - became Windows XP - named after the resort

• Freestyle - became Windows XP Media Center Edition 2003 - named after a terrain style at Whistler

• Harmony - became Windows XP Media Center Edition 2003 - named after a ski lift at Whistler

• Emerald - became Windows XP Media Center Edition 2004 - named after a ski lift at Whistler

• Longhorn - became Windows Vista - named after a bar in Whistler. Which explains everything when you think about it.

• Blackcomb - became Vienna, now Windows 7

Over the years Microsoft has come up with hundreds of code names for its products - partly because it simply makes so many different kinds of software, from consumer to mobile to business. But some products also get multiple names attached as did Windows CRM 4: it became known as Titan simply because some Microsofties couldn't spell its original name of Kilimanjaro correctly.

The Apple Gumby

Apple also liked to use multiple code names. One of its first products - the Apple //c was known as ET, llb, llp, Pippin, VLC, Chels, Jason, Moby, Lollie, Sherry, Zelda, Elf, Yoda, Teddy and Lollie before it took it final name, while one of the code names for another early Apple was Gumby.

Of course it's the most famous Apple products we're interested in here: the original Bondi Blue iMac was known as Columbus, Elroy, Tailgate and C1 among Apple engineers, before it was finally announcedi in 1998 while the first iPod was simply called Dulcimer.

One of the reasons why multiple code names get attached to a product was Apple often used different names with external suppliers and partners, while using different ones again internally. This enabled Apple to keep tabs on sources of potential leaks - you'd know instantly who the culprit was if a certain code name started being bandied around online, for example.

Apple's obsession with secrecy has now sadly even consigned names such as Baby Badger (for the AppleDesign Powered Speaker MkII) to history. Engineers now refer to products using proper code names - N82 being Apple's internal name for the iPhone 3G.

Of course sometimes code names are something that everyone can share - a practical measure that's adopted with some passion by the creators of Ubuntu Linux.

Meet Warty Warthog

Different versions all have very distinctive names comprising an animal name, along with a jokey characteristic that describes it .e.g. Gutsy Gibbon being the alternative handle for Ubuntu 7.10. It is, of course, a lot easier to remember the name because of that too. How else would remember what's different about each of these Ubuntu releases:

• Ubuntu 4.10 - Warty Warthog

• Ubuntu 5.0.4 - Hoary Hedgehog

• Ubuntu 5.10 - Breezy Badge

• Ubuntu 6.06 - Dapper Drake

• Ubuntu 6.10 - Edgy Eft

• Ubuntu 7.04 - Feisty Fawn

• Ubuntu 7.10 - Gutsy Gibbon

• Ubuntu 8.04 - Hardy Heron

• Ubuntu 8.10 - Intrepid Ibex

However, while Microsoft and Apple seem to take an eclectic, almost scatter gun approach to code names, Intel is the king of rational thinking.

Almost all its processors and chipsets are named after places or locations around the factory where they're made, giving us exotic but entirely comprehensible names like Santa Rosa, Montevina, Merom and others. It's not always so simple.

Revolution vs Wii

Choosing a code name for your product can occasionally backfire: Microsoft had to endure constant jibes online about Longhorn, partly because of the protracted delays for the OS that would eventually become Windows Vista, and also because features kept being stripped out, leading some wags to dub it 'shorthorn' instead.

Nintendo had to suffer problems of a different kind at E3 in 2006, when it finally revealed the name of its next-gen console - the Wii.

The announcement was met by howls of protest from developers and would-be buyers who preferred its original code name - the Nintendo Revolution. The code name not only sounded cool and edgy, but promised that the console also would revolutionise the way that games were played.

Eventually Nintendo exec were forced to justify its choice of name, telling Electronic Gaming Monthly in July 2006:

"Revolution as a name is not ideal; it's long, and in some cultures, it's hard to pronounce. So we wanted something that was to the point, easy to pronounce and distinctive. That's how 'Wii', as a console name was created."