We’re pleased to announce that Shutterstock has become...



We’re pleased to announce that Shutterstock has become Gold Sponsor of YAPC::NA 2012. Shutterstock loves Perl.  They’re a stock photo and video company, and are at the forefront of technology and research.  They do fascinating things with search, discovery, recommendation engines, and scalability.  They’re looking for really smart people and great engineers to help them to continue to be a leader in the industry.  They focus on fast, iterative development (over 150 deployments/month) and collaborative, interactive programming. Developers work on small cross-functional teams (4-6 people) that have a voice in setting their own priorities and are expected to build and deploy applications quickly and iteratively.

If that’s not enough, check out these other perks:

Variable Names

I wrote this on beginners@perl.org today in a thread which was discussing short variable names:

Tool for Perl Scripting - Devel::Comments


One of the advantages to Perl is that as a scripting language, a small script can be coded to perform a simple task. For example, I enjoy sharing photos of family over the internet, but all the images are at least 2.4Mb in disk size! Using a mix of Perl and Unix commands, I have a script no bigger than 1 page to resize entire folders for me.

I like to use an iterative method of programming. Code some lines, execute and test. Rinse and repeat. But I found my method of debugging annoying. $\ = "\n"; and print() statements to sanity check my variables, only to delete or comment those lines later.

Enter a great Module: Devel::Comments A module to help with debugging in the development stage by using the comment lines in your scripts.

Make the comments in your code work for you. Now to view the value of a variable: write:

### $mainDirectory

and STDERR will print out:

### $mainDirectory: /home/tyler/perl

CPAN Testers Server - Update 14/09/2011

Initial checks on the database highlighted some discrepancies, which have now been fixed. The databases have now been archived and are now rebuilding. It is hoped that this will be completed within the next few days.

Once the database are all rebuilt and sync'ed, the websites will slowly be switched back on. The first sites that will appear will be the Statistics and Devel sites, with the Reports website coming back online once the bulk of the support files (JSON, JS & HTML) have been recreated.

13 Days to Christmas, and 6 Months to YAPC

Now would be a great time to remind your family that what you really want for Christmas is an all expenses paid trip to YAPC::NA 2012!

The dates are June 13-15 in Madison, Wisconsin. And while they’re at it, they should also send your spouse with you to enjoy the Spouses Program.

given/when and lexical $_ ...

... or happy debugging!

TL;DR Upd: Use for instead of given, as Aristotle suggests.

Here are some code snippets to show what's wrong with given/when.

use 5.010;
use strict;
use List::MoreUtils qw/any/;

given ('test') {
    when ('test') {
        say "any" if any {$_ == 2} (2, 3);
    }   
}   

The above code prints nothing. Ok, let's change any to grep to see if it works:

Twin City Perl Workshop 2011

Twin City Perl Workshop 2011 in Vienna and Bratislava is now open for registration. The event will take place on Friday, 4th November, in Vienna (@ Metalab), and on Saturday, 5th November, in Bratislava (@ Hotel Barónka).

If you want to present anything Perl-related in English, Slovak and/or German, please submit a talk!

Train transfer between Vienna and Bratislava is sponsored by Booking.com - thanks a lot! If you or your company / organization would like to sponsor, too, do not hesitate to contact us!

See you in Vienna & Bratislava!

(Crossposted from domm.plix.at)

Find the exploit…

Two of these can permanently drop the UID to 1000. The other two however results in a state where a previous privileged state can be restored. Can you spot which ones are right and which ones not? And most importantly: why?

$< = 1000;
$> = 1000;

$> = 1000;
$< = 1000;

$< = $> = 1000

$> = $< = 1000

I’m not sure if you’ve ever stayed in a hostel...



I’m not sure if you’ve ever stayed in a hostel before, but the hostel in Madison is pretty amazing. If you’re looking for the cheapest possible accommodations for YAPC::NA, then look no further. They can take up to 33 guests at a time, and charge only $22 per night. The hostel is about 10 blocks from the YAPC conference facilities. 

I'm making a note here: HUGE SUCCESS

Thanks to the Philadelphia Perl Mongers for hosting my DB Critic talk last night. I got over my public-speaking jitters and it went really well, with great questions and ideas from the whole group.

Mojocast #3: Authentication, Helpers, and Plugins

The response for Mojocast #2 was even more overwhelming than the first episode.

How overwhelming?

mojocast e2 #1 on hackernews.png

That's right, your upvotes matter. Within 6 minutes of posting, it was secured on the front page. Within 20 minutes, it was #1.

Consider the reality here: the most watched site on the internet by hackers/developers had a Perl-related post in the top spot. It remained on the front page for 6 hours, which is pretty good for a screencast with no article attached. That's a solid group of folks with a lot of potential aha moments in Perl's favor.

Bottom line: If you care about the marketing of Perl and its exposure among the masses, consider upvoting the Mojocast, leave a comment, and spread the word!

Hooray Perl!

Speaking of which,

Mojocast #3: Authentication, Helpers, and Plugins

Hackernews post

Announcing Marpa::XS 0.010000

Some time ago I released Marpa::XS 0.010000. The core Marpa algorithm had already been converted to C, speeding it up considerably. Marpa::XS 0.010000 cleans up a lot of code left over from development, further speeding things up.

What is Marpa?

Marpa is an advance over recursive descent and yacc. I hope the Marpa algorithm will become the standard parser for problems too big for regular expressions.

Best Practical has a Perl Hacker job opening that I thought many...



Best Practical has a Perl Hacker job opening that I thought many of you might be interested in. Here are the details:

Perl Hacker

We’re Best Practical Solutions, a small software company located in Somerville, MA. We build software and sell support, training, consulting, and custom development. Our main product, RT (Request Tracker), is the premiere open source issue tracking system. We’ve been around for a decade, and things just keep getting busier.

About the job

Padre blog revisited

First post - moving to blogs.perl.org from use.perl.org

Heads up: LLVM (e.g. C/C++)-to-JavaScript compiler

Hi Folks

Yep, head on over to emscripten.

poor man's cfv/cksfv (CRC checksum)

Lately I wanted to compute CRC-32 checksums for some videos. At first, I took a look at Digest::CRC and wrote this one-liner:

perl -MDigest::CRC=crc32_hex -E 'say crc32_hex <>' file.mkv

But of course that didn't work, since I was only reading a line off the first file in @ARGV. Realizing I need to read in the file, I added IO::All in the mix:

perl -MDigest::CRC=crc32_hex -MIO::All -E 'say crc32_hex io($ARGV[0])->all' file.mkv

That worked, but it was too slow since it read files into a string, and I was dealing with large (~1GB) file sizes. After a bit of looking around, I found the Digest::file module, so my one-liner finally becomes:

perl -MDigest::file=digest_file_hex -E 'say "$_ cksum: \U@{[digest_file_hex $_, q|CRC-32|]}\E" for @ARGV' file1.mkv file2.mkv files*.avi

Of course, I could have gotten something like cfv or cksfv from my Ubuntu repository, but curiosity got the better of me ;)

(edited: make use of perl's -E switch to implicitly enable features.)

We’re pleased to announce OHPA Software as our latest...



We’re pleased to announce OHPA Software as our latest amazing sponsor for YAPC::NA 2012.

Ohio-Pennsylvania Software is a web application development firm dedicated to providing secure, reliable Internet applications and an exceptional level of customer service. We employ friendly, talented staff whose number one priority is the satisfaction of the customer. Our primary services include:

  • Rental property management software
  • Event registration software
  • Custom software development
  • Web design and hosting

Based in Pittsburgh, Pennsylvania, we provide quality software to clients in a variety of industries, from legal services to real estate, tourism, information services, publishing, photography, and nonprofit organizations.

Presenting DB Critic at Philadelphia Perl Mongers tomorrow night

Just a quick FYI that I'll be presenting DB Critic (née DBIx::Class::Schema::Critic) tomorrow night at the monthly Philadelphia Perl Mongers meeting. We're in Room 307 of Levine Hall on the University of Pennsylvania starting at 7:00 PM.

Try::Tiny

Never, ever, forget a semicolon after the catch block when using Try::Tiny. I just got stuck debugging a little script for more than two hours...

Mo Moo Moose


Finally I found the way I like to program OO in Perl !

http://perl-node-interface.blogspot.com/2011/09/mo-moo-moose-not-really-stuttering.html

About blogs.perl.org

blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.