10 ms·
Cute names are fun when for a few special things here and there. Cute names are a nightmare when a company has accumulated hundreds of quirkily named things th
by PragmaticPulp 4y ago
Cute names are fun when for a few special things here and there.
Cute names are a nightmare when a company has accumulated hundreds of quirkily named things that you have to memorize just to navigate through the basics of trying to get your job done.
New hires suffer the most. It’s an extra layer of company-specific jargon that you have to learn to even begin to understand what your peers are talking about.
- doctor_eval 4y agoYeah but surely there is a directory somewhere that explains this? I mean - the problem is not the number of names but the number of services. A new hire still isn't going to be able to work out what a service does just based on the name, regardless of how whimsical or apt it is. "policy-engine" might seem to be a good name for a service, but it's only one level below "kevin" in terms of opaqueness, especially when there are probably several policy related services.
- drstewart 4y ago>Yeah but surely there is a directory somewhere that explains this? No, there's 5 different directories in 3 different formats compiled across the last 8 years representing the state of 80% of terms at the time it was last updated, half of which disagree with another version.
- ls15 4y agoI can confirm this
- doctor_eval 4y agoI gotta say, I think that's actually just bad technical management, so I suppose it's probably common. Although I will admit Conway's law here. Nevertheless, the same phenomenon that leads to multiple directories will also mean that supposedly "descriptive" names, will not be.
- ummonk 4y ago"policy-engine" is an example of a name that is neither cute nor descriptive
- godelski 4y agoIt's an example of descriptive but how being terse, descriptive, and unique is quite difficult.
- doctor_eval 4y agoBut that's my point. You start writing a new policy engine, and you think the name is obviously descriptive. But in 12 months time, it's not so obvious any more, and also you probably have 3 different policy engines for different use cases.
- ummonk 4y agoIt should be pretty apparent even from the start that that isn't a descriptive name.
- doctor_eval 4y agoBe kind. Don't be snarky. Converse curiously; don't cross-examine. Edit out swipes.
- bryanrasmussen 4y agoOk but the image-optimization-engine that Carl wrote still seems descriptive to me those same 12 months later. So I think policy-engine might have seemed descriptive but it just wasn't whereas image-optimization-engine was descriptive.
- Drakim 4y agoAt least until it also starts converting gifs to webm, and soon other formats like mp4, and since it's being used for video it needs subtitle support in various languages.
- 4y ago
- kzrdude 4y agoDirectories somewhere that pedagoically explain all the codenames, nah that doesn't necessarily exist in the company until it grows larger. It might just be a quagmire for new hires in a growing company.
- xorcist 4y agoA directory does wonders. Make it hierarchical too. That way different zones can have different values. It can point "policy-engine" to which host runs it. Or, even better, make it resolve the IP address directly!
- throwaway14356 4y agohow else will you know they are new hires? They will have to spend time petting the fuzzBear just like everyone else!
- jnsaff2 4y agoOne of the cute names horrowshow for me is Chef. Everything is based on some supposedly cooking analogue that just does not fit with (at least my) mental model of IaC.
- mostertoaster 4y agoThis is because cook books while useful, aren’t entertaining stories. Now if they named it after a good character from a story everyone knows, say the hunter from the big bad wolf, and it’s purpose was to chop up evil wolves taking advantage of grandmas and little girls with baked goods, then everyone knows that character, and as long as the purpose of the service is to defeat impostors trying to do harm then it is fitting. And if the junior doesn’t know the story of little red riding hood, well then it is your lucky day and you are one of the 1 in 10000 who gets to tell them the story.
- mostertoaster 4y ago;) https://xkcd.com/1053/ https://xkcd.com/1053/
- b112 4y agoHow strange! Why wouldn't he just tell her to google it, and go back to looking at his phone?
- ihatepython 4y agoMy default is to name the project something related to Darmok and Jalad at Tanagra. Then when things go off the rails, I can say 'Shaka, when the walls fell'
- voytec 4y agoNames of my mail systems :)
- cbm-vic-20 4y agoAnd when the other person in the conversation looks perplexed or lost, just repeat it again, slowly, and add emotion to some of the syllables. They'll get it eventually.
- atoav 4y agoI say, go for both. Go all Boaty McBoatface on that thing. Boaty McBoatface is silly, but it is unarguably a memorable name for a boat. There are other, less silly, but equally memorable (and maybe even cute) descriptives out there. On a different note: if you are presented with an either/or choice, your first instinct should always be to ask if they are actually opposites or if you can also have both if clever.
- nsonha 4y ago> memorable name is it ever a problem in software engineering, that you can't remember what that component's name is? I find it more of the problem when people make a good library that solves a problem with a predictable name, but then they give their library some other cute name, and maybe they don't do SEO well on package repositories (why would they, software engineers). So, when I look npm up for that problem, their lib would not even come up.
- Conan_Kudo 4y ago> is it ever a problem in software engineering, that you can't remember what that component's name is? Yes. When the names are descriptive or bland, it's almost impossible to remember what it is.
- nsonha 4y agoQuestion wasn't if people forget names in software, it's whether forgetting names is a problem. Like I forget names of things in the codebase MULTIPLE times per day, but I don't, and am not aware of anyone naming variables, functions etc in order for them to be memorable (as opposed to descriptive). I neither need nor want to memorize those names, I have other things more interesting to fill up my memory with.
- atoav 4y ago> I find it more of the problem when people make a good library that solves a problem with a predictable name, but then they give their library some other cute name This is why I said Boaty McBoatface. You look for Boats? It has "boat" literally two times in it's name.
- fiddlerwoaroof 4y agoI have the opposite problem as a recent new hire: when "cute" project names show up in a conversation, it signals something company-specific I need to learn about. When descriptive project names are used (especially if the projects are using really generic one or two word names like "routing-service"), it is harder to realize that people are talking about an implementation of a concept rather than a well-known concept.
- mattigames 4y agoThis is basically by fast the best argument to use cute names over some main components, and by "main" I mean when there are few of them, less than a dozen or so. An old name made of well-known technical words can easily suggest a level of complexity much smaller than what it has evolved into and therefore developers -specially new devs- should look it up instead of assuming what it does based on potentially misleading namings.
- leeches 4y agoSolved with company name or product name prefixes, like “discord-routing-service”
- ghostpepper 4y agoexcept nobody at discord would ever call it "discord routing service" in a conversation with other discord employees
- sirsinsalot 4y agoHandily, DRS and other D-prefix acronyms are easy to spot, hear, use and map to useful names.
- hooverd 4y agoWhat's not to understand about the account-provider-router-service? It's key to the business-data-sync service. We're working on a new account-provider-aggregator to replace it though.
- nicbou 4y agohttps://youtube.com/watch?v=y8OnoxKotPQ&t=40 https://youtube.com/watch?v=y8OnoxKotPQ&t=40 This is how it ends up sounding like.
- ThePhysicist 4y agoCame here to post this as well. It's exaggerated but only slightly.
- dclowd9901 4y agoAs an Amazon developer, I feel this. No wonder it’s so hard to get shit done.
- ilyt 4y agoYou need to do it anyway if your names are too descriptive* "video-encoder is not working" "oh, you mean ffmpeg" "no, our microservice is called video encoder" Also they are not neccesarily one or the other, you can name something that hints at its function but it is not straight dictionary description of it.
- eps 4y agoEven HN frontpage sometimes be "How I use Kawai Wasabi on Yakotori under Sashimi" and there'd be 100 comments, all of them serious. Makes one feel excluded.
- alexvoda 4y agoKawai Wasabi is incompatible with Yakotori. It is a known choice by the lead developer. When using Yakotori you should use Tare instead.
- moffkalast 4y agoYeah but Tare doesn't scale as well as Marmot, plus it has Tenimoshi support.
- rapnie 4y agoI remember Yashi worked on this support, it is great.
- progx 4y agoI thought he was replaced by Mushi Mushi?
- reportgunner 4y agoUse the Babushka fork, it's still being maintained.
- mindcrime 4y agoPresumably by somebody in Mornington Crescent?
- lo_zamoyski 4y agoWould you please pass the jelly?
- mrweasel 4y agoThe whole Cloud Native Landscape is full of BS like this: Kong, Skipper, Harbor, Calico, Helm, Linkerd, Flannel, you add the next 50 or so project that I forgotten. It makes the entire thing really complex to navigate, and impossible to talk to others about, because they may have plugged in some network you don't know, but you don't know that it's a network, because the name provides zero clues. Or there might be clues, if English is your native language, otherwise too bad. It's this needless layer of jargon that doesn't help with the understand of the solution. Sure, if there's a reasonable chance that your project becomes absolutely massive, then a unique name is a great idea. For internal project, don't be cute, just call the thing by its function. Your warehouse management system should just be "the WMS", not FluffoTron. Should it happen to take on new functionality, then either split that out in a separate project, or just rename the whole thing.
- avanai 4y agoI'm not a huge fan of cutesey names but a lot of those names are variations on or homages to Kubernetes (Greek for "Helmsman"): e.g Skipper, Harbor, and Helm from your list.
- wlonkly 4y agoSome of those have companies attached, which have interests in a unique, memorable, and protectable name. Others are definitely just cute though. That said, I have to object to including linkerd. It links services together, and it's a daemon. Can't get much clearer than that.
- mrweasel 4y agoThe problem with linkerd is that we already use the word "linker" and have an established nomenclature for adding a "d" to indicate a daemon. While linkerd might be a daemon, it's not a linker daemon.
- andylynch 4y agoAlso becomes awkward and distracting having to explain to other peoples’ lawyers (or government officials!) what those cute names represent when things go wrong.
- JackFr 4y agoYou can have the worst of both worlds. I've worked at three(!) seperate companies which have had projects called 'Hydra' (and the number of people who were ignorant of what the Hydra was, and why it might not have been a great name for a software project never ceased to amaze me.) I like clever, cute names. That is names like Hydra, Spirit, and others which are unrelated to the function, but which are anodyne and generic and not terribly uncommon end up being the worst. (I have a soft spot for clever names, my favorite is still Leiningen the clojure build system: https://en.wikipedia.org/wiki/Leiningen_Versus_the_Ants https://en.wikipedia.org/wiki/Leiningen_Versus_the_Ants)
- nivenkos 4y agoIt feels like every company has an Apollo, Hydra or Hermes...
- mook 4y agoI worked at a startup with a bird theme for a bit under 4 years. There were three separate things named Nightingale in that time. By the time I left, it was kind of a joke to suggest that as the name for random things.
- mypalmike 4y agoNightingale was probably also the name of a meeting room. I managed to avoid creating any new tools or services with bird names during my time there, though it was tempting to do so.
- nix-zarathustra 4y agoMozilla was named because the browser was going to be a "Mosaic killer". They made a bug tracker which they named bugzilla. Atlassian made their own bug tracker called Jira, in reference to the japanese transliteration for godzilla, "gojira", which is similar to bugzilla.
- devnullbrain 4y agoThis would actually make the situation in TFA worse. The new hires would assume that foober foos when actually it's being used to bar. Either way there's a need to memorise - without cute names you gain the additional problem of close but dangerously wrong assumptions. Reading documentation is not a bad expectation of a developer.
- ShredKazoo 4y agoCompromise: Come up with a cute name that vaguely suggests what the project does. E.g. instead of "broadcast-service", name it "Cronkite" or "NBC".
- fckgnad 4y agoNooo acronyms are horrible. When you have hundreds of services that are acronyms it becomes a nightmare.
- feoren 4y ago> Cute names are a nightmare when a company has accumulated hundreds of quirkily named things that you have to memorize Now imagine trying to navigate hundreds of things that are descriptively named wrong. The argument isn't between (A) cutesy names, and (B) accurate descriptive names. B is obviously better. But that's a fantasy world that doesn't exist. The argument is between A and (C) descriptive names that rot over time (quickly or slowly), which is actual reality.
- seti0Cha 4y agoNo, the alternative is having 100s of things that are basically right, with a few that are misleading. I'll take that any day over all cute names, because I only have to remember the exceptions. Not theoretical, I've been in that situation. Also, purpose drift is technical debt. Using meaningless names is just a way of hiding that debt. A service that doesn't match it's name has evolved into a bad place and needs to be refactored. You want to be able to see that.
- IshKebab 4y agoThis is the sort of nonsense argument people use to justify not writing comments. "But the comment might get outdated!!" Yes it might. But it probably won't, or it will be obviously outdated, or outdated in trivial ways or you can use Git blame to check how the code was when it was written. All of which is better than no comments 99% of the time. The number of times I've read a comment and eventually thought "oh damn that was misleading, I wish that comment wasn't there" is like... 10 in my whole life. The number of times I've thought "why does the foo-service also do bar? I wish they'd named it completely randomly instead" is precisely zero.
- adrianmsmith 4y ago> New hires suffer the most. It’s an extra layer of company-specific jargon that you have to learn to even begin to understand what your peers are talking about. I wonder if that's the point, and why certain people use weird names for things. They're senior engineers, they get a nice salary, it's rational (albeit not in the interest of their employer) to prevent their job getting taken over by a junior developer. So they have to set up roadblocks, moats, barriers to entry etc., and weird service names are one such barrier. In general team members are going to look after their own interests (e.g. set up roadblocks), but if this sort of stuff goes on it shows bad engineering leadership within the company, as it's the leadership's responsibility to stamp down on this sort of behaviour.
- MichaelDickens 4y agoAt my last job, I kept a list in my notes of about 20 service names with explanations of what they did because they all had cutesy names that gave no indication of their purpose and I could never remember which one was which.