Comparing Apples and Oranges - rubygems vs cpan part 1

So I noticed that CPAN is no longer king of the hill when it comes to sheer number of packages - rubygems took that title mid 2011 (when exactly depends on whether you include dev version and backpan which it lacks).

Rubygems had previously claimed the title based on dodgy numbers, but by the start of 2012 there really wasn't any doubt - that's a hell of a lot of uploaded code.

At first I was a little downhearted and disappointed, luckily I remembered a well timed piece by chromatic_x on why these sort of charts don't matter.

I looked into rubygems a bit to see just what was behind the massive explosion (admittedly still a bit in denial and looking for a smoking gun to explain), and found that it's a very very different kettle of fish.

That's a good thing for both ruby and perl - there's a lot that can be learnt from comparing and finding (and stealing, something both ruby and perl communities are both happy to do) good ideas.

The big surprise, that was immediately obvious was that while a lot of new rubygems are uploaded, the number of total uploads (in terms of releases rather than new or first version releases) is about the same every day, between 60 and 80 or so.

When you look at the numbers of recent uploads, 42 out of the most recent 50 (which is what the rubygems api gets you) are first releases (possibly more, I gave them the benefit of the doubt), while cpan uploads are almost the reverrse at 9 out of 52.

I guess both communities got the "release early, release often" memo - but with a different outcome :)


the sites states CPAN has 27142 modules whereas states 119565 modules(shown at bottom left). Wondering which one is right!

after seeing other module sites, I observed all other module sites highlights the below information on main page

1) Total number of modules
2) Number of downloads
3) How to install modules(simple command)

Our boring CPAN main page should also include this information.

Something else that rubygems has, is a script included in rubygems for building and uploading, that could make life easier for new uploaders
cpan-upload! I think it's mentioned on the PAUSE page somewhere, but it's easy to miss.

Leave a comment

About hashbangperl

user-pic Geek, Dad, Husband, hacking perl in Cornwall see also my github and linkedin pages