Another place where naming matters, but for slightly different reasons, is on the command line. If you are naming a program that someone is going to spend much of their time running from the command line, it is nice if you put some thought into how the binary is named.<p>For instance. I've never been able to understand why something like `systemctl` could be so clumsily named. If you have to do sysadmin work, sometimes you will be using the command a lot. If we ignore the fact that I see more and more people typing out entire commands without the use of completion, `systemctl` lacks a short, unique prefix and ends up being quite awkward to type.<p>On my system `sys` is the prefix for 26 commands, and `system` is the prefix for 24 commands. So I end up having to type 7 keystrokes to type systemctl on my system with completion. Sure, I could alias it, but then I'd have to replicate it everywhere, plus I'd be forming habits that just cause more frustration later.<p>Another way to fail is to choose a prefix that has bad typing flow. For instance I wrote a program that has the prefix "aq". Try to type it. Awkward, isn't it?<p>(If you don't think any of this matters, perhaps you shouldn't be the one to pick names for programs that are run on the command line).