Blog moved to blog.schwern.net
My blog has moved to blog.schwern.net.
My blog has moved to blog.schwern.net.
Pinto is an application for creating and managing a custom CPAN-like repository of Perl modules. You may find many posts on it on the site. I love the idea of pinto, so decided to contribute in some way. So there is pinto cookbook - a chef cookbook to install and configures pinto applications. I hope this cookbook will be useful for pinto users and developers.
Stop me if you have heard this one before. You have a list of files you need to process in a text file with one item per line. Handling this is fairly simple you read a line in and process it over and over again until you processed the whole list. This works great, but if that list is 40,000 items long and each item takes up to 30 seconds to run it suddenly takes a very long time to finish. In this case processing each item is just a system call to another cli application with no shared resources, thus allowing processing of items in parallel with no fuss. For this task I am using Parallel::ForkManager and here are the important bits:
The crowd funding campaign for Pinto ended last week and I'm delighted to report that it was a huge success! We completely surpassed our goal and received a total of $4,620.12 from 128 contributors (including payments through PayPal and Flattr).
I am extremely grateful to each and every contributor, and I am deeply moved by the overwhelming support of the Perl community at large. As a humble token of my appreciation, every contributor will get a free lifetime account on Stratopan. I will also list the name of every contributor in the documentation for Pinto and on the project web site.
I especially want to thank Viacheslav Tykhanovskyi, Gabor Szabo, Andy Lester, and Sawyer X who worked tirelessly to help spread the word about the campaign. I also thank brian d foy for organizing the campaign, and Crowdtilt for generously allowing us to use their platform free of charge.
I believe the success of this campaign has a lot to teach us about the strength of the Perl community, the power of crowd funding, and the future of open source software. So over the next several days, I'll be blogging about each of those things. And of course, you'll also be hearing about the progress I've made toward implementing the promised features in PInto.
Again, thank you, very much!
Sincerely,
-Jeff
Notes from a Newbie document the creation and deployment of yardbirdfanclub.org with Perl Catalyst on shared hosting. They are intended for a Perl Catalyst Newbie who would like to study the creation and deployment of a simple Perl Catalyst application.
Now that we've developed a simple, functional application I will give you some information and advice about deploying it to a shared host.
It was bugging me that autocomplete for the perldoc command worked for modules and functions but not for bare .pod files. I'd be reading the FooBar docs and find a reference to FooBar::Cookbook::Tutorial and the magic TAB key would not find it for me. :(
--- /usr/share/bash-completion/helpers/perl.orig 2013-05-13 06:25:09.163377047 -0700
+++ /usr/share/bash-completion/helpers/perl 2013-05-13 04:10:34.523819280 -0700
@@ -23,8 +23,8 @@
chdir($dir) or return;
# print each file
- foreach my $file (glob('*.pm}')) {
- $file =~ s/\.pm$//;
+ foreach my $file (glob('*.{pm,pod}')) {
+ $file =~ s/\.(?:pm|pod)$//;
my $module = $base . $file;
next if $module !~ /^\Q$word/;
next if $seen{$module}++;
Welcome to Perl 5 Porters Weekly, a summary of the email traffic of the perl5-porters email list. The big news this week is the release of perl-5.18.0-RC1 and RC2.
Topics this week include:
Yep, indeed, contributing to the Perl community can be a very ludic activity (not to be confused with luddite!). I tried to list every Perl-related web resource where participants are encouraged to build up some kind of score. Most have charts where participants compete for the highest rank while some has an absolute goal (like 100% test coverage). The list has no specific order. Feel free to post the resources I forgot/am unaware of in comments!
I listened to http://devhell.info/post/2013-04-24/feline-tooth-extraction/ today and enjoyed hearing Chris Hartjes describe his recent experience with Perl. Quotes include:
"Perl actually doesn't suck"
"all of our services at work because we're moving to Service Oriented Architecture are either being done in Java or Perl"
"productive in Perl with a very short ramp up time"
For just the 5 minute clip: https://soundcloud.com/philipdurbin/perl-actually-doesnt-suck
Hi everyone, this is my first blog post on here (Gabor Szabo++ for reminding me that I need to blog!). Last week, I posted to the Houston.pm group inviting them to come out to the local City of Houston Open Innovation Hackathon.
I was planning on attending since I first heard about it a couple of weeks ago, but I saw this also as an opportunity to build cool things in Perl and show what Perl can do.
The Perl community is AWESOME! Much has been said and written on this topic: a lot of it true, some of it not so much, and sadly a nontrivial amount of it FUD. Yet, since this is about Perl, there is definitely more than one way to say it. So I will tell you one more personal-ish story.
As a newer member of the Mojolicious Core Development Team, I am more than usually excited for a Mojolicious release. This is because the next major release, version 4.0, is set to ship very soon! For those of you who don’t know, Mojolicious is a modern Perl web framework which is lightweight and easy to get started learning and using, while containing features that are cutting-edge. It’s asynchronous/non-blocking to the core, websockets work out of the box, comes with built-in DOM/JSON/UserAgent, etc etc.
Our fearless leader Sebastian Riedel (aka sri) will no doubt post a message with all the details when it ships. In the meantime, I want to share a little story of how community interaction, even at the StackOverflow level, can lead to innovation and enhancement of major projects like Mojolicious!
I'm happy to announce the release of SOAP::Lite 0.716. Thanks to all the many contributors! Coming to a CPAN mirror near you!
0.716 May 10, 2013
! #17275 Client unable to detect fatal SOAP failure (e.g. unable to connect to host)
! #81471 Force array context for correct Apache header parsing in SOAP::Transport::HTTP
! #45611 deserializing SOAP message with composite attachment raises exception
! #84168 Test t/02-payload.t fails under Perl 5.17.10
! #85098 Monkey patch for LWP::Protocol confuses the toolchain
! #78692 / #84724 / #83715 Sending large object (many levels deep) throws error Incorrect parameter
! #78502 t/08-schema.t noisy under 5.17.2 (unescaped left brace in regex is deprecated)
! #78608 Documentation for "+trace"
! #78639 Spelling error reported by Debian tools
O HAI o/
As many of you know - I am a very late adopter. The time has come, however, when the amount of things I want to say about Perl and its community no longer fit in my TODO cache. So biting the bullet (or two) I am declaring the civility free zone1 as open. Watch this space for more ;)
Cheers
So what’s new?
UAV::Pilot is a Perl library for controlling UAVs. It currently works with the Parrot AR.Drone, with plans to expand to others in the future.
The current library supports basic commands, such as takeoff, pitch, roll, yaw, vert speed, and land. All the preprogrammed flight animations are also in place.Navigation data and video are not yet supported–see the ROADMAP file for future plans.
Github repository: https://github.com/frezik/UAV-Pilot
Should be up on CPAN shortly.
I managed to work with gdb's reverse debugging finally. That means I can step back in time, step to the previous lines and back to the callers, not only back out the backtrace.
It should work since version 7.0 but got it working only today. The first times I got annoyed by the warning:
Breakpoint 1, ...
(gdb) target record
(gdb) rn
Target child does not support this command.
Hmm... I knew nothing about target "child" and I read that those should work fine: Native i386-linux ('target record'), Native amd64-linux ('target record')
This is because I used the gdb command run. Now I changed my .gdbinit to use start and continue and set proper breakpoints, and rn (reverse-next aka previous) works fine. I feel stupid.
$ cat .gdbinit
I've changed the configuration file of the conference site and now all submitted talks are visible. Enjoy!
blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.