First, the names you can't blame on the community:
* Curses is an ages old C library.
* RMagick (I could'nt find any project named RMajic, so I assume this
is what you meant), provides bindings to ImageMagick, another ages old
C library.
* Mechanize is named as such because of the similarities to the
long-standing perl module of the same name which it is modeled after.
* Selenium is a library (I think it's Javascript?) for client side
testing in a browser. The Ruby bridge is just one of many others in
other languages for "remote controlling" the browser tests.
Second, the names which have some sort of mnemonic to their functionality:
* Ferret is named after the verb (which in turn is named after the
animal, due to characteristic behavior). To "ferret" is "to uncover
and bring to light by searching" (dictionairy.com), which happens to
be exactly the aim of the library.
* Juggernaut: The library aims to provide a way for the browser
(client) and server to have a persistent connection so the server can
push data to the client (as opposed to the request/response HTTP
cycle). It just keeps pushing and pushing and pushing... (can't stop
it, it's a juggernaut!)
* Korundum provides Ruby bindings for KDE. So you can blame the K on
the KDE fetish for starting *everything* with a K. And corundum is
"an extremely hard mineral ... that occurs in gem varieties such as
ruby" (also from dictionary.com).
* Textile is a popular wiki-style markup format (name plays on the
word "text"). RedCloth is an implementation of Textile in Ruby
(Textile -> Cloth, get it? And it's red because it's Ruby...).
Markdown is another popular markup format. Well if Textile has
RedCloth, then Markdown should have *Cloth, just for name grouping,
right? So BlueCloth it is...
* Car racers use Nitro (nitrous oxide) to go faster. Nitro = fast,
boosted speed. The web framework attempts to leverage that connotation
regarding it's own capabilities.
I can't really think of a mnemonic for the others (Mongoose' and
Mongrel's names are derived from perceived characteristics and
heritages of the libraries, respectively, but not from functionality).
But I can attest that at least in the case of Capistrano (which had
been formerly named SwitchTower before receiving a C&D letter) the
choice of a name was at least in part restricted to something original
and unrelated to the project in order to avoid yet another C&D. Names
are tricky things...
All in all, I prefer creatively named libraries. While it may take
multiple exposures before the name sticks, the mnemonics -- or
outright irrelevance -- of the name serve to stick it in my mind
better. And the authors are served better because their name sticks
out, rather than being yet another of 10-15 similarly named libraries
competing in the same space. And if you think that there isn't or
shouldn't be competition between libraries, just look at KDE vs Gnome,
or Rails vs. Nitro vs. Borges vs ..., or even Ruby vs. Perl vs. Java
vs. Python vs. everything else.
Jacob Fugal
···
On 7/21/06, Jeff Pritchard <jp@jeffpritchard.com> wrote:
Juggernaut, Capistrano, ferret, Mongoose, Curses, RMajic, Selenium,
BlueCloth, ozimodo, Mechanize,Korundum, Nitro, Mongrel