RFC 1178
Choosing a name for your computer
Choosing a Name for Your Computer ๐
okay bestie, the title block is giving everything ๐ this is RFC 1178, filed as FYI 5 in the Network Working Group. The author is D. Libes from the Integrated Systems Group/NIST, and it dropped in August 1990. It's an FYI doc, so it's info for the Internet community, not a standard ๐
Status of this Memo โจ
This FYI RFC is a republication of a Communications of the ACM article on guidelines on what to do and what not to do when naming your computer [1]. This memo provides information for the Internet community. It does not specify any standard.
Distribution of this memo is unlimited ๐ฆ
Abstract ๐ธ
okay so, we give our computers names so we can tell them apart. the tea is that choosing a bad name is just as easy as choosing a good one ๐ this essay gives you guidelines for what makes a name good or bad.
Keywords: domain name system, naming conventions, computer administration, computer network management
Introduction ๐ง
the second you have more than one computer, you need a way to tell them apart ๐ like, you might tell your sysadmin, "Hey Ken. Goon is down!" ๐ญ
computers need to tell each other apart too. so when you're mailing a coworker on another machine, you might type mail libes@goon ๐
in both cases, "goon" points at one specific computer. how a human or a computer actually turns that name into the machine is not our problem here ๐ this essay is only about picking a "good" name. (It is assumed that the reader has a basic understanding of the domain name system as described by [2].)
picking a good name now saves you from problems people keep tripping over again and again โจ
here's what NOT to do ๐
Don't overload other terms already in common use. ๐ซ
using a word with strong meaning in your current context is asking for confusion ๐ตโ๐ซ this is especially true in conversation, where punctuation isn't obvious and grammar is often off.
for example, a distributed database was built on top of several computers, and each one had a different name. one machine was named "up", since it was the only one that accepted updates. conversations went like this: "Is up down?" and "Boot the machine up." followed by "Which machine?" ๐
it didn't take long to catch on and get used to this zaniness, but it was honestly annoying when your brain would stumble, and you'd have to stop and think about each word in a sentence. it's like, all of a sudden, English became a foreign language ๐
Don't choose a name after a project unique to that machine. ๐ ๏ธ
a manufacturing project named a machine "shop" because it was going to control a bunch of machines on a shop floor. a while later, a new machine was acquired to help with some of the processing. obviously it couldn't be called "shop" too ๐ in the end, both machines ended up doing more specific jobs, which meant more precise names were needed. a year later, five new machines were installed, and the original one was moved to an unrelated project. it is simply impossible to choose generic names that stay appropriate for very long ๐ฉ
sure, they could've called the second one "shop2" and so on. but then you're really just distinguishing machines by their number. you might as well call them "1", "2", and "3" ๐คทโโ๏ธ the only time this kind of naming scheme makes sense is when you have a lot of machines and no reason for any human to tell them apart. for example, a master computer might control an array of one hundred computers. in that case, it makes sense to refer to them by their array indices ๐งฎ
computers aren't exactly like people, but their names kind of are. nobody expects to learn much about a person from their name ๐ just because a person is named "Don" doesn't mean he's the ruler of the world (despite what the "Choosing a Name for your Baby" books say) ๐ honestly, names are just arbitrary tags. you can't tell what someone does for a living, what their hobbies are, or anything like that.
Don't use your own name. ๐ โโ๏ธ
even if a computer is sitting on your desk, it's a mistake to name it after yourself ๐ค this is another case of overloading, where statements get ambiguous. does "give the disk drive to don" mean a person or a computer??
using your initials (or some other nickname) doesn't really fix it either ๐ what happens if you get a different machine after a year? someone else gets stuck with "don", and you end up living with "jim". sure, the machines can be renamed, but that's extra work. plus, a program that used a special peripheral or database on "don" would start failing when it couldn't find it on the "new don" ๐
it's especially tempting to name your first computer after yourself, but think about it. do you name any of your other possessions after yourself? no ๐ your dog has its own name, and so do your kids. if you're the type who names your car and other objects, you definitely don't reuse your own name either. otherwise you'd have a ton of trouble telling them apart when you talk about them ๐
for the same reason, naming your computer the same thing as your car or another possession is a mistake too ๐ญ
Don't use long names. ๐
this is hard to measure, but experience has shown that names longer than eight characters just annoy people ๐
most systems let you set up abbreviations, but why not pick a name you don't have to abbreviate in the first place? that way there's no chance of confusion โจ
Avoid alternate spellings. โ๏ธ
once we called a machine "czek" ๐ญ in discussion, people kept thinking we meant a machine called "check". honestly, "czek" isn't even a word (although "Czech" is).
purposely incorrect (but cute) spellings also tend to annoy a big chunk of people ๐ and people who learned English as a second language often doubt their own knowledge when they see a word they know spelled differently. ("I guess I've always been spelling "funxion" incorrectly. How embarrassing!")
you might be thinking, "this is all very silly... people who have to spell a name will learn it and that's that." it's true that some people will learn the spelling, but it will eventually cause problems somewhere ๐
for example, one day a machine named "pythagoris" (sic) went haywire and started sending a massive number of messages to the site administrator's computer. the administrator wasn't a very good speller to begin with, and he'd never seen this machine before (someone else set it up and named it). but he had to deal with it, since it was clogging the network and bogging down his own machine, which was logging all the errors ๐ฉ he had to look up the spelling every single time he needed to type "pythagoris". (He suspected there was an abbreviation, but he would have had to log into yet another computer (the local nameserver) to find out, and the network was too jammed to waste time doing that.)
Avoid domain names. ๐
for technical reasons, domain names should be avoided ๐ โโ๏ธ in particular, name resolution of non-absolute hostnames is problematic. resolvers check names against domains before checking them against hostnames. but we've seen mailers that refuse to treat single token names as domains. for example, say you mail to "libes@rutgers" from yale.edu. depending on the implementation, the mail might go to rutgers.edu or rutgers.yale.edu (assuming both exist) ๐ต
Avoid domain-like names. ๐๏ธ
domain names are either organizational (e.g., cia.gov) or geographical (e.g., dallas.tx.us). using anything like these tends to imply some connection ๐ for example, the name "tahiti" sounds like you're located there. that's confusing if it's really somewhere else (e.g., "tahiti.cia.gov is located in Langley, Virginia? I thought it was the CIA's Tahiti office!"). and if it really is located there, the name implies it's the only computer there. if that isn't wrong now, it inevitably will be ๐ญ
some organizational and geographical names work fine. these are exactly the ones that don't work well as domain names ๐ง amorphous names like rivers, mythological places, and other impossibilities are very suitable. ("earth" is not yet a domain name.) ๐
Don't use antagonistic or otherwise embarrassing names. ๐ณ
words like "moron" or "twit" are fine names if nobody else is going to see them ๐ but if you ever give someone a demo on your machine, they might get distracted by a nasty word on your screen. (Maybe their spouse called them that this morning.) why take the chance they'll be turned off by something totally irrelevant to your demo? ๐
Don't use digits at the beginning of the name. ๐ข
lots of programs accept a numerical internet address as well as a name. unfortunately, some programs don't correctly tell the two apart, and they can get fooled by, for example, a string beginning with a decimal digit ๐ฌ
names made up entirely of hexadecimal digits, such as "beef", are also problematic. they can be read as hexadecimal numbers as well as alphabetic strings ๐
Don't use non-alphanumeric characters in a name. ๐ฃ
your own computer might handle punctuation or control characters in a name, but most others don't ๐ if you ever expect to connect your computer to a heterogeneous network, you can count on a variety of interpretations of non-alphanumeric characters. network conventions on this are surprisingly nonstandard ๐คฏ
Don't expect case to be preserved. ๐ก
upper and lowercase characters look the same to a great deal of internet software, often because it thinks it's doing you a favor ๐ it might feel right to capitalize a name the way you would in English, but convention says computer names should be all lowercase. (And it saves holding down the shift key.) โจ๏ธ
Now that we've heard what NOT to do, here are some suggestions on names that work well ๐
Use words/names that are rarely used. ๐
a word like "typical" or "up" (see above) isn't computer jargon, but it's just too likely to come up in discussion and throw off your concentration while you figure out what it refers to ๐ตโ๐ซ instead, use words like "lurch" or "squire" that are unlikely to cause any confusion ๐
You might think you're totally safe naming your machine jose because nobody in your group is called that ๐. But then you hire a Jose and suddenly you've got a whole problem ๐. A name like sphinx is way less likely to clash with new hires ๐ฆ.
Use theme names ๐
Naming groups of machines with a shared theme is super popular. It's giving communality ๐ซถ and it shows off your depth of knowledge and imagination โจ. The simplest version is colors, like red and blue. You can add personality with picks like aqua and crimson ๐
.
Some sets are finite, though, like the seven dwarfs ๐ง. So when you order your first seven computers, just know you'll probably be getting more next year ๐ญ. Colors will literally never run out ๐.
Some more suggestions: mythical places (e.g., Midgard, Styx, Paradise), mythical people (e.g., Procne, Tereus, Zeus), killers (e.g., Cain, Burr, Boleyn), babies (e.g., colt, puppy, tadpole, elver), collectives (e.g., passel, plague, bevy, covey), elements (e.g., helium, argon, zinc), flowers (e.g., tulip, peony, lilac, arbutus). Get the idea? ๐
Use real words ๐
Random strings are a no-go for the same reason they're so useful for passwords: they're hard to remember ๐. Use real words, bestie ๐.
Don't worry about reusing someone else's hostname ๐
Okay so, super famous hostnames like sri-nic and uunet should be avoided, because people hear them in conversation and automatically treat them as full addresses even without a domain ๐. Everywhere else, your local domain is assumed to qualify single-part hostnames. It's kind of like how phone numbers get an area code when you dial from another area ๐.
So if you picked a reasonable name, you don't need to stress that somebody in another domain already grabbed it ๐ . A bottom-level domain only has so many hosts, so coming up with a name that's unique just within that domain is not hard at all ๐ธ.
There is always room for an exception ๐
I don't think this one needs much explaining ๐ญ. But real talk: if you later decide to rename a machine (to something sensible, like you should've picked in the first place), the pain is going to shock you ๐. No matter how easy the manuals make it sound, lots of obscure software quietly piles up references to that computer using the now-ugly name, and all of it has to be found and changed ๐. People mailing you from other sites have to be told. And you'll have to remember that the labels on old backup media refer to different names now ๐ผ.
I could go on, but honestly it would be easier to just forget this guideline exists ๐ซ .
Conclusion โจ
Most people never get the chance to name more than one or two computers ๐ฅบ, but site administrators end up naming a whole bunch of them. Picking a name wisely means both users and admins have an easier time remembering, discussing, and typing the names of their machines ๐.
I tried to formalize some useful guidelines for naming computers, with plenty of examples so my points are obvious ๐. Having been both a user and a site administrator, a lot of these stories come from real experiences that I have zero desire to relive ๐ฉ. Hopefully you'll dodge every pitfall I've talked about just by choosing your computer's name wisely ๐ฆโจ.
Credits ๐ซถ
Big thanks to the following people for suggesting some of these guidelines and joining the many discussions on computer naming: Ed Barkmeyer, Peter Brown, Chuck Hedrick, Ken Manheimer, and Scott Paisley ๐.
This essay first appeared in the Communications of the ACM, November, 1989, along with a Gary Larson cartoon reprinted with permission of United Press Syndicate ๐. The text is not subject to copyright, since it is work of the National Institute of Standards and Technology. However, the author, CACM, and NIST request that this credit appear with the article whenever it is reprinted ๐.
References ๐
[1] Libes, D., "Choosing a Name for Your Computer", Communications of the ACM, Vol. 32, No. 11, Pg. 1289, November 1989.
[2] Mockapetris, P., "Domain Names - Concepts and Facilities", RFC 1034, USC/Information Sciences Institute, November 1987.
Security Considerations ๐
Plot twist: security issues are not discussed in this memo ๐. Nothing about that in here, bestie ๐.
Author's Address ๐
Don Libes
Integrated Systems Group
National Institute of Standards and Technology
Gaithersburg, MD 20899
Phone: (301) 975-3535
EMail: libes@cme.nist.gov
๐ฆ where this page comes from
- ietf: rfc1178 1990-08
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms