Distributed Processing Applications with Helios

Andrew Johnson will be giving a talk at YAPC::NA 2012 described as:

Helios is a distributed job processing system that allows users to write applications to spread workloads across multiple processes and servers.  The Helios job queuing, configuration, and logging APIs aim to provide a user with an environment to easily write applications that scale across multiple processes and hosts.  My talk will focus on Helios basic concepts and features (especially new features introduced in the new 2.4x series) with a particular interest in how to write simple Helios applications.  I will also cover best practices for getting the best performance out of the Helios environment.

[From the YAPC::NA Blog.]

Refactoring Perl code

Gabor Szabo will give a talk at YAPC::Europe 2012 described as

Code refactoring is "disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior". It is needed to ensure your code remains readable while growing in size and scope.

It is needed if you have some old code base that needs improvement and after every period of intense development when you "did not have the time to properly design your code".

There are several patterns in refactoring, some of them you might already practice without knowing the name.

The most obvious is when you use a variable $x and suddenly you realize it could have a more descriptive name.
If you change all the occurances of $x to this better name, without changing anything else in the code, that's already refactoring.

Benchmark::Featureset::SetOps - Compare various array/set handling modules

Hi Folks

I've just uploaded to CPAN V 1.00 of Benchmark::Featureset::SetOps.

Here's the rationale (from the FAQ):
I maintain (but did not write) Set::Array. I have never really liked its interface, so when I started a home-grown script that Kim Ryan (author of Locale::SubCountry) and I use to compare his module with my WWW::Scraper::Wikipedia::ISO3166, I wondered if there was some module more to my liking. Hence the search for alternatives. Then I realized my work could benefit the Perl community if I formalized the results of this search.

Also, I have 7 modules on CPAN which use Set::Array, so I wanted a good idea of the array/set modules before I decided to switch.

But, more importantly, to protect your delicate sensibilites from the code, you can just view the HTML report here.

Next DBD::SQLite to be released in early June

The final developer release of the current DBD::SQLite has been posted to CPAN.

http://search.cpan.org/~adamk/DBD-SQLite-1.36_04/

The new release upgrades SQLite from 3.7.9 to 3.7.12 and the upgrade of DBD::SQLite is in line with SQLite upgrade recommendations, and also driven by the move of Firefox to a newer file format than currently supported.

The new release contains a few changes that may cause trouble for your application and you should test, the biggest is the change in the default file format from version 1 to version 4 that landed in 3.7.10.

This means that SQLite files produced by DBD::SQLite will no longer be readable by older versions of SQLite unless you explicitly enable PRAGMA legacy_file_format=ON.

Distributed Daemon Discovery

Matt Trout (mst) will give a talk at YAPC::NA 2012 described as:

A tale of systems introspection, service inference and parallel computing - how we used the Tak systems automation framework to help track a customer’s infrastructure.

[From the YAPC::NA Blog.]

TeXlipse for LaTeX development

I know that this is a Perl blog, so I will just post a quick link to my other blog. If you are writing any LaTeX, you should look at TeXlipse; look again if you have already tried it in the past. Read more on my other blog.

YAPC::NA 2012 donate ticket

I will not be using my badge to the conference. Is there a place where I can put this in a 'needs' pot? To be used by someone who can make the conference, thanks.

Repeated Capturing and Parsing

An interesting query was recently posted to the internal Perl mail list at work. The questioner was trying to match a pattern repeatedly, capturing all of the results in an array. But, it wasn't doing quite what he expected. The message, with minor edits, went a little something like the following.

MediaMath is sponsoring YAPC::NA 2012, and best of all,...



MediaMath is sponsoring YAPC::NA 2012, and best of all, they’re hiring!

Tel Aviv Perl Mongers Meeting on 30 May, 2012

Important Update! (20 May, 2012) There was a problem with the old building (where we usually meet). There are no available rooms there at all.

As a result we're assigned to room 2205 in the new building (Mitchell building). The entrance is through Yeda Am street, on the corner with HaMelakha street.

(The Hebrew text will be followed by an English one).

File::LinkDir 1.02

File::LinkDir 1.02 is on its way to a CPAN mirror near you.

Two changes went into this release.
- The link-file script will be installed now. (Hinrik)
- The --add-ignore option works properly now. (Matt)

I'd like to thank Philip Durbin for pointing out that --add-ignore wasn't working properly.

Leaflets for YAPC::Asia Tokyo 2012

So you know what YAPC is? If you're reading this, you probably do.

However, there are myriad of people out there who don't know what it is. Especially people who are new. Since our company also hosts meetups and conferences on other topics, we thought it would be grrrreat marketing to let people know that we have a superb conference going on.

And so here it is: our new shiny leaflets for YAPC::Asia!


It says in the middle: "YAPC::Asia Is a Perl 'Festival'!". It explains a bit about what YAPC is, and on the backside there's a bit about what kind of people come to the conference -- especially, that you don't need to be a pro/expert Perl hacker. We have lots of interesting material even if you don't speak our lingua franca.

Oh, and we're still looking for YAPC::Asia Tokyo 2012 sponsors!

Things To Bring To YAPC

Many of you are packing right now, or will be packing shortly to come to YAPC::NA 2012. Here’s a list of things that you might want to bring with you to YAPC:

8th Week of Perl 6 Tablets

This might be the last entry about the perl 6 tablets for a longer time. (lot of projects and articles have to be written soon and the moose article for heise sits on the brink and no article from me in this issue of perlzeitung). The work is now gradual and you surely don't want to hear same stuff every week. Just one thought on strategy.

I still work on the appendix (F and G now) rather on the actual tablets for several reasons:

A) work for the beginner

The appedices are more structured toward questions starters might have and maybe the answers there are also easier to find. This helps to bring more people to Perl 6 and for more sophisticated musings are still the specs there, which are much easier to read, once you have every term there explained in the glossary of the tablets.

B) have to learn myself

duct tape

Folks used to refer to perl as 'the duct tape of the internet'. It still totally is.

I've started posting perl (and other) portland and/or telecommute jobs on twitter. I thought I'd also include these tweets in the 2pdx.com LinkedIn group. LI supports rss feed inclusion in the news for their groups, so it should simply be a matter of pasting in the rss url

https://twitter.com/statuses/user_timeline/this_job.rss

into their UI. Nope. LI claims that this is not a valid rss feed. Hmm... The validator disagrees, but it does point out some warnings. Maybe LI's code just isn't up to handling that. Even if this was only an issue with twitter's feeds, "just twitter" is a rather large set of rss feeds to exclude based on an overly-strict parser. I advised them of the issue via their feedback form.

CPANdeps now understands META.json files

Because YAML isn't hip and trendy enough, at some point recently the toolchain started using META.json files as well as META.yml. Some foolish module authors only use META.json. Because CPANdeps didn't know about this file, their dependency graphs weren't being generated. Well, now they are. I just now pushed the updated code to the site, and you should start to see dependencies for things like DBIx::Class::Helpers, which has no META.yml.

The reverse dependencies - that is, the list of what modules depend on a particular module - will update over the next few hours.

Sign Up for the Arrival Dinner

Your first opportunity to meet everyone at YAPC::NA 2012, if you aren’t coming to the pre-conference activities like the Hackathon, will be at the Arrival Dinner on Tuesday, June 11th. If you wish to attend, you need to either add your name to the wiki page, or email Uri Guttman and let him know you’re coming. 

Hope to see you there!

[From the YAPC::NA Blog.]

Using Mojo::DOM

Mojolicious is already well known for its web framework, but I am finding more and more (after being told by our own brian d foy) that its DOM parser (Mojo::DOM) is worth the price of admission as well. Anyway today I was poking around StackOverflow and I ended up answering a question using nothing more than some well crafted DOM calls. Here is my (slightly reworded) response. It makes for a nice example of using simple CSS3 selectors to simplify HTML parsing.

The question goes something like this: Lets say we have some HTML which contains the times that a shop is open. How can we get this information in a HTML5/CSS3 (i.e. modern) way? Mojo::DOM.

Hidden unhelpful reviews on cpanratings.org

I noticed that on the module review pages linked from search.cpan.org and metacpan.org that 'unhelpful' reviews are inaccessible. The text is contained in a div as such:


< div data-dist="module_name" id="show_unhelpful">

3 hidden unhelpful reviews

< /div>

Does anyone know if that link is expected to expand and show the unhelpful review text? I'm always interested in opinions of others, whether they be good, bad, or ugly.

Ward Cunningham on Perl: fast to develop, fast to run, insightful

From an Interview With Ward Cunningham in Dr Dobb's Journal published May 15, 2012:

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.