Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

Sunday March 08, 2009
05:10 AM

2008 report

Here are the numbers for the number of job advertisements posted to in 2008, by month.

I'm not affiliated with, and this is only the simplest of analyses. I didn't try to correct for duplicate posts where the same job was re-advertised. I don't attempt to draw any conclusions about the popularity (up or down) of Perl from these numbers. In general, I think that the continual uptrend through 2006 is about more people discovering the service, and the dismal numbers in 2008 mostly reflect the current economic cycle more than anything to do with technology.

-------------------------------------------------------------------------------- ----------
Year | Total |   Jan   Feb   Mar   Apr   May   Jun   Jul   Aug   Sep   Oct   Nov   Dec
-------------------------------------------------------------------------- ----------------
2001 |   280 |     0     2     8    21    40    34    33    29    34    30    35    14
2002 |   413 |    34    33    35    16    45    26    37    46    33    42    31    35
2003 |   560 |    43    36    56    56    21    39    44    64    53    52    52    44
2004 |   949 |    75    58    78    88    74    88    82    87    65    87    85    82
2005 |  1429 |    93   110   120   135   135   125   115   113   106   132   144   101
2006 |  1857 |   164   138   157   151   166   153   140   176   152   172   179   109
2007 |  1966 |   182   156   181   190   177   168   176   165   145   179   148    99
2008 |  1451 |   156   140   152   158   156   158   136   110    85    87    71    42
---------------------------------------------------------------------------- --------------

Also see the threads for the 2006 and 2007 reports for past discussions.. Some other resources include:

Wednesday February 18, 2009
03:59 PM

Is there a module that lobotomizes subroutines?

Is there already a module that will turn a list of subroutines into no-ops? I'm doing this to disable features in production code, not testing, and only because other work-arounds are intractable. It's monkeypatching to give a class a lobotomy.

I know about Curtis's Sub::Override, so I might just write a wrapper around that for an interface that looks something like:

use Sub::Nerf;
nerf( $return_value, @list_of_subs );  # all subs just return $return_value
unnerf( @list_of_subs ); # back to where we started

Monday January 12, 2009
04:48 PM

YAPC::EU 2009 has a LinkedIn Group

José tells me that YAPC::EU 2009 has a LinkedIn group. You can note that you are attending, presenting, and so on, and get more bling for your profile. You can also see who else is coming.

Friday November 07, 2008
10:28 PM

New ActiveState PPM build system is live

ActiveState tells me that the new PPM servers are now available. This is the new hotness that Jan Dubious talked about at the beginning of the year.
You need the PPM 4 client, which is already in the 5.10 distros and the 5.8 distros since build.

The new repos have many more modules. These numbers are straight from ActiveState today:

Platform Vers | Old Repo | New Repo (CPANfly)
  Linux   5.8      7790     10961
  Linux   5.10     5611     10888
  OS X    5.8      8506     10907
  OS X    5.10     2662     10878
  Windows 5.8      7267      9106
  Windows 5.10     6524      9060

Tuesday October 14, 2008
03:33 PM

Use git to easily make third party module patches

In the olden days, to make a patch to a module, you had to have the original, untouched file and a copy that you modified. You'd then use diff to compare the two files.

At the Pittsburgh Perl Workshop, Ricardo was asking how to do some odd thing in git. Instead of anyone answering his question, everyone asked what he was doing. It turns out he was patching someone's module and making it a git repo while he worked. The process is really handy:

  1. Download module distribution and unpack it
  2. Make it a git archive with git init
  3. Add the initial content to the index with git add .
  4. Commit the initial content with git commit -m "* Version 1.23 from CPAN"
  5. work, work, work
  6. Generate your patch with git format-patch --stdout -1
  7. And Bob's your uncle

There are other ways that you can do this, and you can change around the process in git. I like that git is lightweight enough to make it actually useful for everyday work.

Monday September 29, 2008
08:49 PM

Simon Phipps on open source, on FLOSS

For FLOSS Weekly 39, Leo Laporte and Randal interviewed Simon Phipps, the Chief Open Source Officer at Sun. It's not the normal open source religion, and a much better view than I've heard for the "Open Source" people.

The entire hour long interview is excellent, but this was my favorite part:

Simon Phipps (@0:14:08): What characterizes open source is, open source is the syncronization of the self interest of many parties. And to create an environment where people are willing to synchronize their self interest and collaborate over code, there has to be transparency. On the other hand, in open source, you know, Randal, I don't care what your motivations are for being involved in Perl. They're of no relevance to my life because our relationship around Perl depends on code and the code and the community are transparent, but your motivations for participating in it are opaque. It's up to me. They're private to me.

Leo Laporte: They're also irrelevant because of transparency, the codes speaks for itself.

Simon: Absolutely. So I'm able to maintain my privacy around my motivations and degree of my involvement and how I'm funding it. I maintain responsibility for that part that is private as well. On the other hand, I'm able to work in an environment of transparency where all the code is known, all its origins are known, all its defects are potentially known, and that combination of transparency with privacy is, in my opinion, what characterizes open source. Trying to define open source in terms of licenses in kinda outmoded in my view. Open source is about transparency at the community level but also about privacy in terms of my motivations.

Simon also said quoted:

Whenever you create a system, you create the game that plays it.

Does anyone know the source of that quote?

Saturday September 27, 2008
04:39 PM


Looking at my module namespaces, I see that I've uploaded in 13 different beginning letters. Now I need to get the other 13.

I need to figure out how to make modules beginning with E, G, I, J, K, Q, R, U, V, W, X, Y, Z. The end of the alphabet is feeling a bit neglected.

G is for Geo::, so that's just something I need to finish and upload.

For U, I've been thinking about writing some sort of USB Thumb drive file read/write speed tester. Too bad that belongs in something like Device::*

For X, I guess I'll have to make something in the XML namespace.

Y, huh, maybe something in YAML.

I haven't thought too much about the other letters.

Monday September 22, 2008
03:44 PM

cpan script now in github, with new features

I've move my cpan script into its own github repository since I got a burst of feature requests. I also change it to use the App::* structure.

There are some new switches:

  • -j filename --> load an alternate CPAN configuration
  • -J --> dump the current CPAN configuration, including anything changed during the run
  • -l --> list all of the installed modules
  • -g --> download the module tarball, but then stop

It's going to stay in the repo for a bit while I fix up a few things, but you can play with the sources if you like :)

Friday September 19, 2008
07:16 PM

The Perl Community, in pictures by Julian Cash

Get Julian Cash's book of Perl people portraits, free for download or pay to have it as a bound book.

At OSCON, Julian had a nice printed and bound book of his portraits of Perl people from various conferences. He gave me one for free, since I'm in it. Now you can get it for yourself.

Tuesday September 16, 2008
01:29 AM

Perl in Universal City Studio v. 2600

The brief of amici curiae in Universal City Studio, et al v. 2006 says that computer code is speech, and should be protected as such. No big deal there.

I do like how they talk about Perl, used in some of the examples, though. I've added the emphasis:

We chose this snippet of Perl for two reasons. First, when compared to the Visual BASIC, it is apparent that more symbolic characters and fewer natural-looking words are used, illustrating the variety of programming languages. Though it looks less like a natural text language, its meaning is as clear to those who read Perl as is this sentence to those who read English.(4)
4. If "$plain_text = $file_key ^ $xor_block" seems unapproachable, consider what those not trained in the language of legal citation would make of "111 F.Supp.2d 294, 326 (S.D.N.Y. 2000)." Each is meaningless to those unfamiliar with the language; but each is more precise and compact for those who do understand than would be an English narrative equivalent.