←back to thread

311 points todsacerdoti | 8 comments | | HN request time: 0.638s | source | bottom
1. kixiQu ◴[] No.46237390[source]
I believe strongly in this counterargument:

https://medium.com/better-programming/software-component-nam...

Small summary: external identifiers are hard to change, so projects will evolve such that they are not accurately descriptive after time.

(Less discussed there, but: In a complex or decentralized ecosystem, it's also the case that you come across many "X Manager"/"X Service"/"X State Manager"/"X Workflow Service" simultaneously, and then have to rely on a lot of thick context to know what the distinctions are)

replies(5): >>46239169 #>>46239759 #>>46239784 #>>46239810 #>>46239834 #
2. pksebben ◴[] No.46239169[source]
I suppose it depends on your goals, but that scope restraint can be a good thing.

Do one thing, do it well, and while you're at it call yourself by the thing you do so you remember that's what you ought to be doing. A bit wordy for unix but you get the idea.

3. parpfish ◴[] No.46239759[source]
I’ve been told multiple times in multiple jobs that I’m good at naming things, and I love whimsical names. A couple rules I’ve internalized are:

- if it’s hard to name, that’s a good sign that you haven’t clearly delineated use case or set of responsibilities for the thing

- best case for a name is that it’s weird and whimsical on first encounter. Then when somebody tells you the meaning/backstory for the name it reveals some deeper meaning/history that makes it really memorable and cements it in your mind

- the single best tech naming thing I’ve encountered (I didn’t come up with it) was the A/B testing team at Spotify naming themselves “ABBA”

replies(2): >>46239769 #>>46240413 #
4. mbg721 ◴[] No.46239769[source]
The winner takes it all!
5. ◴[] No.46239784[source]
6. ◴[] No.46239810[source]
7. ◴[] No.46239834[source]
8. zahlman ◴[] No.46240413[source]
> I’ve been told multiple times in multiple jobs that I’m good at naming things, and I love whimsical names.

As long as you're naming products and features, rather than variables.