Here's my initial New Years report on The Year in Perl, 2007. Report errors and omissions to email@example.com. Some dates may be off a couple of days. Looking back at my Ten Predictions for Perl in 2007, I note that none of my predictions came true. Also see my The Year in Perl, 2006 and chromatic's The Year in Perl, 2005. Update: I've updated the points from the comments.
Perl 5.10, and a new Perl 5.005_05
Ricardo SIGNES put his "Perl 5.10 for People Who Aren't Totally Insane" slides online to show off most of the new language-level features.
On December 18, ActiveState announces that they have a 5.10.0 build of ActivePerl for Windows (including Vista), Linux, Mac OS X, Solaris, AIX, and HP-UX. They still support the 5.8 line of ActivePerl too.
Strawberry Perl has a complete Perl/C Compiler/CPAN solution in a single download for Windows XP and earlier. Strawberry Perl is waiting on the Vista compatibility for the MinGW compiler tools.
Jon Allen updated perldoc.perl.org with the latest Perl 5.10 documentation, although you can still get to the 5.8 documentation
In October, Leon Brocard released the latest Perl 5.005_05, a new maintenance version of Perl 5.005 (Google Code project) that compiles on the latest versions of everything. This release is not yet on CPAN.
Perl 5 Notables
Throughout the year, Sam Vilain worked on converting the Perforce history of perl commits into a git history of perl, which he discussed in his Use.Perl journal. The Perl preforce repository has been hosted by ActiveState since 1997 when Gurusamy Sarathy chose it during his reign as pumpking.
In January, Bryne Reese, the maintainer of SOAP::Lite, wrote a "State of the SOAP" message to the module's mailing list. He outlined the current situation with development and the technical challenges of keeping up with modern SOAP developments. He's looking for a new maintainer that has more time than he does to devote to the project.
In January, several teams using Perl competed in the 2007 Plat_Forms competition, which tries to compare web development platforms. The official results noted that the three Perl solutions needed less code, and required fewer changes to deal with database changes, but lacked web service functionality and were suspectible to HTTP spoofing. Team 1, using Catalyst, published their post-mortem, noting that their problems came mostly from their unfamiliarity with the tools.
In March, brian d foy updated Business::ISBN-2.0 to handle the new ISBN-13 format. He was only a couple months late in supporting a format he should have supported a year earlier.
On March 13, Curtis "Ovid" Poe announced that TAPx::Parser, the Perl module to parse the Test Anywhere Protocol (TAP) output, would become TAP::Parser. The new TAP::Parser eventually made it into the Test::Harness 3.0 distribution as the official Perl test output parser.
In April, Chris Dolan received a $2,000 grant from The Perl Foundation to implement the remaining 20 policies needed for Perl::Critic to support all of the recommendations in Damian Conway's Perl Best Practices. In October, he announced that he was finished with all 20 policies.
In June, David Landgren uploaded a new version of Crypt::SSLeay to fix compilation and portability issues. This was the first release of the module in four years. David had taken over maintenance of the module from Joshua Chamas in December 2006.
On July 29, Ricardo SIGNES uploaded MIME::Lite 3.01_06, the first developer release since December 2005, fixing many of the bugs in its RT queue. On August 28th, he uploaded MIME::Lite 3.020, the first user release April 2003. The year ended with MIME::Lite 3.021.
In September, The Linux Foundation added Perl 5.8.8 added to the Linux Standard Base 3.2 after some discussion about the details of its integration. The Linux Foundation initially asked the community about including Perl in June 2003.
In September (and ongoing through the Fall), Perl did very well in Tim Bray's Wide Finder competition to see who can do the best on CPUs with low clock rates and many cores. He wrote about this in Beautiful Code and used Ruby to go through his Apache logfile. For the competition, he thought Erlang was a good place to start. As of Tim's November 19th report, Perl implementations took first and second place, as well as eighth, although all from the same submitter. JoCaml and Erlang were top contenders too.
In October, a team using Perl placed 2nd in the Tenth Annual International Conference on Functional Programming Contest, whose goal it is to give people the chance to show off their favorite language. This year's topic was about modifying alien DNA. The United Coding Team used Perl to take second place, losing to Team Smartass's C++ implementation from four Google employees (who also won in 2006).
In October, Alex Smith, a student at the University of Birmingham, won a $25,000 prize from Wolfram Research for proving that a particular Turing Machine is universal (meaning it can do any calculation) and the simplest one possible. His forty page proof includes quite a bit of Perl.
In November, after a lot of hard work from many people and the perl-qa mailing list, Andy Armstrong released Test::Harness 3.0. It completely redoes the old testing harness to make the internals and the data easier to access programmatically. No more screen scraping test output or results! The distribution contains TAP::Parser, the new module to parse test output. For more information, see the Test Anything wiki.
On March 23, Jesse Vincent announced that Best Practical would support 10 micro-grants of $500 for Perl 6 projects. The first one was given to (32799) Steve Peters on March 26 to work on the portability of Parrot.
On April 4, Phil Crow received a micro-grant from Best Practical to create a Java-to-Perl 6 API converter. In July, he uploaded Java::Javap to CPAN. It contains the java2perl6 program to turn a Java class into a Perl 6 class.
In July, Best Practical awarded three Perl 6 micro-grants. Flavio Glock received a travel grant to attend YAPC::EU, Steve Pritchard received a grant to complete the RPM packaging for Pugs and Parrot, and Juerd Waalboer received a grant to upgrade the hardware for feather.perl6.nl, the Perl 6 Community Development Server.
In September, Allison Randal came up with a schedule and milestones to Parrot completion.
In September, Adriano Ferreira received a micro-grant to write a series of short articles about Perl 6 operators on O'Reilly Media's OnLAMP blog. His initial post contains links to all of the subsequent articles.
In November, The Mozilla Foundation donated $10,000 and The Perl Foundation donated $5,000 to fund Patrick Michaud for four months of work on the Perl 6 compiler. Patrick began work on a set of compiler tools, including one called NPQ (Not Quite Perl), to make it easier for people to work with the compiler. Patrick also created the ROADMAP document that explains the upcoming work.
On December 30, chromatic showed how to create a perl6 binary. That doesn't mean that it runs all of Perl 6, but it's there. It's not relocatable, though, and the Parrot people are working on that.
The Comprehensive Perl Archive Network is getting bigger and bigger. At the end of 2007 there were 6347 authors and 12768 modules taking up 4305 MB, all served by 236 mirrors. BackPAN, the historical collection of everything ever on CPAN, was over 9 GB (and the Perl NOC is still looking for people willing to create their own BackPAN).
CPAN Testers continues to test most Perl modules on every available combination of Perl version and operating system, including the recently released Perl 5.005_05. Barbie set up a special CPAN Testers wiki and publishes monthly statistics about CPAN Testers activity, including report back to August 1999. There were approximately half a million testing reports in 2007. Slaven Rezić set up a way to see the testing results in a matrix by operating system and Perl version.
On January 6, Stefan Müller announced that he'd set up a web interface to the cpants_lint.pl script from Module::CPANTS::Analyse so people did not have to install the module and all of its dependencies.
On January 23, Adam Kennedy uploaded an emergency release of Template Toolkit to get it working on Windows again. Template Toolkit had been failing some tests that prevented its installation with Strawberry Perl.
On June 8, karjala set up a way to get RSS feeds for individual modules
On June 25, Barbie announced the CPAN Testers Wiki.CPANdeps, a conglomeration of CPAN data to show a module dependency tree along with each module's CPAN Testers results. With a GreaseMonkey script from Andy Armstrong, you can add a link to CPANdeps to a distributions page on CPAN Search.
On August 15, Barbie set up a CPAN Testers discussion list because the flood of tester reports on the main list was swamping any discussion. Now testers can subscribe to the discussion list without getting all of the testing results.
On September 8, Stefan Müller announced that he would clean up the CPAN Modules list by identifying module registrations that never had an uploaded distribution and removing abandoned modules. Stefan contacted all affected authors and did not remove any registrations that the author asked to keep.
On September 10, Graham Barr added gravatars to CPAN Search. CPAN Authors who sign up with Gravator using their cpan.org address have their picture automatically added their module pages. Andy Armstrong created a page showing all the CPAN authors' gravators in one go.
On October 17, Tatsuhiko Miyagawa set up a new CPAN recent changes feed that extracts the latest additions to the Changes file and displays it with the module release information.
Conferences and Events
I took the dates and details from The Perl Review Community Calendar. Any conference and event organizers can ask for edit permissions through either brian d foy or Jim Brandt.
At the end of 2006 (so close it might as well be 2007), Andy Armstrong set up Perl Co-op, a Google Custom Search Engine, that only uses the big Perl sites, including all of the domains in .perl.org. You can add this special Google search to your Google homepage or your own website.
In February, Mike Hendrickson announced that O'Reilly Media launched jobs.perl.com, both for job seekers and job offerers. Dave Cross noted that we still have jobs.perl.org, and that he had written a guide for people looking for Perl jobs in London. Unfortunately, Dave's blog suffered a disk crash, so if anyone has that job guide cached, speak up!
The Perl Jobs report as of midnight, January 1, tracking the number of job posts (not correcting for duplicates) to jobs.perl.org:
------------------------------------------------------------------------------------------ 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 ------------------------------------------------------------------------------------------ Processed 7458 files in 12 seconds, 0.00161 secs/file ------------------------------------------------------------------------------------------
In May, Andy Armstrong moved the Perl-QA wiki to escape never-ending wiki-spam attacks. The new address is http://perl-qa.hexten.net/.
On June 2, Dave Cross and the London Perl Mongers conducted a free, one-day Perl Teach-In in assocation with BBC Backstage to help fill some of the vacancies for Perl programmers in London. They made the video (audio and slides) available on Blip.tv as well as Google Video, and have a feed for the four segments of the audio.
On July 8, Michael Schwern created the official Perl 5 wiki. Paul Fenwick merged the general Perl information in his PerlNet wiki with the new, official wiki. PerlNet still serves as a Perl portal for Australia and New Zealand.
On July 10, Dave Cross of London.pm announced that he had passed on the role of Chief Perl Monger to José Castro of Lisbon.pm.
On July 26, Kirrily Roberts launched the unscientific Perl Survey, which stayed open until October 1. The survey had 4,575 responses. She published the results, and made the data available to others, who attempted to answer the question put to Babbbage, "if you put into the machine wrong figures, will the right answers come out?".
On July 30, Schwern noted that various blog aggregators don't look at use.perl and gave instructions on how to force them to. Many people followed up with mostly useless posts containing the special Technorati incantanation to show that "Yes, this is really something I can write to".
In August, The Perl Foundation shuffled job titles as part of its bi-annual officer elections. Bill Odom went from President to Chairman, Richard Dice went from Vice President to President, and Jim Brandt went from Conference Committee Chair to Vice President. Kevin Lenzo, the founder of The Perl Foundation and its parent, the Yet Another Society, became a Director Emeritus.
In August, Curtis "Ovid" Poe resigned as Grants Committee Chair, a position he held since 2005. The Perl Foundation replaced him with Alberto Simões, president of the Portuguese Association for Perl Programmers, the leader of Braga.pm, and an organizer of YAPC::EU::Braga in 2005.
In November, José Castro, the Community Liaison for Perl Mongers, set up a Perl Mongers group on LinkedIn. Jonas Alves also set up a CPAN Authors LinkedIn group. Besides LinkedIn, there is a Perl group on Xing and a Perl group in Second Life.
In December, Greg McCarroll of London.pm declared war on Vienna.pm after learning of a devious secret plot to prevent London.pm from dominating the YAPC::EU attendee statistics. Greg McCarroll will compete with Thomas Klausner in feats of strength and endurance at YAPC::EU::2008 to decide the winner.
2007 White Camel Awards
Books and Publishing
In January, The Perl Review extended its online-only subscription to US subscribers. That option was formerly only avialable to international subscribers as a stopgap until foreign distribution was secured. The price of any foreign distribution turned out to be the same as the current international price (mostly taken up by postage), but the online-only subcription had already become popular.
In February, Renée Bäcker published the first issue of $foo Magazin, a German language magazine and only the third print magazine devoted to Perl. Renée has published $foo each quarter since then.
In January, brian d foy's Learning Perl Student Workbook, a collection of additional exercises and answers to accompany Learning Perl, 4th Edition, was finally available to the public. Although published by O'Reilly Media, it wasn't available through normal retail channels and brian sold them himself. By March, it was available through Amazon.
In June, Randal Schwartz wrote his last Perl column for Unix Review / SysAdmin. His 71st and last article for that magazine appeared in the August 2007 issue. At the same time, he wrote his 94th Perl article for Linux Magazine. He make all of his articles freely available on his website. All told, by August, Randal had written 255 Perl articles for various print magazines.
In June, Allison Randal created public subversion repositories for Parrot and Perl 6 Essentials after getting the rights to the book from from O'Reilly Media to The Perl Foundation. brian d foy outlines the access details on use.perl.
On August 23, Simon Cozens loaded his book Beginning Perl into MediaWiki. It's already online for free, and it's also still in Apress's catalog as a second edition by James Lee. Along with that, he's also loaded the material for a three-hour Perl internals training course. He has another link for a yet- untitled Maypole book under the category "Books in Progress".
In the August 6 issue of The New Yorker, Michael Specter quotes Matt Sergeant extensively in "Damn Spam" and mentions SpamAssasin, an anti-spam tool written in Perl.
brian d foy <firstname.lastname@example.org>
Subscribe to The Perl Review