Live data from Hacker News

Software component names should be whimsical and cryptic

medium.com

41–50 of 339 posts

Re: Software component names should be whimsical and cryptic

#41
post #7

If you went down the hell hole of microservices please do give descriptive names to services.

I think the point still somewhat stands. Imagine a “UserProfile” service. It’s accessed from everywhere to show the handle name, address, icon etc. of your user. Your application grows and your users want way more customization, now they get personas and avatars and can show different profile to different people. Those are full of breaking changes that you want to isolate from the legacy “UserProfile”, how do you nam…

I mean, I'd call it the FaceBook in the first place but I'm already on team whimsical.

Some of you are thinking, well, what if you need to interface with facebook dot com? Easy, I'd call it the SneedFeed. If you know you know.

Re: Software component names should be whimsical and cryptic

#42
post #6

This is terrible advice. Cryptic names are horrible. It's a layer of cognitive overhead that no one needs. Yes if it gets so big that it's out grown it's original purpose that's a problem. But if it's really big people know what it is because it's big. If it's not that big rename it!

Yes. The advice is contextual. If you're making a public web framework, probably don't call it Web Framework. If you work at a company and you're writing the one and only hotel booking service, do call it Hotels instead of forcing your coworkers to memorize yet another cute name.

This only works once though.

In ten years, none of the original developers of Hotels are with the company. The new generation of engineers is upset both with Hotels’ limitations and the fact that it’s not written in XYZ language which they really want to have on their résumés.

So they embark on a total rewrite of Hotels, and to emphasize the awesomeness, most likely it will be called either Phoenix (because one out of three internal 2.0 rewrite projects is called that) or Venice (because it’s a place that has lots of hotels).

As part of their ambitious rewrite, they also start building a custom message queue in XYZ. It’s called Milan so there’s now a cute city theme. A bunch of other exciting NIH XYZ greenfield projects spring up, all with city code names.

Another ten years go by. A programmer complains to another:

“Where I work is the worst. There’s all these projects written in XYZ which nobody uses any more, and they’re all named after random cities. Why couldn’t they call the hotel booking service something descriptive.”

Re: Software component names should be whimsical and cryptic

#43
Mysql_real_escape_string was a fun one years back for PHP.

The original escape turned out to have character issues or so, so they made a new one: mysql_real_escape_string

We were hoping they would find another issue and release a mysql_real_real_escape_string

Re: Software component names should be whimsical and cryptic

#44
Please don't.

My team work on a project with many "funny" names, including but not limited to, liboyster, libowl, several characters from Fort Boyard (https://en.m.wikipedia.org/wiki/Fort_Boyard_(game_show), patric the starfish....

It was awful to work with, please don't go that.

Re: Software component names should be whimsical and cryptic

#45
post #5

My favourite example of how this can go sideways is BlueJeans - video conferencing software. There's probably some cultural context I'm missing here, but I asked around in the office and got a different answer each time as to why it would be named like that. That was 9 years ago and I still don't know BTW.

By contrast, Jitsi, while totally meaningless, is easy to remember. A whimsical name with no connection whatsoever to the application or library is misleading, a nonce word is better.

Re: Software component names should be whimsical and cryptic

#47

I do like the Intel code names like Tiger Lake, Light Peak and Ivy Ridge. They evoke some kind of combination of Manhattan project megaproject and just-charted territory.

Those are release names, like Sierra and Mojave for MacOS. Different. There, you can sort of go nuts. The product name is still, well, "processor".

Re: Software component names should be whimsical and cryptic

#48
post #11

Earlier quoted context omitted.

Seems that names for projects follow the same rule as troll names in the japanese light novel Overlord. Short names, like "Gru" were reserved for the most powerful trolls because there were only so many combinations of three letters. Long names on the other hand were a sign of weakness and cowardice - bringing ridicule to those who introduced themselves like that.

An indicator of the dangers of C.

Back when a C functions and variables could only be 8 chars long[1], mid-to-high-level trolls lurk at every line.

[1]: or rather, if they were longer, the first 8 had to be unique.

Re: Software component names should be whimsical and cryptic

#49
post #11

Aesthetically, at this point descriptive names almost look unprofessional, or at least quickly made. If you call your thing "ui-state-syncer" I'm going to suspect it's not really a big budget mainstream thing. If it's called Vue, I'm going to think it's big enough that someone thought it was worth it to spend an hour thinking of names. It was intended to get big. This isn't some minimal internal thing for one specifi…

Seems that names for projects follow the same rule as troll names in the japanese light novel Overlord. Short names, like "Gru" were reserved for the most powerful trolls because there were only so many combinations of three letters. Long names on the other hand were a sign of weakness and cowardice - bringing ridicule to those who introduced themselves like that.

I was literally - minutes ago - watching Overlord then saw this message just now. Small world sometimes. Rich world building that it can be referenced easily.

Re: Software component names should be whimsical and cryptic

#50
post #11

Aesthetically, at this point descriptive names almost look unprofessional, or at least quickly made. If you call your thing "ui-state-syncer" I'm going to suspect it's not really a big budget mainstream thing. If it's called Vue, I'm going to think it's big enough that someone thought it was worth it to spend an hour thinking of names. It was intended to get big. This isn't some minimal internal thing for one specifi…

Seems that names for projects follow the same rule as troll names in the japanese light novel Overlord. Short names, like "Gru" were reserved for the most powerful trolls because there were only so many combinations of three letters. Long names on the other hand were a sign of weakness and cowardice - bringing ridicule to those who introduced themselves like that.

[deleted]
Post reply on HN