I could not disagree more. > Trouble is, names are hard to change. No they’re not. People just aren’t determined or organized. > It's impossible to predict with certainty how your software's requirements will evolve over time. You don’t need to predict it. You evolve things as needed, including names of components of the system. The idea that you need to pick a generic name because you don’t want to specify exactly w…
> Trouble is, names are hard to change. > No they’re not. People just aren’t determined or organized. This is very untrue. Many moons ago my company changed its name, and we still have the old name lingering around in stupid places. There are e.g. several third-party services which simply won't let us change the name and carry our data forward, or where proper migration would take eng-months. I guess you could say we…
Names should be cute, not descriptive
191–200 of 498 posts
Re: Names should be cute, not descriptive
#192Re: Names should be cute, not descriptive
#193How many times, as a developer, have you paused and pondered what to name a new entity? I often find the difficulty of naming a thing is directly proportional to my depth of comprehension of that thing, what it does, and the context it lives in.
With that in mind, I see naming-things-for-what-they-are as one winning strategy.
Quoting from OP:
> The problem comes in when there's a mismatch between responsibilities and names. Names are a way of expressing identity, while responsibilities are ephemeral: Your friend Sam is still Sam, even if Sam gets new responsibilities and sheds old ones.
I find this a bit misleading, since Sam is a person with agency and a unique personality, and the things we name are, well, things, with specific purposes and raisons-d'etre.
But! At the same time, OP identifies a key characteristic of things-that-persist -- scope creeps, features are added, responsibilities evolve. Naming a server "Sysyphus" may seem cheeky at first, but I'd argue that it's a better name than "Load Processing Server 2". We tend to antropomorphize things, that's one, but also - things happen over time, notable events, that create a timeline of stories which in turn build up into the coherent base of knowledge / familiarity / wisdom that ties teams together. Using "humanized" or "personalized" names pays off here, they help to glue these stories together and contribute to the institutional memory that builds up over time.
In the end, I think both approaches are valid and have their place, we just have to use our judgement as to when to use which.
Re: Names should be cute, not descriptive
#194No no no no no. Please never ever do this. From experience, this is thew worst possible decision to make in anything apart from the smallest of organisations (i.e. where production is small enough that all the engineers know (like, really know inside-out and have it all in their head - not just "aware of")), at which point you don't have much to worry about when it comes to renaming something. Please, put yourself in…
As per the article: The problem is that descriptive names don't stay that way. Descriptive names turn into misleading names as the things they refer to change over time. And while code can be refactored, it's very hard to refactor a service name, and almost impossible to refactor it away from people's minds.
You can also keep the old name around as a stub to talk to the new one, if needed (like during a transition period where it becomes deprecated).
Re: Names should be cute, not descriptive
#195A simple exercise in improv could even be applied. What's the first thing that comes to the top of your mind when you think of "X"? If majority of people say the same thing, you run with it because that's the most obvious one. Choose the obvious one.
Re: Names should be cute, not descriptive
#196I work somewhere where naming is notoriously bad both cute and descriptive. If I could wave a magic wand about naming, I would wish that people put less time into thinking about naming. You get better names that way. A simple exercise in improv could even be applied. What's the first thing that comes to the top of your mind when you think of "X"? If majority of people say the same thing, you run with it because that'…
Re: Names should be cute, not descriptive
#197I could not disagree more. > Trouble is, names are hard to change. No they’re not. People just aren’t determined or organized. > It's impossible to predict with certainty how your software's requirements will evolve over time. You don’t need to predict it. You evolve things as needed, including names of components of the system. The idea that you need to pick a generic name because you don’t want to specify exactly w…
You just provided your own counterargument. People naturally aren't determined or organized, that's why names are hard to change.
You can't change human nature, you can only work around it, and cute names are a solution for that. Cute names work even if people are disorganized, and they are. Furthermore, cute name, rather than purely generic or descriptive names evoke emotions, making them more memorable, another human thing.
Re: Names should be cute, not descriptive
#198Re: Names should be cute, not descriptive
#199How about making them descriptively memorable: - shifting-priorities-routing-service - indiscrete-secrets-vault - gdrp-user-immolator - knock-knock-whos-this-authn - canihaz-authz I don't buy the "can't rename services" arguments though. It's also hard to rename variables, modules and stuff. We do it. I'll tell the PM I need to rename this function if they want to know what I'm up to. How often does a service morph s…
Re: Names should be cute, not descriptive
#200You can even name your products with generic descriptive names, if your company's name is unique enough, then that'll act as a namespace for product with generic names. Think of packages in Java, C#, we don't debate about that we have to use a cute name for a X.java or X.CS, because that problem has already been solved by namespaces.
Product name Excel and Office works for Microsoft because that "Microsoft" acts as namespace and "Microsoft Office" and "Microsoft Excel" are unique enough to be fully qualified names.
The ntietz entry is talking about using cute names for internal services, which is very bad idea. Please enjoy https://www.youtube.com/watch?v=y8OnoxKotPQ