October 2007 Archives

Strategic Data offering Perl scholarships

| No Comments

Strategic Data and Perl Training Australia are offering eight scholarships for recent graduates (or soon-to-be graduates) who want to learn Perl. Successful applicants will receive four days of intensive training on Perl Training Australia's "Programming Perl" course in December, as well as the potential for industry placement. Each scholarship is valued at AUD $2200.

I asked Paul Fenwick of Perl Training about the scholarships. "Australia seems to be starved for Perl developers right now," he explained. "Strategic Data decided that rather than hiring people and then training them, it's more cost effective to reverse the process: Train a whole lot of people, and offer the most promising ones jobs."

This sounds like it could be a great way for beginning programmers to get their feet in the door. Sorry, candidates must live in Australia. Further information about the scholarships, including requirements and how to apply, can be found at Strategic Data's scholarship page.

Alberto Simões elected Perl Foundation Grants Committee chair

| No Comments

The Perl Foundation is pleased to announce the election of Alberto Simões to the position of Grants Committee Chair. Alberto was elected by the Grants Committee members from a pool of four strong candidates.

Alberto is president of the Portuguese Association for Perl Programmers, the leader of Braga.pm and the co-chair of YAPC::EU 2005 in Braga, Portugal. Alberto is a Ph.D. student in Machine Translation (Natural Language Processing) at the University of Minho, in Braga.

Curtis "Ovid" Poe has held the position of Grants Committee Chair since autumn of 2005. The Perl Foundation would like to give Curtis our deepest thanks for an excellent tenure as Chair of the Grants Committee and for all his help in preparing the search and election of his successor. Curtis has also pledged his support to help Alberto get up to speed as the new Grants Committee Chair over the next few weeks.

A better Recent CPAN Uploads feed

| 2 Comments

Our own CPAN Watch has the tag line "We watch the CPAN so you don't have to", but if you still want to, then there's a new CPAN feed in town.

search.cpan.org has the Recent Uploads page and feed, but all it shows is the distribution name and description. Daisuke Murase has created his own CPAN Recent Changes site and feed that now shows the relevant parts of the change log, back to the latest non-developer release. At least, that seems to be its intent, although its heuristic seems to not always work.

I'm glad to see the new site in place. I'm sure new additions will be coming, and maybe others will offer their own spin on what's new in CPAN, as well. It's a mutation that will lead to more evolution.

Deadline for Frozen Perl call for speakers almost here

| No Comments

Time's running out to submit your talk for consideration to Frozen Perl 2008 in Minneapolis. Submissions close on Tuesday, October 23rd at midnight. This is a great opportunity for you midwestern Perlers to get your feet wet if you've never spoken at a conference before but have always wanted to.

Instructions for submitting a talk are available at the Frozen Perl website.

Perl Survey 2007 data released

| 2 Comments | 1 TrackBack

Attention all trend-finders and part-time statisticians: The results of the Perl Survey 2007 are now available.

Michael Schwern presented a basic analysis of the results were recapped at Pittsburgh Perl Workshop this past weekend, and I'm still trying to get a summary to post here. Skud is also working on her own analysis of the data, and will post it to the Perl Survey results page.

No need to wait for them, though. We encourage you to do your own analysis of the data, and tell us and the world what you think it means. The data is released under a Creative Commons license, and I've created Data::PerlSurvey2007 to give you a quick & dirty way to slurp up the data into Perl code and have fun trying to find your own correlations and interesting insights.

It's simple code. It just slurps up the .csv file available on perlsurvey.org (and also included with the distro) and gives you an array of hashrefs for each completed response. They look like this:

    {
      'Attended Perl Mongers' => '1',
      'Attended Perl Mongers (non-local)' => '0',
      'Attended conference' => '1',
      'Attended conference (non-local)' => '0',
      'CPAN modules maintained' => '12',
      'Contributed to CPAN' => '1',
      'Contributed to Perl 5' => '0',
      'Contributed to Perl 6' => '0',
      'Contributed to other projects' => '1',
      'Contributed to websites' => '1',
      'Country of birth' => 'au',
      'Country of residence' => 'au',
      'Date survey completed' => '2007-07-26 12:49:37',
      'ID' => '25',
      'Income' => '80000-89999',
      'Industry/ies' => [
                          'Internet',
                          'Real Estate'
                        ],
      'Led other projects' => '1',
      'Other programming languages known' => [],
      'Perl versions' => [
                           '5.005',
                           '5.6.1',
                           '5.8.4',
                           '5.8.5',
                           '5.8.8'
                         ],
      'Perlmonks' => '0',
      'Platforms' => [
                       'BSD - FreeBSD',
                       'Linux - Debian',
                       'Linux - Ubuntu',
                       'Mac OS/X',
                       'Windows XP'
                     ],
      'Posted to Perl Mongers list' => '1',
      'Posted to other list' => '1',
      'Presented at conference' => '1',
      'Primary language spoken' => 'English',
      'Programming languages known' => [
                                         'JavaScript',
                                         'MOO',
                                         'PHP',
                                         'Ruby'
                                       ],
      'Proportion of Perl' => '90',
      'Provided feedback' => '1',
      'Sex' => 'female',
      'Subscribed to Perl Mongers list' => '1',
      'Subscribed to other list' => '1',
      'Year of birth' => '1975',
      'Years programming (total)' => '22',
      'Years programming Perl' => '11'
    },

Nuthin' fancy, but I hope this gives people a starting point without having to worry about the mundane parts of slurping up CSV files.

Evolution requires mutation

| 15 Comments

In the past couple of days, I've seen some counterproductive social behaviors that help scare away community members and lead to boring monoculture: Taking a public dump on the projects of others when they do not directly affect you. It's rude, it discourages future risk taking in everyone, it goes against the very nature of open source that has brought us here today, and it leads to monoculture. I'd like people to stop.

Mutation #1: kurila

Gerard Goossen recently released kurila, a fork of Perl 5 that includes some speedups and tweaks that seem to scratch Gerard's itches, as well as bundling extra modules. I'm right now trying to get an interview with him to find out more about his project and the reasons behind it, because there are probably some interesting lessons in there. However, the disapproval on the Perl 5 Ports list was swift and severe.

All forking based on the Perl 5 syntax and code base, throwing away CPAN compatibility, seems to me to be a complete worthless waste of time.

So what? Who is anyone to say how Gerard is to use his time? Is there any harm here? No? Then leave the guy alone, please.

Mutation #2: lambda

Eric Wilhelm released lambda, a distribution that lets you use the Greek character lambda (λ) as an alias for sub {...}, apparently as a nod to Python's lambda keyword for anonymous functions. Immediately people jumped on him saying that the module should go into the Acme:: namespace, as if the namespaces of CPAN mean anything in 2007. There was also this cluck-cluck from someone I figured would be more encouraging (and later apologized, as it turns out):

Well, if you want to use it in your own code and your work's code, that's fine (because I'm sure you find typing CONTROL-SHIFT-EL so much easier than "sub {}" :) but if it shows up in your CPAN modules, you might get a few complaints since this sugar, while a really nifty hack, adds nothing complex but does screw up older editors and will confuse the heck out of a lot of maintenance programmers.

Personally, I figure that if someone's a smart enough programmer to do a hack like the lambda module, he or she is also smart enough to figure out potential downsides. And so what if he doesn't? What's the harm here?

Mutation #3: perlbuzz

Perlbuzz itself has always come under this umbrella of disapproval. Even before we announced the site, Skud and I have fended off the comments saying "We already have use.perl.org, we don't need Perlbuzz." Maybe not, but why do you care if we start the site? Why does it bother you? And why do you find it necessary to tell us that we're embarking on a waste of time?

I hope that in the past few months, the work that Skud and I have done have shown you, the reader, that Perlbuzz is a worthwhile addition to the Perl community, and a valuable news source that overlaps other news sources while not being a subset. What if Skud and I had listened to the tsk tsk of the doubters? Perl would be right where we it was before, with nothing new.

Evolution requires mutation

Why are we so quick to take a dump on the projects of others? The only way anything interesting happens is that people try weird, new things and see what sticks. What if Larry had listened to those way back when who said "Ah, we've got Awk and shell tools, we don't need Perl?"

I fear our tendency to monoculture. I want crazy new projects to thrive, not get squashed at their very infancy. Next time someone comes out with a project that you think is silly, congratulate the person rather than scoffing at it. Who knows what it might lead to?

(And a big thank you to Jim Brandt for the "Evolution requires mutation" idea.)

BarCampMilwaukee is next weekend, Oct 13-14, 2007

| 1 Comment
Next weekend in beautiful Milwaukee, Wisconsin is their second Bar Camp. The event runs from Saturday morning to Sunday afternoon. As with any Bar Camp, sessions don't get decided until the day of the event, depending on who attends. Still, there are a number of folks attending who list Perl in their interests, and there are already Perl-related sessions proposed, like this one about writing your own Bayesian classifier:

Let's talk about Bayesian classifiers. They're everywhere. They filter your spam, recommend new links, and categorize web pages. Why are they so omnipresent? Because the math behind them is simple to understand, and simple to implement. So simple, in fact, that we'll do it in an hour.

I'll go over Bayes' theorem and how it relates to classification. I'll walk you through creating basic tokenization, training, and testing functions. Then we'll categorize stuff. My implementation language will be Perl, but you're welcome to use whatever language you'd like.

I'm going to try to attend Sunday during the day. I hope to see you there.

Richard Dice talks about changes and projects at the Perl Foundation

| No Comments

I talked today with Richard Dice, the newly-elected president of the Perl Foundation, about the recent changes in TPF, and what TPF has been working on lately. If you've asked "What does TPF do? Why should I support it?", this interview should help answer that.

Andy: Richard, you're now President of The Perl Foundation, Jim Brandt is Vice-President, and Bill Odom is Chairman. What do these changes mean for TPF and for the Perl community?

Richard: Regarding the first of the two questions you have embedded in there, what it means for TPF, there's a pretty straightforward answer - it means that I am now the person entrusted with the abilities of the President, per Article V, item 5.05 of the Bylaws of The Perl Foundation. From the point of view of TPF being a corporation the abilities of the President are pretty standard President-stuff. It basically means that I'm the guy able to sign contracts and am responsible for the general management of the corporation. The President is also a member of the Board of Directors so I have a voice within that group and a vote in all voting matters of the Board. I don't think that there are too many surprises as far as any of that goes. It's vanilla-corporation-legal stuff.

For the previous two years the TPF President had been Bill Odom. In the past few months Bill had been considering what his own personal strengths, interests and abilities to commit time would be in the future and mostly he was thinking that what we wanted to invest his energies into were Board considerations. That is, organizing how the Board would conduct its responsibilities. And that's a Chairman job. The chairman for the previous few years had been Kevin Lenzo. After all the years Kevin had been involved he felt as though he had done all he wanted and needed to in terms of active participation. So the Board thought that Bill would be the right person to take on that role. I was the Steering Committee Chair of TPF for the almost-two years up to that point. Bill and I did plenty of work and discussion together because of that, and I got a level of familiarity with much of the rest of the Board over that time as well. They thought I would be a good choice to fill the position.

I think that the Board liked one aspect of my thinking in particular pertaining to the Perl community. That is: the Perl community is just fine. Better than fine. The community is great. TPF exists to support the community. So what we have to pay attention to is the areas where the community is not great.

Andy: What areas would those be?

Richard: We need to help the rest of the world understand what Perl has to offer them. We need to talk with the rest of the world and gather together what they have to tell us, organize it, and present it back to the community in a coherent way so that we understand what the perceptions of the rest of the world are regarding what Perl and its community are all about. This kind of communication is a pre-condition for the next step, which is figuring out how the community and the rest of the world can help each other.

Andy: Any plans or grand ideas to share along those lines?

Richard: I'll share one plan that has already come to pass. Forrester Research approached TPF back in April 2007, asking us to participate in a survey of dynamic languages (Perl, Python, Ruby, PHP, Javascript) they were putting together. That was really important. Forrester has a lot of reach into the corporate IT world, at the VP and CIO/CTO level. I thought it was very important for us to get the word "Perl" prominently placed within that survey. What followed was a few weeks of brain-wracking work, not just mine but with a ton of help from about a dozen people inside and outside of TPF. But it was also important for us to participate because just seeing what sorts of considerations Forrester put into the survey were reflection of what they thought their audience was interested in. Participation was an excellent two-way communication opportunity.

Andy: What were the results of their report?

Richard: The results were quite good I thought. Forrester "Wave" surveys have a pretty standard format; in it, Perl was considered a "Leader" in this space. TPF will issue a larger press release about the results of this survey later. (The citation guidelines are complicated and we have to spend some real time in sifting through it all before we can make an official and detailed statements of the results.)

Another project that I'm involved with now is trying to make Perl 5.8.8 an official part of the Linux Standard Base 3.2 spec. This is a really good idea, as it means that any Linux ISVs that make a product that targets LSB 3.2 can assume the presence of a (sane) Perl distribution and so they don't have to ship it themselves.

These two examples suggest what I think will be a theme of the next year, which is TPF working with other organizations in alliances. Everyone is good at something. No one is good at everything. We have to be able to offer our expertise to other organizations, and we have to be willing to work with others in order to take advantage of their expertise. Trying to do things another way is a recipe for frustration and limited results.

Andy: Is the LSB project something that needs to happen at the TPF level? Is this one of those things that couldn't happen if TPF weren't doing it?

Richard: That's a good question. I don't immediately see a reason why TPF would have to be involved. Linux Foundation could have tried doing this without our help. However, this goes back to what I said about everyone having their own areas of expertise. The people in Linux Foundation aren't experts about Perl. From my perspective, the things I helped them with on this are pretty minor. But I saved them a ton of time helping them stay away from blind alleys in where they were going with this. And I could give them confidence that this was an effort that was worth undertaking. If they wanted to include Perl in LSB and they couldn't find a "Perl door" to knock on to get help in what they're doing, maybe they'd think that it wasn't worth the effort because Perl wasn't vibrant, active and supported.

[Note: Allison Randal noted after this interview was published "In fact, the Linux Foundation did try to do do it without our help, but had a hard time figuring out who to talk to in the community." -- Andy]

As I said before, I think TPF has a huge role to fill in interfacing between people on the inside of the community and people on the outside. Perhaps some Perlbuzz readers can't imagine other people thinking that Perl isn't vibrant, active and supportive. But that's exactly my point — without an organization like TPF to speak for Perl in these kinds of situations, that's exactly the kind of impression that would be conveyed. Some aspects of what TPF does are simple, but they're crucial.

Andy: So did the Linux Foundation come to TPF asking about getting Perl in LSB 3.2?

Richard: I'm not quite sure what the mechanics of the engagement were. Allison Randal, a TPF Board member, was the one who started up the discussion with Linux Foundation. Once she made initial contact I inherited the doing of the work.

Andy: So what can Perlbuzz readers do to help out with TPF?

Richard: The first thing I'd urge Perlbuzz readers to do is to be involved with the Perl community. Go to YAPC conferences, go to Perl Workshops and Hackathons, go to your local Perl Mongers meetings. This strengthens the whole Perl community, not just TPF. (And as an aside, it's something I've found enormously personally rewarding and enjoyable. I recommend it to anyone.)

Be eyes and ears on the ground and in the local Perl and IT scenes. If you see something interesting that you think has implications for Perl, let us know. Email pr@perlfoundation.org. Pay attention to websites like news.perlfoundation.org, use.perl.org, perlbuzz.com and yapc.org. Every now and then something can happen where TPF could use specific help. These are the places where the news would first go out to. There is also the #tpf IRC channel at irc.perl.org. If you want to talk to TPF folk, you can look for us there.

Andy: I should note that I am the pr@perlfoundation.org contact, and that Perlbuzz is sort of an outgrowth of my PR role for TPF, although entirely separate from TPF.

Richard: That's it for projects right now, but please track me down for another interview in a few months. We can cover what's been going on then. And thanks for the great work with perlbuzz.com! And while it's separate from your Perl Foundation PR hat, I think the most important thing is that Perl gets promoted! You and Skud are doing this fantastically well with perlbuzz.com so I'm a big supporter.

Andy: Any time you have something to say to the community, Richard, I'm glad to publicize it. Thanks for your time.

Pittsburgh Perl Workshop fast approaching

| No Comments

The Pittsburgh Perl Workshop is coming soon, October 13-14. If you're not yet signed up, there's still time to register. The price is only $40 for students for two days, or $70 for non-students, a heck of a deal for two days of talks from dozens of speakers. Plan to come early and make the Friday Social. Plans are also afoot for a Saturday Social.

There are also spots available in the full-day From Zero To Perl training class, so you can bring your friends who aren't yet hep to the wonders of Perl.

Finally, if you're going to PPW, and you've always wanted to speak at a conference, but never had enough to say, there is still time to get one third of your fifteen minutes of fame. Submit your lightning talk today.

« September 2007 | Main Index | Archives | November 2007 »