Here's quick stab at implementing Acme::Constructor::Pythonic.
]]>Haha! Yes, DateTime wants a year. JSON is a better example.
]]>This way one review would be "shared" across all modules, without having to replicate potentially large amounts of text across them.
Plus, if you consider a module like Data::Random, it might have two keywords: password-generation and synthetic-data. They would link to two different module groups, with some overlap, and potentially different reviews.
We should rely on module authors providing this, because most won't. But if there's a way to provide the relevant information to MetaCPAN and co, then it can provide an interface that brings all these things together.
]]>Yes! Yes! Yes! The old taxonomy of modules has been irrelevant for years. Most authors don't even bother to register and classify their work. We should absolutely be using the keywords
provided by the META spec.
Should metacpan or other project let people crowdsource this?
That would be nice. But I think the first step is to just make the keywords visible on each distro page, and then spread the word that META supports keywords. In time, keyword extensions for Dist::Zilla, Module::Install, and all their friends will emerge (if they don't exist already). Crowd sourcing keywords and making them searchabie can come later.
]]>I'm guessing that very few people have even looked at the categories in at least seven or eight years. Nobody knows they're there. I think the days of browsing lists of modules by category is long gone, and we're now into a world where everything is keyword searching and links of tags.
Who's the user that you're trying to serve? I think there are two key users to be served: The experienced user who wants to quickly find a module that matches a given search criteria, and the novice user who doesn't realize what's in the CPAN that might do him good. It's this latter one that I could potentially see being served by categorized lists of modules, if he knew what the category hierarchy was.
Why not skunk up a a couple of pages as a prototype? Just sample HTML that gives people something to look at that shows your ideas, and they'll have something to build on with their ideas as well.
You mention dmoz, and I went and looked at it for the first time in forever, and it just seems so horrible using that old Yahoo-like hierarchy for browsing. I think anything you're going to be doing is going to have to be based on tags. StackOverflow has done marvelously well with tags.
]]>If you see such links missing for a distribution it is always a good thing to report this as a bug at rt.cpan.org. All authors to which I've reported such bugs have responded favorably.
Maybe we need some author tools that would automatically extract links from SEE ALSO and add them to a new section in META.json to make this information easier to process...
]]>For example, I have some friends on Flickr who take great photos, but don't tag them. I follow up and tag on their behalf.
Another "Discovery" feature I would like for metacpan.org is "what's new by keyboard". For example, I'd like to know:
"What new modules have been published in the MooseX namespace recently?"
and
"What new modules have been published that use Moose recently?"
]]>Good idea. I'll try to remember to do that in the future...
CPAN::U is a collaborative filter based recommendation system for Perl developers. It gathers data from "++" button counts across the MetaCPAN and builds a predictive model of modules often used together by CPAN authors.
Your post reminds me of why this is such a bad idea and why I want a ticketing system to do this with. Tools like Trac and Gitlab don't seem to integrate as well with the email-centric work flow I see around me.
I guess this is me finally admtting that I better get RT installed and start using it at least for my todo list, and probably try to get others in the group to do it too.
Thanks for reminding me that tools can make my life better.
]]>