November 12, 2007
Since I started at Vertigo, here are a few of the projects I've worked on:
These are our internal project code names.
The names are chosen alphabetically from a set of items; every new project gets a name
from the set. We start with A, and when we finally arrive at Z, we pick
a new set of items for project name inspiration. Can you guess which set each of the above project
names is from? No cheating!
We've come up with the following loose guidelines for project naming:
- We prefer one word names.
- They should be relatively easy to pronounce and easy to spell.
- They have to be client friendly.
- They should be globally unique across the company. No duplicates.
- We need a reasonable number of items in the set to choose from, in A-Z order.
Of course, no entry on naming would be complete without a reference to the classic Salon article from the pinnacle of the dot-com craze, The Name Game:
In the end, however, attempting to quantify the benefits of a naming project may be just as small-minded as, well, attempting to quantify the benefits of a name. For the lucky client who truly clicks with his or her namer, the collateral benefits go far beyond nomenclature. There are new words to learn. Fun games to play. And, in the case of the Monkeys, unimpeachable warmth and love. "We got so much more than a name," says Robin Bahr of 98point6. "I mean, I got a name for my daughter. One of our senior executives identified strongly with 'Mescalanza.' No one calls him Jim anymore. His name is Mescalanza." Meanwhile, she says, "our senior manager for Internet development just fell in love with the name 'Jamcracker.' And so today, the Harvey meeting is known as the Jamcracker meeting. There are 300 people at this company who identify Jamcracker with Harvey."
Bahr claps her hands over her mouth. "Oh my God," she says. "I forgot. I shouldn't be mentioning these names to a reporter. Technically, we don't have ownership of those names. Jamcracker is still the Monkeys' property."
Bahr stops for a moment, as if listening to herself. Then she bursts out laughing. "Listen," she says. "I take it back. You write whatever you want to write. If someone out there wants to name their company Jamcracker, God bless them. And good luck to them."
The challenge, then, is coming up with new sets to inspire project names.
We began with Microsoft's list of project code names and Apple's list of project code names
as our spirit guides.
Here are some of the sets we've considered for project naming at various
If there are there any sets I haven't listed here that you think would make for
good project names, feel free to link them in the comments.
It's always fun to pick out a new name when starting a project. It's amazing
how quickly we plow through an entire A-Z series in a set; we've been through almost
four since I started in 2005. That's how we do it. But how do you name your projects?
Posted by Jeff Atwood
We use brands of beer. Belgian beer, of course.
We choose acronyms from the things it should do. I tried to change that and tried Albert(Discworld character, Death's assistant) on a new project, but it was changed to a hard pronounceble camel case word. :(
I've always thought that if I had a chance to name a project I would name it after weapons... preferably legendary ones. Well, actually ordinary weapons that sound cool or click well with the rest would work as well. I'm not sure if it would sound militaristic though.
I know the post is about names, but I'll tell you about fonts: In a 15 inch LCD monitor this new font is really bad to read. Is there any way to switch to the old font style ?
Project Naming Committees are where we send Management when we need to get them out of our hair for a while.
I was going to try the 2 first, but after your answers, I totally failed.
I'll post the sets I thought:
Michelangelo : Renaissance artists (fail)
Nash : Mathematicians (fail)
Some others that could be nice:
Food: pepperoni, beef, cabbage, lettuce, carrot, cinnamon, basil,... (avoid tomato(e) and potato(e) if your team has mixed Brits and USians)
Ilands: Madagascar, Hawaii, Cuba, Easter, Japan,...
Politicians: Carter, Kennedy, Reagan, Blair, Tatcher, Miterrand, Lennin,...
OMG, English phonetics is killing me, I meant Islands :)
Get one word to describe what it does and then translate it into Cornish, et voila, a unique, nearly pronouncable name.
You know, when I used to work for a big company, it was pretty important to decide what to code name a project, because the project visibility and image within the company were considered very important. Now that I work in a company with around 25 people (and less than half that when I started), we just give things descriptive names. Honestly, it works just fine, and it seems a lot less silly than telling people you're working on a project called Lemonheads, or MooseDrool, or Lothlorien or something.
Company I worked for had the most ludicrous names for their internal projects.
Data converter was called "Jehova" as it had its "witnesses" (plugins for different data types), while animation tool was called "closet" because, yes, it worked with "skeletons" (animated, that is). And many, many more
I typically use professional wrestling names for my projects...have for years. Usually just the last name or their character name. And with new characters coming going all the time, the list is plentiful:
And at one point in time the team I was on used television program names and associated names -- mostly because it was at a CBS affiliate station:
- South Fork
I've used mythical names a lot too. But now that I'm more of a one-man team I tend to stick with wrestling names. Keeps it fun and is great for conversation too.
Branching out into naming schemes in general (i.e. not specific for projects)
A company I worked for used the box-o-crayons method for naming servers: they took a large box of crayons that had the colors listed and named their servers after it, in no particular order. ("the white is our CVS box, the red is a testing box, etc").
All machines that get to live in my home get named after the capitals of US states, in alphabetical order of the state.
I have also used (for small numbers of boxes) 6-lettter scientists (Kelvin, Darwin) and space crafts/mission programs. (Sputnik, Apollo).
Stations on a (local) rail network works nicely too. (e.g. London Underground)
Sadly we only use the final product names (if already known) or description of what the product will do (or acronyms of this).
I vote for rockalbums or sweets for the start.
But how about combinations of two sets, to make it cooler, this could lead to names like "firefox" :-P
My day job is with the DoD, so we of course name everything with huge, obscure acronyms that we then pronounce phonetically. (Defense Finance and Accounting Service = DFAS = Deefas)
When I'm naming a personal project, I try to come up with an original word that I just think sounds cool. Right now I'm working on one I call Operoth.
Interestingly, your strategy for naming projects is very similar to the shadowy "Bureau"'s strategy for naming secret missions in Adam Hall's "Quiller" novels...
Personally, I've never needed to name a project, but I like naming machines. At Warwick Uni, different clusters of machines would have related names, so all the Sparc ELC/SLCs back in my day were Onyx, Marble, Flint, and so on, whereas the room of colour graphics stations all just ended with "-ind": woodwind, downwind, tamarind... Much nicer than this dull company I work for now, where everything is RLYDULNME04938 or whatever.
At Warwick, there was a suggestion to name a group of machines after dead rockstars (mostly so you could get the dialogue "ping Elvis"/"Elvis is alive"), but it never came to fruition, unfortunately.
How about aartoon characters - from a single show to keep the set tight. And as much as I like the shows, be more creative than Kyle, Stan... or Bart, Lisa...
I used to work for a large company where one IT guy joked that every project must start with Step One: Choosing a clever acronym. He was making a good point - it was ridiculous, the extent to which project teams would go to get a catchy name.
We use acronyms, but ours tend to be pretty involved. They've included Spartacus and (our current project) Vlad the Impaler.
I've got nothing against naming a project for what it does, but sometimes you know a project name won't be unique. We can't call something "Accounting Rewrite" when we know that there will be another one in a few years -- I guess we could do "Accounting Rewrite 2006" but Spartacus is much easier to say and remember (and keep the documentation organized).
Why not use the operations code name lists from World War II - they were specifically selected to:
- no give away locations, functions etc,
- while providing senses of grandeur, importance, and so on.
A number of them are freely available online - the US Army's official one is at:
I always try to find something at least tangentially related to what the project is supposed to do, and then work out a way to creatively misspell it to avoid potential trademark problems. ;)
If that doesn't turn anything up, I'll try and construct a silly recursive acronym that has more than one meaning. Bonus points for getting something with both a rude expansion, and a completely benign one. Failing that, I either pick something that has a cool logo associated with it, or that's just so plain bizzare and silly, that no one will ever forget it.
I really do have too much fun coming up with names for things.
We have a project manager that's really into cyclists, so a number of our projects have been famous bikers. I tried for star wars references once, but nobody got it...
We use marsupial names. We end up with some funny sounding names that no one understands, and that is how we like it. We have Numbat, Dibbler, Wombat, Koala, and Opossum just to name a few.
I started naming my projects after famous cities, and then giving individual sections of the project names of famous monuments from that city. eg: A CMS called Paris where the secured admin-only area was called La Bastille. (Though, naming it after a jail which was broken *into*, probably wasn't the most thought-through idea.)
Character from shows. My servers are named after characters from Buffy the Vampire Slayer and my workgroup is called Sunnydale.
I wound up naming my computers after the first names of Italian bike racers that started with the letter 'f': felice, fausto, francesco, fabio. But when I had enough of this silly scheme, I named the last one fini.
Er... I use identity(1,1) prefixed by "project ". Although using the prefix is optional...
In France we use the wine category a lot...
We mostly use acronyms or short phrases...nothing too long, just two or three words to briefly describe what it does (PlanTracker, LeadGeneration, ProjectEvaluation, etc). Occasionally, an area of our company will develop a system that they want a "really good" name for, so there will be a post on our intranet site stating that you can submit your idea for the system name and the winner will get $250 (sometimes more). They will give a brief description of what the system does so you can come up with something decent.
Most of the time though, it's up to the programmer in charge to come up with the name. The business area usually only cares about what is displayed in the header of the page when they get to it.
Interesting, I always figured they picked the "codenames" after the fact by martketing. I've always used a short descriptive word or phrase that the project accomplishes.
Servers though ;-) My favorite scheme was construction equipment, like Jackhammer, Excavator, DumpTruck, etc.
Star wars planet names also worked. I miss Beru :-(
Hey, I wrote on this exact thing last week - http://whygosolo.com/posts/26 - and we went with Explorer Names since we're in new territory and bucking convention.
It took awhile to catch on, but we name our projects by where we go to eat for lunch during the kickoff. Chipotle, Pollo, Wildwings, Bankok to name a few.
A couple of years ago, I wrote an article which follows up on the excellent old Salon "Name Game" piece:
I wanted to know how the companies mentioned in it - the ones being given weird expensive names, and the ones doing the naming - fared.
The results pretty much confirmed my prejudices :-).
We tend to work off a new set of names every year (helps to get an approx. age of a long running proj.)
The last three years have been:
Knights of the Round Table
Traditional Martial Arts Weapons
Of course, then they get renamed to something boring before release to the business...
At Telligent we've had internal Community Server releases with names like Mentos, Morpheus, and a few others.
Our reporting solution (built by our interns originally) was initially referred to internally as TattleTale.
Our company just code-named our latest project: Predator, after the character of the movie.
We were just goofing around when we came up with that name, but later realized that the project, which we intend to aggressively compete with other similar systems, was an excellent fit. The system finds things and in this case, a Predator hunts things. Weird how that works out.
I'm using characters from video games I played as a kid. Right now I'm using the Mario series. Mario, Luigi, Peach, Toad, Bowser, Yoshi, ... Then I'll use another video game series or maybe just mix them all up and go in no order. Sonic, Tails, Zelda, Link, Leonardo, Splinter, Donkey Kong, Diddy Kong, Kirby. If I ever run out, I'll just go to the endless Pokemon list.
We also used female names in our projects.
The three developers all lived on Betty Drive at the time, and that neighborhood was full of female names, so the project names turned out to be the same:
Server product: Sally (not sure where we got this one)
Client product: Cindy (the littlest)
Next version server product: Betty (as in Betty Page/'betty' in surfer slang = the ultimate babe!)
We thought about using the three Brady girls names, but no one wanted to name the next version after the oldest, because whenever we would go off talking about it, management would get annoyed and say 'Marsha, Marsha, Marsha!'... :-)
I must be really under estimating the value of a name... however...
Why not let the group come up with it themselves? Gives them ownership.
Having a central registry of project names would benefit everyone in the company (as a dictionary) and could link to the project documentation.
This would also insure that the name is unique.
The problem I have with project name is that different people around the company all reference it with different terms....
like 'everest' is really '3.0' or the 'performance' project.
The REAL problem I have with names is keeping them all straight!
Project names are all well and good but a more important aspect to software development is the final name and the practice of swtiching project names. Should the actual software project code include names? For example, should the actual solution file be called "Gobstopper.sln"? What about directories? Does the application get installed into the Gobstopper directory?
I've been on multiple projects that have had project names which ended up in the code/directories/architecture somehow and then got changed by either a buyout or a zealous marketer. Now you are stuck trying to explain to the customer why every Java Jar file starts with Gobstopper or why they need to use the Gobstopper user ID to log in to the database when the application is now called "Accounting 2008".
I'd love to hear how people are handling this in the industry. If the project name is Gobstopper does this name appear anywhere in the code/installation/architecture?
We have just finished a long cycle of projects all named somehow after sharks:
I am contemplating between apes and muscle cars for the next cycle now.
We name domain controllers after dead rock stars. hehe
Our first theme, roller coasters was the best. Our current set is Candy Bars, which sounds good at first, but doesn't really work. You need a set with a good distribution and something to cover Q and Z, typically hard ones.
I thought National Parks would be good but we had lots of complaints. Michaelangelo was a very successful and long project, but to this day, I still can't spell his name. Oh, and that's the turtle guy, not the painter.
Scott Stanfield, CEO
One company has lately used cities and civilizations as project names, but they tend to pick failed cities and civilizations. Perhaps this is due to the names sounding cool and people not knowing history? Or, perhaps it is recognition of the rate of project failure.
Forgot to add a couple of rules to picking the sets for project names at our company:
1. There needs to be a published (online) list of at least 26 items, A-Z.
2. They need to be "client-friendly". So the porn stars are out.
3. I get the final approval.
I love brands of beer for server names.
If you can people from fighting over regional preferences: cities, states, and countries work well. The majority are 1 word, and most people know how to pronounce and spell most of them.
Colors fits the scheme as well but I find that using adjectives gets confusing.
My current project is going by things related to sailing/boats
and the side projects are Cartographer/Compass/Periscope
and the little testbed i uses is Titanic.
You already had one we used: National Parks. We also tried natural disasters for a while ... Mt St Helens, Tanguska ;-)
Hey Now Jeff,
I like the idea of one word names.
Coding Horror Fan,
We use a method similar to Microsoft.
so we might have something like:
We decided to just be completely random. That's why we make use of our CAPTCHA solver. Currently, we point it to codinghorror's CAPTCHA. Of course, our last 10 projects have been named orange...
We are currently using Marvel comic characters.
At my last job we used house names from George R. R. Martin's The Song of Ice and Fire series. Who knows if they kept the convention after I left.
We decided to label our final release destination "Chicago", and each intermediate release would be a city on the way to Chicago from our offices here in Minnesota. Works out pretty well. :-)
This may be a little overboard, but do you have enough Trading Card Game types over there that you could start naming them after card names, from like Yu-Gi-Oh or Magic the Gathering?
I was using Yugi names for the various public releases during the beta phase of the project. The name tied into the ATK value of a particular fiend at the time (nobody except me probably noticed, but who cares 8^D) It was always seemed to drive up a little more interest when you said that the "Versago Release" (Beta 0.3) or "Kozaky Release" (Beta 0.4).
As for more naming suggestions, Lord of the Rings Characters/Locations are particularly nice. Easier projects get the obligatory "Rivendell" while those daunting ones can have "Mordor" 8^D
We considered a number of different naming groups for system rewrites at my work. I was partial to alcohols (Don Julio, Stoli, Ketel); other groupings we considered included stooges related (tho our servers were already named after 3 stooges and rascals characters), nerd themed (manga, gnu), horror films (cujo, creepshow, videodrome), comedies (strangelove, caddyshack), directors, completely random words (Rate, Arm, Nostalgia)... We settled on martial arts styles. Shaolin, aikido, kendo, judo. Also good for in-house sloganeering. "Shaolin: We beat the fuck out of the competition!" etc.
Since the president/owner of the company likes to fish in his kayak in the Gulf of Mexico (we're based in SW Florida), our releases are named for fish. Sand Flea is about to be released; Threadfin is ready for release testing. We usually find an image of the fish to stick in our Groove homepage for the release version (each release has its own Groove space).
Surf spots (I guess this is a California thing):
We use a code - e.g. A123-01-01 . It's supposed to denote "Customer - Project - Deliverable", but invariably nobody has any idea what the code refers to, and we end up calling it "Customer's - whatever it is supposed to do".
And all of our customers start with the letter A. I don't know why. There's less than 40 people in the company - I can't imagine we'll ever have 26000 customers.
We've previously used both IKEA products and made up words - used to send an email round asking for a made up word beginning with "P" and get responses. Most fun was choosing real product names - usually turned into a battle of attrition between programmers and marketing!
I guess I've mostly worked for some boring places, but the one big project that my first employer developed was code-named Hydra. It had many heads and when you cut one off 2 more would grow back.
When I was at a rather large Telco in the late 90's we used natural disasters... Typhoon, Tsunami, Tornado, Earthquake...
Since our actual product names are: 'The UI', 'The Dashboard', 'The Reporting System', and 'Leagcy Reports'... I think it would be a nice change to actually name our projects (even if they are only internal names). A former programmer of mine named our WebFOCUS project WebHUMPUS...
I dont like it when real product names are acronyms - everything ends up being called DSMS or DMS or VMS or something MS (something something Management System)
Acronyms are so 20th century!
Well, there's always Ubuntu release naming scheme:
* Breezy Badger
* Dapper Drake
* Edgy Eft
* Feisty Fawn
* Gutsy Gibbon
* Hardy Heron
They tend to go by the adjective for a short one-word name.
"Google Sets is a relevant tool for this type of activity"
I entered the project names listed and came up with nothing (as well as a regular search). I'm clueless - what's the set?
While I think you need to have internal reference names for projects, particularly since marketing depts like to change the names of things from time to time, I find it frankly annoying when projects are given cute names that have no semantic meaning.
Consider someone coming new at an application, and going to source control, and seeing names of famous artists instead of something more prosaic. Trying to find the project that some bit of code comes from can be confusing and frustrating.
"So Marketing calls this 'FizzBuzz', but internally it's 'CoderTest' and it's in source control as.. ?"
"It's mostly in the 'Slimer' project, but there's a bit from 'Venkman' too."
One should keep long term maintenance in mind, and have some sort of codename-to-functional description tracking; especially if you have projects that are expected to live on well past the average employment time of the developer(s) who originally wrote the project.
"I find it frankly annoying when projects are given cute names that have no semantic meaning"
Heh. I worked on the "Gee Whiz" project once. Only when the project finally died did I realize that it actually meant something, being that the device was, originally, going to interface with the 'G' bus on a larger system and was somehow related to the acronym 'WIS'.
You can use... pokemon names! Or, 80's/90's japanese arcade games.
I had shared an idea with a friend for naming servers a while back. He then got a job where he got to overhaul an entire network, so all his servers are named after Transformers.
I use real project names. Just because I know what the project is for when we start. This way I don't have to rename the names in any docs after deployment or have to remember what name was what project.
As for different versions, I suffix with version #. It works and it's as close to real life.
I'm all about ridiculous non-descriptive names, and anything with an umlaut gets special attention. I have had projects called berThingie, Figure Outer, Reconfabulationator, and Bjrne (which is also an acronym with the E standing for XML).
I can also name projects as a commentary on how smoothly they are running. Project Icebox and Project Clayton were destined to be ones that required constant attention and headed for a spectacular train wreck, respectively.
"I'd love to hear how people are handling this in the industry. If the project name is Gobstopper does this name appear anywhere in the code/installation/architecture?"
We have a project codename and a standard three-letter abbreviation of it that gets used throughout the codebase, documentation, etc. This means the software is decoupled from the content -- design and marketing can change the name of the project multiple times before ship, and we don't have to go through the codebase and rename anything. By keeping a formal codename, though, everyone knows what you're talking about when you mention Gobstopper, and where the GobBufferManager class came from.
Volcanoes (StHelens, Krakatoa)
Famous Hurricanes (Alicia, Katrina)
Arcane Biblical Names (Orpah, Zilla)
Trees (maple, oaktree)
Liquor (cachaca, absinthe)
Cities (Milan, Boise)
Historic slang (bounce, cat, fly)
What is the goal of having a project pet name? I mean why not just call it by the PRODUCT NAME??
I have a feeling the product name is too boring for us programmers so we have to give it a pet name so it doesn't remind us of what we are really making! haha Or maybe it makes us feel warm and fuzzy inside knowing that we are making something that has a code name too it.
We recently named one 'Project Airwolf' .. and in thinking, there are loads of 80s and 90s TV shows which would work!
- Deathly Diseases (appropriate for most software projects)
- Body parts
- Garden tools
Lord of the Rings characters seem to be a popular choice for server names (at the last few places I have worked, anyway)
As far as product/project names, from my experience (and depending on your industry), the product name is likely to change due to marketing terminology changes, as the company adapts to its market (especially if it is a long term project). So you might as well have some fun with it internally.
I'm part of the sustained engineering group in our company, meaning that I deal with released software. The feature development team loves these goofy names, but they never have to live with the consequences. Of the wombat, platypus, giraffe, shrew, bat, cat, and elephant projects, which ones belong to which products? What order are they in? Did Dingbat come before Goofball? Does Sneezy belong with Dopey or Doc?
Our documentation intermingles project and product version numbers all the time, and for newcomers to my department it's a nightmare. It's particularly frustrating because it's so unnecessary. Sure, you don't want to use product names because those change, no problem. I advocate using the _original_ base name for the product and an integer . That way you always know which projects belong to what, and what order they happened in. It's not fun, but it isn't making needless trouble for others either.
Developers aren't children, you don't have to call something the 'lolipop' project to get us to work on it. We are being paid, after all.
At my workplace, I tend to give servers very simple names based on function (prebook, webserver, proxy, and fileserver), but this is mainly possible because we only _need_ one webserver, etc.
As for project names, I tend to make short, cool names related to the purpose of the project (Blackstream for a dataflow project, for example). Mildly obscure movie references are good, too, though (Keymaster and Gatekeeper were competing for the name of one of our projects).
I always enjoyed this story about the [code]naming of Netscape's "ElectricalFire" JVM project:
blockquotebHow did the project get its name?/b
Scott Silver, one of the first EF developers, originally wanted to codename the project "Sexual Chocolate". (I'm not making this up.) That name was rejected, presumably because it would confuse Netscape's managers: "So, this Sexual Chocolate project actually has nothing to do with chocolate ?" Instead, Silver proposed "Electrical Fire" (two separate words). For the open-source release, Scott Furman coalesced the two words into one: "ElectricalFire", to make it apparent that the project was not to be confused with a safety hazard. A word of advice for the wise: if you end up working on a project with Scott Silver, do not allow him to handle the project codename./blockquote
Hrm... We don't name our projects anything creative. Just "User Management Project" or "Data Charts Project" (and yes, for some reason we tag "project" to the end of the name).
However, at home, I name all of my computers after DragonBall Z characters, ranked by how good the computer is (what it's 'power level' is).
So Krillin/Picollo/Yamcha for my little linux boxes, Vegeta/Goku for my windows machines, and then DBZ bad guys for my wife's computers since I can't use them (which means they are enemy computers) Raditz/Nappa. :)
At my company we used an different set per client, we used Radio Alphabet, Sylvester Stallone characters (Rocky, Rambo, ...) and Harrison Ford characters last name (Solo, Jones, Ryan , etc...) . Of course the project are named in the order of the movies release.
Otherwise you end up with a million names that sounded cool when you came up with them, but now form some sort of arcane nerd language that only two people speak, of which one has left the company.
Version 2.0 of our project will completely overhaul the system from the database up. I must've come up with a list of twenty internal code names for this rewrite before we stumbled on the perfect one in the first planning meeting... "Jedi".
I was thinking that the "Ski Resorts" list would be a cool list. But I don't think I'd be able to recruit anyone to work on my "Purgatory" project. :)
This discussion reminds me of some points I described in my book "Practical Development Environments". They're on my blog in more detail
(http://toolsmiths.blogspot.com/2007/11/choosing-project-names.html) but basically:
Keep it short
Since project names may appear in filenames or source code, shorter project names are preferable; four to six characters is common. Longer names will only be abbreviated anyway, and usually in two different ways.
Use distinctive sounds
Project names should sound different from each other when spoken aloud by people whose native language is not the one used by the rest of the group. Even if everyone speaks English, having two projects named "ctest" and "seebest" is too close for comfort.
Use low-frequency letters
It's much easier to be confident that all references to a project name can be found if the name contains characters that are less common in the local language. This is a good argument for choosing project names that use unusual characters, such as the letters q and z for English.
Make it unmarketable
Sometimes a project name will be reused as a product name, but not if it is already trademarked, or if you make it odd or crude enough! Project names don't have to have a theme, though that can be fun. They don't even have to be meaningful, just memorable with an obvious way of pronouncing the word. You can choose a number of suitable names once and then let people decide which one they want to use next. Names of stars, types of sushi, rare diseases, and characters from comic books are some ideas to start with for project names.
These names would never fly in the government sector, where all naming creativity has to go into formulating a clever acronym out of what the application does.
Example: BGAS (Block Grant Application System). And yes, it's a big ass monolithic application. Believe it or not, civil servants LOVE this. :)
Back to the commercial world though: here's one that never fails: Ski resorts! :)
Don't forget about: Rivers
On the Subtext project, we use nautical terms. we started off with Submarine names, but we don't know the names of very many submarines.
I worked at a startup company in Anacortes, Washington, and since it was located on Fidalgo Island, one of the San Juan Islands, we decided to use that island group as our set of internal project names. The first project was called Orcas and the second Lopez. The marketing folks liked the names so well they decided to use them for actual public product names. They changed Lopez to Cypress, however, as it was a bit catchier.
Alas, the company was sold, but the two initial product names live on: http://www.accu-med.com/main/Products.asp.