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 (http://en.wikipedia.org/wiki/Apache_HTTP_Server) includes a link to an interview with Brian Behlendorf (http://www.linux-mag.com/id/472/) where he explains how the story arose.
I personally attended a talk presented by Brian Behlendorf at the ISPF (an early ISP conference) in 1999 (which predates the 2000 Linux Magazine article). In his talk, he used the "A Patchy Server" explanation. He made no mention of any other etymology that I recall.
So either Brian was deliberately propagating the myth himself ... or maybe there's some retconning going on.
> The Apache group was formed around a number of people who provided patch files that had been written for NCSA httpd 1.3. The result after combining them was A PAtCHy server.
(April 1997)
The new story is not consistent with what their website was saying not very long ago.
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).
Reminds me of the BDSM-themed splash screen they put in one of the development versions a while back - which seems to have disappeared from the official site, but you can find it if you look hard enough (possibly a bit NSFW):
One of the ideas I liked most during the inception of Python 3000 a.k.a. python3 has been to rename python3 to blackadder. Another snake, another great british comedy.
The etymology of Unix programs: very interesting! The writers of this page also have a sense of humor:
> 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.
Searches for "Unix less" or "Linux less" are spot on. Even "less command line" will get you there easily. It's all about context.
And of course there are always the man pages, which is usually the best place to start.
> Giving cryptic names to software is a well-established UNIX tradition
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).
Good luck with that. We can't even give the creat() system call an 'e' at the end.
(Not that it should be used much these days; the 'creat() then open()' idiom is a race condition waiting to happen, so 'open()' has grown the ability to create-and-open in one atomic operation. That seems to handle most of the file creation that Unix programs need to do.)
One last question: What inspired the names CHICKEN and SPOCK? Do they mean anything, aside from the bird and the well-known Star Trek character?
That question always comes up, sooner or later. ;-)
I had a plastic toy of Feathers McGraw on my desk, the evil penguin (disguised as a chicken!) from the Wallace and Gromit movie, “The Wrong Trousers.” Looking for a preliminary working title for the compiler, I used the first thing that came to my mind that day. I’m somewhat superstitious about names for software projects, and things were progressing well, so I didn’t dare to change the name.
Also, there is the old philosophical question: which came first, the chicken or the egg? This applies to CHICKEN, too. The compiler is written in Scheme, so you need CHICKEN in order to compile CHICKEN.
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.
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.
[+] [-] thirteenfingers|11 years ago|reply
[+] [-] royce|11 years ago|reply
So either Brian was deliberately propagating the myth himself ... or maybe there's some retconning going on.
[+] [-] cbd1984|11 years ago|reply
> The Apache group was formed around a number of people who provided patch files that had been written for NCSA httpd 1.3. The result after combining them was A PAtCHy server.
(April 1997)
The new story is not consistent with what their website was saying not very long ago.
[+] [-] venomsnake|11 years ago|reply
[+] [-] yawaramin|11 years ago|reply
[+] [-] coyotebush|11 years ago|reply
[+] [-] geofft|11 years ago|reply
[+] [-] ForHackernews|11 years ago|reply
[+] [-] userbinator|11 years ago|reply
http://pix.toile-libre.org/upload/original/1322837600.png
[+] [-] yen223|11 years ago|reply
[+] [-] matt4077|11 years ago|reply
Now if GIMP were actually usable...
[+] [-] AndyKelley|11 years ago|reply
[+] [-] dividuum|11 years ago|reply
[+] [-] vacri|11 years ago|reply
[+] [-] nailer|11 years ago|reply
[+] [-] ivoras|11 years ago|reply
[+] [-] Animats|11 years ago|reply
Giving cryptic names to software works better if you have a big advertising budget. Otherwise, nobody has a clue what your package does.
[+] [-] seccess|11 years ago|reply
I had no idea! Makes me love it even more.
[+] [-] yen223|11 years ago|reply
[+] [-] JoshTriplett|11 years ago|reply
[+] [-] pronik|11 years ago|reply
[+] [-] GFK_of_xmaspast|11 years ago|reply
[+] [-] cardamomo|11 years ago|reply
> 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"
[+] [-] anyfoo|11 years ago|reply
[+] [-] stevebmark|11 years ago|reply
[+] [-] M2Ys4U|11 years ago|reply
1. Naming things 2. Cache invalidation 3. Off-by-one errors.
[+] [-] chrsstrm|11 years ago|reply
[+] [-] msh|11 years ago|reply
[+] [-] unknown|11 years ago|reply
[deleted]
[+] [-] angelortega|11 years ago|reply
[+] [-] krick|11 years ago|reply
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).
[+] [-] cbd1984|11 years ago|reply
(Not that it should be used much these days; the 'creat() then open()' idiom is a race condition waiting to happen, so 'open()' has grown the ability to create-and-open in one atomic operation. That seems to handle most of the file creation that Unix programs need to do.)
[+] [-] adito|11 years ago|reply
[+] [-] Udo|11 years ago|reply
[+] [-] Rudism|11 years ago|reply
[+] [-] gwu78|11 years ago|reply
Interesting perspective. I use it almost daily.
The syscall as well as the provided utility of same name.
[+] [-] antientropic|11 years ago|reply
[+] [-] cafard|11 years ago|reply
[+] [-] vinceyuan|11 years ago|reply
[+] [-] andrey-p|11 years ago|reply
[+] [-] sah2ed|11 years ago|reply
http://en.wikipedia.org/wiki/Recursive_acronym
[+] [-] vince_refiti|11 years ago|reply
[+] [-] icebraining|11 years ago|reply
That question always comes up, sooner or later. ;-)
I had a plastic toy of Feathers McGraw on my desk, the evil penguin (disguised as a chicken!) from the Wallace and Gromit movie, “The Wrong Trousers.” Looking for a preliminary working title for the compiler, I used the first thing that came to my mind that day. I’m somewhat superstitious about names for software projects, and things were progressing well, so I didn’t dare to change the name.
Also, there is the old philosophical question: which came first, the chicken or the egg? This applies to CHICKEN, too. The compiler is written in Scheme, so you need CHICKEN in order to compile CHICKEN.
http://spin.atomicobject.com/2013/06/19/chicken-scheme-spock...
[+] [-] smorrow|11 years ago|reply
What.
[+] [-] AndyKelley|11 years ago|reply
[+] [-] Pxtl|11 years ago|reply
[+] [-] ajdlinux|11 years ago|reply
[+] [-] magicalhorse|11 years ago|reply
[+] [-] unknown|11 years ago|reply
[deleted]
[+] [-] frik|11 years ago|reply
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.
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.