cat -> from the obscure verb "catenate". A regular user would never, ever find the connection unless someone points it out. It should be "join" or "merge" or "unify" or something.
dd -> "data description". Really? It should be "blockcopy" or something.
grep -> "globally search a regular expression and print". Again, really? It should be "find" or "search".
ls, mv, cp, rm are kind of ok but in this day and age they should definitely be list, move, copy, remove by default (with aliases if need be). Heck, 99% of Unix commands are too short for their own sake.
cron -> "Chronos". Really?, third edition. It should be "scheduler" or something.
I mean, at this point we've all moved on and have memorized all these commands and parameters, but a lot of brain cells have died for no real benefit to humanity.
This is a word that perfectly describes exactly what cat does. Cat doesn't merge; that's ambiguous. Is a merge an interleaving? Sometimes yes. What does unify even mean in the sense of chaining data streams? Join? Close, but still unclear what it does. Does it operate on files? And what would happen to the already widely deployed join command that does something completely different?
Concatenate is a great word. Great words deserve to be used. I'm sorry that some of us haven't seen the crushing need to reduce our vocabulary to the double plus good amount of words in the newspeak lexicon.
What I'm not sorry about is that new users have to spend time to learn the system they're mucking around in before they can be useful with it. That's not a design flaw; that's a feature.