First Post

I gave notice at my old job this weekend. It's a time of change. Perhaps one of the changes will be that I blog. Time will tell.

Proposal for corporate people who are stuck with old system perl

So I read this post complaining about Mojo deprecating 5.8 support.
As far as I understand, there are 3 groups of people:
1) People using shared hostings, sometimes without the shell access at all; their problem with the old perl can't be solved, they just should migrate to another hoster.
2) People who use perlbrew and install all dependencies either into ~/perl5/ or maybe even them right into project/ with local::lib
3) People who use a native packaging system.

I myself belong to the third group.
First, because it's how things are done at my $job.
Second, because I believe this is the right way to do things, although I understand that many people think otherwise.

Dancing on Windows in Stop-Motion

In short:

Perl debugger is awesome. Komodo IDE makes it even more awesome and can play with the guts of a Plack web-app while the web-app is running on a web server. And now all of this now works on Windows too, by updating Plack and applying a tiny patch to Komodo.

Recently I wanted to do some Dancer development on Windows. For me web development means making use of some fairly powerful tools in order to remove delays and increase the turnaround speed. Sadly the state of the stack under Dancer, as well as one of these tools hampered my efforts, leading me to fix them. In following I will lay out the tools, the needed fixes and my web development workflow.

Labyrinth Plugin Plans

I haven't been posting recently about the Perl projects I'm currently working on, so over the next few posts I hope to remedy that.

To begin with, one of the major projects I've been involved with for the past 8 years has been CPAN Testers, although you can find out more of my work there on the CPAN Testers Blog. This year I've been releasing the code that runs some of the websites, specifically those that are based on my other major project, Labyrinth. Spearheading these releases have been the CPAN Testers Wiki and CPAN Testers Blog, with further releases for the Reports, Preferences and Admin sites also planned. The releases have taken time to put together mostly because of the major dependency they all have, which is Labyrinth.

Mojo ppl, what have you done?!

Today I came home to read this: Mojolicious 1.3 Deprecated Perl 5.8.x support..

This makes me real sad, and here's why. Probably 90+% of all low cost shared web hosting providers still have Perl 5.8.x installed. I know Perl 5.8 is 10 yrs old, but go convince them to upgrade. There's no way to upgrade it, even on request. Absolute most of the ones I know run CPanel as a front end for the clients, and don't provide shell access. CPanel these days, though, is happy to install any CPAN module for you in one click, and it's really cool comparing to the alternative -- contact technical support with request to install it for you, if that is even an option.

From Perl slacker, to Perl hacker: Perl in the cloud, Part II

Perl hacker Phillip Smith taunted us about the lack of Perl support; but more than our investor’s money, the real keys to the Perl stack have been the very insightful feedback and ideas of another major contributor to the Perl community: Tatsuhiko Miyagawa.

Sometime last week, while I was basking in the glory of my thirty-eight birthday, I got the best birthday present ever. “A beta account on dotCloud to try out their new Perl support,” you ask? Nope. The real gift was getting called a ‘Perl hacker’ in the same sentence as Tatsuhiko Miyagawa.

Seriously, though, a lot happened in the last week, and I was too busy slacking off to catch it until now.

For starters, dotCloud announced support for Perl (also on HackerNews) on their PaaS platform (thanks, Miyagawa! And, congrats on the new gig!). This is great news, and the Perl community has been quick to kick the tires; real Perl hackers have already tested several Web application frameworks on dotCloud:

PSGI and DotCloud

DotCloud is a second generation Platform-as-a-service provider with
multiple languages and databases support. DotCloud recently shipped
Perl stack with PSGI web application support. Tatsuhiko Miyagawa, who
works for the company as a software engineer, explains how to develop
your PSGI based web applications and deploy it to DotCloud.

DotCloud - http://www.dotcloud.com

Miyagawa on CPAN - http://search.cpan.org/~miyagawa/

Miyagawa's blog - http://bulknews.typepad.com/

Announcement posted via App::PM::Announce

RSVP at Meetup - http://www.meetup.com/San-Francisco-Perl-Mongers/events/17570183/

GitHub-like activity indicator for authors and distributions

(Note: open the post to see the indicators. blogs.perl.org doesn't show them on the summary page)

Indexing the whole CPAN to the beta version of MetaCPAN just finished. Here is one example of what you can do with the data available from MetaCPAN:

This is rafl's activity over the last 24 month.

And the activity of the Plack distribution.

If you want to include these indicators on your homepage, copy paste the following code:

For distributions:


<object data="http://beta.metacpan.org/activity?res=month&distribution=Plack" width="170" height="22" type="image/svg+xml" />

For authors:


<object data="http://beta.metacpan.org/activity?res=month&author=FLORA" width="170" height="22" type="image/svg+xml" />

(Note: author name must be all upper-case)

All uploads:


<object data="http://beta.metacpan.org/activity?res=month" width="170" height="22" type="image/svg+xml" />

Right now the width, height and number of month is hard-coded. Feel free to fork and fix that at https://github.com/CPAN-API/metacpan-web (relevant files are template/activity.xml and lib/MetaCPAN/Web/Controller/Activity.pm).

How CPAN Testers helped me improve my module

My talk at YAPC::Europe 2011 in Riga has been accepted:

It's quite hard to write cross-platform CPAN modules, especially when you use XS to interface with C libraries. Luckily, CPAN Testers tests your modules on many platforms for you. Come see how CPAN Testers helped me to create a fully portable module.

I'm looking forward to the conference. You can check arrivals and departures and who stays where on the wiki if you need ideas on flights and hotels. See you there!

Perl's Built-In OO

There appear to be a few experienced Perl devs who still insist that there's nothing wrong with Perl's built-in object-oriented programming. You bless a reference and do everything manually. Stealing from twitter user @kaesees, I can now explain their opinion in two words: Stockholm Syndrome.

CPAN Testers Summary - April 2011 - Sleepless

The biggest event for CPAN Testers last month was undoubtably getting caught up in the Amazon EC2 outages in North Carolina. In order to cope with fluctuating demand, the HTTP API to the metabase is hosted on an EC2 instance. While perhaps the architecture needs some revision to ensure the instances are better prepared in the event of failure, the set-up has worked pretty well for us so far. Although we don't see the millions of hits other sites do, we do see enough submissions that we want to be able to accept all without a problem. Thankfully the downtime has only affected those testers who do not use Chris Williams' metabase-relayd, which is able to stockpile reports, waiting until the API responds. Many thanks to David Golden for working with Amazon to get us back online. Reports are now flowing again, and with the initial flood peaks contained, the remainder of the ecosystem is getting back to normal again.

Suprisingly hard task of writing logs

At my $job, we often use files and logs as the cheap way of managing queues of data.
We then read them using Log::Unrotate module, but this is the topic for another post.
Anyway, it's important that all items written in log are never lost and never get corrupted.

So here is the task: write serialized data to file from multiple processes.
Sounds easy, right?

MooseX::Types::Structured - how I detest thee!

Yeah, thanks, “something failed validation”. You’re the damn computer, how about you tell me which field you didn’t like?!

Schedule finalized, early bird registration ending

Hey, folks. Thank you all for submitting so many excellent talks and making our lives difficult regarding choosing which to accept! Our main schedule is rather finalized now, any cancellations notwithstanding. That said, we still need lightning talks!

In addition, I would like to remind everyone that early bird registration closes at 23:59:59 EST5EDT on 2011-05-06. So register now if you want that low rate!

Oh hey

So it's been over a year since I posted anything here. I've been working on Perl code at a big company, and I've mostly been enjoying myself. It's not easy diving into a large legacy application, especially when you have strong opinions about legacy code. But there are plenty of crunchy problems to sort through.

I'm thinking about dumping more random Perlish thoughts here. My Perl world includes Parrot and Rakudo, so some connections may be tangential at best.

Why I Love Perl: The CPAN Ecosystem

são paulo

Tomorrow I leave for the São Paulo Perl Workshop. I thought for a bit on what I would want to talk about, which always depends on the audience. For this one, I'll go for the general audience.

Why I Love Perl: The CPAN Ecosystem

The Comprehensive Archive Network, or just CPAN, isn't any one thing. It means different things to different people, and even different things to the same people in different contexts. CPAN is a repository, or a website, a client, and many other things that a diverse and disconnected group of people have created to give people many ways to get or think about reusable Perl code where no one is in charge and there's no one person controlling all of the action. Find out how the parts relate to each other, what the different parts can do for you, and where to go to get help.

I'm also going to Rio after São Paulo and we'll see what we can arrange for a social event (or a talk) there too.

First week of GSoC and progress made with MetaCPAN

As you might have heard, my MetaCPAN project has been accepted for the Google Summer of Code. If you are unfamiliar with the proposal, you can find it here.

The first few weeks are called the "bonding period". In this period the student is supposed to bond with their mentors and the community, read docs and get to know the project.

My tasks for this period are mainly to contact maintainers and author of CPAN Ratings, CPAN Testers and CPAN Vote to figure out how to include their data in the index. With CPAN Testers this was quite easy. They provide a SQLite database that includes test results for each release on the CPAN. Unfortunately we were not yet able to contact Ask, who is maintaining the CPAN Ratings page. There is a CSV file that includes some data, but it's heavily aggregated and thus not very useful for MetaCPAN.

John Siracusa discusses Perl on Hypercritical

In episode #15 of Hypercritical, John Siracusa presented Perl in (largely) a very positive light to what I assume is mostly a non-Perl audience.

I'm including my notes on the discussion below, but I recommend listening to the podcast yourself to form your own impression: http://5by5.tv/hypercritical/15

I couldn't find a discussion area linked from the episode page, but I noticed someone posted it to Hacker News as "John Siracusa and Dan Benjamin on high-level programming languages [podcast]."


Notes on Hypercritical #15

Geeks love a meritocracy, but languages often become popular for reasons other than their technical merit. Why do languages become popular? They are the official language of a platform. They promise the ability to write once, run everywhere. They enable a new type of application (i.e. CGI). They allow you to use the hot new thing (Rails). It's your only choice (JavaScript, Flash).

Most languages stink.

What should a high level language have?

Perl Hunter Job Leads

I figure I might as well get blogging on Perl Hunting as well.

I have set of Perl job leads open now. This is a telecommute job from these
8 states or onsite in Silver Springs MD:

CA FL GA IL MD MI NC NY

Read more about this job

To apply for either job send your resume in PDF or plain text AND
samples of your Perl code to resumes AT PerlHunter.com.

If your shop has a Perl job you want filled, send it to me as well. I
have placed over 30 Perl developers all over the country and can help
you out. You save time and money by doing reading fewer resumes, and no
wasting hours of time interviewing candidates who have no chance of
being hired. Read more about my services at PerlHunter.com.

Yet Another Perl Podcast #4: Апрельские Perl новости

События за прошедший месяц ( апрель - 1.04.11-1.05.11 ):

Cсылки: RSS и лента на rpod.ru
Следите за анонсами в twitter

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.