YAPC::NA 2013 Call for Venue

YAPC::NA 2013 Call for Venue :

If you’re interested in running YAPC next year, then apply to organize it!

[From the YAPC::NA Blog.]

Perl Conference in Kiev, Ukraine

Hi, I'm glad to announce great news this time :-)

We are hosting the 5th YAPC::Russia "May Perl" combined with the Ukrainian Perl Workshop "Perl Mova" in Kiev on 12-13 May this year.

This year is special as we have invited two guest speakers, Tatsuhiko Miyagawa and Gabor Szabo. Yeah, I'd like to thank my colleagues in Kiev who managed both to invite them and to find the sponsor.

The citizens of the EU, UK and US do not need any visa to visit Kiev. No conference attendance fee needed neither.

Kiev in May is extremely attractive city, it's worth seeing it! People from six countries are already in the list of the attendees.

Join at perlmova.org/yr2012.

Oslo rocks Open Source!!!

I love Oslo. Apart from the sheer beauty of the place, the truly civilized society, and the delicious fish and potatoes, the Open Source community in Norway is one of the most active and successful anywhere on the planet.

So, after a fantastic visit last August, I was delighted to be invited back to Oslo next month. There will nearly a full week of public events, all of which are open for anyone who wants to be involved.

First up, Oslo.pm is running three more Perl courses at Redpill Linpro's great training facility in Storo from Wednesday April 18. Two of those three courses are world premieres (of my brand new Testing and API Design classes), and the third is one of my all-time most popular classes: the ever-evolving "Productive Programmer" seminar. All the classes will be in English, and if you're interested in taking part, registrations are now open.

Alien::Base is almost ready

Not too long ago I mentioned on this blog that Alien::Base had reached a milestone, well today I’m announcing that its getting even closer.

Before I get there lets recap. The Alien namespace contains modules which provide external libraries to Perl modules. Alien:: modules typically can detect the presence of a library on your system or if not, install it. Then they can provide the locations and other information to the Perl modules that need them. Alien::Base aims to make these modules easier to write by providing most of this functionality in a configurable way.

Alien::Base, once it has decided that a computer does not have the library, will try to install it. One of my biggest concepts in designing Alien::Base is where it installs the library to. In contrast to attempting to install it to the system-at-large, it puts it in a static data location relative to the Alien:: module in question; it does this via File::ShareDir. Why is this important? Several reasons:

YAPC::NA SOLD OUT!!!

We have officially sold 411 tickets to YAPC::NA 2012, which means we are officially sold out! 

Some of you might be thinking, “Why would you book such a small venue?” The truth is we booked a very large venue. We’ve just sold more tickets to YAPC::NA than any other year of the conference thus far. Selling out is a good thing for the community. It means that Perl is vibrant and people want to learn and participate. Every YAPC organizer wants the years that follow them to out-sell them, because every YAPC organizer is building upon the foundations set by what came before. We want the same for YAPC::NA 2013.

I’m sorry for those of you who still wanted to register, but now can’t. I wish we could accommodate you, but there simply isn’t any additional room. We hope to see you next year instead.

[From the YAPC::NA Blog.]

cPanel sponsors YAPC::Europe 2012

We welcome cPanel as a Platinum Sponsor of this years' YAPC::Europe. It's amazing to get so much support from companies using Perl. Thanks!

cpanel.png

cPanel is the industry leader for turning standalone servers into a fully automated point-and-click hosting platform. Tedious tasks are replaced by web interfaces and API-based calls. cPanel is designed with multiple levels of administration including admin, reseller, end user, and email-based interfaces. These multiple levels provide security, ease of use, and flexibility for everyone from the server administrator to the email account user.

cPanel is an organization that wins the loyalty of customers around the world by providing feature-rich applications backed by a team of developers, technical support engineers and quality assurance experts that provide stable builds, direct support, and fantastic customer service.

cPanel powers web hosting companies and organizations that have a need to automate and offer competitive hosting services.

Perl module ideas #3

About the Perl Module Ideas posting series. Previous posts: #1, #2.

1. RSS::Mention::*. This is a class of modules which can generate an RSS feed to monitor mentions. Particularly I am interested of people mentioning my CPAN modules (so, RSS::Mention::CPAN::Module). The module should query search engine(s), exclude results from CPAN mirrors, and put the rest into a database. The module should also have an option to generate a feed for mentions of all modules belonging to a certain CPAN author. One problem for this is that Google seems to ignore "::" in search query, even within quotes.

2. Something like Blog::Spam, but instead of detecting blog comments or forum posts, it should ban/delete rogue user registrations, including inserting bans for a range of IP's to block frequent registrations. There are already blacklist services for this, like stopforumspam. I have been seeing lots of spammy forum registrations lately (well, not lately, this has been going on for quite some time, but the frequency increases). The registrations are done by human (so they get through all kinds of CAPTCHA's and filtering questions).

Fun with Git

So, git has the —all command, which adds all tracked and untracked files for staging to commit. I really dislike this because I wanted something that would just add all the tracked files for staging to commit. So, a friend of mine in the office said that he had a shell script which did it so I give you git add for only tracked files:

git status | grep "modified: " | awk '{print $3}' | xargs git add

Hacking up biomolecules to understand how mercury causes so much trouble

Demian Riccardi will give a talk at YAPC::NA 2012 described as: 

I will present some recent tools I have developed to characterize the interactions of Mercury and other metals with biological molecules as present in the protein databank.  I will show how I use Perl with Moose and other CPAN modules to easily carve up thousands of structures and generate useful information.  Time permitting, I will also discuss how I manage quantum chemistry calculations using various electronic structure programs… all filtered through the same molecular objects.

[From the YAPC::NA Blog.]

A Marpa mailing list

Ruslan Zakirov has started a Google mailing list for discussions about Marpa: marpa-parser@googlegroups.com -- I am grateful to Ruslan for doing this and plan to follow the mailing list.

On another topic, I will be removing the "bare name" version of Marpa from CPAN shortly. The "bare name" Marpa is a legacy, deprecated version and is simply causing too much confusion, with search engines and elsewhere. The official, stable version of Marpa remains Marpa::XS.

Re: Asynchronous HTTP Requests in Perl Using Whatever

In addition to asynchronicity I couldn't stop and wrote this:

https://www.bing.com      has length      216 and loaded in 0.048 ms
http://www.wetpaint.com   has length     4648 and loaded in 0.341 ms
https://www.google.com    has length    31651 and loaded in 0.147 ms
http://www.example.com    has length     2966 and loaded in 0.172 ms
http://www.windley.com/   has length    83905 and loaded in 0.313 ms
http://www.uh.cu          has length    18454 and loaded in 2.415 ms

CGI::Snapp (a almost back-compat fork of CGI::Application), etc

Hi Folks

I've just uploaded to CPAN a set of 10 modules:

CGI::Snapp - A almost back-compat fork of CGI::Application

CGI::Snapp::Plugin::Forward - A plugin for CGI::Snapp to switch cleanly to another run mode within the same app

CGI::Snapp::Plugin::Redirect - A plugin for CGI::Snapp to simplify using HTTP redirects

CGI::Snapp::Demo::One - A template-free demo of CGI::Snapp using just 1 run mode

CGI::Snapp::Demo::Two - A template-free demo of CGI::Snapp using N run modes

CGI::Snapp::Demo::Three - A template-free demo of CGI::Snapp using CGI::Snapp::Plugin::Forward

CGI::Snapp::Demo::Four - A template-free demo of CGI::Snapp using Log::Handler::Plugin::DBI

Config::Plugin::Tiny - A plugin which uses Config::Tiny

Config::Plugin::TinyManifold - A plugin which uses Config::Tiny with 1 of N sections

Log::Handler::Plugin::DBI - A plugin for Log::Handler using Log::Hander::Output::DBI

Let the bugfest begin...

Open Advice: If I knew then what I know now...

Noirin Plunkett will give a talk at YAPC::NA 2012 described as:

Based on the recent “Open Advice” book, as well as many years of working and mentoring in Open Source projects, this talk will provide bite-sized introductions for newbies on how to go from consumer to developer, advocate, and participant.

Aimed at the Next Generation of Perl contributors, this talk will give every listener the tools and confidence to take the next steps!

[From the YAPC::NA Blog.]

CPAN Testers Summary - February 2012 - Highway 61 Revisited

With 20 million reports, CPAN Testers is very definitely one of the biggest online repositories of test reports for both programming languages and software applications. While other languages and applications may have larger communities than CPAN Testers, the Perl community's commitment to testing has uniquely enabled CPAN Testers to build on the benefits from many areas of the test community. The TAP protocol has now been incorporated into several other language and application testing frameworks, and stand-alone applications, such as Smolder, have been able to harness the output to present results in a way which best highlights problem areas. CPAN Testers too has been striving to improve the way we present and provide analysis of reports.

CPANdeps is also moving

In fact, by the time you read this it will have moved to its new home. The move is for the same reasons as laid out in my recent post about cpXXXan - contention for disk access slowing things down, and not enough memory for the database on the old hardware. It's now running on its own dedicated hardware and should be considerably faster.

Please let me know, however, if you find anything that I broke in the move!

How I install using dzil and cpanminus

Re: Install Distros Under Development Locally.

I couldn't comment on chromatic's blog (I don't use OpenID and friends), so I figured I could post it here.

dzil run cpanm .

That's it.

Also, if you don't follow modernperlbooks.com, you should start. :)

Moose 101

Sawyer X will give a talk at YAPC::NA 2012 described as:

I’m assuming you’ve heard of Moose, right? That kickass object oriented framework that has taken the Perl world by storm. You know the one!

In case you’ve ever wondered “what is Moose?” or “how could I harness its powers to make my life easier and/or rule the world”, this talk is for you.

I’ll go over the basic functionality of Moose (with a few nifty tricks to keep you excited) and even sprinkle a bit of community extensions. At the end you’ll hopefully be drunk off the Koolaid! :)

(hint: if you ask nicely, I’ll even touch base on Mouse/Moo/Mo)

[From the YAPC::NA Blog.]

On unsupported modules and RT tickets (#2)

Regarding my previous blog post on unsupported modules, after casual viewing of several RT queues (including viewing rejected and resolved queues instead of only the active ones), it looks like many CPAN authors do in fact read the tickets, but they do not respond or mark the ticket as open, so the status of the tickets stay as new and this gives the impression of neglect.

I wonder if RT can log the event if the author reads a ticket. Or perhaps show a helpful reminder for the author to act on a ticket immediately (even if just setting a ticket status). Or making it easier to set ticket status, by showing a button or two? Or perhaps automatically set the ticket status to open on the author reading the ticket? Some or all of them?

Making the parsing game safe

In previous posts, I've talked about Marpa as an alternative to other parsers. In this one, I want to talk about Marpa as an alternative for problems where parsing has been avoided.

Because parsing HAS been avoided in the past. And for good reason. If you were drawn by the allure of domain-specific languages, or yielded to the siren call of language-oriented programming, you plunged headlong toward two pitfalls:

  • Your parser might not parse your grammar. Which you might discover at any point in incremental development. Or when a vital maintenance change came along.
  • Your input might not parse, and your parse engine might leave you with no easy way to find out what the problem is. Maybe your input was wrong, maybe your grammar was wrong, or maybe you've simply hit the limits of that parse engine. When it came to debugging, taking a language-based approach was a bit like deciding to write your problem up in P''.

Mojolicious + Bootstrap = Awesome

I have some news coming soon about Alien::Base but to avoid burnout, I’ve spent some time in the last few days playing with some things that are new to me. I enjoy doing this any time I’ve spent too much time on one project.

While I have spent some time using Mojolicious it has always been to hack together a quick UI for some code, rather than pulling out Tk. I never have really taken the time for pretty-fication, nor for any kind of interface logic.

I have a friend who thinks highly of my programming abilities and has recommended me to another of his friends to put together a website for a startup company. While I could put together a Joomla or Drupal site in no time, I thought I would investigate a Perl solution. I know that there are a few Perl CMSes out there (WebGUI 8 sounds interesting), but I wondered if I could hack something together myself.

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.