Pingdom Home

US + international: +1-212-796-6890

SE + international: +46-21-480-0920

Business hours 3 am-11:30 am EST (Mon-Fri).

Do you know if your website is up right now? We do! LEARN MORE

The developer obsession with code names, 114 interesting examples

Code name LonghornCode names have been around for a long time. Remember the Manhattan project in the 1940s? That turned out to be the atomic bomb. Thankfully, not all code names hide such sinister projects.

Code names can be about secrecy, but when it comes to software development, it’s usually not so much about secrecy as it is about the convenience of having a name for a specific version of a software. It can be very practical to have a unique identifier for a project to get everyone on the same page and avoid confusion.

And we want to name our darlings, don’t we?

So what kind of code names are developers out there coming up with? Here is a collection of code names for software products from companies like Google, Microsoft, Apple, Canonical, Red Hat, Adobe, Mozilla, Automattic and more. We’ve tried to give some background information where possible. You’ll notice that some code name schemes are definitely more out there than others.

Mozilla code names

Mozilla has based most of the code names for different Firefox versions on parks.

An interesting aside is that Mozilla itself was originally the internal code name at Netscape for its Netscape Navigator project.

  • Phoenix – Firefox 1.0
  • Deer Park – Firefox 1.5
  • Bon Echo – Firefox 2
  • Gran Paradiso – Firefox 3
  • Shiretoko – Firefox 3.5
  • Namoroka – Firefox 3.6

Microsoft code names

Microsoft has a ton of products, and code names for most of them. When it comes to Windows, Microsoft seems largely obsessed with location names, with a few exceptions.

  • Janus – Windows 3.1
  • Snowball – Windows for Workgroups 3.11
  • Chicago – Windows 95
  • O’Hare – First version of Internet Explorer
  • Memphis – Windows 98
  • Daytona – Windows NT 3.5
  • Cairo – Windows NT 4.0
  • Whistler – Windows XP
  • Longhorn – Windows Vista
  • Vienna – Windows 7

Canonical code names

Code names for Ubuntu versions always follow the pattern “adjective + animal”. The first Ubuntu release was called Warty Warthog because it was created in a short period of time and there wouldn’t be a lot of time for polish. Canonical wanted to keep using “hog” in the version names, but soon abandoned that (after Hoary Hedgehog). If they hadn’t, Breezy Badger would have been code named Grumpy Groundhog.

Note also that as of Breezy Badger, the code names have been in alphabetical order.

  • Warty Warthog – Ubuntu 4.10
  • Hoary Hedgehog – Ubuntu 5.04
  • Breezy Badger – Ubuntu 5.10
  • Dapper Drake – Ubuntu 6.06
  • Edgy Eft – Ubuntu 6.10
  • Feisty Fawn – Ubuntu 7.04
  • Gutsy Gibbon – Ubuntu 7.10
  • Hardy Heron – Ubuntu 8.04
  • Intrepid Ibex – Ubuntu 8.10
  • Jaunty Jackalope – Ubuntu 9.04
  • Karmic Koala – Ubuntu 9.10
  • Lucid Lynx – Ubuntu 10.04
  • Maverick Meerkat – Ubuntu 10.10

Apple code names

Just like Microsoft, Apple has a lot of products, and code names for basically all of them. We focused on Mac OS. The influences for Apple’s Mac OS code names are pretty obvious. For a while they were mostly musical terms, and as of Mac OS X the focus switched to big cats.

Fun little anecdote: System 7.5 was code named Mozart, but also Capone. Why Capone? Because like the famous gangster, it was meant to rule over Chicago (Windows 95).

We also have to mention Apple’s code name for A/UX (Apple Unix) 1.0: Pigs in Space.

  • Harmony – Mac OS 7.6
  • Tempo – Mac OS 8.0
  • Bride of Buster – Mac OS 8.1
  • Allegro – Mac OS 8.5
  • Sonata – Mac OS 9
  • Fortissimo – Mac OS 9.1
  • Moonlight – Mac OS 9.2
  • Cheetah – Mac OS X 10.0
  • Puma – Mac OS X 10.1
  • Jaguar – Mac OS X 10.2
  • Panther – Mac OS X 10.3
  • Tiger – Mac OS X 10.4
  • Leopard – Mac OS X 10.5
  • Snow Leopard – Mac OS X 10.6

Automattic code names

Starting after WordPress 1.0, Automattic has code named most WordPress releases after well-known jazz musicians.

  • Mingus – WordPress 1.2
  • Strayhorn – WordPress 1.5
  • Duke – WordPress 2.0
  • Ella – WordPress 2.1
  • Getz – WordPress 2.2
  • Dexter – WordPress 2.3
  • Brecker – WordPress 2.5
  • Tyner – WordPress 2.6
  • Coltrane – WordPress 2.7
  • Baker – WordPress 2.8
  • Carmen – WordPress 2.9

Google code names

Someone at Google clearly has a sweet tooth. All Android code names are pastries or desserts. (For those who wonder what FroYo is, it’s short for frozen yoghurt.)

  • Cupcake – Android 1.5
  • Donut – Android 1.6
  • Eclair – Android 2.0/2.1
  • FroYo – Android 2.2
  • Gingerbread – The update after FroYo

Adobe code names

Adobe’s code names for Photoshop largely seem to be movie related in one form or another, with names of movie characters, movie titles, and other references, some definitely more obscure than others.

  • Fast Eddy – Photoshop 2.0
  • Tiger Mountain – Photoshop 3.0
  • Big Electric Cat – Photoshop 4.0
  • Strange Cargo – Photoshop 5.0
  • Venus in Furs – Photoshop 6.0
  • Liquid Sky – Photoshop 7.0
  • Dark Matter – Photoshop CS
  • Space Monkey – Photoshop CS2
  • Red Pill – Photoshop CS3
  • Stonehenge – Photoshop CS4
  • White Rabbit – Photoshop CS5

Fedora code names

Fedora started off relatively thematic, with the code names for Fedora Core 1 through 5 all being in some way related to alcohol (wine or beer). After that, the relationships between the code names get a lot less consistent.

Update: Fedora uses a naming scheme where a new release has to have a relationship with the previous release. More info on their guidelines page.

  • Yarrow – Fedora Core 1
  • Tettnang – Fedora Core 2
  • Heidelberg – Fedora Core 3
  • Stentz – Fedora Core 4
  • Bordeaux – Fedora Core 5
  • Zod – Fedora Core 6
  • Moonshine – Fedora 7
  • Werewolf – Fedora 8
  • Sulphur – Fedora 9
  • Cambridge – Fedora 10
  • Leonidas – Fedora 11
  • Constantine – Fedora 12
  • Goddard – Fedora 13

Red Hat Linux code names

The geek presence is strong here. Note for example the (original) Battlestar Galactica reference for RHL 5.2 and 5.9: Apollo and Starbuck. Or it could be a coincidence, because there are a lot of literary and mythical references here, for example: Starbuck is also a character in the novel Moby-Dick, The Sea-Wolf is a Jack London novel, and so on. Fun aside; one RHL version shares its name with a Mozilla product: Thunderbird.

  • Mother’s Day – RHL 1.0
  • Picasso – RHL 3.0.3
  • Colgate – RHL 4.0
  • Vanderbilt – RHL 4.1
  • Biltmore – RHL 4.2
  • Thunderbird – RHL 4.8
  • Mustang – RHL 4.9
  • Hurricane – RHL 5.0
  • Manhattan – RHL 5.1
  • Apollo – RHL 5.2
  • Starbuck – RHL 5.9
  • Hedwig – RHL 6.0
  • Cartman – RHL 6.1
  • Piglet – RHL 6.1.92
  • Zoot – RHL 6.2
  • Guinnes – RHL 7.0
  • Seawolf – RHL 7.1
  • Enigma – RHL 7.2
  • Valhalla – RHL 7.3
  • Psyche – RHL 8.0

Debian code names

All Debian releases are code named after character names from the film Toy Story. Remember Sid, the emotionally unstable, toy-destroying kid next door? That’s the permanent name for Debian’s unstable development distribution.

  • Buzz – Debian 1.1
  • Rex – Debian 1.2
  • Bo – Debian 1.3
  • Hamm – Debian 2.0
  • Slink – Debian 2.1
  • Potato – Debian 2.2
  • Woody – Debian 3.0
  • Sarge – Debian 3.1
  • Etch – Debian 4.0
  • Lenny – Debian 5.0
  • Squeeze – Debian 6.0

Final words (not in code)

It’s not just software developers that are fond of code names. You’ll find code names wherever there’s some form of research and development going on. For example, Intel and AMD have code names for their processors, Microsoft has code names for each iteration of Xbox 360, Apple has code names for its various computers, and so on.

What we find interesting is the amount of creativity that many put into these code names, often revealing cultural references and other obscure interests of its developers.

Sources:
https://wiki.mozilla.org/Firefox/Codenames
http://en.wikipedia.org/wiki/List_of_Microsoft_codenames
https://wiki.ubuntu.com/DevelopmentCodeNames
http://en.wikipedia.org/wiki/List_of_Apple_codenames
http://applemuseum.bott.org/sections/codenames.html
http://en.wikipedia.org/wiki/WordPress#Releases
http://en.wikipedia.org/wiki/Android_(operating_system)
http://en.wikipedia.org/wiki/Photoshop#Release_history
http://fedoraproject.org/wiki/Releases/Names
http://fedoraproject.org/wiki/History
http://en.wikipedia.org/wiki/Fedora_(operating_system)
http://en.wikipedia.org/wiki/Debian#Release_history



5 comments
Daniel Howard
Daniel Howard

As a systems admin and as an end-user, I find that code names can be extremely irritating. I'm running Ubuntu 10.4, I don't care if its called Woody Woodpecker or whatever: it's the April, 2010 release, which is easy to remember because I have a relationship with April 2010, not some Barmy Badger. Similarly, in my work environment, engineers tend to ask us to deploy code names we are unfamiliar with. What?! Code names are best kept to the engineers and developers, and let those not involved in the process deal with product name and version numbers. "Ah yes, 2.5 comes after 2.1. I can deal with that." That said, Google's got the best code names.

rtmie
rtmie

There was a story , perhaps apocryphal, doing the rounds in the 90's that a certain well known computer/personal electronics company had a project internally codenamed after the author/presenter of a TV documentary series about the galaxy. Somehow the author/presenter found out about it and threatened legal action so they renamed it to Project Butthead Astronomer.

Pingdom
Pingdom

@Jakub and @oliver: Thanks for pointing this out.

oliver
oliver

Please edit: There is more behind the naming scheme of Fedora: 'Name n and n+1 must share an is-a (not a has-a) relationship, but n and n+2 must not share the same is-a relationship as n and n+1.' from: http://fedoraproject.org/wiki/Releases/Names

Jakub Narebski
Jakub Narebski

Actually, for Fedora Core releases code names it isn't that "relationships between the code names get a lot less consistent" (at least for newer names), but that relationships between code names are pairwise, without general overall theme: each code name has some connection with previous name, and each code name has some other connection with next code name... but I agree that they are quite obscure. Unfortunately I lost the link with competition for code name for new Fedora Core release, which contains requirement for the codename to be connected with other codenames, with examples...