Here are the numbers for the number of job advertisements posted to jobs.perl.org in 2008, by month.
I'm not affiliated with jobs.perl.org, 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 jobs.perl.org reports for past discussions.. Some other resources include:
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
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.
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
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:
git initgit add .git commit -m "* Version 1.23 from CPAN"git format-patch --stdout -1There 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.
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?
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.
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:
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
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.
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.