On Naming an Open Source Project
Posted 13 Apr 2000 at 06:21 UTC by deusx 
I have an Open Source
project, and it
needs a name. Well, actually, it has a clever name already.
Or, at least, I thought so at the time. I tried
to
find a unique name that was witty and
intriguing and memorable and-- well, I over-thought this one. Almost
no one can remember it, pronounce it, spell it, search for it, or
recall what it means. This also implies that no one can discover,
remember, find, or investigate the project itself, at least not
easily. This is a Bad Thing. How would you fix it, or prevent it
in the first place?
Okay, the name of this
mystery project is... *drumroll*... Iaijutsu
Behold, a case study in doing nearly everything wrong in naming a
project. :) I hope this will be educational.
Problem #1: I've told you
the
name but you still don't know what it is. The name is so
creative that is has almost NO connection to the project itself. Why
did I pick it then? Well,
Iaijutsu is the name of a
Japanese sword art known for striking on the draw from any stance
or state of readiness. I love the connotations that has for my
project, which is an object-oriented web content management and
application development framework, written in Perl. (So: swift...
any state of readiness... application development for rapid
development from a framework of reusable classes... Iaijutsu.) Like I
said, it sounded good at the time.
Well, that wouldn't be so bad-- there are plenty of projects whose
names have little to do directly with the project. (ie. Apache, Enlightenment, and Zope) This brings me to...
Problem #2: I've told you the name and you'll have
forgotten it by tomorrow. This name is so creative that it's from
another language (Japanese), and not even a word commonly used in
English from that language (like, oh say, sushi). On top of
that, it's fairly awkward to spell for many people and even harder to
pronounce. So, you might
remember that I have a project, and you might even remember what it
does, but you'll never find it. And you'll be more likely to forget
it -- as names are one of the best tools for retaining long-term
memories. (Heard in EFNet #perl, <q[merlyn]> Oh, you're
working on
the *mumble* project! Where's that at?)
With a memorable or comfortable name, a project at least stands a
chance of anchoring itself in people's minds, and then providing a
handle through which those minds can find, investigate, and think about
the project. There are entire textbooks in cognitive science devoted
to
names and this chunking of concepts and memory.
Was thinking that I'd have more than just two mistakes to admit, but
they're big ones. They may sound trivial, but the simple phrasing can
hide a lot of complexity. Naming can be serious business! :) (see:
The Name Game) Hell, just on a whim, I was looking up naming
services after reading that Salon.com story, and found
this company and
what they seriously presented as a free instant
online naming service.
So, it seems any successful name for an Open Source project (or any
project, for that matter) has to solve the above two problems. To some
extent, when I tell you the name of my project, it should communicate a
bit of mnemonic information about my project. You should know a bit
about it just by hearing the name. Or, that meaning should only be one
or two sentences away in explanation. And, that name has to be easily
spelled, pronounced, and remembered so that others can search for the
project, talk about the project, think about the project.
But, you can see how well I've solved the problems. :) I'll stop
writing and see what you guys have to say about it!
(But I still think Iaijutsu is a clever name!)
I think Samba did it right, so I followed that lead. I wanted to
acknowledge the Linuxcare BBC since I'm using it as a starting point.
But I can't use Linuxcare, and don't want to use Bootable
Business Card
(since it might not always end up Business Card either). So, I said Ok,
LBBC, that gives me what?
The only thing in /usr/dict/words with a pattern match to .*l.*b.*b.*c.*
was Lubbock. Good a name as any. Has some nice theme ideas. I would
never have picked that as a name in any conscious way, but it works.
Good names come in odd ways, I say don't think too much.
Playing scrabble helps too. Letter shuffling is always interesting.
If I had to suggest a new name, how about Pocus? Perl object classes
used
swiftly (using swords?). Images of Hocus Pocus, which is the fast
generator you want to convey. Simple, but memorable. ("Hey, you see the
new version of Pocus?")
Quick searches of Freshmeat, Google and Yahoo didn't turn up any Pocus
software, so it's not taken. Just a suggestion off the top of my head.
Take it or leave it, it's a freebie. Not sure you are looking for a new
name, can't tell from what you wrote.
I am just starting a project (a GNOME typing tutor) and I was busy
trying to think of a clever, witty, pun-based name, maybe something
related to Mavis Beacon with a G at the front, etc... then my
girlfriend said "Call it Fast Fingers".
So I did, because it was a much better name than anything I would
ever have come up with whilst trying to be 'clever'...
Regards,
Denny
Actually, sushi wouldn't be bad ;) But if you wanted to retain the
"fast slice and dice" aspect of your project, how about
ginsu.
:-)
(I didn't look these up to see if they were in use...)
After choosing a name be sure to run it through
Altavista/Google/Freshmeat/YourFavoriteEngineHere
along with some keywords
and see what pops up. It often is an enlightening experience. Remember
how many Java-related tools had the same coffee-related names and
later had to change...
I had the same problem with lq-text, an
unmemorably named text retrieval package. I was working for a company whose products
all began with nx-,in 1989, and got permission to develop a publicly available text
retrieval package that they could resell as nx-text. They never sold it, as far
as I know, but that's another story. Someone (Twitch) suggested calling it "gimme", which
I quite like.
When I wanted to include an Iajitsu screen shot in my book, I had to ask deus_x for it, and
I've had to check the name of the project and fix typos I don't know how many times. But
I know no Japanese.
Although "grep" derives from g/re/p, grep is an Old English word meaning
a pipe or sewer, very appropriately. It is short and easy to remember, and that's
partly because it uses English/Germanic sounds. Avoid words with vowel sequences not commonly
found in English. Of course, that doesn't help people for whom English isn't a first language.
Spanish and Italian speakers will thank you if you don't have long consonant clusters.
The Corba/bonobo tutorial refers to _lenght [sic] everywhere, and without checking
the source, I genuinely don't know if that's a typo in the code generator being faithfully
documented, or is because the writer was Spanish (say) and found _length a difficult
word to pronounce. I don't mean to pick on the writers of that document, but rather to
illustrate that it's very difficult to find a word that's easy for everyone to
remember. If you do find such a word, it's probably already in use.
I've just typed a list of over 5,000 16th Century British place names,
like "Munnithe gader" and "Mynchinbbocland", "Shefefeld" and "LLannuairuehan". Many of
these became simplified over time, and you can see why. (LLannuairuehan is in Wales though,
where they have different ideas about spelling. But I digress). There are
companies specialising in finding names for products and corporations.
No doubt they gave us Trillium, showing you need more than a name.
I once wanted to start a company called Mediocre Systems, whose slogan would be
Why pay more for something better than you need? Not something likely
to succeed in North America.
Is there a registry for open source project names anywhere?
Maybe I should start one.
But what should I call it?
Why Japanese? :), posted 13 Apr 2000 at 17:50 UTC by tigert »
(Master)
What is it with everyone always using japanese as a resource for weird
names?
Finnish will do just as well. We have invaluable words like
- lude (a small pest insect)
- limanuljaska (a mushroom, edible)
- lume ("fake"), and the unforgettable
- sianpaeaesyltty (traditional finnish food involving the
head of a pig (dead), the umlaut
letters "ä" converted to "ae" to preserve clarity for international
readers)
- simppu (a small freshwater fish)
Wouldnt it be awesome to call your new project, a funky nerd-food recipe
server limanuljaskad! (purely imaginative example)
Imagine the joy of using that name
instead of the traditional approach: fnefrd!
/etc/init.d/limanuljaskad start
Imagine the feeling when you start your program! It takes a 1337 hax0r
to type that right! Let this be the end of cryptic unix program names!
:^)
The Name Game, posted 13 Apr 2000 at 18:45 UTC by imp »
(Master)
In several startups I've been at, we've had trouble playing the name
game. ObjectBuilder (yes, the one released years ago for Linux) started
out life as sproto, then was renamed to uib. When it was finally
renamed to ObjectBuilder, we kept the program name of uib because there
were just too many places to change.
The best lesson I learned from this was that naming needs to be simple.
We had toyed with the idea of calling the builder DRUID (Done Right User
Interface Developer) and many other complex names. In the end,
ObjectBuilder was excellent in its simplicity.
I don't have any name suggestions at hand for the current program, but
wanted to share this. Naming is a lot harder than it is at first blush.
Mass reply ATTACK!, posted 14 Apr 2000 at 00:06 UTC by deusx »
(Journeyer)
sethcohn &
denny: I've actually played the
grep /usr/dict/words game before, with a Java IRC client I'd written.
I called it InteRloCutor. I thought it was witty too. (See a trend?
I can't stand picking a straightforward name.) Fortunately, this one
was a bit more memorable. :) I think I do need to follow your advice
of not thinking too much.
scottyo & (sorta) jop: I like ginsu. It would be
memorable, but as jop points out in a different vein-- you need to
watch out for name collision. In this case, I'd be stepping
on the toes of a trademark (shudder). I know this was just a
quick suggestion, but it's another concern to have in mind when picking
a name.
Ankh: You demonstrate the awkwardness of the name right in your
reply: "Iajitsu"
The name is "Iaijutsu". :) That's not a complaint
or a slight toward you-- it's a problem with the name. You don't know
Japanese, nor should you just to remember the name of my !@#$% project.
And an Open Source registry of names, maybe even evolving into a naming
assistance service, would be very cool. It probably sounds like I'm
over-thinking and overstating this naming thing, but it's hitting me
very hard now. I have a project on the cusp of another major release,
and potentially recieving official funding at my day job, and the name
might hinder both.
(As for a name for the registry, how about "True Names"? Then again,
you may want to take my suggestions with a grain of salt knowing my
naming tradition. :) )
tigert: Why Japanese? Because Iaijutsu was born at NinjaCode.com, an under-
construction resource for web developers intended to be a mutant cross-
breed of Slashdot, Advogato, Webmonkey.com, and Builder.com. In this
case, I was trying to capture the theme and culture of the site
underdevelopment, which will have a bit of Tokyo-pop flavor and campy
Ninja movie theme. However, the site is intended for English
speakers, so name may have stepped out of bounds. :)
imp: At least I'm not the only one who thinks this naming thing
can be rough. :) And, you bring up a point I forgot to mention in the
article: The legacy and momentum of a name chosen at the beginning of
a project.
What does renaming my project mean? Well, all of my project mailing
lists have 'iaijutsu' in their addresses. My SourceForge.net
project is named 'iaijutsu'. Also, my CVS repository and
all of the source files have the name embedded in them.
So, no problem, I'll just have to convince the dozen or two subscribers
on my lists to all migrate to a new set of lists. And abandon my SourceForge.net
project and start a new one, because the current design of that
site application seems to hate renaming and deleting things. Oh, and
CVS hates deletions too, as renaming files and directories put me in
danger of basically starting over again with my changelogs and revision
control.
So, like I said, I did just about everything wrong with this name. The
project is really cool, but you'll never remember the name (which might
be appropriate for a ninja, but not a project I'm hoping you'll help
with.)
:)
Couple of years ago I put together a netscape plugin which fakes real plugins by saving the data and starting a real application, which if
an
X app gets relocated into the plugin space in the browser. Technique's called swallowing, so I called it XSwallow, it was pointed out to me months later that to some people this
is
a very suggestive name, promising some sort of x rated action.
C.
It may sound rather like throwing everything in a melting pot and then
trying to see if it comes out stew, but I think it will help anyway.
Let's see, you forgot on the first pass
- pronounceable
- memorable to English speakers
but you definitely want (desirements analysis?)
- martial arts / readiness / efficiency
- something that implies japanese style, because of ninjacode.
It turns out that with the popularity of some of the martial arts,
anime, and the like, some contstructs have become modifier memes in
English, and are beginning to be treated like other prefixes and
suffixes. So perhaps you can have fun with <meta> Fu, <meta> Chi, or
(hey, you're the one who mentioned sushi) <meta> Maki or Nigiri or Yaki.
ScriptFu is taken, GIMP uses that. And maybe you don't want the result
to sound so generic people still can't figure out what the project is,
either, so Perl Chi is probably out. Roll it out on the tongue and see
if it can be said with enthusiasm, or comes out all wrong. WebzineFu!
ForumMaki! (it wraps up everything in a yummy fashion? oops, lost the
martial art effect. And people might start calling it spider roll.)
WebZinsu! (it slizes, it dizes, it puts together webzites. But wait,
there's more.) To help something be pronounceable it really helps if
it's only one or two syllables, or it has memorable units which are.
As for the problem of renaming, maybe you just want to take
linguistic laziness and leave it Jutsu. Yeah, that isn't a
whole japanese word, but until someone gives your cool back
end/middleware gadget some content, they haven't got a whole website,
either. At least, it chops off the hard to spell part, but it's close
enough that CVS ought to be able to put up with it inside of files. if
you've got iaijutsu.c to change to main.c I can't help you there.
Definitely, if you're going to change it at all, early is better than
late. The creat system call is tribute to that. Do
whatever it is you're going to do now, while you can still actually
count your users.
Hmmm, I seem to be part of a trend here. The thing that (I think) works
about kuro5hin is that once you find out what it means (from the
faq), it's not that hard to remember, since it is basically a
phonetically-spelled English word. I named my site that because I didn't
really care (at the time) whether people knew about it or not, and that
was a name I associated with myself. Now I do care that people know
about it, but I get so much amusement out of watching people go from
"what's a coo-roh-five-hin???" to treating it like any other word, that
I couldn't bear to change.
Naming stuff, though, is difficult and usually unfun. It either comes to
you in a flash, or it is an eternal grind and you're never quite happy
with the name you end up with. I'd say, name it what you want to, and if
it's good enough, people will remember it. "Advogato" for example. Which
is not nearly as easy to say as it looks like it would be. I always
stutter saying it-- "Avo... advo... gato."
Actually I find Kirushin/Kuroshin/Koru5h1n/whatever impossibly to remember exactly.
That might be because I have had very little exposure to Japanese words
or culture, much less than someone from California (say), or someone who
has seen those animé things on the television, perhaps.
When you use a word or phrase that borrows from multiple languages,
you risk losing people who find one or other language difficult.
Slight misread, I think-- kuro5hin is *NOT* actually at all
japanese-derived. It sounds kinda japanese, and it even potentially
could be meaningful in japanese, but it's origin was just a dumb
phonetically-spelled pun on my name (rusty == rust == corrosion ==
kuro5hin). And I bet I have had less exposure to Japanese culture than
you. I grew up in southeastern Massachusetts. Not exactly a hotbed of
Asian activity. Anyway, it's pronounced "corrosion", but it's best
reached by bookmark. :-)
Sushi, posted 16 Apr 2000 at 04:41 UTC by Skud »
(Master)
As deusx knows (or at least, I told him on IRC, and he may or may not
remember) someone at Netizen is
actually working on a thing called "Sushi". It's not dissimilar to
Iajutsu, in that it's an object oriented mod_perlish thing. In fact,
it's called "Sushi" because it's a wrapper for objects.
Boom boom.
Trademarks are only granted for particular fields. So the "ginsu"
trademark probably applies to the category of kitchenware or something.
Actually, it's probably a "hardware tools, including bladed tools, yadda
yadda" category. So anyway, you could safely call a piece of software
"ginsu" without treading on their toes.