Simon 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...