On Jul 8, 2007, at 2:44 PM, Michael G Schwern wrote:
One of the most common cries I hear from CPAN users is that they
have trouble
finding modules. A CPAN module is largely found by its
distribution name.
Names have to be unique and short which tends to hurt its
descriptiveness.
Furthermore, a distribution can only have one name while a module
could be
described different ways depending on how you look at it.
CPAN is organized as a simple tree hierarchy. Hierarchies suck for
describing
the real world. They allow for only one way to describe a thing
and imply a
hierarchy which may not exist.
Let's un-overload the distribution name by providing another axis
by which an
author can categorize their module. The single most dominant
organizational
tool of the web: tags. For a large, wide, decentralized library
its simple
and the least worst way to organize things. It provides multiple
axis to
describe the use of a module and frees up the name to be just a
short, unique
descriptor. Best practices for tags and how to work their
strengths and
weaknesses are well understood.
The implementation is simple, add a "tags" keyword to META.yml. Have
search.cpan.org so something interesting with that extra information.
[snip]
It is indeed a common request. Note that cpanforum recently got
basic tagging. One advantage of dynamic, online tagging rather than
static, META.yml tagging is that third-parties can tag actual usage
rather than usage that the author anticipates. Furthermore, dynamic
tagging allows the keyword choices to evolve over time without
necessitating a new upload.
I propose the following (with the caveat that I intend to implement
none of this!)
1) go ahead with Schwern's idea to add META.yml tagging
2) merge those author tags with public tags created by cpanforum
or the like
3) if search.cpan.org or Kobes' site adds tag searching, work off
that merged tag set while weighting the author tags higher if desired.
Chris