YAPC::NA Pre-launch Meeting Tonight

We’re only one week away from YAPC::NA 2012 so tonights meeting will be our last before the main event. We’ll be handing out final assignments and running down the check list.  If you’re in the Madison area, or don’t mind a drive meet us at the Essen Haus at 7pm. 

I’m not sure how much we’ll have to discuss so I can’t hazard a guess as to when the meeting will end. Getting exciting now.

[From the YAPC::NA Blog.]

Look @this_job twitter feed

I claimed a while ago that I maintained a list of pdx and telecommute jobs of potential interest to folks I know who are looking for new gigs. Well, I suck at maintaining that list. I'm going to try to make it easier to maintain by re-inventing the page as a twitter feed. The idea is that it is easier to post a couple tweets each day than to edit an html document. If it is sufficiently easier, then I might actually do it regularly.

If you use twitter, follow @this_job. If you use rss, subscribe to https://twitter.com/statuses/user_timeline/this_job.rss. If you prefer email updates, well I'm sure there is some service out there which will turn twitter streams or rss feeds into email. Actually, I think twitter started doing that themselves.

We'll see if this experiment works any better.

Announce: WWW::Scraper::Wikipedia::ISO3166

Hi Folks

After an email discussion with Kim Ryan, author of Locale::SubCountry, and a recent exchange on this very blog, about removing Locale::Country::SubCountry from CPAN, I've released WWW::Scraper::Wikipedia::ISO3166 V 1.01.

It's main purpose is to ship a SQLite database of countries and subcountries, and an interface to that db.

The db can be used directly, or exported as CSV or HTML.

Pre-exported files are shipped in the distro as data/*.csv and data/*.html.

The HTML looks like this.

The Wikipedia files I downloaded are also shipped in the distro under data/*.html, to encourage you to access them locally if playing with the code, rather than hitting Wikipedia itself repeatedly.

If you think this makes the distro too big (4Mb) let me know. I can easily drop the those files.

Using the Record Separator

I use Perl for years, but there are some details that I still am unable to use correctly in Perl. I think they should be my fault. And probably, if I rtfm I would get an answer. Nevertheless, and although this is not perlmonks, I'll post my problem anyway.

I use local $/ = "\n\n" as record separator to read a file. The code that processes that file, uses a module, that decides to open a config file, and that expects that the record separator is a single new line. That library fails.

My main doubt is if all modules shout set the record separator explicitly, as we never know if someone changed it, or if there is any way I can change my own copy of it without messing with other modules.

What New Technologies Might Be Invented At The Hackathon

As far as I know, the hackathon at YAPC::NA 2012 might be the first two-day hackathon ever at a YAPC. With that amount of time, and the brain power of the Perl community, I wonder what might be invented there. 

Wisconsin’s history is filled with lots of technological pioneers, whether they be tinkerers, inventors or entrepreneurs:

These days we’re at the forefront of cancer research, quantum computingnano-technologies, and ill-advised politics. So why shouldn’t Wisconsin also be the place where the next great Perl app is born?

[From the YAPC::NA Blog.]

Be Your Own Big Brother

Many modern browsers (including recent versions of Firefox and Opera) support the W3C's geolocation API. This is a standardised mechanism for Javascript to ask your browser where it geographically is in the world. Typically the browser will then pop up a message asking you if you wish to reveal this information, giving you the opportunity to opt out.

But how does your browser know where it is? The method that Firefox and Opera both seem to use is this:

  1. They sniff data on your Wifi to figure out the local hotspots;
  2. They submit the details of these hotspots to a web service run by Google;
  3. Google tells them where you are.

How is Google able to figure out where you are based on local wifi hotspots? The answer is their Street View cars. At the same time that they drive around photographing streets for Street View, they also take a survey of wifi hot spots.

Mix Perl and C++/CLI

A Look At Arrays

A Look At Arrays

Perl's built-in datatype, array, is a multi-purpose tool which can be used for many things. It's primary purpose is to preserve the order of data. But it comes with a powerful set of tools to make manipulating it easy. This article is to show how to use these tools by implementing a linked list.

Linked lists were originally created for languages like C which only had simple datatypes. They are a technique for using the system's memory allocation to create a data structure that allows unlimited expansion, that is, until it runs out of memory. They use a simple datatype called a pointer that records a position in memory. Without pointers, linked list would be impossible.

Perl has a datatype similar to pointers, the reference. Like pointers, it records a memory location and it can be used link them. But using references to implement a linked list the same way one would do in C, needlessly complicates the code. Linked lists can be implemented using just arrays. Here's how.

YAPC::NA 2012's Legacy for the Perl Community

Since we’re only a little over a week away from YAPC::NA 2012, our team thought it might be useful to reflect on what we plan to leave behind for the Perl community. We think we’re leaving a strong legacy:

  • First and foremost, we hope we deliver a spectacular conference that attendees remember fondly for years to come.
  • We’re leaving behind a wealth of infrastructure for the next YAPC organizers.
  • We should be creating a new generation of Perl developers through our training programs before, during, and after the conference.
  • When the final totals are tallied, we should be able to give a good sized sum of money to The Perl Foundation to be earmarked for the Perl 5 Core Maintenance Fund and CPAN Testers.
  • We’ll leave behind nearly 100 hours of video presentations that will be professionally captured by our streaming team.
  • And finally, we hope each new team of organizers will set a new standard for what a YAPC can look like. We believe we have achieved that goal, and we hope that every organizer that comes after us amazes us with their achievements as well.

[From the YAPC::NA Blog.]

How do you update your system Perl?

Although I'm an advocate of configuring and installing your own perl while leaving the system perl alone, I'd like to have a list of the various ways particular distros and package managers do it for the system perl.

  1. The package manager program (e.g. yum, apt-get)
  2. The package name(s) to get the standard distribution, including the docs, ExtUtils::MakeMaker, and everything else
  3. Does that package manager allows you to configure, per-package, the installation location.
  4. Discovering module packages (what is the name, version of the module, etc)
  5. Your distro version, if it matters (do some distros change package managers)?

I can make a chart here if people chime in with what they know about their system. I've seen scattered hints, but no where that pulls this all together for the various major distros.

WWW::UsePerl::Server

use.perl.org was a Perl-specific blogging website created by Chris Nandor and hosted at Geeknet. It was up from early 2001 until late 2010. A little over a month ago I started a project along the lines of Archive Team to save historical Perl websites and keep the content going.

I've just released WWW::UsePerl::Server to the CPAN. Using this module you can host your own use.perl.org mirror:

useperl.png

It comes with a MySQL database dump containing all the stories, journals and comments on use.perl.org. That way you can gain control of your content and import old journal entries into your current blog.

The useperl repository is up on GitHub.

Enjoy! Leon.

YAPC::Russia + Perl Mova 2012 in Kiev, Ukraine

I'm very excited to see more than 200 people registered to the forthcoming YAPC::Russia conference.

We started YAPC::Russia in 2008 in Moscow and since than it migrates between Kiev and Russia each year. That explains why its full name includes plus Perl Mova, which is the name of the Ukrainian Perl Workshop (held separately in the years when YAPC::Russia is in Moscow), that easy. By the way, did you know that Kiev was once the capital of former Kievan Rus’? No political context here today :-)

This year is a special one in the history of our annual event. This time the organisers managed to invite a few guest speakers, Tatsuhiko Miyagawa, Gabor Szabo and Florian Ragwitz. In addition to that great fact it's a pleasure to see attendees from 13 countries! Kiev is a wonderful place to come to, as you most probable don't need a visa to enter there.

YAPC::NA 2012's Legacy For Organizers

The organizers of the past few conferences gave us some good data and some great advice, but prior to YAPC in Madison, there has been very little infrastructure handed down from one organizer to another. As we go into the home stretch before YAPC::NA 2012, our team will give a wealth of infrastructure to the next YAPC::NA organizers, whomever they may be. To them we leave behind:

Announcing: PerlGSL - A Collection of Perlish Interfaces to the Gnu Scientific Library

With this post I am happy to announce the release of my new distribution: PerlGSL. This accompanies several other releases I’ve made in the past few days, I’ll get to those in a moment.

A few days ago I asked what I should call my new multidimensional integration module. The discussion centered on whether it was more important that it required the GSL library, or whether it was a set of bindings for the GSL (was that set complete)? Was it a dist in its own right needing a toplevel name, or that it was mathematical and should be under Math::?

After discussion and reflection, I have decided that I wanted a toplevel namespce for this project, mostly because the need to satisfy the external dependency on the GSL separates these modules from others. To make it worthy of that honor, I have made it into a dist in its own right, not unlike other named dists like Mojolicious or Catalyst, though more modular.

Don't use Cache::Memcached for UTF8 strings

Read about our adventures while trying to store/retrieve an UTF-8 string via Cache::Memcached in my Perl blog

7th Week of Perl 6 Tablets

... and what happened?

I added a FAQ (Appendix F) page (and moved links to appendix H aka href appendix), but its just questions so far. You migth ask, but there is already a semiofficial FAQ. True. But would you not prefer better sorted anwers with links where all the parts of the answer are even better explained in more detail?


I added also a report.pl which gives you output like:

Just thought I’d share the Perl-inspired drink menu for...



Just thought I’d share the Perl-inspired drink menu for The Perl Foundation party at YAPC::NA 2012

[From the YAPC::NA Blog.]

London Perl Mongers Technical Meeting 2012-05-31

London Perl Mongers organises technical meetings every two months. The technical meetings are a chance to find out what has been going on in the Perl community, what techniques people are using and how Perl integrates with other software.

The next technical meeting will be on the 31st May 2012 from 7pm to 9pm (you may arrive earlier, please sign in at the reception). You have to sign up to attend, see below.

This meeting is sponsored by Webfusion and will be held at the Conway Hall. Many thanks to Barbie, Webfusion and everyone involved for allowing us to use this wonderful venue.

The following speakers will present:

James Laver: Lovecraftian Perl
Paul LeoNerd Evans: Terminal Interface Construction KIT
Barbie: Labyrinth is/isn't a Web Framework
David Leadbeater: RE2: Faster regexp matching

For more information and to sign up, please visit http://londonpmtech.appspot.com/

See you there, Léon.

Considering NPW2012 rescheduling

Unfortunately there's been very few talk submissions and registrations for NPW2012 so far which could be due to it being the week before YAPC::NA and a bit of tight schedule from announcement to workshop.

Therefore I'm considering rescheduling it for later this year.

Comments, thoughts?

Reddit API for Perl

I have completed the meat of a reasonably complete API wrapper for Reddit. You can grab it at https://github.com/jsober/Reddit-API.

It is pretty simple to use, and the docs are complete, but here is the gist:

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.