Hacker News new | past | comments | ask | show | jobs | submit login

The daily wtf has been significantly fictional for decades



I have worked with someone who used female names for temp variables in the early 2000s. He also kinda saved us by substituting all icons with over the top cute looking ones the night before the demo, which was super efficient at distracting the audience from how disfunctional the application was.


Same, I was told my predecessor used his girlfriend’s name for temp variables.


I use a random group of words as variable, etc. names when I can't think of them fast enough to stay in the flow. I find it easy to remember what each one does, and can go back and rename them to more reasonable things before doing a commit. It only takes missing one inexplicably named 'deodorant' variable, for me to want to sink into the depths of the Earth at the thought of people thinking I'm one of these eccentrics.


>for temp variables

Whew, savage.


That may or may not be the case, but I worked with someone back in the early 00’s who named all their variables things to do with the planet or sky, actually including both of those words too. Everything was $sky, $cloud, $mist, $hill, $rainbow etc.

The code was at times almost poetic, but a nightmare to debug.

At least some of this sounds very plausible.


There is a very large crypto currency project, holding 9.3 billion dollars, that believes that variable names should be mostly meaningless, and furthermore that all nouns should be three letters long, and all verbs four. Here's the start of the method "frob()", from the file "vat":

        Urn memory urn = urns[i][u];
        Ilk memory ilk = ilks[i];
        // ilk has been initialised
        require(ilk.rate != 0, "Vat/ilk-not-init");

        urn.ink = add(urn.ink, dink);
        urn.art = add(urn.art, dart);
        ilk.Art = add(ilk.Art, dart);

        int dtab = mul(ilk.rate, dart);
        uint tab = mul(ilk.rate, urn.art);


This seems to be MakerDAO VAT contract, for those curious. At least it has comments explaining everything at the top.

https://etherscan.io/address/0x35d1b3f3d7966a1dfe207aa4514c1...


I used to work on an accounting system and for internationalization purposes we dealt with generic "debit units" and "credit units". We had a developer who shortened "debit unit" to "dunt". Want to guess what he shortened credit unit to?



This seems like intentional obfuscation to make it harder for others to understand. I would stay far, far away from it.


Uncooperative, bordering on antagonistic.

(kiddng, do whatever you want, but I wouldn't work on that code)


I knew a guy (extremely smart, a PhD physicist) who, apart from writing Lisp in the style of Occam, who was fond of using synonyms - so a variable holding a stream would be called brook etc.

I also knew another hyper smart chap who used to argue passionately for meaningless identifiers - his argument was that you couldn't actually represent anything meaningful about what an identifier was for in a short name so why try? Mind you, he was a MUMPS developer.


Which puts me in mind of this classic, also from the DailyWTF: https://thedailywtf.com/articles/a_case_of_the_mumps


This is still too common in network equipment, server names, and project names.

So you need to know if some obscure name is the name of a star, galaxy, or a nebula, in order to know if it's a router, firewall, or server.

Still better than naming shit after greek philosophers.


Sometimes it's little freedoms like that that help you get through your workday.

Sitting logged in to server00831 from laptop firstlastname2016 all days is just soulcrushing.


It's one thing when you have pets, another when you have cattle.

A traceroute showing herodotus? Magellanic? Jesus fucking christ I can't even spell that into google to find out if it's a router or a firewall. I've worked at places like that and I can't figure out if the other people in the company hate each other, are super elitist (oh, you don't know who herodotus was? Did you even take ancient greek history at your public school?), or are some sort of double agent productivity saboteur.

I find it extremely disrespectful to get in the way of other people getting shit done, and some of these names are about as funny as wiping a colleague's hard drive (containing all their work in progress) for fun.

Don't make me spell empedokles when everything's on fire at 4am. That's insanely disrespectful.

You have three servers? Go nuts. You have at least 831 (per your example)? A thousand servers and your servers are still pets? I'd request a mandate to fix what is clearly broken culture and infrastructure, or quit.

At 4am the funny name is a joke at your expense, and shows that whoever named this machine does not respect you.


You can go on the other end of the extreme with this. One dude we hired came in and started immediately yelling about the naming convention of 3 machines. How unprofessional it was. This was when renaming a machine was kind of a pain, and reinstalling took 2-3 hours (plus patches). "you want it fixed you reinstall them" (they were never fixed). We were naming them after cartoon characters. He refused to install any machines himself and would regularly rename half the vars in a project because 'they did not feel right'. One time he spent 2 hours ranting about a comment in the code that was a movie quote that fit what was going on. The next box he wanted but would not install himself was named Kyle after the whiny char from south park. When it came time to scale to about 200 machines I chose a convention that made sense (something like city-rack-machinetype-number) and could help someone find the box quickly. He still did not like it and wanted to still rename them all.


In the 80's at Boston University, some CS labs had their own small computer networks, plus various devices like tape readers, film scanners and such. The naming convention was aquatic life. Mainframes were named after species of whales. Called minicomputers then, we call them servers now, were named after species of shark. The Thinking Machine at MIT was aliased to be a killer whale. And the various output devices like printers were named after common edible fish, while the input devices like film scanners were named after edible sea plants. We had one special minicomputer that had special hardware (of the day) that did dot products in hardware, the CPU had a dot product op code (it was a Celerity), and that was named 'dolphin' - the only system with a general name rather than a specific species. I still think/visualize aquatic life when I envision a network.


There's a nice RFC on machine naming - https://datatracker.ietf.org/doc/html/rfc1178 - but sadly the practice of giving machines memorable and distinctive names has largely died out at workplaces.


It was practically mandatory in the days when Sun workstations were popular for them to have astronomical names.

I thought I was being quite daring when the lab where I worked got a load of DEC Alpha workstations and I named them after Martian surface features as I'd just read Red Mars.


In the 70s it was somewhat mandatory to name CS research computers after characters and locations from Lord of the Rings.

But there's still a difference between SET HOST RIVENDELL and naming all your variables after hobbits.


In the mid 1980s the CS department I was at was fond of High-Level Hardware Orion minicomputers which were named after deities starting with "O": Ormazd being the one I can remember...

https://en.wikipedia.org/wiki/HLH_Orion


I worked at a place which had macho weather names for the Suns: "storm", "tempest" etc. I and another chap who started at the same time thought this was all rather silly, so we named ours "drizzle" and "damp"; this made the greybeards mutter somewhat.


As a Scot I have to say that "dreich" would be a pretty good name for a machine ;-)


It’s kind of fun to have a few weird names. My laptops have fun names. Right now I have “Okavango Delta” and “Phoenix”.

All of my WiFi networks begin with Aardvark (shows up first in the network list) and all of my iOS devices are Aardwolf (shows up after Aardvark when used as a hotspot).


I worked at a company where all the server names were named after mountains. I totally get it for things that have no meaningful name possible. "Server Three" doesn't actually give you much information, I already know it's a server, and them being numerically ordered adds nothing either. So why not be fun with it.

Variable names on the other hand can carry a lot of information, and naming them arbitrarily misses that opportunity for clarity.


Nobody wants to spell empedokles at 4am. And if you're not the person who has to deal with this problem, then you are a dick to whoever does, if you name a server something like this.

"server three" actually does give you information. It's a server. Not a router. Not a firewall. Not a load balancer. Not a desktop. Not a laptop. Not your HSM. Not the telco gear. Etc... etc...

If "well I don't have any of those things", then sure, whatever. If you have three servers, then it doesn't matter.

But then you grow a bit. And now you have 20 servers, and kinda matters that you have a pattern that IS NOT "greek vs roman gods", but maybe "diskfulls" and "CPU-monsters". At a previous company we named these "db<n>" and "quick<n>". And did not reuse numbers, because then we could also infer the hardware generation (lower number means older hardware).

db<n> wasn't even running any relational database. We could have named them "storage<n>", and it wouldn't have made a difference to the fact that the name was incredibly useful.

Sometimes you can save the company your entire year's salary by reducing an outage by the few minutes not making typos or misunderstanding about "is this part of prod or not?". Communication is important, and coming up with the "funniest" name is not so funny when the site is down and you're trying to figure out the problem.


Fair enough, I think it's clear that "it depends" then because those were not issues for us and our set up. We weren't running a server farm, these were just internal development servers, the parts that did have context were named appropriately like "Production, Staging, Feature-1" etc. The networking was trivial. I am sure you are right and that if it had grown, a naming convention would be nice.

I do get a bit tired of the Everything is Enterprise approach to software. We aren't all trying to scale to the moon, and enterprise tooling has it's own costs.


I also worked at a company where all the machines were named after mountains! The company was named MountainGate, so this was probably unavoidable. "Dana" and "Tresidder" sat on my desk.


A few maybe. But when you have 50 routers, 60 switches, and 10 firewalls, then it's not exactly fun to need to start thinking about if this name is latin or greek, and how exactly do you even spell it?

Your laptop? Barely matters. Won't show up in a traceroute.


I tend to keep the chaos at higher levels of abstraction. All of my home automation devices have printed labels with a number. (I have way too many.) The same number goes on the device name in Home Assistant. If one of the remotes ends up in the wrong room, it’s easy to look up where it belongs.

However, the internal applications I maintain at my day job have fun, easy to spell names. The servers they go on are prefixed with that name with their function after it. e.g.“snowplow db”. Everyone knows (or learns) that snowplow is the custom UI for the big SNP printers.

I’ve found having a name that’s short and relatively related in some way keeps different departments from coming up with their own shorthand way of referring to the programs.


When I hotspot my phone in public, I give it the SSID "FBI Surveillance Substation 3".


We name all devices on our home network after fictional computers.

MU-TH-UR 6000, HAL 9000, Multivac, Deep Thought, Earth, etc


I hope you'll be moving on to Culture ship names...

https://theculture.fandom.com/wiki/List_of_spacecraft

I guess Minds count as "fictional computers" ;-)


huh. I heard about a company who named some of their OS releases after features of California geography.


Underrated comment. :-D


In the 1980s I was handed a piece of code to maintain; one of the coding conventions they had followed was that all variable names began with the letter "O" followed by three numeric digits. This was FORTRAN 66 code, so no excuses except the code was originally written by the system administrator's girlfriend who was a brilliant engineer.


I find it hard to call anyone that names their variables like that brilliant :/


I worked on a project that involved building a constraint-based system that diagnosed short circuits in complex and expensive analogue circuit boards. We named many of the relevant variables after short people (e.g. Ronnie, Corbet, Napoleon, etc etc).

We would have got away with it due to the general lack of external code reviews but our boss heard us discussing a bug that involved one of them.


Then there's this guy who writes his code as Dr Seuss poetry [0]

[0] https://www.reddit.com/r/programming/comments/24g6al/i_have_...


This sounds fantastic. I should totally do this.


An area where GPT-3 might have some funny creative stories to contribute




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: