|
|
|||||||
On The Naming of Things
![]() Simon Cozens
I've been thinking recently about what accounts for the CPAN's success; well, that's not quite true. I've been trying to work out what accounts for the Ruby Application Archive and Python's Vaults of Parnassus comparative failure. There are many reasons. First, there's a clear distinction in CPAN between libraries and applications; the RAA the Vaults don't have such a thing. But I've come to the conclusion that a major factor, and one which applies both to collections of software such as those we're looking at and the development world in general, is the way that libraries and aplications are named. (To be fair, Ruby is getting better at this and beginning to solve the problem the Perl way.) I'd like to give a couple of principles for naming software.
Perl's modules are generally given simple, definitive names. If I
want an XML parser, I head for
There's a temptation to make up cutesy names for software projects.
However, when it comes to libraries, this is more of a hindrance
than a help. When I see a module called
There is a place for cute naming, and that's in applications and
other end-user projects; this is because there's more space for
competition. You'd never get away with calling a web browser
"webbrowser", so "Mozilla" is as good a name as any. However, if
you're building that as a Perl module, then
Shamans have long known the value of the correct and definitive naming of things; programmers of libraries and modules would do well to rediscover it. Simon Cozens is an Open Source programmer and author.
Comments on this weblog
Return to weblogs.oreilly.com. Weblog authors are solely responsible for the content and accuracy of their weblogs, including opinions they express, and O'Reilly Media, Inc., disclaims any and all liabililty for that content, its accuracy, and opinions it may contain.
|
|||||||
|