On the importance of names

by Andy Lester

I have a reputation as a pain in the ass when starting a project. Whether it's
the Phalanx project or
WWW::Mechanize, or the data-transfer system we're setting up at work that we called "Moto", I think naming projects is critical to their continued success. I'll literally spend hours before the project starts, working to find the perfect name. I'm glad I'm not alone.

Simon Cozens, Perl wizard and editor of
perl.com, has started a new project. Like most of
Simon's projects, it is not modest: It's a generic MVC-based web application framework that pulls together disparate parts such as web server and database interfaces.

What to call it? From Simon's weblog:

Let me start by saying that the plan was always for Apache::MVC to be abstracted into a more general MVC web application framework, and so Apache::MVC would eventually become the Apache-based subclass of this more general project. And such projects need a name - Struts, Brazil, Quixote, Wafer, and so on.

Also, having a name like that allows the project to have a decent web presence, show up on people's CVs, and so on. I really do see [the project] as being Struts for Perl programmers.

Simon understands the importance that naming holds, that this entity will forever be tied to a few syllables. He could have called it something techie and uninspiring, like AppFrame or WebGirders, that tried to tie into what the actual product is, but leaving it completely bland.

No, he called it Maypole.

So why Maypole? I wanted a name which reflected the fact that the framework was a focal point for various different "strands"; that in a sense it tied everything together. I got thinking about knots and anchors and things but that wasn't helpful.

In the same way that a maypole is nothing special by itself, but needs dancers around it, Maypole isn't really very interesting on its own but works wonderfully when combined with a data source library, a view layer and a presentation mechanism. Equally, though, you can't have a maypole dance without the maypole.

It's brilliant as a name, and it evokes an instant image. One other parallel that he didn't mention is the interleaving of the various threads, combining to make the specific look of the maypole.

If only all projects were named so evocatively...

What great project names do you like?


2004-02-16 20:43:48
On Names, again
Simon dropped me an email pointing to earlier thoughts on naming, where he also discusses true names.


2004-02-17 22:14:48
I think I am going to name all my projects "Grease" from now on. "Grease the MP3 Module" and "Grease the iChat Status Script".