Given that currently there are 26,547 distributions on CPAN that represents 13% of all the distributions.
Not bad.
Especially if we compare with some of the other platforms:
GNU/Linux 483
Mac OS X 2,662
NetBSD 2,962 Windows (Win32) 3,487
Windows (Cygwin) 9,983
...
AIX 25,500
...
On those pages, there are a couple of possible reasons why these distributions have no reporst, but I wonder, maybe we could track down a small number of distributions that are the dependencies of most of these modules causing the lack of test. Then those could be either fixed or avoided depending on the situation.
Marpa::R2's
Scanless interface is now out of beta and
available in full release on CPAN.
This interface allows Marpa to be used without the need to create
a separate lexer (scanner),
and increases Marpa's level of "whipitupitude".
Here's what a simple calculator looks like in the Scanless interface:
I just checked the 1000 most recent CPAN uploads. 504 of them did not have a link to the repository of their source code. I was quite surprised by this. After all we are talking about open source code where having a link to a public version contol system can increase cooperation.
I hope this article helps, and more CPAN authors will include this information in their distributions.
(I know that META CPAN just moved, and it might not have been fully updated, but I also checked the number of packages without a license field and it was 169 out of tha 1,000 quite similar to the number I saw a week ago when I wrote about the CPAN uploads without license in the META files. So I think this is quite close to the correct number.)
Welcome to Perl 5 Porters Weekly, a summary of the email traffic of the
perl5-porters email list. Usually I go Monday to Sunday, but just to keep
things tidy, we'll make this the final summary of 2012 by including the 31st.
Topics for this week include:
cPanel version of "Storable 2.39_01" breaks backwards compatibility
Please separate fixes to spelling from changes to code layout in patches
In
a previous post, I showed a self-parsing grammar,
written in Marpa's new BNF interface.
That grammar was in a tradition going back to the 70's.
Following the tradition, I cheated a bit.
That grammar required,
but did not include, a lexer to make a prepass over
its input.
This post contains a self-parsing
and self-lexing grammar,
the one for Marpa's forthcoming Scanless interface.
This grammar is about as self-contained as a grammar can get,
short of being encoded into a
Universal
Turing machine.
Many readers will
prefer to be introduced to the Scanless interface
by way of
a simpler example,
but based on the response to the previous post I know
there are others who share my fascination with
self-description and self-exemplification.
And there is something to be said for reading an example
that is a final authority on itself.
This is just a quick note to let everyone know that MetaCPAN is moving to a new hosting sponsor today (Dec 31st). Our old hosting relationship with speedchilli.com has unfortunately come to an end. We've been quite grateful for and more than satisfied with their sponsorship over the last 1.5 years or so. Having the hardware and bandwidth which speedchilli freely made available to us was instrumental in the early days. (Initially everything was running off a tiny instance in the Rackspace cloud. It wasn't much, but it was all we could afford after passing the hat around). Having speedchill sponsor us allowed everyone who contributes to MetaCPAN create something truly special.
This Sunday post is the last one before the new 2013 year begins. So, a beautiful chance to have an opportunity to list some results that we achieved during the year and share some plans for the next one.
One glaring deficiency: does not take PAUSE deletions into account (is there a MetaCPAN API for this?) Thus, the number of actual dists on the graph is monotonically increasing and might be higher than the number of actual dists on CPAN.
Generated graph is still rough and number of authors is limited at three because I'm too lazy to tweak the sample script from Chart::Lines.
A better LinkedIn makes the world a slightly better place for me. Our ill-defined, disparate, and disperse community has many parts that can be improved and I spend a couple of minutes each morning moderating some LinkedIn stuff. Other people help out in other sites. There are a couple of things that I'd like to encourage.
I want to recruiters to see that CPAN Developer's Group badge and ask candidates why they don't have it. Even if that means the person only ever uploaded one module, that means they've gone through the process once, which I think is the biggest obstacle to sharing. Once they get over that hump, even if just to get the badge, they are a slightly better Perler. And, it's all about a long journey where each step makes them slightly better. If they are hiring better Perlers, I'm dealing with better Perlers when I show up.
Zotero is in my opinion the best solution to citation management available. It's a firefox/xulrunner based solution for collecting and maintaining bibliographic data and it's associated full text. Zotero has a cloud based API but also an internal (largely undocumented) Javascript API. I find the JS API much more interesting than the cloud API due to having total control over my data (and works offline etc etc...).
Two frustrations I've had with a lack of good alternative to the msword integration code, and problems with interacting with the internals of a running firefox/xulrunner. I finally cracked open mozrepl, and the cpan module MozRepl and prototyped a bidirectional bridge between Zotero and perl.
The code is here, and should be a useful start for anyone who wants to do any bibliographic data mangling in perl. I'm not going to publish it to CPAN until I work out how to test it properly.
Today I'm working on some code. That's not surprising. It's also not surprising that the person I'm working on the code with is on holiday until the new year starts. Before he left, he made some significant changes to optimize our code, but for one subsystem he didn't have the time to apply his changes. This means that we have 7 tests failing out of 397. In a quick check we found there were plenty of conflicts between his code and mine and my work was generating even more conflicts. This meant we had two choices for how to deal with this while he was gone:
I could continue my work with passing tests and deal with even more conflicts when he returns
I could merge his code, deal with some failing tests. get rid of the conflicts and have a much faster code base
Previous end-of-year report for 2011. Previous quarterly report: Apr-Jul 2012.
2012 is my most productive year yet in my "CPAN career": 943 releases (compared to 495 in 2011). That's about 2.5 releases per day! So far I have about 215 distributions under my account, almost half of them (96) are new modules in 2012. The reasons the number of distributions is high include: Perinci modules family being split into many distributions (and then some, to avoid recursive dependencies problems that I seem to keep bumping into), the various Task distributions, and also the fact that releasing CPAN modules is so darn fun! A little too much fun, I'm afraid.