The rate of CPAN churn
I have a minicpan on my laptop in my home directory. My home directory gets included in my backups. This means that by looking at my old backups, I can get a good idea of how much the CPAN changes ...
snapshots $ du -sch */.../laptop-home-dir/minicpan
1.5G daily.0/.../laptop-home-dir/minicpan
...
145M monthly.0/.../laptop-home-dir/minicpan
127M monthly.1/.../laptop-home-dir/minicpan
127M monthly.2/.../laptop-home-dir/minicpan
120M monthly.3/.../laptop-home-dir/minicpan
111M monthly.4/.../laptop-home-dir/minicpan
137M monthly.5/.../laptop-home-dir/minicpan
...
daily.0 is my most recent backup, and monthly.0 through to monthly.5 are backups from 1 month ago up to 6 months ago. We can see that the rate of change on the CPAN is fairly constant. It's also surprisingly high, with almost 10% of the "active" part of the CPAN (that is, the bits that you can trivially access by typing "cpan Some::Module
" to install, changing every month.
Yes, I realise that this is a gross simplification.
I'm not sure what the global rate of change on CPAN is, although I know someone did recently do an analysis of how 'fresh' CPAN, measuring things like how often things are updated and how often new ways to solve similar problems appear.
The overall rate of change is problem straightforward to access, as is the measurable improvements, such as error rates, test passes/fails, etc. My gut feeling here is that over the past 2-3 years CPAN has improved enormously with authors that keep modules with high install rates alive, authorship for very important modules well distributed, publicly accessing version control repositories, etc.
One thing that is tough to measure is how often new ways of solving similar problems appear. Since CPAN is not really organized and categorized (except very roughly) you really can only 'spot check'. Also, I don't know how to access module download rates, or if that information even exists in a consumable form. It would be great to have that information since it would help us figure out what people need most.