Great fun. One minor nitpick - the story of "Apache Server" being originally derived from "A Patchy Server" is a long-standing myth; the name was originally intended to be a tribute to the Apache Native American peoples. The Wikipedia article on Apache (<a href="http://en.wikipedia.org/wiki/Apache_HTTP_Server" rel="nofollow">http://en.wikipedia.org/wiki/Apache_HTTP_Server</a>) includes a link to an interview with Brian Behlendorf (<a href="http://www.linux-mag.com/id/472/" rel="nofollow">http://www.linux-mag.com/id/472/</a>) where he explains how the story arose.
Another fun that appears elsewhere but really does deserve to be in this list: Debian is named after Debra and Ian Murdock (he's the founder of the project, she was his girlfriend).
<i>"Giving cryptic names to software is a well-established UNIX tradition."</i><p>Giving cryptic names to software works better if you have a big advertising budget. Otherwise, nobody has a clue what your package does.
The etymology of Unix programs: very interesting! The writers of this page also have a sense of humor:<p>> bc
> originally a front-end for dc ("desk-calculator"); modern GNU bc is instead a backwards-compatible byte-code interpreter for dc, but what it stands for is still "basic calculator"
Some pretty interesting explanations in this list. I personally prefer to not let the developers name things, because they usually come up with very bad names (hard to pronounce, hard to google for, have overtly sexual connotations, etc). Command line utilities are a little different because there's a culture of having short names making them easier to type. But it's still very hard to google for things like "less" because it's a common word.
> Giving cryptic names to software is a well-established UNIX tradition<p>God, this is so true! I seriously think that world would be much better already if we would just rename many of well-established binaries and C-functions to more-intuitive, better convention. Even without changing APIs that much (which would be great too, of course).
mknod: "nowadays of extremely limited usefulness"<p>Interesting perspective. I use it almost daily.<p>The syscall as well as the provided utility of same name.
<p><pre><code> parrot
(common virtual machine for dynamic languages) named
after an April Fool's hoax that came true:
</code></pre>
<a href="http://www.perl.com/pub/2001/04/01/parrot.htm" rel="nofollow">http://www.perl.com/pub/2001/04/01/parrot.htm</a><p>What a coincident. In 2015, Perl 6 (Parrot VM) and Python 3 have difficulties to transfer their community over from the former major releases Perl 5 and Python 2.<p>Offtopic: We can learn from it. Like fixing a language early or never/only in small steps. Other examples: XHTML 1 and especially 2 failed, HTML5 based on HTML4 won spectacular. PHP6 failed, but won with PHP 5.3+ and now PHP 7. The transition from Visual Basic 6 and VBA 6 to Visual Basic .Net failed, J#/C# won.
In most cases, it's not cryptic or strange at all and makes perfect sense. This article ignores history. Back then, names were shortened to save every available byte cause ram and disk usage was so limited. It was also easier to type when you did everything from the command line. In addition, a lot of these were created in some lab somewhere, like Bell Labs, and they had no intention of you using it.<p>Long ago, when I heard of awk and sed, the first thing I did was ask what they stood for. I would think any seriously interested computer person would do the same thing.