I have just sent out the evaluations for all the talks and tutorials given at YAPC::Europe 2010 in Pisa. If you haven't received yours, first check that it hasn't got lost in a spam filter. If it hasn't arrived by tomorrow, let me know and I'll resend a copy.
There were 153 survey responses received and 1048 talk responses received. With 245 attendees, that gives a 62.44% response rate, so thank you to all who took the time to complete all the surveys.
The official conference survey results will be published within the next few days, on the YAPC Conference Surveys site.
This Lambda-the-Ultimate entry is about a study on the efficacy of Transactional Memory (TM). Apparently, TM proponents often claim that it makes concurrent programming easier (I've seen those claims), but that claim is often not backed up by citations. So they refer to this TM study (pdf) designed to test this assertion. The results:
On average, subjective evaluation showed that students found transactions harder to use than coarse-grain locks, but slightly easier to use than fine-grained locks. Detailed examination of synchronization errors in the students' code tells a rather different story. Overwhelmingly, the number and types of programming errors the students made was much lower for transactions than for locks. On a similar programming problem, over 70% of students made errors with fine-grained locking, while less than 10% made errors with transactions.
Awhile ago I moved my How can I troubleshoot my Perl CGI script? to StackOverflow. I'm just getting around to telling everyone about it because it was pretty far down on my to do list.
I think this has almost pushed the old location on SourceForge out of the googlebrain, but it wouldn't hurt for people to link to it in a blog post, tweet, whatever to encourage Google to find this one. Someday SourceForge will disappear and we won't have to worry about it anymore. How is it even still alive? StackOverflow has pretty good googlejuice though, maybe because Google likes StackOverflow.
Since it's on StackOverflow, this also means that I'm basically letting go of it. StackOverflow encourages people to revise the questions and answers of other to improve them, and I've given it wiki status to encourage that even more. Take a look, see what I've left out (or left in), what's new and exciting (or old and boring).
It's the end of an era. After 11 years from the first official CPAN Testers test report submission, the cpan-testers mailing list has finally closed its doors. From now on, anyone sending a test report via SMTP, will receive a bounce-back email. Most have already upgraded and reconfigured their smoker clients to use HTTP/S. For those that haven't or are new testers wanting to start afresh, please read the Quick Start page on the CPAN Testers Wiki, and join the cpan-testers-discuss mailing list to ask for help and advice.
I hope to showcase and talk about a great Perl project every once in a while. Hope this lasts beyond one post. :)
We recently added emailing capabilities to an in-house application. Unfortunately sending the emails adds roughly 1 minute to the runtime. I decided to take a gander at swaks and see how it's being done there.
Swaks (SMTP transaction tester) is a great application for all systems administrators. It takes the pain away from testing email setups. Instead of echo msg | mailx -n -t ... and thinking of whether it's heirloom mailx, mail, nail or which version of mail it is, or whether you're using sendmail or exim or qmail or postfix (and in comes the headache...) - you can just write swaks -t addr -f addr. You don't even need the from field, but it's just as easy to add.
Update: when I wrote on Twitter "Dear lazyweb: please write this code and drop me an email when you're done.", I was kidding. I'm not so silly as to think this is a trivial task (though I'd be delighted to be proven wrong).
I keep thinking about taking a stab at this, but I never quite seem to have the tuits. Essentially, I want a "reporting ORM", but then it wouldn't be an ORM, but it could leverage the metadata of a good ORM to pull off creation of an awesome reporting system.
So imagine your boss comes in an says "I want a report of total sales per salesperson in London". How would you write that? Think about an ORM solution versus SQL.
A couple of years ago I put together a list of The Perl Journal articles I could find on the Dr. Dobbs website. They changed some of their URLs, so I updated those to avoid all of the redirects and in the process found several more articles. My TPJ index is on Perlmonks. You can see some of the beginnings of popular projects, such as Moose, in some of the articles.
Personally I think that Microsoft word is the worst, most widely deployed piece of software ever, and I despise it with a vengance. Over the years I've learned to use it in such a way that it doesn't egregiously waste my time, but I'm never going to like it.
One of my many many annoyances is that track changes sucks, and it doesn't work well with the bibliographic software that I use. Unfortunately all my colleagues use word, so I don't really have a choice. But I've just started a new major piece of writing, and I want to be able to diff it properly.
So here's a little pre-commit hook that I made to commit plain text versions of my word docs in a separate tree off the root dir of the git repository. The only downside is that it's OS X specific because I use the built in textutil command to do the .doc to .txt conversion, but antiword or catdoc would probably be better.
Update: I decided I was not terribly happy with the output of textutil, so I changed it over to antiword, which works much better, both for layout, and with the field codes that my bibliographic manager uses. I also fixed a rather nasty bug that stopped it working with modified files.
As of this weekend, the final switch to turn off the SMTP gateway for CPAN Testers was flipped. You can no longer post anything to the old cpan-testers mailing list, and any attempts now will result in a bounce message.
Our thanks to Robert and Ask over at the Perl NOC for looking after us all these years, and for being very patient with us while we got the HTTP gateway up and running over the last 9 months.
As a consequence, anyone wishing to still be a part of the CPAN Testers community, now needs to upgrade their test environments, to use the latest smokers and associated libraries. In the main this will involve a simple upgrade of your smoker client and the installation of 4 specific modules (which in turn will install any additional prerequisites needed). You will then need to acquire a metabase profile. For full details of the steps necessary please see the Quick Start page on the CPAN Testers Wiki.
Event: Birthday Social Meeting
Date: Wednesday 8th September 2010
Time: 6pm onwards
Venue: The Dragon Inn, Hurst Street, Birmingham, B5 4TD
Details: http://birmingham.pm.org/meet/next
INTRO
This month the Birmingham.pmSocial Meeting is something rather special. We'll be celebrating TEN years of Birmingham.pm. While there are several other groups around the world who have been in existence longer, I think we are the second longest (uninterrupted) running group in the UK.
Last month we had a special guest in our midst, when Mike Bissett came to visit, who I co-founded Birmingham.pm with after our trip to OSCON in 2000. We started small, and have since ebbed and flowed over the years. We are still have a core group of regular attendees, several who pop along when they can, and around 80+ members on the mailing list. Thanks to everyone who has helped to keep Birmingham Perl Mongers interesting over the years, and we'll raise a toast to all those that can't make it this Wednesday.
We're starting our usual monthly DC Perl Mongers meeting a bit early this Tuesday (September 7th) to have a little pizza and celebrate Rakudo-Star! Arrive at 6:30pm at the Starbucks at 18th and K Street NW (call me, Brock, if you miss us and need to be let in, number on the website) if you want food. But feel free to wander in any time thereafter, we usually stay as late as 10:00pm. We'll swoop down and look for people at the normal 7:30pm time too :)
Other activities:
* Bring your laptop!
* Installing Rakudo-Star
* Giving hands-on tutorials
* Beginner and Advanced welcome!
* Never been to DC.pm before? No problem, come have some free pizza!
If you have any questions, email the list or me directly -- awwaiid@gmail.com will do :)
About Rakudo Star: "Rakudo Star" is a useful and usable distribution of Perl 6. Current releases are aimed at "early adopters" of Perl 6. We can tell you ALL about it when you arrive :)
I am still slowly working my way through Dist::Zilla attempting to get the config that works for me...
I suspect that the plethora of PluginBundles::
personid
are down to it being very hard to slightly modify a config other than by writing it out in full or by nasty filtering gymnastics...
For example I've been building a Task:: module for work - this pulls in everything I want as a base system on our servers. I started with an existing Task module, git cloned it, and modified it into the form I wanted - bringing along the initial Dist::Zilla config and changing that to suit as well.
The dist.ini file worked well for it - I just wanted to make 3 changes:-
Use my own timezone rather than the embedded configured one
Specify version numbers rather than using the AutoVersion
Not upload to CPAN - this is internal (and experimental) only
My mad experiment in CPAN mirrors has grown a couple of new tentacles. Previously it could be a perl-X.Y.Z-specific mirror, such as the CP5.6.2an, or an OS-specific mirror such as the cpMSWin32an. Now it can combine the two such as in the CP5.8.8-irixAN and all of those can also be combined with a date/time to only include stuff that was already on the CPAN as at that time, such as at the CP2000AN.
Why do this? Let's assume that you have a large complex application which uses lots of stuff from the CPAN, and depends on Elk version 1.009 and ListOfDogs version 5.1, and will break with any later version of Elk (or of ListOfDogs). You get a feature request from
a user, and think "ah-ha, there's a module for that", and so you go to install Some::Module. Unfortunately, the latest version of Some::Module depends on Elk 1.234, so your CPAN client merrily upgrades Elk, breaking everything. Doom and Disaster. Having a CPAN "mirror" nailed to the date of the last release of Elk and ListOfDogs that works for you will save you from pain, suffering, and the Dark Side.
One of the problems with the Ironman Challenge is that it’s too successful! I’m sure I saw an interesting post about daemoni[sz]ing scripts … can I find it now? Of course not!
Book information
Title: Catalyst 5.8 The Perl MVC Framework.
Subtitle: Build Scalable and extendable web applications using the Agile MVC framework.
Author: Antano Solar John.
Publisher: Packt Publishing.
Country: UK/India.
Year: 2010.
This book is a follow up to the 2007 Catalyst book by Jonathan Rockway (member of Catalyst core developer team). I have no idea how much of the content is changed between the two.
About the review(er)
This is a review on the electronic (PDF) edition of the book. I am a Perl developer and a CPAN author, but have not used Catalyst (or most other recent web frameworks, for that matter) before.
Yes, Dave Vaux, one of the british daves helps me translating my perl 6 tutorial and I'm writing here and there new lines into it. More important I'm reading synopses again. Im chatting with the Perl 6 crew again. What a great feeling, even jnthn is currently traveling. But I'm doing it more focussed then earlier. And when I learn something it gets immediately into stuff i write for the wiki, talks, slides. And to all of you who also stay at perl booths, I will try deliver them also in english. At least in a git so then TPF and bunch aroung gabor can do something out of it. Yes one more promise, but my perl 6 talk for mrccc is getting currently not so bad, so im hopeful to deliver there something too.
Occasionally I find a bug in someone's module and post a patch or a bug report. About half the time, the bug is fixed and the new module is released in less than a week. Could be better, but not too shabby. However, about the other half of the time the bug either goes unanswered, or I hear back from the module author that the patch needs to wait until some big release that they are waiting on. I hereby declare bullshit on that. Dist::Zilla makes it so ridiculously easy to push out a release that there is no longer a reason to wait on pushing a bugfix release immediately.
I’m done with Readonly. It has served it’s purpose but I’m frustrated to the point of writing a replacement. I still think it’s a good idea to declare variables readonly, but as an implementation I find Readonly unworkable. The problem is two-fold.
Maintenance.
Readonly hasn’t been updated in 6 years. It has collected quite a list of bugs. Not all of them can be fixed, but most that can be are either trivial or already have patches. Fact is it hasn’t been done and I have my doubts on whether it will be done.