Sifting Through the CPAN

Some interesting stuff has been said today on The Four Major Problems with CPAN, Don't release experiments to CPAN and CPAN is for experimentation and I hope that never changes.

If you haven't read these posts yet, I encourage you to do so. They've all got interesting things to say…

MetaCPAN is Moving Today (Dec 31, 2012)

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…

Have you added your Perl project to 24pullrequests.com?

24pullrequests.com takes the spirit of the Advent coding calendar and puts a new spin on it. Try to send one pull request per day for the next 24 days and 24pullrequests.com will help you track your progress. At the time of writing, 1,224 devs have already signed up.

Some Perl projects are already represented, but there's still room for more. It would be good to see some more Perl projects on the list for participating Perl devs who are looking for something to contribute to.

Introducing HTTP::CookieMonster

If you've ever had the pleasure of poking around in your WWW::Mechanize or LWP::UserAgent cookie_jar, you'll know it's not an entirely painless process. It's certainly not impossible, but it feels a bit like jumping through hoops. The cookie_jar functionality in LWP::UserAgent and the modules which inherit from it is provided by HTTP::Cookies. Before I go any further, I'd like to thanks /var/www/users/olaf_alders/index.html

Using Plack::Middleware::CSRFBlock and jQuery to deal with Cross Site Request Forgery

At $work, our flagship application was recently audited for potential security issues. One of the items which raised a red flag was the fact that we weren't dealing with the threat of CSRF (Cross Site Request Forgery). The solution which we decided to implement was to add a CSRF token to all POST requests. This token should only be known to the app and the end user. Passing it along with a POST request gives some measure of assurance that a POST by the user is intentional and so can help to reduce the risk of CSRF.