With multiple computers on the same network, it's fun (if not productive) to come up with names within a theme (e.g. characters from a novel, place names from some country etc.)
I've been using character names from my favourite movies. A different movie for each network (or each zone in a network, or however you want to categorise it).
Home network is all character names from LOTR, home office is Expanse, etc.
It's fun to try pick suitable names from the movie, for the device, eg my HTPC is Gimli, because it's a small case but carries more than its weight. Gaming PC is Gandalf because it's entirely white.
Sub-categories of characters is good for sub-categories of devices, so all our phones/tablets are named after the Elves.
The main problem with this method is the HOURS you spend angsting over the correct names because it's actually fun.
I once worked somewhere that used locations from LOTR, but by the time I got there, they were down to obscure things on the map that you wouldn't know if you weren't a true fan.
i use the names of my favorite greek gods/goddesses in a (slightly) meaningful way. my monster tower is ATHENA, the goddess of knowledge. my laptop is ARTEMIS the hunter, and my phone is fleet-footed HERMES.
The best thing about this approach is that replacment computers can use related but distinct versions of their ancestor's names.
For instance, my old server was called TheQ (i.e. 'Q' from James Bond) and the new one is named Judy, because Judy Dench plays 'M' in the most recent films. It's convoluted, but it's neat to have what is effectively your own mythology.
I used to enjoy using names from The Wheel of Time series, the forsaken especially. I’ll admit to spending a bit more time than was practical on the endeavor, but I think it sort of helped me “bond” and care more about them?
Me too on the periodic table names, but with a bit of creativity related to the machine too:
- Helium - my Surface 3, because it's light
- Lead - my heavy Linux laptop
- Lithium - the Mac Mini I bought to keep from going crazy using a decade old Macbook Pro for iOS development
- Caesium - my Dell "workstation" Windows laptop, because I bought it to save time (compared to running Windows + Visual Studio in a VM)
- Uranium and Thorium - the beefy Xeon workstations that run a bunch of VMs and things - named because they put out so much heat that they might be radioactive
It's quite funny that we share the host names Helium and Caesium. My Linux machines are radioactive because I tinker with them a lot and am bound to reinstall every few months.
I've used characters from sesame street, solar system objects, stars (astronomical), colors, and classic car models (with subnets grouped by manufacturer).
Back in college, the CS department used planets. The department I worked in used organ names (brain and pineal being the two I recall). At my previous job, we used city/town names for virtual machines (plenty to choose from, and some quite amusing, like "truth-or-consequences" (in New Mexico for the record)).
With a pet, you obsess over the name and meaning of the name. With cattle, as long as names don't collide or cause problems, you couldn't care less about the name.
It is still helpful to have decent names even if you're treating your machines like "cattle" instead of like "pets".
Inevitably, some bug will occur, and in my experience, it usually happens to occur on a machine (rather than all of them at once; I'm not saying this machine is special — the bug could have happened on any of them, and likely exists on all of them because they're all running the same code, but this particular machine ended up being the lucky one to serve that slightly unusual request).
Getting in and debugging the state of that machine, pulling logs, directing a coworker to look at CPU detail "frobnozz", etc. is all easier if I can easily speak or type out the machine's name. "3.dev.microservice" is much easier to type/speak than say, an IP address, an EC2 instance ID, etc.
(I fully agree on not making one-off changes, and not treating machines as pets. But I think that even after that, decent naming has a place.)
And even with cattle, the other way, I still think it's useful for the name to provide some information. I.e., 3.prod.microservice being the third or fourth instance of the production setup of "microservice" is better than say, some random entry from the periodic table of elements.
Then the paradigm is wrong. Serving websites is the most important thing a webserver does, call it that. If that changes, rename it. If renaming it is impossible, you failed.
I think it's useful to give long-lived entities memorable names (literally in the sense of 'possible to remember') to allow people to draw fortuitous connections and keep similar entities distinct from each other during discussions. Even if you're just trying to keep track of which server it is that seems to be faulting.
I think its more important that names refer to long-lived resources. If I put a DB name in a connection string I want to see the same data every time. I don't care what hardware it is on.
Winner winner, chicken dinner. As someone who is still managing pets, I even still prefer a standardized naming scheme. I use:
${project}-${dev/staging/web}-${web/db}
(which so far has covered my bases, I'm sure you can come up with any logical extensions if you are running load-balancers or other types of servers, add a number if you are running multiple frontends or clustered DBs, etc)
Even as someone who manages pets, I can't tell you how much time this has saved me from having to look up server names. I have done the generic "assign everything to a single machine## sequence" and it sucks ass. Was your production web server for this app machine32 or machine 54? What about the staging server? Can't even imagine the hassle of uuids as server names.
(of course so far I have done the pets thing in my internal network... but I can tell you that my father with a 40y career in managing servers for major corporations uses names like vmhost01/fsrv01/tvpc at home... which tells you what he thinks of that.)
Well, it helps to remember that RFC 1178 is from the days of single monolithic mainframes. Today we've got virtual machines that do everything, so each server can legitimately carry one name. However, if you do call it "prod-app-web-7," then you need to make sure that it's a web server for the app application in production and if that changes, you need to spin up a new server instead of reusing the VM.
But, hey we don't name infrastructure sites "Site 1" and "Site 2". They're "Milwaukee" and "Austin" and "DR". So if we do that, why name them "EMC-SAN-1" and "EMC-SAN-2"? We're going to retire that name eventually and there won't be a SAN 1 anymore. And what happens after "EMC-SAN-9"? So, instead why not "EMC-SAN-ARTEMIS" and "EMC-SAN-APOLLO" and "EMC-SAN-HADES"?
There's a distinction between physical names and logical names, too. What kind of long term nomenclature planning should we have? Look at hurricane names. The NWS does that so people remember which is which.
I've got about 5 computers at home. Most of them have "pet" names. I've got about 500 computers at work. Have fun treating them as anything but cattle.
If the servers are immutable (eg in auto-scale groups) then it's more like beef cattle because you don't expect your servers / cattle to survive to old age.
If they are any servers that cannot be auto created / destroyed without human oversight - or if their downtime breaks other resources along the chain (eg non-clustered DB server) then I'd argue those servers are a little more like dairy cattle.
Reread his comment. You are the exception. I would even venture to say that a lot of HN users are also exceptions, but neither HN nor IT administrators are most people.
HN is based around web based work, databases, webservers, load balancing, stuff that can (or does) run in VMs in clouds. If that's stuff that can be automated, then great, you don't need to know the IP, let alone have a hostname.
Most of the general purpose computers (and certainly the vast majority of devices with an IP) I deal with have real world interfaces, SDI ports and/or analog/digital audio connections. I'm not going to give my encoder in Nairobi a name that doesn't say "Nairobi Encoder" (PTR returns NRB-ENC001-obe, forward lookup for NRB-ENC001), same with encoder 2 at New Scotland Yard, and the same with the ntop/monitoring box I have in the New York office. I can't self heal equipment when a lorry drives into it, but I need to know that it's the Old Bailey monitoring box that's broken.
Thank you for implying that I didn't know exactly what I was responding to, and that I didn't read it carefully. The grandparent to my comment mentioned the cattle-pet distinction. The parent comment took that as some kind of statement of how common each situation is. I replied in a similarly loosely-connected manner, trying to reinforce the grandparent comment's point.
I fully understand that "cattle-owners" are less common, and that that's part of what the parent comment was saying. Reread the comment that they replied to, and reinterpret my comment as a reiteration of the grandparent comment, phrased in a different way.
This did sound cool to me, at the beginning of the auto-scaling, image-based, cloud times...
But then I did realize a couple of things, that improve with meaningful names:
1) Alerts impact and scope. It's easy to know what are you seeing in your phone, if balancers, rds clusters, and instances have meaningful names.
2) Metrics visualization. Maybe the graph is the same, but a meaningful legend sometimes helps.
3) SSH connection. I like to auto-complete SSH, not to copy/paste ssh and write down extra parameters like different .pem files.
4) (Inter) team communication. The same that with graph legends, for humans, it's easier with names than with ids.
5) Custom commands parametrization. The same than ssh, I prefer to be able to write down the parameter (host name, service name) of my command, without getting out of the terminal, copy the ID or IP, get back, paste, verify...
6) Costs/Reports visualization.
7) Backup management. Let's say S3 parent for the backups of a instance/service. Backup reports too.
At the end, I think that I can have cattle mentality regarding Configuration Management, System patching, Version change, etc... BUT I still can get benefits from thinking a little bit element and service names.
At the beginning (of the cloud concept), I did read pet Vs cattle, and I did think IDs were the thing. Now I think that to scale to many customers or many environments, it's better with previous thinking. Being the little string of the alert in the phone, the biggest winer.
I think the compromise is autogenerated-but-meaningful names. I wrote a Ruby script to generate memorable/meaningful names which is included as part of the automated server launch process. (https://github.com/johnd/server-name)
You never want to have to manually pick a name, or even stop to think about it, but using pure IDs for anything with a life longer than a day can get annoying.
Migrating from Pets to Cattle for server names also means you no longer are attached to the server, so it can be replaced or shut down without any personal attachment.
That is also how I feel about Microservices these days. I may still name the service with a "pet" like symbolic name, but I treat them as cattle.
They can be split, repurposed, deleted, rewritten any day without much remorse or delay. No personal attachment.
My personal machines are all pets ("thematrix", "heartofgold", "laputa" and "isengard") and my production systems are cattle ("sqldb01", "sqldb02", "gitea", "redis0", "redis1", "rabbitmq", "mastodon", etc.)
Mostly because for automation it's easier to know what a system does by looking at the hostname. When you manage about 30 systems all over the place, that's the only reasonable solution (I do see people trying to give pet names to their production systems but it gets out of hand and they usually just maintain a directory of what system does what somewhere)
Is that really cattle though? Instead of sql01 I’d think a more cattle based name would be db01, db02 etc so it’s database agnostic. For the redis and rabbitmq, I’d think that’s more mq01, mq02, etc for generic message queue servers. Potentially I’m taking the analogy too far though
That's also valid but I like to know exactly what type of DB is running (SQLDB runs Mysql and Postgres Nodes for example) so I can quickly jump and find servers without much thinking.
db01 is taking it into meaninglessness. Is that running PostgreSQL, Redis or MongoDB? Was Redis on db05 or cache01? That's not far from naming them server01, server02, etc.
sql01 is good if you only use sql abstraction layers, otherwise you probably even want postgres01 and mysql01. Or even postgres-olap01 and postgres-oltp01, if that's what you do.
It's kind of sad this task has mostly gone away for large datacenters, where choosing names for the thousands of servers is impractical. h223-16-32a just doesn't have same cachet as the carefully selected names.
NASA has a rigid host naming scheme that is based on the center, the org code, and the property tag number. Fortunately, we can use aliases, or I would go mad.
This doesn't exactly abide by the RFC but I name all my computers after dead rockstars e.g. "david-bowie", "george-harrison", "jimi-hendrix", "elvis-presley" It's become a tradition of mine :)
The lab computers at Rutgers use design patterns, unix commands, and programming languages for the names: https://report.cs.rutgers.edu/nagiosnotes/iLab-machines.html
We went with Dakota (not Lakota) names for numbers. Admittedly we might have skipped some of the longer names. Recently we added some named after color. Every department was supposed to find a way to include the language somewhere. [edit: servers only, PCs get names based on room / building]
I'm a fan of the names of the "First Generation" computers like ENIAC, EDVAC, ILLIAC, etc. My Raspberry Pi honors Pi inventor Eben Upton and is named EBENAC, the Economical British Educational Networked ARM Computer.
Metropolis chose the name MANIAC in the hope of stopping the rash of silly acronyms for machine names,[2] although von Neumann may have suggested the name to him.
I’ve been running through names of Greek and Roma deities for my machines, which work super well. They can even be themed (all mobile / wireless clients are named after dieties of death).
Only if you know the periodic table blind, but this could be a good approach to actually learn it. I'm just not that sure many people want to learn chemistry while administering the IT.
Really? In my adult life I can't remember the last time it would have been genuinely useful (not just a neat party trick) to have the periodic table memorized, but a sizable chunk of the English language has Latin or Greek roots. I definitely think that's more useful, if only to have a better sense of the language you're speaking.
I suspect people living in Athens may be rather upset by the assertion they don't speak Greek!
(Yes, I assume you meant ancient greek)
High School teaches tons of crap. I spent 5 years doing French, and while I remember "J'ai joue le foot" (which was a lie), that's about it, I could pick up more French in 3 months worth of weekly evening classes.
Even the French I know doesn't help - I went to a kiosk at Gare du Nord, having just got off the train from Brussels. "Je Voudrai une cafe sil-vou-plait". "Three-fifty" comes the response. Bloody French.
High School languages in the UK (and other English speaking contries) would be far better giving a smörgåsbord of the basics of French, German, Spanish, Italian, Russian, Arabic, Mandarin, and Portugese. Being able to say "Hello, good to meet you", "Thank you", "Excuse me, where are the toilets", "Could I have the bill please", understand a few phrases (tickets please etc), and have a fighting chance at reading and ordering from a menu, etc, in most countries of the world would be very beneficial. 4 years, 2 languages per year. Perhaps more important than the language specifics are the customs, even things like composting train tickets,
(Of course with translate apps, map apps, etc the menu/map problem is going away, but the customs and some language overview would go a long way - when train tickets neet composting, when tipping is required (USA), not required (most countries), and actually an insult (many far east places). Being able to recognize which toilet to go in - W or F - is helpful).
Wider cultural education would be a massive benefit to Americans in general, who on the whole don't get the chance to travel that say Brits do.
Remembering the number of higher elements is a pain so if you do this in lieu of DNS it's not as clever as it first seems. I too had a co-worker who loved this naming scheme and I thought it was great, just not in lieu of having a name resolution scheme that's not "quick what number is strontium"
It limits you to 120-odd options, but that information is a quick web search away so I'm not sure the issue you mentioned is a huge restriction. Google provides it in their quick results search for "strontium atomic number".
You could always use the Systematic names [1] to fill out the rest of the byte past the 118 proper named elements, giving you a full subnet of names. (ununennium through bipentpentium)
I wonder if you start to do chemistry on the names if you need to track multiple subnets? 192.168.11.17 might be sodium-chloride (NaCl).
Because you can run out of IPs and all machines have to have static IPs and because it breaks if you decide to subnet and because who knows the atomic number of californium and because machines can just set their own hostname and because of byod etc. etc.
I like following a naming theme. I used to be a ballet dancer so I use ballet steps for my machine names: Enterlace, Revoltade, ... They are all single words that are super uncommon outside of the ballet world
Good luck getting someone who is unfamiliar with those to spell it out from sound alone. Though with the prevalence of text communication (not seen at the time) this is less of a problem than when this was written.
I ended up with a scheme by accident that is hard both to spell and speak for most people. I don't have many problems with names like mictlantecuhtli, xolotl, or macuilxochitl (well, except for the fact that I can't pronounce consonant final tl and end up with /təl/ instead), but I totally see why others have problems with it.
On the plus side, if I ever get one of those "you have a virus" scam calls, I can probably string the caller out for a while trying to get them to spell out the name of the computer that supposedly has the virus...
My favorite theme was Japanese terms from the game Go (wei-qi). Joseki, fuseki, sente. It was educational as well as distinctive. The spellings are also easier than my other theme of Polish delicacies.
When I worked at Yahoo, all personal machines were given a simple two-dictionary-word name. e.g. My desktop was sawbeauty. I always thought this was pretty elegant. All the names were pretty short. There was minimal ambiguity. And it scaled really well.
An aside re: Yahoo -- Somewhere I have my website logs from the 1995-96 timeframe. I'll have to try to dig 'em up. I remember the day the site got listed on Yahoo, however. I got hits from machines with names like "scabies.yahoo.com", "ratbastard.yahoo.com", and "srinija.yahoo.com". There were some others, but I can't remember them (scurvy, maybe?). (I remember reading the Wired article about Yahoo in '96, seeing the name "Srinija Srinivasan", and figuring out what that last hostname meant.)
That’s well before my time at Yahoo. By the time I joined, their IT group preinstalled and named every device with a two-word nonoffensive moniker. By then they weren’t giving out 3rd level domains anymore either. :)
Monday, July 1, 1996 - We got hits from: polio.yahoo.com, pilsner.yahoo.com, mead.yahoo.com, scabies.yahoo.com, ratbastard.yahoo.com, lambic.yahoo.com, stout.yahoo.com, scorpio.yahoo.com, and srinija.yahoo.com. The Wired article had already come out at that point so I must have just remembered Srinija Srinivasan's name from the article.
Later in 1996 and in early '97 we got hits from: suppository.yahoo.com, boils.yahoo.com, tuberculosis.yahoo.com, and lobo.yahoo.com.
So, I see an alcoholic beverage theme and a disease theme. Yay!
The first time I rented a server I was looking around my room to think of a cool hostname and saw “yavapai” on my backpack. Since then I’ve just been using names of Native American tribes.
177 comments
[ 9.7 ms ] story [ 231 ms ] threadHome network is all character names from LOTR, home office is Expanse, etc.
It's fun to try pick suitable names from the movie, for the device, eg my HTPC is Gimli, because it's a small case but carries more than its weight. Gaming PC is Gandalf because it's entirely white.
Sub-categories of characters is good for sub-categories of devices, so all our phones/tablets are named after the Elves.
The main problem with this method is the HOURS you spend angsting over the correct names because it's actually fun.
For instance, my old server was called TheQ (i.e. 'Q' from James Bond) and the new one is named Judy, because Judy Dench plays 'M' in the most recent films. It's convoluted, but it's neat to have what is effectively your own mythology.
Ah, it was fun at any rate. I miss you, Lanfear!
Carbon, Hydrogen, Nitrogen, Neon, Tungsten, Helium, Sodium, etc
Wifi names are after noble gases.
PC hardware are all stable metals.
iPhone/iPad accessories are all non-metals.
and finally, random IOT devices are radioactive elements.
Scheme-compliant _and_ metaphorically apt. Love it.
- Helium - my Surface 3, because it's light
- Lead - my heavy Linux laptop
- Lithium - the Mac Mini I bought to keep from going crazy using a decade old Macbook Pro for iOS development
- Caesium - my Dell "workstation" Windows laptop, because I bought it to save time (compared to running Windows + Visual Studio in a VM)
- Uranium and Thorium - the beefy Xeon workstations that run a bunch of VMs and things - named because they put out so much heat that they might be radioactive
With a pet, you obsess over the name and meaning of the name. With cattle, as long as names don't collide or cause problems, you couldn't care less about the name.
If I know the hostname I or my team will be tempted to make one-off changes, breaking the whole "cattle" idea.
Inevitably, some bug will occur, and in my experience, it usually happens to occur on a machine (rather than all of them at once; I'm not saying this machine is special — the bug could have happened on any of them, and likely exists on all of them because they're all running the same code, but this particular machine ended up being the lucky one to serve that slightly unusual request).
Getting in and debugging the state of that machine, pulling logs, directing a coworker to look at CPU detail "frobnozz", etc. is all easier if I can easily speak or type out the machine's name. "3.dev.microservice" is much easier to type/speak than say, an IP address, an EC2 instance ID, etc.
(I fully agree on not making one-off changes, and not treating machines as pets. But I think that even after that, decent naming has a place.)
And even with cattle, the other way, I still think it's useful for the name to provide some information. I.e., 3.prod.microservice being the third or fourth instance of the production setup of "microservice" is better than say, some random entry from the periodic table of elements.
${project}-${dev/staging/web}-${web/db}
(which so far has covered my bases, I'm sure you can come up with any logical extensions if you are running load-balancers or other types of servers, add a number if you are running multiple frontends or clustered DBs, etc)
Even as someone who manages pets, I can't tell you how much time this has saved me from having to look up server names. I have done the generic "assign everything to a single machine## sequence" and it sucks ass. Was your production web server for this app machine32 or machine 54? What about the staging server? Can't even imagine the hassle of uuids as server names.
(of course so far I have done the pets thing in my internal network... but I can tell you that my father with a 40y career in managing servers for major corporations uses names like vmhost01/fsrv01/tvpc at home... which tells you what he thinks of that.)
But, hey we don't name infrastructure sites "Site 1" and "Site 2". They're "Milwaukee" and "Austin" and "DR". So if we do that, why name them "EMC-SAN-1" and "EMC-SAN-2"? We're going to retire that name eventually and there won't be a SAN 1 anymore. And what happens after "EMC-SAN-9"? So, instead why not "EMC-SAN-ARTEMIS" and "EMC-SAN-APOLLO" and "EMC-SAN-HADES"?
There's a distinction between physical names and logical names, too. What kind of long term nomenclature planning should we have? Look at hurricane names. The NWS does that so people remember which is which.
Though with all the milking machines hooked up the dairy cows probably look more like them visually speaking..
And these days servers might be more metaphorically close, increasingly, to just the beef itself. Decentralised, to somewhat stretch the analogy.
If they are any servers that cannot be auto created / destroyed without human oversight - or if their downtime breaks other resources along the chain (eg non-clustered DB server) then I'd argue those servers are a little more like dairy cattle.
He was tasty.
Most of the general purpose computers (and certainly the vast majority of devices with an IP) I deal with have real world interfaces, SDI ports and/or analog/digital audio connections. I'm not going to give my encoder in Nairobi a name that doesn't say "Nairobi Encoder" (PTR returns NRB-ENC001-obe, forward lookup for NRB-ENC001), same with encoder 2 at New Scotland Yard, and the same with the ntop/monitoring box I have in the New York office. I can't self heal equipment when a lorry drives into it, but I need to know that it's the Old Bailey monitoring box that's broken.
Thank you for implying that I didn't know exactly what I was responding to, and that I didn't read it carefully. The grandparent to my comment mentioned the cattle-pet distinction. The parent comment took that as some kind of statement of how common each situation is. I replied in a similarly loosely-connected manner, trying to reinforce the grandparent comment's point.
I fully understand that "cattle-owners" are less common, and that that's part of what the parent comment was saying. Reread the comment that they replied to, and reinterpret my comment as a reiteration of the grandparent comment, phrased in a different way.
But then I did realize a couple of things, that improve with meaningful names:
1) Alerts impact and scope. It's easy to know what are you seeing in your phone, if balancers, rds clusters, and instances have meaningful names.
2) Metrics visualization. Maybe the graph is the same, but a meaningful legend sometimes helps.
3) SSH connection. I like to auto-complete SSH, not to copy/paste ssh and write down extra parameters like different .pem files.
4) (Inter) team communication. The same that with graph legends, for humans, it's easier with names than with ids.
5) Custom commands parametrization. The same than ssh, I prefer to be able to write down the parameter (host name, service name) of my command, without getting out of the terminal, copy the ID or IP, get back, paste, verify...
6) Costs/Reports visualization.
7) Backup management. Let's say S3 parent for the backups of a instance/service. Backup reports too.
At the end, I think that I can have cattle mentality regarding Configuration Management, System patching, Version change, etc... BUT I still can get benefits from thinking a little bit element and service names.
At the beginning (of the cloud concept), I did read pet Vs cattle, and I did think IDs were the thing. Now I think that to scale to many customers or many environments, it's better with previous thinking. Being the little string of the alert in the phone, the biggest winer.
You never want to have to manually pick a name, or even stop to think about it, but using pure IDs for anything with a life longer than a day can get annoying.
But all servers are named as cattle.
But these days they may not even be cattle named as they are spun up and down so frequently in cloud environments that names makes no sense.
Pets -> Cattle -> Population?
That is also how I feel about Microservices these days. I may still name the service with a "pet" like symbolic name, but I treat them as cattle.
They can be split, repurposed, deleted, rewritten any day without much remorse or delay. No personal attachment.
Mostly because for automation it's easier to know what a system does by looking at the hostname. When you manage about 30 systems all over the place, that's the only reasonable solution (I do see people trying to give pet names to their production systems but it gets out of hand and they usually just maintain a directory of what system does what somewhere)
sql01 is good if you only use sql abstraction layers, otherwise you probably even want postgres01 and mysql01. Or even postgres-olap01 and postgres-oltp01, if that's what you do.
If had a pure mysql server I'd call it mysql01
https://en.wikipedia.org/wiki/List_of_named_minor_planets:_A
1,479 just in the letter A.
Personally, I've always been fond of pagan deities.
I can't wait until I need to use t-j-houshmandzadeh.
My cloud hosting account uses players on the active roster; my little hobby home servers use players from the practice squad.
https://en.wikipedia.org/wiki/2003_Cincinnati_Bengals_season...
Also iirc there was a set of servers named after arcade games, zaxxon.cs is still resolving at least.
Metropolis chose the name MANIAC in the hope of stopping the rash of silly acronyms for machine names,[2] although von Neumann may have suggested the name to him.
This'll probably be changing soon...
1) not a real person, but a real family name paired with a common first name
Eventually it becomes really annoying, don’t do this.
Think I'd rather have the periodic table.
(Yes, I assume you meant ancient greek)
High School teaches tons of crap. I spent 5 years doing French, and while I remember "J'ai joue le foot" (which was a lie), that's about it, I could pick up more French in 3 months worth of weekly evening classes.
Even the French I know doesn't help - I went to a kiosk at Gare du Nord, having just got off the train from Brussels. "Je Voudrai une cafe sil-vou-plait". "Three-fifty" comes the response. Bloody French.
High School languages in the UK (and other English speaking contries) would be far better giving a smörgåsbord of the basics of French, German, Spanish, Italian, Russian, Arabic, Mandarin, and Portugese. Being able to say "Hello, good to meet you", "Thank you", "Excuse me, where are the toilets", "Could I have the bill please", understand a few phrases (tickets please etc), and have a fighting chance at reading and ordering from a menu, etc, in most countries of the world would be very beneficial. 4 years, 2 languages per year. Perhaps more important than the language specifics are the customs, even things like composting train tickets,
(Of course with translate apps, map apps, etc the menu/map problem is going away, but the customs and some language overview would go a long way - when train tickets neet composting, when tipping is required (USA), not required (most countries), and actually an insult (many far east places). Being able to recognize which toilet to go in - W or F - is helpful).
Wider cultural education would be a massive benefit to Americans in general, who on the whole don't get the chance to travel that say Brits do.
I wonder if you start to do chemistry on the names if you need to track multiple subnets? 192.168.11.17 might be sodium-chloride (NaCl).
[1] https://en.wikipedia.org/wiki/Systematic_element_name
On the plus side, if I ever get one of those "you have a virus" scam calls, I can probably string the caller out for a while trying to get them to spell out the name of the computer that supposedly has the virus...
Monday, July 1, 1996 - We got hits from: polio.yahoo.com, pilsner.yahoo.com, mead.yahoo.com, scabies.yahoo.com, ratbastard.yahoo.com, lambic.yahoo.com, stout.yahoo.com, scorpio.yahoo.com, and srinija.yahoo.com. The Wired article had already come out at that point so I must have just remembered Srinija Srinivasan's name from the article.
Later in 1996 and in early '97 we got hits from: suppository.yahoo.com, boils.yahoo.com, tuberculosis.yahoo.com, and lobo.yahoo.com.
So, I see an alcoholic beverage theme and a disease theme. Yay!
Recent incarnations have been: StarshipEnterprise CaptainKirk MysteryMachine
Two words seems expedient, and a coupling of 2 + 2 or 2 + 1 syllables (loosely speaking) seems to leech into memory pretty well.
All of my machines are named after islands:
Mauritius Sable Padre Nauru Jarvis etc.