Product code names used to be actual code names, not at all the same thing as naming a file server "penguin." A code name is designed to obscure the identity of the thing named.
I worked for IBM in the days when it was the leader in just about every product line it had. Competitors had to wait to see what IBM produced in order to know what to produce themselves as alternatives. IBM had a lot to lose from people finding out what projects were going on in the company, so it not only gave the projects code names, but changed those names every year or two to keep the outsiders guessing as internal documents leaked out.
It's my impression that few companies today benefit from keeping it a secret what they're working on (I mean what the goal is, not how the company is doing it). So the name of a project isn't code at all -- just a handle.
"Telephone handset" would not be an adequate name, since the company probably discusses lots of potential handset products other than Swordfish. "Dream" (what the users will eventually call it) is not really practical because you want to work on a project long before it's time to nail down the marketing strategy. So we're left with arbitrary names.
Now, to the topic of giving cute names to things like servers as opposed to naming them after their function: I struggled with this for a long time and eventually concluded that purely symbolic (content-free) names are the best way to go, because it gives me more flexibility. Renaming occasionally seems to be a bigger pain than the additional step of connecting the name with the thing named every time.
Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds