Live data from Hacker News

Software component names should be whimsical and cryptic

medium.com

151–160 of 339 posts

Re: Software component names should be whimsical and cryptic

#151
post #60

Earlier quoted context omitted.

It says "component". How many components do you have? I suppose if need to deal with more than a dozen components simultaneously, something is wrong. What is worse, the overhead of maybe not knowing a one-word description of component FancyName once in a while (so you have to look it up, pressing F12 or such), or having to deal with a obsolete, too long name (trying to be clear, or having too disambiguate between mul…

Screens are huge now. You can fit long names. Auto complete makes typing long names easy. Let your code read like prose. Save the brain for solving the business problems not for understanding the code.

Not really. Screens are wider. An older 21 inch was taller than a 24 inch tft

Re: Software component names should be whimsical and cryptic

#153

Earlier quoted context omitted.

Until that's expired. project-ng-ng? (I know the pain, we did the same thing at work).

No, `project-ds9` is the obvious upgrade path.

They included the "the" in placed I've worked. project-tng

Re: Software component names should be whimsical and cryptic

#154

I agree with the author but for different reasons. Software should be fun! I love it when packages have goofy names. If I can shitpost with the language I'm going to get just a little more invested in it. And to be honest, even the 'serious' names fail at connoting respectability to begin with. Your grandpa would get annoyed just hearing the word 'containerisation' - and not just because he thinks computers are for n…

This feels like violent agreement with the point that the names should make you smile.

Re: Software component names should be whimsical and cryptic

#156
A handful of examples don't prove anything. If a Widget Lookup Service is used to lookup widgets for its entire lifespan, calling it Frodo isn't doing anyone any favours.

And it's not like "oops some gadget polishing code fell into my widget lookup service": don't put inappropriate crap into your solution. Little discipline goes a long way.

Re: Software component names should be whimsical and cryptic

#157
Author used to build authorization microservices, and now works at a company making a database product. Once again, somebody who works on some web service bs assumes that that's as hard as the world gets.

If all of your software components are constantly changing their scope, it indicates you are doing a bad job of producing an up-front system design. If your experience causes you to scoff at the concept of producing a design up-front, or drawing diagrams of how your system works, then this indicates one of two things about your background.

1. You're a relatively junior engineer who has gotten used to thinking about productivity as slamming code that tweaks existing systems into new incremental features

2. You work on some fucking web service.

Either way, your advice does not apply to the software engineering profession as a whole. Believe it or not, lots and lots of people write software, and not all of it is a web service or some tool / framework to help run your web service. There are many things out there are that can be envisioned, designed in detail, and implemented. And, crucially, in those cases, _it is wise to do so_.

I know I'm being overly dramatic, but it consistently enrages me reading blog posts that, through ignorance or deliberate omission, speak as if the world of software is just writing web services.

Re: Software component names should be whimsical and cryptic

#158

“Descriptive” names don’t create transparency, they create the illusion of transparency. ...some of the time. The rest of the time they're actually very useful. Giving up any attempt at having a descriptive name just in case you get it wrong is throwing the baby out with the bath water. What's probably happened with a lot of poorly named projects is that when the scope changed to make the name redundant there was no…

Here I'm with the OP. A descriptive project name is hard, and gets lost among projects of a similar nature.

Try to come up with descriptive names for projects like Git, Node.js, Docker, well, Linux. Well, BSD is formally a descriptive name, but it elucidates little.

Of course there are some examples of somehow descriptive names which seem natural because of the sweeping success of the product: Photoshop, React. But they are few and far between.

In short, project names are closer to branding than to engineering.

Inside a codebase names should be descriptive, and appropriate effort should be allocated to name key things in an elucidating manner; nothing to debate here. But it's a very different context.

Re: Software component names should be whimsical and cryptic

#159
post #130
post #86

I don’t think you need to go full startup when naming stuff, but you also don’t have to go full bureaucrat either. I once created a PHP framework called RocketSled because it was “the fastest thing on rails” and that gave rise to somewhat whimsical but also descriptive names on the same theme: RocketPack: package manager DataBank: caching auto loader Murphy: automated testing Each of those modules is named quite spec…

Where does Murphy come from?

Murphy’s Law.

Re: Software component names should be whimsical and cryptic

#160

Earlier quoted context omitted.

> Whimsical project names fall within a well-understood and used convention. Boy, I wish! I 100% second TFA when I tell you: There are a lot of really really boring people out there that just don't get it. They think "Product Data Exporter" is the perfect project name.

Better be consistently boring than ever misleading

Terrific answer!

No idea which way you're arguing though! ;)

Post reply on HN