Thank You Sponsors

We'd like to thank our sponsors for stepping up to support us. We really couldn't do this without their support.

You too could sponsor YAPC.

PS

The guys running the 2012 Perl QA Hackathon have asked me to remind everyone that the hackathon is taking place March 30-April 1 in Paris. They're also in need of sponsors. If you can help, click the "donate" button at the top right corner of their site.

[From the YAPC::NA Blog.]

blogs.perl.org needs your help!

As many of you have noticed and commented on, blogs.perl.org needs help and we're hoping this post might inspire some of you to volunteer time or creative suggestions.

Specifically, the blogging platform we're on has proved hard to maintain and while Dave Cross, Aaron Crane, SixApart and others have done great work on it, the tuits have run out.

You could check out the github repository, or perhaps offer help/suggestions on migrating to another blogging platform without losing information. Specific areas of attention that could use some help:

  • Prev/Next links on all blogs are needed (including on the front page)
  • Images are broken
  • Bring back the syntax highlighting

You can read through the full list of issues to get an idea of some things to take a look at.

SixApart, Dave and Aaron have done great work here and while it started out promising, it's still missing key features to make it a suitable replacement for the defunct use.perl.org.

We'll be watching responses to this, so feel free to chime in. Let's make this a blog that people can be proud of.

SQL Abstraction

SQL abstraction is hard it seems. Trying to insert an empty record in SQLite should look like this:

INSERT INTO "authors" DEFAULT VALUES

In SQL::Abstract and SQL::Maker, it does not work:

INSERT INTO "authors" () VALUES () # syntax error

The only module that seems to get things right is vti's ObjectDB2, which is in a very early stage of development and not on CPAN so far.

A New Perl Tut Is Already Growing

Allright so there is a discussion in the community about the bitrot in Perl tutorials.
All the arguments I read here on this site, I told already at YAPC::EU in Riga and many other occasions. Its good if people are aware of problems. But I did not just talk. I write also a new one. And we are currently finishing part 4.

It will be (later version) named "learning programming with Perl". Its a bit of learning the basics but also learning good style (DRY, good variable names, strict, testing all the shebang but little by little and not all from the start). It also covers more than core Perl, reading configs, cgi/ microframeworks, network, the basice in all directions.

Yeah its still just in German bu you can help if you like also to translate it. I mean i recruited some parts of the german perlmongers for that job but you know how cats are.

YAPC::NA 2012 Registration Open

Registration for YAPC::NA 2012 is now open. You can buy badges for the conference, the hackathon, the Zero to Perl Workshop, the Testing Workshop, or the Spouses Program. In addition, you can make Friend of Perl and Future Friend of Perl donations

[From the YAPC::NA Blog.]

My CPAN Book

Some of you might recall that I started the process of writing a book about some of the most used Perl modules/frameworks. The book is written in PseudoPod, it is available on GitHub, and its official webpage is at http://ambs.github.com/Books/.

Unfortunately I am not having much time lately. My job is to give classes at an University, and I do not teach Perl, so most of the time I am preparing classes, and not hacking.

I do not want to have this book project stopped. So, I would like to invite anyone that would like to contribute to write a section. You can look into the GitHub repository to see the sections that I have in my mind. If you would prefer another subject, let me know and I'll tell you if I am willing to include such a section in the book. Just let me know before starting to write. There are some guidelines written in the README file, that I would like to be respected.

Perl Has No Static Code Analysis Tools?

Don't believe what you read on the Internet.

Despite what Wikipedia says - Wikipedia's List of tools for static code analysis - Perl has plenty of tools for static code analysis.

e.g. Perl::Critic and Perl::Tidy

Let's fix this. Anyone a Wikipedia editor?

Introductory class to Perl in Barcelona

Barcelona Perl Mongers will give an Introductory class to Perl on November 5th. We are granted access to a classroom thanks to the Universitat Politècnica de Catalunya and decided to give our time and expertise promoting Perl. So for a small fee we feed and give a t-shirt to the attendands.

If everything goes well we consider this a preparation for hosting more events in Barcelona.

Update: The class will be in Catalan or Spanish, as each lecturer sees fit.

Mini-Workshops and Hackathons

We’re having 5 simultaneous tracks at YAPC::NA 2012. The fifth track is for mini-workshops and hackathons. For example, brian d foy is considering running a workshop on how to publish to CPAN. ActiveState is considering running a workshop on using their Stackato platform. We’d love to see lots of others giving on-going mini-workshops and hands-on hackathons. If you need the space, we’ll make sure you have it. 

Mini-workshops and hackathons can be up to 110 minutes long. Submit your workshop today.

[From the YAPC::NA Blog.]

More about GCI 2011

The Google Code-in 2011 (GCI) will be starting shortly. This is the programme under which students aged between 13 and 17 years are encouraged to get involved in open source projects. The Perl Foundation would like Perl to be a part of this programme, bringing both short and long-term benefits to Perl and the students alike.

Many of you will have seen my previous post asking the Perl community for help in creating tasks for students. A few of you have subsequently added tasks to the ideas page. For this we are extremely grateful. Some of you may well be planning to add some tasks. We'll also be very grateful for these tasks.

It's almost time to submit our application. But for our application to be successful we really need to add more tasks. So I'm renewing my appeal for your help.

Perl and Parsing 12: Beating up on the "use" statement

If you have been following the Perl blogosphere recently, you may have noticed that it has been a bad few weeks for Perl's use statement. I have been picking it apart in this series, and chromatic, on his blog, recently pointed out a documentation issue. Unlike chromatic, who focuses on user concerns, I use Perl as a way to implement and to illustrate parsing. Though, to be sure, one of the points I try to make is that the choice of parsing strategy is ultimately very much a user concern.

I find Perl's use statement especially interesting because it is a good example of a natural syntax that you would like to be easy to parse, but which proves problematic with current parsing technology. With a general BNF parser, like Marpa, Perl's use statement is easy to parse. But the use statement strains Perl's parser LALR parse engine to the limits. Indeed, as I will show next, even a bit beyond.

Reversed use statements

using Dancer as WAF ::Utils

after PSGI, CPAN has a lot of parts to build Web Application Framework. It is easy making WAF yourself without uploaded WAF.

I think WAF uploaded on CPAN are just to provide a style.

Catalyst provides router system using method attribute. Web::Simple uses proto. Mojo provides WAF OO, Mojolicious::Lite provides some keyword for routing. Dancer provides many keywords. bla bla...

I didnt like any styles for my current project, but didnot want to make WAF from scratch.

So. now Im trying to use Dancer. I dont need full keywords. but "every feature is from keyword" style means Dancer looks like ::Util modules.

For example, you may use only the Dancer parts you need in this way.

This is a map of the Lowell Center. The Lowell Center is one...



This is a map of the Lowell Center. The Lowell Center is one half of our meeting space for YAPC::NA 2012. Here you’ll find the registration desk, the main hall where we’ll hold the opening ceremonies, plenaries, and the lightening talks. In addition, the Lowell Center contains 100 hotel rooms if you choose to stay there. 

Don’t worry, you don’t need to save this map now. We’ll provide you with one at the registration desk, and it will be posted on large billboards in the Lowell Center itself. 

[From the YAPC::NA Blog.]

Moved older projects from googlecode/svn to github

I've moved Autodia and Maypole to github so that it's easier to share or hand over, and make the development more open and interactive.

Hopefully this means that if somebody wants to take the ball and run with it by taking over Maypole it should be pretty easy to handover, also I may be able to start giving people the ability to patch, or make pull requests to my autodia repo - I've been astonished at how smooth github makes this :)

My github stuff is all at https://github.com/hashbangperl

Confessions of a Dist::Zilla newbie

I've been spending a lot of time writing Perl again, after ten years or so in management, and I'm throughly enjoying myself. I recently wanted a module to interface with a third party service, and was surprised to discover there wasn't already a CPAN module for it. My initial needs were very simple, so I decided this would be a good opportunity to find out the modern way to create a module for release to CPAN. This post is based on notes I took as I worked through this.

So, what's the modern way to do Makefile.PL? Tricky to find out, but I've seen a bunch of stuff about Dist::Zilla, and it seems to have a gazillion plugins. Right, Dist::Zilla (DZ) it is. Start off with the tutorial:

http://dzil.org/tutorial/new-dist.html.

timetracker.plix.at

Today I launched http://timetracker.plix.at.

timetracker.plix.at contains information about App::TimeTracker, the easily extendable command line based time tracker we use a lot. You maybe remember App::TimeTracker from one of the talks I gave at YAPC::Europe 2011 in Riga (App-TimeTracker, Metaprogramming & Method Modifiers). It's a real nice app, give it a try if need a sane way to keep track of your working hours, and want to automate other boring administrative tasks in one go.

Read more about how I did the site, why I did it in the first place and why you should also set up websites for your projects either in my blog or in the (rather similar..) timetracker blog.

Perl + Pathfinder == <3

Chris Nehren will give a talk at YAPC::NA 2012 that he describes as:

I like Perl. I like tabletop RPGs (especially tabletop RPGs whose mechanics are licensed under the OGL, like D&D 3.5 and Pathfinder). I like Unix. And I like running games.

But I’m lazy. And running games is a *lot* of work. What’s a lazy GM to do? Solve the problem in as generic a way as possible, of course! I’ll give the computer some data and some instructions about how to do the tedious stuff (managing initiatives, monster health, combatant status, that sort of thing). Then, I can focus on the fun part—interacting with my players.

And as I like Unix, this means simple text files and a text mode interface. No Web servers or browsers needed—I want this to run offline and not kill my laptop’s battery.

So, in this talk I’ll be discussing some tools I’ve put together to make running an OGL d20 tabletop RPG easier. They may / may not be useful for anyone else. But hopefully they’ll be interesting on their own.

[From the YAPC::NA Blog.]

Perl Trolls

Perl is from the days of usenet. I have no experience of usenet, but I understand that the troll phenomenon originated there.

From the comments on Perl tutorials suck, one can clearly identify the trolls there.

I don't know whether the advice "Don't feed the trolls" is the best one or not. But I find the _repeated_ occurrence of replying to these trolls threads on reddit or HN amusing.

Yes, amusing.

If a person get's into a fight with a drunk, it's amusing to watch it.

But sometimes it just feels awkward to watch even perl elders like chromatic, in the fight. A drunk is not going to be the epitome of rationality, so why _even_ bother ? These people are just simpletons, madly in love with mercury(an unusual language I might say!) or just a had a shitty day.

I think some one has to say it.

troll.png

Unexpected PITA progress

Of all the Big Awesome Things I've tried to create over the years, PITA has been been one of the longest and most disappointing.

Conceived as the logical extrapolation of Perl's testing framework development into the future, the basic idea is zero conf 100% automatic testing in parallel across arbitrarily many different operating systems using one-time virtual machines.

Achieving that kind of process isolation in a way that doesn't require any manual setup and no human intervention has meant some extremely twisted internals and lots of unusual and complicated problems to solve.

Cph.pm celebrated CPAN's birthday

We held our monthly (almost...) meeting on the last Wednesday of the month instead of the last Tuesday, because it supposedly is CPAN's 16 year birthday.

Being a round birthday (choosing the right base notation), we celebrated with chips, sandwiches and drinks, kindly provided by Adapt A/S.

Amidst the talks about Perler's usage of git, there was also discussions about Monger Group's homepages. What do other groups use for this? Conferences have ACT, modules have PAUSE/CPAN. Blogs have this page.

Don't we have a canned .pm webinator?

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.