<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5910101498857524639</id><updated>2012-01-28T19:22:04.134+01:00</updated><category term='idea'/><category term='graphic design'/><category term='dancer'/><category term='ironman'/><category term='php'/><category term='perl6'/><category term='rakudo'/><category term='phyton'/><category term='parrot'/><category term='cpan'/><category term='perl'/><title type='text'># where we turn Perl inside out</title><subtitle type='html'>our $blog = new Smart::Perl;</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>prz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>48</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-6054873795993107626</id><published>2012-01-28T19:22:00.000+01:00</published><updated>2012-01-28T19:22:04.145+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>(xiii) stackoverflow perl report</title><content type='html'>&lt;p&gt;This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br/&gt;Between brackets: question score &amp; answers count&lt;br/&gt;Built date: 2012/01/28 18:20:49 GMT&lt;/p&gt;&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8959028" target="_blank"&gt;Perl-style quotes for long strings in C++&lt;/a&gt; - [&lt;b&gt;7&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/9012208" target="_blank"&gt;modify $_ if no parameters specified&lt;/a&gt; - [&lt;b&gt;7&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8974493" target="_blank"&gt;How can I pass on my Bash loop variable to the Perl interpreter?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/5]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8977829" target="_blank"&gt;Read a large file and output sections matching multiple parameters&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/9017260" target="_blank"&gt;Remove rows from data: overlapping time intervals?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/5]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8965496" target="_blank"&gt;Why doesn't map read from @ARGV/@_?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/9024691" target="_blank"&gt;Perl substr(STRING, @ARRAY) ne substr(STRING, OFFSET, LENGTH)?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8957629" target="_blank"&gt;Format of CSV not correct?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/5]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8962629" target="_blank"&gt;Succinct way to print all lines up until the last line that matches a given pattern&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/7]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8972457" target="_blank"&gt;How can loop through perl constant&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/4]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-6054873795993107626?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/6054873795993107626/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2012/01/xiii-stackoverflow-perl-report.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6054873795993107626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6054873795993107626'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2012/01/xiii-stackoverflow-perl-report.html' title='(xiii) stackoverflow perl report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-5659117662505523729</id><published>2012-01-21T20:32:00.000+01:00</published><updated>2012-01-21T20:32:52.269+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>(xii) stackoverflow perl report</title><content type='html'>&lt;p&gt;This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br/&gt;Between brackets: question score &amp; answers count&lt;br/&gt;Built date: 2012/01/21 19:30:35 GMT&lt;/p&gt;&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8935484" target="_blank"&gt;Why is the year value in Perl's localtime function (and C's tm struct) relative to 1900?&lt;/a&gt; - [&lt;b&gt;11&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8877537" target="_blank"&gt;In Perl, should a function do the wantarray dance, or can we expect the caller to use map?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8883855" target="_blank"&gt;using localtime inside moose default values&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8895573" target="_blank"&gt;Perl Module usage&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8871461" target="_blank"&gt;How to optimize two-dimensional hash traversing in Perl?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8880033" target="_blank"&gt;Test fails under prove if it writes to stdout without newline&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8893897" target="_blank"&gt;Find timezone from airport code using perl code&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8911574" target="_blank"&gt;How to ask for password on the Windows console in a Perl script?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8933897" target="_blank"&gt;Can perl replace multiple keywords with their own substitute word in one go?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/5]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8945859" target="_blank"&gt;Perl: mapping to lists' first element&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/4]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-5659117662505523729?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/5659117662505523729/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2012/01/xii-stackoverflow-perl-report.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5659117662505523729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5659117662505523729'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2012/01/xii-stackoverflow-perl-report.html' title='(xii) stackoverflow perl report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-1727990512854294805</id><published>2012-01-15T08:24:00.000+01:00</published><updated>2012-01-15T08:24:44.582+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>(xi) stackoverflow perl report</title><content type='html'>&lt;p&gt;This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br/&gt;Between brackets: question score &amp; answers count&lt;br/&gt;Built date: 2012/01/15 07:22:38 GMT&lt;/p&gt;&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8820169" target="_blank"&gt;How to produce range with step in Perl?&lt;/a&gt; - [&lt;b&gt;12&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8836711" target="_blank"&gt;How can I attach a debugger to a running Perl process?&lt;/a&gt; - [&lt;b&gt;12&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8850840" target="_blank"&gt;I want to sort array of arrays in Perl, but the result is not sorted&lt;/a&gt; - [&lt;b&gt;10&lt;/b&gt;/5]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8840917" target="_blank"&gt;Perl: Sort characters within a string&lt;/a&gt; - [&lt;b&gt;8&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8819183" target="_blank"&gt;Does MooseX::Declare require the '{' to be on the same line as 'method'?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8804220" target="_blank"&gt;Perl operator: $|++; dollar sign pipe plus plus&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8825645" target="_blank"&gt;converting html to text with perl&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8831278" target="_blank"&gt;How do you get multiple arguments in Perl functions?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8834646" target="_blank"&gt;MooseX::Declare how can I return an ArrayRef from an attribute default method?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8845949" target="_blank"&gt;How to find open global filehandles in a perl program&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/5]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-1727990512854294805?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/1727990512854294805/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2012/01/xi-stackoverflow-perl-report.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/1727990512854294805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/1727990512854294805'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2012/01/xi-stackoverflow-perl-report.html' title='(xi) stackoverflow perl report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-6994526610304051606</id><published>2012-01-08T22:35:00.003+01:00</published><updated>2012-01-08T22:36:00.766+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>(x) stackoverflow perl report</title><content type='html'>&lt;p&gt;This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br/&gt;Between brackets: question score &amp; answers count&lt;br/&gt;Built date: 2012/01/08 21:34:43 GMT&lt;/p&gt;&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8712225" target="_blank"&gt;How to perform a SQL-like Join in Perl?&lt;/a&gt; - [&lt;b&gt;8&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8704008" target="_blank"&gt;How to use $a and $b in Perl subroutine&lt;/a&gt; - [&lt;b&gt;7&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8715611" target="_blank"&gt;Can I use dtrace on OS X 10.5 to determine which of my perl subs is causing the most memory allocation?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8720589" target="_blank"&gt;Change case of first letter in every cell in spreadsheet&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/10]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8720844" target="_blank"&gt;Scripting library for monitoring server health?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8722103" target="_blank"&gt;Compare 2 Unix Files and Output Matching Lines to a New File?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8744556" target="_blank"&gt;What does "Scalars leaked: 1" mean?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8746418" target="_blank"&gt;Re-arranging a timestamp with a Perl regex&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8698205" target="_blank"&gt;Inconsistent and inexplicable behavior in some perl files&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8702025" target="_blank"&gt;How do I efficiently create a perl hash of consecutive numbers?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/4]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-6994526610304051606?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/6994526610304051606/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2012/01/this-is-ten-most-rated-questions-at.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6994526610304051606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6994526610304051606'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2012/01/this-is-ten-most-rated-questions-at.html' title='(x) stackoverflow perl report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-5226975588325991232</id><published>2012-01-01T09:50:00.001+01:00</published><updated>2012-01-01T09:50:23.068+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>20 best Perl questions at stackoverflow in 2011</title><content type='html'>&lt;p&gt;This is the 20 most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last year&lt;br/&gt;Between brackets: question score &amp; answers count&lt;br/&gt;Built date: 2012/01/01 08:48:30 GMT&lt;/p&gt;&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7927139" target="_blank"&gt;Bug in perl's autodie.pm?&lt;/a&gt; - [&lt;b&gt;26&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7409157" target="_blank"&gt;perl :"//" operator?&lt;/a&gt; - [&lt;b&gt;16&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7429964" target="_blank"&gt;How to match string with diacritic in modern perl?&lt;/a&gt; - [&lt;b&gt;15&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8383527" target="_blank"&gt;Which situations benefit from Perl's study?&lt;/a&gt; - [&lt;b&gt;15&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8166123" target="_blank"&gt;In Perl, how can I test whether a sequence is of the form n, n + 1, n + 2, ..., n + k?&lt;/a&gt; - [&lt;b&gt;14&lt;/b&gt;/7]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7303806" target="_blank"&gt;Why is `a::-&gt;func;` valid?&lt;/a&gt; - [&lt;b&gt;13&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/6281049" target="_blank"&gt;How to test/classify CPAN modules for utf8 correctness&lt;/a&gt; - [&lt;b&gt;12&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/6887075" target="_blank"&gt;Can Perl's "exists" modify data structure values?&lt;/a&gt; - [&lt;b&gt;12&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/6991197" target="_blank"&gt;What exactly is a source filter?&lt;/a&gt; - [&lt;b&gt;12&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7796470" target="_blank"&gt;What kind of syntactic sugar is available in Perl to reduce code for l/rvalue operators vs. if statements?&lt;/a&gt; - [&lt;b&gt;12&lt;/b&gt;/5]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/5861292" target="_blank"&gt;Which cpan installer is the right one? (CPAN.pm/CPANPLUS/cpanminus)&lt;/a&gt; - [&lt;b&gt;11&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/6976927" target="_blank"&gt;Why would you assign to $$?&lt;/a&gt; - [&lt;b&gt;11&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7307480" target="_blank"&gt;What is the canonical implementation of markdown?&lt;/a&gt; - [&lt;b&gt;11&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/4663412" target="_blank"&gt;Best practice for using slightly modifying module from CPAN?&lt;/a&gt; - [&lt;b&gt;10&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7664829" target="_blank"&gt;Can a Perl script install its own CPAN dependencies?&lt;/a&gt; - [&lt;b&gt;10&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7895669" target="_blank"&gt;Conversion of list context result to array in one line in perl?&lt;/a&gt; - [&lt;b&gt;10&lt;/b&gt;/6]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8399822" target="_blank"&gt;How can I start out with web development using Perl?&lt;/a&gt; - [&lt;b&gt;10&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8418496" target="_blank"&gt;Hash keys encoding: Why do I get here with Devel::Peek::Dump two different results?&lt;/a&gt; - [&lt;b&gt;10&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8652207" target="_blank"&gt;Faster alternative to eval?&lt;/a&gt; - [&lt;b&gt;10&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/6100492" target="_blank"&gt;How to use a CPANPLUS autobundle to update a new version of Perl?&lt;/a&gt; - [&lt;b&gt;9&lt;/b&gt;/1]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-5226975588325991232?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/5226975588325991232/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2012/01/20-best-perl-questions-at-stackoverflow.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5226975588325991232'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5226975588325991232'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2012/01/20-best-perl-questions-at-stackoverflow.html' title='20 best Perl questions at stackoverflow in 2011'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-6537797688776329555</id><published>2012-01-01T09:42:00.000+01:00</published><updated>2012-01-01T10:00:36.783+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>(ix) stackoverflow perl report</title><content type='html'>HNPY::2012 Happy New Perl Year 2012 !!&lt;br/&gt;&lt;p&gt;This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br/&gt;Between brackets: question score &amp; answers count&lt;br/&gt;Built date: 2012/01/01 08:37:37 GMT&lt;/p&gt;&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8652207" target="_blank"&gt;Faster alternative to eval?&lt;/a&gt; - [&lt;b&gt;10&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8649916" target="_blank"&gt;Perl writing to a 'memory file' plays tricks with pattern matching&lt;/a&gt; - [&lt;b&gt;8&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8658136" target="_blank"&gt;Count the capture groups in a qr regex?&lt;/a&gt; - [&lt;b&gt;8&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8676026" target="_blank"&gt;How can I have Perl take input from STDIN one character at a time?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8691186" target="_blank"&gt;Should I give up on refactoring this and plan a rewrite?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8657005" target="_blank"&gt;%ENV doesn't work and I cannot use shared library&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8657486" target="_blank"&gt;Print fails when using chomp()&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8672911" target="_blank"&gt;Why does Perl's m//g operator sometimes result in NULLs being introduced into text?&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8675706" target="_blank"&gt;How can I change the date formats in Perl?&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/5]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8683068" target="_blank"&gt;Should I use Perl's LWP or lib curl?&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/5]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-6537797688776329555?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/6537797688776329555/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2012/01/20121-stackoverflow-perl-report.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6537797688776329555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6537797688776329555'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2012/01/20121-stackoverflow-perl-report.html' title='(ix) stackoverflow perl report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-7806410072972312246</id><published>2011-12-24T17:02:00.003+01:00</published><updated>2011-12-24T17:05:40.767+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>(viii) stackoverflow perl report &amp; MC::2011</title><content type='html'>&lt;b&gt;MC::2011&lt;/b&gt; Merry Christmas 2011!&lt;br/&gt;&lt;p&gt;This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br/&gt;Beetwen brackets: question score &amp; answers count&lt;br/&gt;Built date: 2011/12/24 16:00:14 GMT&lt;/p&gt;&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8601179" target="_blank"&gt;Why doesn't Perl compile to binary files like python&lt;/a&gt; - [&lt;b&gt;7&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8617899" target="_blank"&gt;Perl splitting array based on condition using grep&lt;/a&gt; - [&lt;b&gt;7&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8568735" target="_blank"&gt;How to parse between &amp;lt;div class ="foo"&amp;gt; and &amp;lt;/div&amp;gt; easily in Perl&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8605322" target="_blank"&gt;Speeding up perl DBI fetchrow_hashref&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8618858" target="_blank"&gt;How do dollar and number sign together work in perl?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8567774" target="_blank"&gt;Parsing unsorted data from large fixed width text&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8572644" target="_blank"&gt;How to retrieve all Groups from LDAP with Perl&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8588805" target="_blank"&gt;How to change exponential number format to the floating-point format in Perl&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8597973" target="_blank"&gt;how can I restart a "do-while" loop after breaking out of a foreach loop?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8618524" target="_blank"&gt;Perl: Read web text file and "open" it&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/2]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-7806410072972312246?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/7806410072972312246/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/12/viii-stackoverflow-perl-report-mc2011.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/7806410072972312246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/7806410072972312246'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/12/viii-stackoverflow-perl-report-mc2011.html' title='(viii) stackoverflow perl report &amp; MC::2011'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-3027574535383324076</id><published>2011-12-19T20:14:00.001+01:00</published><updated>2011-12-19T20:14:16.978+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>(vii) stackoverflow perl report</title><content type='html'>&lt;p&gt;This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br/&gt;Beetwen brackets: question score &amp; answers count&lt;br/&gt;Built date: 2011/12/19 19:12:41 GMT&lt;/p&gt;&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8534657" target="_blank"&gt;How should I modify the prototype to allow construction of a hash after the coderef?&lt;/a&gt; - [&lt;b&gt;9&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8481462" target="_blank"&gt;Perl Handling Directory Separators&lt;/a&gt; - [&lt;b&gt;8&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8548224" target="_blank"&gt;Non-blocking / Asynchronous Execution in Perl&lt;/a&gt; - [&lt;b&gt;7&lt;/b&gt;/5]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8499608" target="_blank"&gt;How do I get perl -c to throw Undefined or Undeclared function errors?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8503919" target="_blank"&gt;Use ready-made character class and restrict it further&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8517657" target="_blank"&gt;Any way to treat .* as .{0,1024} in perl RE?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8538874" target="_blank"&gt;How can I find out what script, program, or shell executed my Perl script?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/5]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8540056" target="_blank"&gt;What are the differences between parameter inputting mechanisms in Perl?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8510337" target="_blank"&gt;Re-run a loop iteration&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8511317" target="_blank"&gt;perl Padre IDE standard input not working&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/1]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-3027574535383324076?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/3027574535383324076/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/12/vii-stackoverflow-perl-report.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/3027574535383324076'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/3027574535383324076'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/12/vii-stackoverflow-perl-report.html' title='(vii) stackoverflow perl report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-6410915207899558364</id><published>2011-12-15T22:51:00.002+01:00</published><updated>2011-12-15T22:51:15.746+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>the most surprising, weird, strange or really "WTF" language feature</title><content type='html'>At Stackoverflow, this question: "&lt;span style="background-color: white; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 14px; line-height: 18px; text-align: left;"&gt;&lt;a href="http://stackoverflow.com/questions/1995113/strangest-language-feature"&gt;What is, in your opinion, the most surprising, weird, strange or really "WTF" language feature you have encountered?&lt;/a&gt;&lt;/span&gt;" has a Perl related response (&amp;gt;270 points). The Perl special variables ($@, $", ...) does not seem to be clear for the people. I love it, and if not, use English;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-6410915207899558364?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/6410915207899558364/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/12/most-surprising-weird-strange-or-really.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6410915207899558364'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6410915207899558364'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/12/most-surprising-weird-strange-or-really.html' title='the most surprising, weird, strange or really &quot;WTF&quot; language feature'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-6046668237144852395</id><published>2011-12-11T09:51:00.001+01:00</published><updated>2011-12-11T09:53:18.414+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>(vi) stackoverflow perl report</title><content type='html'>&lt;p&gt;This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br/&gt;Beetwen brackets: question score &amp; answers count&lt;br/&gt;Built date: 2011/12/11 08:51:18 GMT&lt;/p&gt;&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8383527" target="_blank"&gt;Which situations benefit from Perl's study?&lt;/a&gt; - [&lt;b&gt;15&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8399822" target="_blank"&gt;How can I start out with web development using Perl?&lt;/a&gt; - [&lt;b&gt;10&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8418496" target="_blank"&gt;Hash keys encoding: Why do I get here with Devel::Peek::Dump two different results?&lt;/a&gt; - [&lt;b&gt;10&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8455997" target="_blank"&gt;When should I use subroutine attributes?&lt;/a&gt; - [&lt;b&gt;8&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8426520" target="_blank"&gt;What is wrong in this Perl expression?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8389400" target="_blank"&gt;What's the difference between various $SIG{CHLD} values?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8397396" target="_blank"&gt;How to determine Mysql connection ID in Perl?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8410515" target="_blank"&gt;How to connect mysql database and Sybase Database in one connection string in Perl?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8432375" target="_blank"&gt;Perl: LWP::UserAgent returns always code 200 for redirected urls&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8443863" target="_blank"&gt;Getting encoding error when using hash keys to write xml files with XML::LibXML&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/3]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-6046668237144852395?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/6046668237144852395/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/12/vi-stackoverflow-perl-report.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6046668237144852395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6046668237144852395'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/12/vi-stackoverflow-perl-report.html' title='(vi) stackoverflow perl report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-463456492275597065</id><published>2011-12-04T23:05:00.001+01:00</published><updated>2011-12-04T23:05:51.949+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>(v) stackoverflow perl report</title><content type='html'>&lt;p&gt;This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br/&gt;Beetwen brackets: question score &amp; answers count&lt;br/&gt;Built date: 2011/12/04 22:04:32 GMT&lt;/p&gt;&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8330711" target="_blank"&gt;perl: how to get the original regex from the precompiled version?&lt;/a&gt; - [&lt;b&gt;8&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8367789" target="_blank"&gt;Why does Time::HiRes::stat break list subscripting?&lt;/a&gt; - [&lt;b&gt;7&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8318400" target="_blank"&gt;Is there a way to replace an if-elsif-else in Perl with something better?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/6]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8299662" target="_blank"&gt;best way to differentiate between untrue/unpassed args in Perl&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8352417" target="_blank"&gt;What is the correct regular expression in PERL for email validation?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8292333" target="_blank"&gt;Faster searching through files in Perl&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8333675" target="_blank"&gt;How Can I Run a Regex that Tests Text for Characters in a Particular Alphabet or Script?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8349048" target="_blank"&gt;PHP equivelant of Perl line?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8352194" target="_blank"&gt;What is the cause for the error message `SSHConnectionAborted` using Net::SSH::Expect?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8357498" target="_blank"&gt;Performance brake while using reflection $foo-&gt;$bar()&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/3]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-463456492275597065?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/463456492275597065/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/12/v-stackoverflow-perl-report.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/463456492275597065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/463456492275597065'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/12/v-stackoverflow-perl-report.html' title='(v) stackoverflow perl report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-3450478433432324162</id><published>2011-11-27T14:31:00.001+01:00</published><updated>2011-11-27T14:37:34.661+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>(iv) stackoverflow perl report</title><content type='html'>&lt;p&gt;This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br/&gt;Beetwen brackets: question score &amp; answers count&lt;br/&gt;Built date: 2011/11/27 13:30:32 GMT&lt;/p&gt;And I'd like to thank the reference of this work in the great &lt;a href="http://perlweekly.com/"&gt;Perl Weekly&lt;/a&gt; of last week.&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8220726" target="_blank"&gt;What is the '@(' doing in this Perl code?&lt;/a&gt; - [&lt;b&gt;9&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8213164" target="_blank"&gt;Understanding pushing to a hash and ||=[] construct. (generated in boilerplate.t)&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8232951" target="_blank"&gt;Is there such a thing as a list in scalar context?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/6]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8227778" target="_blank"&gt;How to untaint system call in CGI.pm&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8270025" target="_blank"&gt;Regexp doesn't work for specific special characters in Perl&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8206089" target="_blank"&gt;Most efficient way to search very large text file and output lines matching any of a very large number of terms to another file&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8214996" target="_blank"&gt;Using both ARGV and CGI in a Perl script&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8216848" target="_blank"&gt;Perl, comparing scalar to array (with regex?)&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/6]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8247492" target="_blank"&gt;Perl CGI gets parameters from a different request to the current URL&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8250505" target="_blank"&gt;Capture variable assignments in a Perl eval&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/3]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-3450478433432324162?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/3450478433432324162/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/11/iv-stackoverflow-perl-report.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/3450478433432324162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/3450478433432324162'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/11/iv-stackoverflow-perl-report.html' title='(iv) stackoverflow perl report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-4002457370996194309</id><published>2011-11-20T16:06:00.001+01:00</published><updated>2011-11-20T16:07:20.440+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>(iii) stackoverflow perl report</title><content type='html'>&lt;p&gt;This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br/&gt;Beetwen brackets: question score &amp; answers count&lt;br/&gt;Built date: 2011/11/20 15:05:08 GMT&lt;/p&gt;&lt;hr/&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8166123" target="_blank"&gt;In Perl, how can I test whether a sequence is of the form n, n + 1, n + 2, ..., n + k?&lt;/a&gt; - [&lt;b&gt;14&lt;/b&gt;/7]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8150508" target="_blank"&gt;What is @$ref-&gt;{@keys} trying to access?&lt;/a&gt; - [&lt;b&gt;9&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8168139" target="_blank"&gt;align string to a pattern in perl?&lt;/a&gt; - [&lt;b&gt;7&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8200159" target="_blank"&gt;How to share an object which contains a filehandle?&lt;/a&gt; - [&lt;b&gt;7&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8126297" target="_blank"&gt;Why does Perl allow invoking coderefs on unblessed data structures?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8124138" target="_blank"&gt;How to pass optional parameters to a Perl function?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8131541" target="_blank"&gt;Perl: Hash ref accessing array of keys&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8132650" target="_blank"&gt;Is there a way to check for admin rights in Windows with Perl?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8137286" target="_blank"&gt;How do I convert a full path to a relative path using perl?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8141488" target="_blank"&gt;creating csv file with perl&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/1]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-4002457370996194309?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/4002457370996194309/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/11/iii-stackoverflow-perl-report.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/4002457370996194309'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/4002457370996194309'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/11/iii-stackoverflow-perl-report.html' title='(iii) stackoverflow perl report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-982902685256799384</id><published>2011-11-13T14:59:00.001+01:00</published><updated>2011-11-14T14:56:49.254+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>II stackoverflow perl report</title><content type='html'>This is the ten most rated questions at &lt;a href="http://www.stackoverflow.com/"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br /&gt;Beetwen brackets: question score &amp;amp; answers count&lt;br /&gt;Built date: 2011/11/13 13:57:31 GMT&lt;br /&gt;&lt;hr /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8056404" target="_blank"&gt;Is it possible to implement lisp "language" in Perl 6?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8032726" target="_blank"&gt;How do I turn an array returned from a function (like split) into an array reference?&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8038681" target="_blank"&gt;set exit status if perl -cw emits warning&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8073365" target="_blank"&gt;Difference in blowfish encryption between perl and ruby&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8031386" target="_blank"&gt;Perl module loading - Safeguarding against: perhaps you forgot to load "Bla"?&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8050530" target="_blank"&gt;How to get aspect ratio from video file?&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/2]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8066667" target="_blank"&gt;Is there a perl 5.005 core module that would convert epoch seconds to a datetime string?&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/3]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8067732" target="_blank"&gt;Catalyst Controller Questions&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/1]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8069006" target="_blank"&gt;How can I tell which of the alternatives matched in a Perl regular expression pattern?&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/4]&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8072184" target="_blank"&gt;How to limit a request to POST in Catalyst&lt;/a&gt; - [&lt;b&gt;3&lt;/b&gt;/1]&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-982902685256799384?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/982902685256799384/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/11/ii-stackoverflow-perl-report.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/982902685256799384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/982902685256799384'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/11/ii-stackoverflow-perl-report.html' title='II stackoverflow perl report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-412003014631574306</id><published>2011-11-06T17:09:00.000+01:00</published><updated>2011-11-07T08:46:38.288+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Stack Overflow - perl questions report</title><content type='html'>I usually read and answer questions at &lt;a href="http://www.stackoverflow.com/"&gt;Stack Overflow&lt;/a&gt;. With this post, I start a weekly report of the more relevant perl related questions. Hope it will be interesting for you.&lt;br /&gt;&lt;br /&gt;This is the top ten most rated questions at &lt;a href="http://www.stackoverflow.com/"&gt;Stack Overflow&lt;/a&gt; last week.&lt;br /&gt;Beetwen brackets: question score &amp;amp; answers count&lt;br /&gt;Built date: 2011/11/06 16:02:30 GMT&lt;br /&gt;&lt;hr /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7970702" target="_blank"&gt;Simple search and replace without regex&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/5]&lt;div style="font-family: courier; font-size: 9pt;"&gt;(2011/11/01 18:00:19 GMT)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7972318" target="_blank"&gt;How and where can I learn more about the Perl optimizer?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/2]&lt;div style="font-family: courier; font-size: 9pt;"&gt;(2011/11/01 20:13:38 GMT)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7983115" target="_blank"&gt;Are Perl regexes turing complete?&lt;/a&gt; - [&lt;b&gt;6&lt;/b&gt;/2]&lt;div style="font-family: courier; font-size: 9pt;"&gt;(2011/11/02 15:40:12 GMT)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7979851" target="_blank"&gt;How to plan additional tests run by external sub?&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/2]&lt;div style="font-family: courier; font-size: 9pt;"&gt;(2011/11/02 11:52:13 GMT)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/8003415" target="_blank"&gt;Why does print ($a = a..c) produce: 1E0&lt;/a&gt; - [&lt;b&gt;5&lt;/b&gt;/3]&lt;div style="font-family: courier; font-size: 9pt;"&gt;(2011/11/03 23:53:16 GMT)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7950031" target="_blank"&gt;Replace entire paragraph with another from linux command line&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/5]&lt;div style="font-family: courier; font-size: 9pt;"&gt;(2011/10/31 04:32:18 GMT)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7955056" target="_blank"&gt;Perl shallow syntax check? ie. do not check syntax of imports&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/4]&lt;div style="font-family: courier; font-size: 9pt;"&gt;(2011/10/31 14:26:49 GMT)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7961462" target="_blank"&gt;Infinite loop in perl Carp module&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/2]&lt;div style="font-family: courier; font-size: 9pt;"&gt;(2011/11/01 01:00:37 GMT)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7964958" target="_blank"&gt;Installing perl module: cpan shell vs rpm/deb&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/2]&lt;div style="font-family: courier; font-size: 9pt;"&gt;(2011/11/01 10:10:00 GMT)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://stackoverflow.com/questions/7967224" target="_blank"&gt;Reading password protected XLSX on linux (and windows) with Perl&lt;/a&gt; - [&lt;b&gt;4&lt;/b&gt;/2]&lt;div style="font-family: courier; font-size: 9pt;"&gt;(2011/11/01 13:31:32 GMT)&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-412003014631574306?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/412003014631574306/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/11/i-usually-read-and-answer-questions-at.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/412003014631574306'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/412003014631574306'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/11/i-usually-read-and-answer-questions-at.html' title='Stack Overflow - perl questions report'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-9026448442050029047</id><published>2011-09-22T21:02:00.001+02:00</published><updated>2011-09-22T21:28:51.508+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Most RxR modules - top 30</title><content type='html'>The project&amp;nbsp;&lt;a href="http://cpanratings.perl.org/"&gt;http://cpanratings.perl.org&lt;/a&gt;&amp;nbsp;allows us to rate the perl CPAN modules, and it provides interesting information in terms of starts and comments. You can analyze the stats csv file in order to elaborate new stats. The question I'm trying to answer is this: what's the most rated module? ...&lt;br /&gt;&lt;br /&gt;Each line of the CSV file give us the name of the module, the rating (a number between 1 and 5) and the reviews counter. I thought about the list order, which field should I use? After a while, I decided to calculate a new value:&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: red; font-family: 'Courier New', Courier, monospace;"&gt;RxR = Rating x Reviews&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;A simple perl script display the list I was asking for (top 30):&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;# &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Module Name Rating Reviews &amp;nbsp; &amp;nbsp; RxR&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;== ============================== ====== ======= &amp;nbsp;======&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;1 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DBI &amp;nbsp; &amp;nbsp;4.7 &amp;nbsp; &amp;nbsp; 31 &amp;nbsp; &amp;nbsp;145.7&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;2 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Spreadsheet-WriteExcel &amp;nbsp; &amp;nbsp;4.8 &amp;nbsp; &amp;nbsp; 26 &amp;nbsp; &amp;nbsp;124.8&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;3 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Template-Toolkit &amp;nbsp; &amp;nbsp;4.6 &amp;nbsp; &amp;nbsp; 21 &amp;nbsp; &amp;nbsp; 96.6&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;4 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Catalyst-Runtime &amp;nbsp; &amp;nbsp;4.8 &amp;nbsp; &amp;nbsp; 20 &amp;nbsp; &amp;nbsp; &amp;nbsp; 96&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;5 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Devel-NYTProf &amp;nbsp; &amp;nbsp;4.9 &amp;nbsp; &amp;nbsp; 18 &amp;nbsp; &amp;nbsp; 88.2&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;6 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;CGI-Application &amp;nbsp; &amp;nbsp;4.8 &amp;nbsp; &amp;nbsp; 18 &amp;nbsp; &amp;nbsp; 86.4&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;7 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HTML-Template &amp;nbsp; &amp;nbsp;4.1 &amp;nbsp; &amp;nbsp; 21 &amp;nbsp; &amp;nbsp; 86.1&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;8 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;WWW-Mechanize &amp;nbsp; &amp;nbsp;4.6 &amp;nbsp; &amp;nbsp; 18 &amp;nbsp; &amp;nbsp; 82.8&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;9 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dancer &amp;nbsp; &amp;nbsp;3.5 &amp;nbsp; &amp;nbsp; 23 &amp;nbsp; &amp;nbsp; 80.5&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;10 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; XML-Simple &amp;nbsp; &amp;nbsp;4.4 &amp;nbsp; &amp;nbsp; 17 &amp;nbsp; &amp;nbsp; 74.8&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;11 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; DBD-SQLite &amp;nbsp; &amp;nbsp;4.6 &amp;nbsp; &amp;nbsp; 16 &amp;nbsp; &amp;nbsp; 73.6&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;12 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Devel-Cover &amp;nbsp; &amp;nbsp;4.9 &amp;nbsp; &amp;nbsp; 15 &amp;nbsp; &amp;nbsp; 73.5&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;13 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Moose &amp;nbsp; &amp;nbsp;4.9 &amp;nbsp; &amp;nbsp; 15 &amp;nbsp; &amp;nbsp; 73.5&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Class-DBI &amp;nbsp; &amp;nbsp;4.4 &amp;nbsp; &amp;nbsp; 16 &amp;nbsp; &amp;nbsp; 70.4&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;15 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;App-cpanminus &amp;nbsp; &amp;nbsp;5.0 &amp;nbsp; &amp;nbsp; 13 &amp;nbsp; &amp;nbsp; &amp;nbsp; 65&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;16 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; DateTime &amp;nbsp; &amp;nbsp;4.6 &amp;nbsp; &amp;nbsp; 14 &amp;nbsp; &amp;nbsp; 64.4&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;17 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Module-Build &amp;nbsp; &amp;nbsp;3.2 &amp;nbsp; &amp;nbsp; 20 &amp;nbsp; &amp;nbsp; &amp;nbsp; 64&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;18 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ack &amp;nbsp; &amp;nbsp;4.9 &amp;nbsp; &amp;nbsp; 13 &amp;nbsp; &amp;nbsp; 63.7&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;19 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; HTML-Mason &amp;nbsp; &amp;nbsp;4.9 &amp;nbsp; &amp;nbsp; 13 &amp;nbsp; &amp;nbsp; 63.7&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;20 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;POE &amp;nbsp; &amp;nbsp;4.9 &amp;nbsp; &amp;nbsp; 13 &amp;nbsp; &amp;nbsp; 63.7&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;21 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; File-Find-Rule &amp;nbsp; &amp;nbsp;4.5 &amp;nbsp; &amp;nbsp; 14 &amp;nbsp; &amp;nbsp; &amp;nbsp; 63&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;22 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;libwww-perl &amp;nbsp; &amp;nbsp;4.5 &amp;nbsp; &amp;nbsp; 14 &amp;nbsp; &amp;nbsp; &amp;nbsp; 63&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;23 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; DBD-Oracle &amp;nbsp; &amp;nbsp;3.7 &amp;nbsp; &amp;nbsp; 16 &amp;nbsp; &amp;nbsp; 59.2&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;24 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CGI.pm &amp;nbsp; &amp;nbsp;4.5 &amp;nbsp; &amp;nbsp; 13 &amp;nbsp; &amp;nbsp; 58.5&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;25 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; XML-LibXML &amp;nbsp; &amp;nbsp;4.5 &amp;nbsp; &amp;nbsp; 13 &amp;nbsp; &amp;nbsp; 58.5&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;26 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Imager &amp;nbsp; &amp;nbsp;4.8 &amp;nbsp; &amp;nbsp; 12 &amp;nbsp; &amp;nbsp; 57.6&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;27 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MIME-Lite &amp;nbsp; &amp;nbsp;4.8 &amp;nbsp; &amp;nbsp; 12 &amp;nbsp; &amp;nbsp; 57.6&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;28 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;XML-RSS &amp;nbsp; &amp;nbsp;4.1 &amp;nbsp; &amp;nbsp; 14 &amp;nbsp; &amp;nbsp; 57.4&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;29 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; SQL-Translator &amp;nbsp; &amp;nbsp;3.9 &amp;nbsp; &amp;nbsp; 14 &amp;nbsp; &amp;nbsp; 54.6&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; DBIx-Class &amp;nbsp; &amp;nbsp;4.9 &amp;nbsp; &amp;nbsp; 11 &amp;nbsp; &amp;nbsp; 53.9&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I named it: The top RxR module list.&lt;br /&gt;Do you know how many modules are rated? 2707 (11% of the whole), and 1700 has only one review.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-9026448442050029047?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/9026448442050029047/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/09/most-rxr-modules-top-30.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/9026448442050029047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/9026448442050029047'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/09/most-rxr-modules-top-30.html' title='Most RxR modules - top 30'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-2742263506578653255</id><published>2011-09-21T16:00:00.002+02:00</published><updated>2011-09-22T21:29:03.030+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Perl related blog traffic</title><content type='html'>I have written only a few posts of perl related topics (about 30). With the new blogger interface, it's easy to check the &lt;a href="http://www.google.com/analytics/"&gt;google analytics&lt;/a&gt; and obtain a lot of valuable information. It's interesting the wold map with green colors (dark signals more traffic). These are the country stats of my blog:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://chart.googleapis.com/chart?chf=bg,s,EAF7FE&amp;amp;chs=390x205&amp;amp;cht=t&amp;amp;chco=F9FFED,E0FFD5,236A13&amp;amp;chld=ARAUBRCADEESGBNLRUUS&amp;amp;chd=s:JFFHWcQHJ9&amp;amp;chtm=world" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="168" src="http://chart.googleapis.com/chart?chf=bg,s,EAF7FE&amp;amp;chs=390x205&amp;amp;cht=t&amp;amp;chco=F9FFED,E0FFD5,236A13&amp;amp;chld=ARAUBRCADEESGBNLRUUS&amp;amp;chd=s:JFFHWcQHJ9&amp;amp;chtm=world" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;My top ten visitors are from:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;United States&lt;/li&gt;&lt;li&gt;Spain&lt;/li&gt;&lt;li&gt;Germany&lt;/li&gt;&lt;li&gt;United Kingdom&lt;/li&gt;&lt;li&gt;Russia&lt;/li&gt;&lt;li&gt;Argentina&lt;/li&gt;&lt;li&gt;Canada&lt;/li&gt;&lt;li&gt;Netherlands&lt;/li&gt;&lt;li&gt;Brasil&lt;/li&gt;&lt;li&gt;Australia&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;I think the blog language it's the first reason that justifies the territory colors. The second place is justified because of my good friends in Spain. But it's interesting to observe that there isn't any traffic from Africa, and others countries like India...&lt;br /&gt;&lt;br /&gt;Of course, another reason it's the quality of the contents I wrote, but I imagine that the light colors of the map won't vary too much...&lt;br /&gt;&lt;br /&gt;Do you have similar stats you like to share?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-2742263506578653255?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/2742263506578653255/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/09/perl-related-blog-traffic.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/2742263506578653255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/2742263506578653255'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/09/perl-related-blog-traffic.html' title='Perl related blog traffic'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-1538534933075725127</id><published>2011-09-19T21:37:00.001+02:00</published><updated>2011-09-19T21:37:45.086+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Perl Weekly gratitude</title><content type='html'>I am sure you already know the &lt;a href="http://perlweekly.com/"&gt;Perl Weekly newsletter&lt;/a&gt;, a great work of &lt;a href="http://szabgab.com/"&gt;Gabor Szabo&lt;/a&gt;. If not, please take a look at this url:&amp;nbsp;&lt;a href="http://perlweekly.com/"&gt;http://perlweekly.com/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It's not only an integration work about the news, modules, articles, etc. It also includes excellents comments, which are a great summary of the topics they introduce. I recommend you the suscription.&lt;br /&gt;&lt;br /&gt;Every Monday since the project was born, I read the newsletter, and find interesting news and articles. And this morning I saw a link to my article in the "Not Perl" section, &lt;a href="http://niceperl.blogspot.com/2011/09/bootstrap-perl.html"&gt;Bootstrap &amp;amp;&amp;amp; Perl&lt;/a&gt;. It was a pleasure &amp;nbsp;and a surprise. So, thank you Gabor.&lt;br /&gt;&lt;br /&gt;My favorite resources to get information about Perl are the following:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://search.cpan.org/recent"&gt;http://search.cpan.org/recent&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ironman.enlightenedperl.org/"&gt;http://ironman.enlightenedperl.org/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://perlweekly.com/"&gt;http://perlweekly.com/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blogs.perl.org/"&gt;http://blogs.perl.org&lt;/a&gt;/&lt;/li&gt;&lt;li&gt;&lt;a href="http://jobs.perl.org/"&gt;http://jobs.perl.org&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;Have you got anyone not listed? please, write down!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Of course, a lot of blogs indexed by enlightnedperl (I don't want to forget anyone, so I don't enumerate them).&amp;nbsp;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-1538534933075725127?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/1538534933075725127/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/09/perl-weekly-gratitude.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/1538534933075725127'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/1538534933075725127'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/09/perl-weekly-gratitude.html' title='Perl Weekly gratitude'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-6562973555675212643</id><published>2011-09-17T08:40:00.001+02:00</published><updated>2011-09-17T08:43:45.882+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='graphic design'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Bootstrap &amp;&amp; Perl</title><content type='html'>I recently found the &lt;a href="http://twitter.github.com/bootstrap/"&gt;bootstrap twitter project&lt;/a&gt;,&amp;nbsp;which I'm going to use in my projects.&amp;nbsp;Bootstrap is a toolkit from Twitter designed to kickstart development of webapps and sites.&amp;nbsp;It includes base CSS and HTML for typography, forms, buttons, tables, grids, navigation, layouts, and more.&lt;br /&gt;It also supports javascript,&amp;nbsp;and provide you with s&lt;a href="http://twitter.github.com/bootstrap/javascript.html"&gt;ome awesome plugins&lt;/a&gt; to get you started!&lt;br /&gt;This javascript provides a basic interactive layer on top of the included styles.&lt;br /&gt;&lt;br /&gt;Of course, this isn't an only-Perl related topic, but I think it is a very interesting way of improvement for the user interface of any CGI::App, Catalyst, Dancer, Mojolicious, ... &amp;nbsp;application.&lt;br /&gt;&lt;br /&gt;Hope this helps in your next projects.&lt;br /&gt;If you used this tool, it would be nice to hear from you...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-6562973555675212643?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/6562973555675212643/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/09/bootstrap-perl.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6562973555675212643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6562973555675212643'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/09/bootstrap-perl.html' title='Bootstrap &amp;&amp; Perl'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-8454153451305244732</id><published>2011-09-15T21:39:00.000+02:00</published><updated>2011-09-15T21:39:36.325+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Rebecca Perl</title><content type='html'>Hi, Rebecca&lt;br /&gt;I found your video when I was looking for Perl videos at youtube. Perl is a nice programming language, and a lot of clever people uses it every day. It was invented 24 years ago, probably near to your birthday...&lt;br /&gt;You voice is amazing, this song is awesome... this kind of feelings are the same that we get when we work with Perl. From now on, your songs will go along with my work.&lt;br /&gt;Thanks, Rebecca !&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;object width="320" height="266" class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://2.gvt0.com/vi/dG1I7o1LlZ4/0.jpg"&gt;&lt;param name="movie" value="http://www.youtube.com/v/dG1I7o1LlZ4&amp;fs=1&amp;source=uds" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/dG1I7o1LlZ4&amp;fs=1&amp;source=uds" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;$rebecca_perl++;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-8454153451305244732?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/8454153451305244732/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/09/rebecca-perl.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/8454153451305244732'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/8454153451305244732'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/09/rebecca-perl.html' title='Rebecca Perl'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-3641956313278417240</id><published>2011-09-13T22:15:00.000+02:00</published><updated>2011-09-13T22:15:51.402+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Gearman: framework to farm out work</title><content type='html'>&lt;span class="Apple-style-span" style="background-color: white; color: #333333; font-family: 'UbuntuBeta Regular', Ubuntu, 'Bitstream Vera Sans', 'DejaVu Sans', Tahoma, sans-serif; font-size: 16px; line-height: 18px;"&gt;&lt;a href="http://gearman.org/"&gt;Gearman&lt;/a&gt; provides a generic application framework to farm out work to other machines or processes that are better suited to do the work. It allows you to do work in parallel, to load balance processing, and to call functions between languages.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'UbuntuBeta Regular', Ubuntu, 'Bitstream Vera Sans', 'DejaVu Sans', Tahoma, sans-serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div id="__ss_3028682" style="width: 425px;"&gt;&lt;strong style="display: block; margin: 12px 0 4px;"&gt;&lt;a href="http://www.slideshare.net/andy.sh/gearman-and-perl" target="_blank" title="Gearman and Perl"&gt;Gearman and Perl&lt;/a&gt;&lt;/strong&gt; &lt;iframe frameborder="0" height="355" marginheight="0" marginwidth="0" scrolling="no" src="http://www.slideshare.net/slideshow/embed_code/3028682" width="425"&gt;&lt;/iframe&gt; &lt;br /&gt;&lt;div style="padding: 5px 0 12px;"&gt;View more &lt;a href="http://www.slideshare.net/" target="_blank"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/andy.sh" target="_blank"&gt;andy.sh&lt;/a&gt; &lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-3641956313278417240?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/3641956313278417240/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/09/gearman-framework-to-farm-out-work.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/3641956313278417240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/3641956313278417240'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/09/gearman-framework-to-farm-out-work.html' title='Gearman: framework to farm out work'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-8503614801891426044</id><published>2011-09-05T22:50:00.000+02:00</published><updated>2011-09-05T22:50:30.607+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Perl 5.14 slides</title><content type='html'>&lt;div id="__ss_8809465" style="width: 425px;"&gt;&lt;span style="display: block; margin: 12px 0 4px;"&gt;This is a Ricardo Signes' presentation about Perl 5.14 features at slideshare.com&lt;/span&gt;&lt;strong style="display: block; margin: 12px 0 4px;"&gt;&lt;a href="http://www.slideshare.net/rjbs/perl-514-8809465" target="_blank" title="Perl 5.14 for Pragmatists"&gt;Perl 5.14 for Pragmatists&lt;/a&gt;&lt;/strong&gt; &lt;iframe frameborder="0" height="355" marginheight="0" marginwidth="0" scrolling="no" src="http://www.slideshare.net/slideshow/embed_code/8809465" width="425"&gt;&lt;/iframe&gt; &lt;br /&gt;&lt;div style="padding: 5px 0 12px;"&gt;View more &lt;a href="http://www.slideshare.net/" target="_blank"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/rjbs" target="_blank"&gt;Ricardo Signes&lt;/a&gt; &lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-8503614801891426044?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/8503614801891426044/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/09/perl-514-slides.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/8503614801891426044'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/8503614801891426044'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/09/perl-514-slides.html' title='Perl 5.14 slides'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total><georss:featurename>España</georss:featurename><georss:point>40.463667 -3.74922</georss:point><georss:box>34.283161 -13.856642 46.644173 6.3582019999999995</georss:box></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-7462454830307247640</id><published>2011-08-18T19:03:00.001+02:00</published><updated>2011-08-18T19:08:23.557+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='phyton'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Perl vs Python debate live from OSCON 2011</title><content type='html'>An interesting interview between Perl and Python people, I really like this video (OSCON 2011). It was a knights debate, and in my opinion, Perl 1 - Phyton 0. What's yours?&lt;br /&gt;&lt;br /&gt;&lt;iframe allowfullscreen="" frameborder="0" height="345" src="http://www.youtube.com/embed/oeghXnAGJV4" width="560"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-7462454830307247640?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/7462454830307247640/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/08/perl-vs-python-debate-live-from-oscon.html#comment-form' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/7462454830307247640'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/7462454830307247640'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/08/perl-vs-python-debate-live-from-oscon.html' title='Perl vs Python debate live from OSCON 2011'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/oeghXnAGJV4/default.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-5795437297335601353</id><published>2011-04-24T10:08:00.004+02:00</published><updated>2011-08-18T19:59:28.736+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dancer'/><category scheme='http://www.blogger.com/atom/ns#' term='cpan'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>CPAN Module review - Web apps</title><content type='html'>When I'm developing web applications, I use those frameworks that make my work easier. The size of the webs is not big and I have been working with &lt;a href="http://search.cpan.org/perldoc?CGI::Application"&gt;CGI::Application&lt;/a&gt; for years. In a recent search, I have found &lt;a href="http://search.cpan.org/perldoc?Dancer"&gt;Dancer&lt;/a&gt;. This framework handles the routes concept (an idea from &lt;a href="http://www.sinatrarb.com/"&gt;Ruby's Sinatra&lt;/a&gt;); routes are paths which are binded to code. For example:&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#f0f0f0" border="1" cellpadding="7" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;get&lt;/b&gt; '/home' =&amp;gt; &lt;b&gt;sub&lt;/b&gt; { 'Hi, this is home!' };&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;There are a lot of plugins available (database, logging, session handling, REST, AJAX, validation, templates, WebSocket, ...) at CPAN. You can write your own plugin by subclassing &lt;a href="http://search.cpan.org/perldoc?Dancer::Plugin"&gt;Dancer::Plugin&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The framework comes with a script that builds the skeleton of your application, with a nice structure in folders: views, libs, ... it takes seconds to start a new application.&lt;br /&gt;&lt;br /&gt;I &amp;nbsp;definitely recommend &lt;a href="http://search.cpan.org/perldoc?Dancer"&gt;Dancer&lt;/a&gt; to you. Just install and try!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-5795437297335601353?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/5795437297335601353/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/04/cpan-module-review-web-apps.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5795437297335601353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5795437297335601353'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/04/cpan-module-review-web-apps.html' title='CPAN Module review - Web apps'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-4911333542268661090</id><published>2011-04-21T09:54:00.002+02:00</published><updated>2011-04-21T09:56:50.141+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Perl 5.14 - favourite features</title><content type='html'>Perl 5.14 is near to be released, and &lt;a href="http://search.cpan.org/dist/perl-5.14.0-RC1/"&gt;RC1 is out&lt;/a&gt;. I'm reading the perldeltas documents looking for nice features. First of all, I'd like to send my congratulations to this fantastic team of people who has done it possible.&lt;br /&gt;Since Perl 5.13.6 (&lt;a href="http://search.cpan.org/perldoc?perl5136delta"&gt;documentation&lt;/a&gt;), you can now use the keys, values, each builtin functions on arrays (previously you could only use them on hashes). In fact, this feature is available in Perl 5.12, but it was not documented in perldelta, and I'm using it now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-4911333542268661090?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/4911333542268661090/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/04/perl-514-favourite-features.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/4911333542268661090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/4911333542268661090'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/04/perl-514-favourite-features.html' title='Perl 5.14 - favourite features'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-5223140731238359829</id><published>2011-04-15T21:37:00.006+02:00</published><updated>2011-04-15T23:34:56.571+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cpan'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>CPAN Module review - Exceptions</title><content type='html'>I would like to share with you those modules that I use when I perform come kind of tasks. I start this series with exception handling. And the "winner" is... &lt;a href="http://search.cpan.org/perldoc?Try::Tiny"&gt;Try::Tiny&lt;/a&gt; !&lt;br /&gt;&lt;div&gt;Why?&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;nice / sugar syntax&lt;/li&gt;&lt;li&gt;&lt;s&gt;Devel::Declare based (no source filters)&lt;/s&gt;&lt;/li&gt;&lt;li&gt;simple&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;What's your favorite alternative?&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-5223140731238359829?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/5223140731238359829/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2011/04/cpan-module-review-exceptions.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5223140731238359829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5223140731238359829'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2011/04/cpan-module-review-exceptions.html' title='CPAN Module review - Exceptions'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-6336906736705669078</id><published>2010-08-13T19:34:00.003+02:00</published><updated>2011-01-30T22:47:07.016+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='ironman'/><title type='text'>perl upgrade to 5.12</title><content type='html'>This afternoon, at IRC I asked for the best way to upgrade the system perl on my Ubuntu 10. Fortunately, a gentle person answered me in the right and cool direction... &lt;b&gt;perlbrew&lt;/b&gt;&lt;br /&gt;&lt;div&gt;In a few minutes, I searched it at CPAN, readed the documentation, decided to intall it and... voilà... it works!! In my opinion this is a very nice piece of code, and if you don't know it, you must try it. It can download, build, install and manage a set of perl versions, and you will discover a new wonderfull way to work with Perl. Enjoy it and many thanks to that kind of smart people that share amazing tools.... so thaks, Kan-min Liu.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Yo can find perlbrew &lt;a href="http://search.cpan.org/~gugod/App-perlbrew-0.09/lib/App/perlbrew.pm"&gt;here&lt;/a&gt; (CPAN).&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-6336906736705669078?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/6336906736705669078/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2010/08/perl-upgrade-to-512.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6336906736705669078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6336906736705669078'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2010/08/perl-upgrade-to-512.html' title='perl upgrade to 5.12'/><author><name>prz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-6368595067249639943</id><published>2010-04-24T09:34:00.003+02:00</published><updated>2010-04-24T09:42:24.593+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>perl web services</title><content type='html'>I have to write web services, and I'd like to hear from you about your favourites modules in order to do this task. I've used &lt;a href="http://search.cpan.org/dist/SOAP-Lite/lib/SOAP/Lite.pm"&gt;SOAP::Lite&lt;/a&gt;, but I really like to know if this is the best chance at Perl environment. &lt;div&gt;My code has to expose a WSDL interface, and auto-generated way to do this it's required&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-6368595067249639943?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/6368595067249639943/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2010/04/perl-web-services.html#comment-form' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6368595067249639943'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6368595067249639943'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2010/04/perl-web-services.html' title='perl web services'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-6303443234293674144</id><published>2009-11-22T08:25:00.009+01:00</published><updated>2009-11-25T22:02:49.711+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>a picture is worth a thousand words</title><content type='html'>&lt;div&gt;This week in the Perl world we have seen two events that I believe are very important:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;new look and content in &lt;a href="http://www.perl.org/"&gt;http://www.perl.org&lt;/a&gt;&lt;qtlend&gt;&lt;/qtlend&gt;&lt;qtlend&gt;&lt;/qtlend&gt;&lt;/li&gt;&lt;li&gt;new blogging system at &lt;a href="http://blogs.perl.org/"&gt;http://blogs.perl.org&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Such actions are those that cause direct impact on the community attraction, so my sincere congratulations to all involved in them.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In my opinion, Perl has an enormous inner strength, that with relatively little effort may be evident in a simple way to everyone else. &lt;/div&gt;&lt;div&gt;I'm sure when we try to justify the revival of Perl, these two events will be listed. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Good work!&lt;/div&gt;&lt;qtlbar id="qtlbar" dir="ltr" style="padding: 0pt; display: inline; text-align: left; line-height: 100%; background-color: rgb(236, 236, 236); -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -moz-border-radius-bottomright: 3px; -moz-border-radius-bottomleft: 3px; cursor: pointer; z-index: 999; left: 359px; top: 75px; opacity: 0.9;"&gt;&lt;br /&gt;&lt;iframe id="qtlframe" src="" style="border: 1px solid rgb(236, 236, 236); display: none; background-color: white;"&gt;&lt;/iframe&gt;&lt;/qtlbar&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-6303443234293674144?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/6303443234293674144/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/11/picture-is-worth-than-1000-words.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6303443234293674144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/6303443234293674144'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/11/picture-is-worth-than-1000-words.html' title='a picture is worth a thousand words'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-7674199118097195295</id><published>2009-11-17T22:47:00.005+01:00</published><updated>2009-11-17T22:58:04.272+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>choosing a bad module name... Modern::Perl?</title><content type='html'>I have been using Modern::Perl, and it's great. In a unique and single line you can enable all the nice and "modern" features.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But, in my opinion, the name of this module was bad selected. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Why? &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Currently the meaning of modern perl is matched 100% by this module, and this it's Ok; but in 2020 (for instance), modern Perl won't be achieved with Modern::Perl, and we will need other module, similar but different...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The name is nice, but sometimes we have to think in this kind of tips. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-7674199118097195295?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/7674199118097195295/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/11/choosing-bad-module-name-modernperl.html#comment-form' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/7674199118097195295'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/7674199118097195295'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/11/choosing-bad-module-name-modernperl.html' title='choosing a bad module name... Modern::Perl?'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-795983016208738352</id><published>2009-11-11T22:16:00.007+01:00</published><updated>2009-11-11T22:31:44.488+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>perl story</title><content type='html'>In my work, I have a reputation of data-problematic-related fast resolver. Yesterday, I received a ZIP file with 200 Excel files. The problem: each XLS file had a close but different format, with columns changed or dropped. They wanted a complex report with the result of joining all files (in the correct way).&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So I wrote a script with Spreadsheet::ParseExcel (I've used it before), and in a few minutes I had a script that extracted the information and merged it in a simple CSV file. Then I did an import process in Excel and generate the report with dynamic tables. Success!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Perl saved me hours of work (tedious) and made me happy. I often use Perl in this way, doing load, extraction and transformation tasks. I often write little scripts that simplify my work and increase my productivity. That's the reason because I have to resolve many problems of this kind every day ... and I like it.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-795983016208738352?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/795983016208738352/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/11/perl-story.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/795983016208738352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/795983016208738352'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/11/perl-story.html' title='perl story'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-631125546594602841</id><published>2009-10-31T09:16:00.003+01:00</published><updated>2009-11-03T15:49:22.209+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Why should I choose Perl over PHP?</title><content type='html'>A friend of mine, who loves PHP, often tries to convince me to write Web apps in PHP. He knows I am a Perl lover, and I just say: "PHP doesn't like me". But next time he tries it hard, I'd like to put him in troubles with a detailed and specific list of features or issues about Perl-vs-PHP topic.&lt;div&gt;I think experienced programmers appreciate the huge list of features and options available with Perl.&lt;/div&gt;&lt;div&gt;I want to write a list of PHP problems to argue convincingly with my friend.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Could you help me with your opinions?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style=";font-family:Arial,Helvetica,Verdana,Sans;font-size:100%;"  &gt;&lt;span class="Apple-style-span"  style="font-size:13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-631125546594602841?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/631125546594602841/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/10/why-should-i-choose-perl-over-php.html#comment-form' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/631125546594602841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/631125546594602841'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/10/why-should-i-choose-perl-over-php.html' title='Why should I choose Perl over PHP?'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-2018222221681548532</id><published>2009-10-25T19:51:00.010+01:00</published><updated>2009-10-25T21:02:22.058+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Choosing a worker with Perl background</title><content type='html'>Sometimes, I have to participate in interviews with people who wants to work in my company. We have a heterogeneus environment, with many different technologies involved.&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In any case, I prefer to choose a worker with Perl background, why? &lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;We use Perl in many places &lt;/li&gt;&lt;li&gt;If we don't use Perl, I have experimented that people with Perl skills can make a good work in a short period of time&lt;/li&gt;&lt;li&gt;Their mind handles different concepts in a simple and consistent way, and designs they provided are good.&lt;/li&gt;&lt;li&gt;They can work without problems in more than one project at the same time.&lt;/li&gt;&lt;li&gt;In general, their projects are cheaper to maintain (beacuse of 3).&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;In short,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;b&gt;  $my_opinion_about_worker++ if( $perl_background );&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-2018222221681548532?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/2018222221681548532/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/10/choosing-worker-with-perl-background.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/2018222221681548532'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/2018222221681548532'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/10/choosing-worker-with-perl-background.html' title='Choosing a worker with Perl background'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-4794200767113787107</id><published>2009-10-22T21:48:00.004+02:00</published><updated>2009-10-22T21:58:44.660+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='perl6'/><title type='text'>Perl6 - Rakudo #22</title><content type='html'>Hello, I've just read the Rakudo#22 announcement (&lt;a href="http://rakudo.org/node/57"&gt;http://rakudo.org/node/57&lt;/a&gt;), and there is a lot of new improvements. In my opinion, the most important is the first one:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;"Rakudo is now passing 32,582 spectests, an increase of 17,085 passing tests since the September 2009 release. With this release Rakudo is now passing 85.0% of the available spectest suite".&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Wow! 85%! This is very impressive! But, what does this mean?&lt;/div&gt;&lt;div&gt;1. We are running fast to the 1.0 release&lt;/div&gt;&lt;div&gt;2. The spectest is not complete&lt;/div&gt;&lt;div&gt;3. The remaining 15% is complex&lt;/div&gt;&lt;div&gt;4. All options (1-3) are true   &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-4794200767113787107?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/4794200767113787107/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/10/perl6-rakudo-22.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/4794200767113787107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/4794200767113787107'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/10/perl6-rakudo-22.html' title='Perl6 - Rakudo #22'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-7816725540168955540</id><published>2009-10-19T20:25:00.004+02:00</published><updated>2009-10-19T23:41:18.655+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Perl QT</title><content type='html'>Ten years ago, I wrote my first GUI application, using C++ and QT. This framework made easy my work, and I got a good interface with a little ammount of effort. I love it.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, I have to write a GUI, and I can use any language (it's my choice). I'd like to use Perl with QT, but the PerlQt project (&lt;a href="http://perlqt.sourceforge.net/"&gt;http://perlqt.sourceforge.net/&lt;/a&gt;) seems to be paused (last revision: Sept, 2003).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I know there are other options like Tk, WxWidget, but if I'd like to use QT, Perl won't be my choice. I have to use C++ or Java. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-7816725540168955540?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/7816725540168955540/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/10/perl-qt.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/7816725540168955540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/7816725540168955540'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/10/perl-qt.html' title='Perl QT'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-8837648035387143781</id><published>2009-10-12T20:32:00.004+02:00</published><updated>2009-10-12T20:51:49.216+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cpan'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>CPAN download counter</title><content type='html'>Hi, I recently released my first CPAN module, called &lt;a href="http://search.cpan.org/perldoc?SQL::Template"&gt;SQL::Template&lt;/a&gt;. It was a nice experience, because I had to get a new CPAN pause account, and follow the publish procedure.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then, I posted a &lt;a href="http://niceperl.blogspot.com/2009/10/sqltemplate-relased.html"&gt;message in this blog&lt;/a&gt; and have been waiting for feedback. No results, no comments, no news, no bugs in RT...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In IRC channel, I asked if there is any method of getting the number of downloads of my module. A guy said me "no, beacuse CPAN is a highly distributed system, and there isn't a stats collect process". &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I accept this answer, but I'd like to have a metric about the number of downloads or visits that a resource have in CPAN. The exact total number it's hard to get, but any accurately procedure should be investigated. For example, stats from http://search.cpan.org.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-8837648035387143781?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/8837648035387143781/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/10/cpan-download-counter.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/8837648035387143781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/8837648035387143781'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/10/cpan-download-counter.html' title='CPAN download counter'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-4664207155812774129</id><published>2009-10-09T22:30:00.005+02:00</published><updated>2009-10-10T08:32:02.417+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Should Perl5 "stole" other languages features?</title><content type='html'>In a recent group conversation, a friend of mine was talking about features that his favourite programing language (Java) have to include, "stole" from other languages. Another guy tell us other things for his option (Ruby), and so on.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When they ask me about nice features that I would like to have in Perl, I said: well, we don't need to borrow any one from others... In Perl5 we have stolen the nice features from Perl6 !&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What do you think? Should Perl5 stole any feature from other languages?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-4664207155812774129?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/4664207155812774129/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/10/should-perl5-stole-other-languages.html#comment-form' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/4664207155812774129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/4664207155812774129'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/10/should-perl5-stole-other-languages.html' title='Should Perl5 &quot;stole&quot; other languages features?'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-4311104488927023847</id><published>2009-10-05T20:52:00.006+02:00</published><updated>2009-10-05T21:06:25.266+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cpan'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>SQL::Template 0.1.0 released</title><content type='html'>&lt;span class="Apple-style-span"   style="  ;font-family:arial, sans-serif;font-size:medium;"&gt;&lt;p&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Imagine this situation: &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;you know DBI and you like it&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;, because you can make use of your SQL knowledge. But you are not happy having the SQL code into the Perl code. You can use other CPAN modules, which let us to abstract SQL code. But &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;we want to write SQL code&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;, we feel confortable with it.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;The &lt;/span&gt;&lt;/span&gt;&lt;a href="http://search.cpan.org/perldoc?SQL::Template"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;SQL::Template&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; module manages this ideas:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;decoupling SQL sentences from Perl code&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;, writting sentences in a XML file, that you can use in different parts of your code. &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Dynamic test &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;of expressions.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Reuse &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;of SQL fragments.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Simple &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;API (very close to DBI).&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;I invite you to see and use this module (it's production ready). Comments are welcome.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-4311104488927023847?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/4311104488927023847/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/10/sqltemplate-relased.html#comment-form' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/4311104488927023847'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/4311104488927023847'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/10/sqltemplate-relased.html' title='SQL::Template 0.1.0 released'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-2929751627048295397</id><published>2009-10-02T19:16:00.003+02:00</published><updated>2009-10-02T20:50:48.170+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='perl6'/><title type='text'>Why Perl6 won't replace Perl5?</title><content type='html'>Because most of Perl5 programmers aren't going to change a working language with a lot of tools and new enhacements by a new venturesome platform. &lt;div&gt;&lt;br /&gt;&lt;div&gt;Perl6 must look for new people from Ruby, Python (and others) areas; IMO, if it hopes that Perl5 people will use Perl6, it will fail (at least, in next 3-4 years).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And there is a serious risk: Java 7 will have dynamic language support, so it will be hard to compete for Perl6. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I'd like to be wrong. What do you think?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-2929751627048295397?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/2929751627048295397/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/10/why-perl6-wont-replace-perl5.html#comment-form' title='4 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/2929751627048295397'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/2929751627048295397'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/10/why-perl6-wont-replace-perl5.html' title='Why Perl6 won&apos;t replace Perl5?'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-5651566537373927452</id><published>2009-09-29T14:23:00.004+02:00</published><updated>2009-09-29T14:27:33.347+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Why PHP is not my favourite language?</title><content type='html'>Because I'm not a web application developer; I'm an enterprise application developer, who sometimes writes Web apps. So I use Perl.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What are your reasons?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-5651566537373927452?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/5651566537373927452/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/09/why-php-is-not-my-favourite-language.html#comment-form' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5651566537373927452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5651566537373927452'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/09/why-php-is-not-my-favourite-language.html' title='Why PHP is not my favourite language?'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-5402914761051049951</id><published>2009-09-24T19:41:00.003+02:00</published><updated>2009-09-24T19:43:36.861+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Why Perl is my favourite language?</title><content type='html'>"Because it's different, like me"&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please, post your answer to this question, I'll make a resume with them. Thank you!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-5402914761051049951?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/5402914761051049951/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/09/why-perl-is-my-favourite-language.html#comment-form' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5402914761051049951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5402914761051049951'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/09/why-perl-is-my-favourite-language.html' title='Why Perl is my favourite language?'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-1442481418955791560</id><published>2009-09-18T21:40:00.006+02:00</published><updated>2009-09-24T19:44:31.664+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rakudo'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='perl6'/><title type='text'>21 - Perl 6</title><content type='html'>Hola, acaba de salir reciente la última compilación 21 de Rakudo, la implementación de referencia de Perl6. Siempre me ha gustado el 21, quizás por ser el siglo en el que estamos, quizás porque es el día en que cambian las estaciones del año, quizás porque fue el dorsal con el que Perico Delgado ganó aquel mítico Tour de Francia del 88, quien sabe.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Bromas aparte, creo que ya podemos usar una versión bastante evolucionada de la implementación (no para producción, a mi juicio), para ir probando y saboreando sus nuevas características y empezar a escribir al respecto. Sí, ha llegado ese momento largamente esperado de arremangarse y adentrarse en las aguas aún poco profundas del lenguaje.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;El aprendizaje de un nuevo lenguaje nunca me ha preocupado, he llegado a utilizar demasiados como C, C++, Fortran, Basic, Pascal, Perl 5, Java, C#, Groovy, y unos cuantos ensambladores (x86, 68000, MIPS) todos ellos con cierto nivel de profundidad, y en algunos casos con mucho conocimiento. La verdad es que es algo que me llama la atención y me gusta. Ojala pudiese aprender idiomas con la misma facilidad. Ahora llega el momento de coger las riendas de un nuevo caballo llamado Rakudo y me dispongo a disfrutar de la montura, los comienzos serán un momento perfecto para adaptarnos mutuamente. Sí digo bien, adaptarnos.... quiero probar eso de poder hacer mutaciones a mi gusto y tener mi dialecto. Creo que el tema de los &lt;a href="http://en.wikipedia.org/wiki/Domain-specific_language"&gt;DSL &lt;/a&gt;es algo muy importante para los próximos años.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Por otro lado, y es lo que más me preocupa, es que un lenguaje pese a que es fácil de aprender, donde muestra su potencial es en el conjunto de librerías y utilidades que lo complementan.... mucho trabajo por hacer aquí hasta que haya un CPAN6 decente y usable... ahí es donde hay que centrar el esfuerzo en los próximos 2 años, en mi opinión.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Bueno, me auto-deseo suerte, valor y ... al Rakudo! &lt;/div&gt;&lt;div&gt;¿Te animas?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-1442481418955791560?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/1442481418955791560/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/09/21-perl-6.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/1442481418955791560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/1442481418955791560'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/09/21-perl-6.html' title='21 - Perl 6'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-3704630023752003308</id><published>2009-09-11T20:33:00.003+02:00</published><updated>2009-09-11T20:55:03.818+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>I have an idea (2)</title><content type='html'>How can we improve the use of Perl ?&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This is a simple question, many peope has answered it, and in this article I'm going to present my idea in this area. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Often, we say that CPAN is our main tool in order to develop some kind of solution, and we are right. But CPAN provides many different ways to do the same thing, someones are good and others aren't (&lt;a href="http://en.wikipedia.org/wiki/There's_more_than_one_way_to_do_it"&gt;TIMTOWTDI&lt;/a&gt;). CPAN should show the number of downloads of each distribution, and the activity (number of changes per unit of time). We are lazy, I know; but comments in modules and feedback are wellcome. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;With this tools (Perl+CPAN), we need to build applications. Reference applications. There's a few in my opinion. In different areas (not only Web, we are tired). If we can create a set of modelic applications, people will ask for the tools used to build them. This is a very important thing: define a collection of important projects, and assign a development group. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We need to be present at the cloud! it's time for it! &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-3704630023752003308?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/3704630023752003308/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/09/i-have-idea-2.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/3704630023752003308'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/3704630023752003308'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/09/i-have-idea-2.html' title='I have an idea (2)'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-258090283100541903</id><published>2009-09-05T15:00:00.000+02:00</published><updated>2009-09-05T15:00:16.898+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='idea'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>I have an idea (1)</title><content type='html'>&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;Until now, I have written my posts in Spanish. My first idea is turn to English in order to allow more people will be able to read this blog. So, I hope my poor English level won't be an obstable.&lt;br /&gt;With this "&lt;b&gt;I have an idea&lt;/b&gt;" series, I try to explain some ideas that cross my mind. Sometimes they will be crazy, or boring, or interesting.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The first idea title: "&lt;b&gt;PSR - &lt;/b&gt;&lt;b&gt;Perl Specification Request&lt;/b&gt;". Last years, we are experimenting a slow and progressive descrease of Perl-enterpise use. Other platforms like JEE and .NET are growing. We need to improve our presence in this scenario, but how? Perhaps we can pay attention to success projects in this area, and create or improve similar things in our environment. For example, I like the EJB3 model in JEE to build enterprise applications, covering topics like scalability, security, transactions, etc. There is a set of specifications for EJB3, and many providers have built their products according with them.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Perl6 introduced a new concept in our world: specification. Rakudo is one implementation of that one. This is a very important thing, we should use. Why not create a PSR group? His job will be create the specification of hot topic areas, like web objects, persistence, rules, busines process model, validation, etc. The each group of people will implement their own solution. The PSR could propose a test-suite in order to ensure the implementation is correct.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This is a simple idea, but with a big amount of work to do:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Organizative&lt;/b&gt;, in order to identify the specification areas, the specification propossal procedure, the interfaces between specifications, the work plan and scheduled tasks&lt;/li&gt;&lt;li&gt;&lt;b&gt;Technical&lt;/b&gt;, with two levels: first the specification group, which makes the interface definition, defines the funcionality and build the test suite. Second, the workgroup that implements the specification &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;I think we need to improve in a organizated way, and perhaps this idea may be a good starting point in order to define a scenario in which we will feel confortable. Rakudo will be probably released next spring, and this will be a good starting point. The specification model I have proposed may be the main concept to build CPAN 2.0.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What do you think?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-258090283100541903?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/258090283100541903/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/09/i-have-idea-1.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/258090283100541903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/258090283100541903'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/09/i-have-idea-1.html' title='I have an idea (1)'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-5583917384343560199</id><published>2009-09-03T12:15:00.004+02:00</published><updated>2009-09-03T14:14:18.011+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Proxy object</title><content type='html'>Los objetos proxy constituyen un concepto avanzado que se asemeja por completo a los más conocidos servidores proxy, los cuales actúan como intermediarios entre el cliente y el servidor. En nuestro caso, un objeto proxy constituye una especie de envoltorio "invisible" (wrapper) sobre un objeto que es el que al final queremos invocar.&lt;br /&gt;&lt;br /&gt;Probablemente te preguntes para qué te sirve esto, la verdad es que cuando se conoce bien, uno se pregunta como es posible no haber conocido de su existencia previamente. En resumidas cuentas, siempre que tengamos que hacer algo adicional a una simple llamada a un método de un objeto, el Proxy es un buen candidato a cubrir esta necesidad.&lt;br /&gt;&lt;br /&gt;Una razón para controlar el acceso a un objeto, es precisamente aplazar la creación e inicialización del mismo hasta que realmente lo necesitamos (obviamente en aquellos casos en los cuales esto tenga un coste significativo). Un ejemplo puede ser la carga de un documento que contiene además de texto, multitud de imágenes incrustadas. Obviamente no es necesario cargar todas las imágenes al principio, ya que con un alto grado de probabilidad no serán utilizadas inmediatamente. En este caso, conviene realizar la carga bajo demanda, y es donde entra el Proxy ya que a todos los efectos se puede considerar como un objeto del tipo que enmascara (Imagen) pero con capacidad de programar e interceptar la llamada al método que deseemos. Imaginemos que el método es "draw", en este caso aprovechamos en el proxy para crear el objeto Imagen y a continuación invocar a "draw".&lt;br /&gt;&lt;br /&gt;Según el tipo de uso, hay gente que clasifica los objetos Proxy en alguna de las siguientes categorías:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Remote proxy&lt;/b&gt;, que se encarga de codificar la petición y sus argumentos para enviar la solicitud y recibir la respuesta del objeto real. Un ejemplo de esto suelen ser las llamadas a Web Services, que nos aislan de toda la complejidad de tratar con las peticiones sobre la capa de transporte elegida (http, smtp, ...)&lt;/li&gt;&lt;li&gt;&lt;b&gt;Virtual proxy&lt;/b&gt;, para dotar de un nivel de cache al objeto que se está llamado. Imagina aquellas situaciones en las cuales la respuesta del objeto real es la misma ante la misma entrada, el proxy puede cachear las respuestas e invalidar las mismas en base a determinados criterios&lt;/li&gt;&lt;li&gt;&lt;b&gt;Protection proxy&lt;/b&gt;, para verificar si la llamada tiene suficientes privilegios como para poder realizarse&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Bueno, vista la parte "teórica", quizás esté bien ver un poco de código ¿no crees?&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;pre&gt;package Proxy;&lt;br /&gt;use strict;&lt;br /&gt;use Carp;&lt;br /&gt;use UNIVERSAL qw/can/;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;our $AUTOLOAD;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;sub new {&lt;br /&gt;  my ($class, $target) = @_;&lt;br /&gt;  return bless {TARGET=&gt;$target}, $class;&lt;br /&gt;}&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;sub isa {&lt;br /&gt;  my $self = shift;&lt;br /&gt;  return $self-&gt;{TARGET}-&gt;isa(@_);&lt;br /&gt;}&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;sub AUTOLOAD {&lt;br /&gt;  my $self = shift;&lt;br /&gt;  my @params = @_;&lt;br /&gt;  my $method = substr($AUTOLOAD,7);&lt;br /&gt;  return if( $method eq 'DESTROY' );&lt;br /&gt;  my $target = $self-&gt;{TARGET};&lt;br /&gt;  if( defined $target ) {&lt;br /&gt;    if( UNIVERSAL::can($target, $method) ) {&lt;br /&gt;      return $target-&gt;$method(@params);&lt;br /&gt;    }&lt;br /&gt;    else {&lt;br /&gt;      croak "Proxy target doesn't support $method method";&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;  else {&lt;br /&gt;    croak "Proxy target hasn't been set $target";&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;1;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Como puedes observar, se trata de la definición de un módulo Proxy que hace uso del método especial AUTOLOAD de Perl. Recuerda, esta función (si existe) se llama cada vez que no se encuentra un método que se está intentando llamar. En AUTOLOAD, simplemente se verifica que el método existe en el objeto destino, y si es así, se llama.&lt;br /&gt;Para probar esto, imaginemos que tenemos otra clase Persona, muy sencilla (con ayuda de &lt;a href="http://search.cpan.org/perldoc?Class::Accessor"&gt;Class::Accessor&lt;/a&gt;):&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;package Persona;&lt;br /&gt;use base qw(Class::Accessor);&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;Persona-&gt;mk_accessors(qw(name role salary));&lt;br /&gt;&lt;br /&gt;1;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Bueno, hasta ahora nada del otro mundo. Imaginemos ahora que nos piden que la propiedad "salary", cada vez que sea consultada, debe quedar constancia en un fichero de quien lo hizo. Nuestra primera intención podría ser ir a tocar la clase Persona y meter el código donde corresponda. Sin embargo, a mi juicio, eso "ensuciaría" la clase con cuestiones que no le son propias. Y además para algo tengo que utilizar el tema del Proxy, que para eso lo he explicado...&lt;br /&gt;&lt;br /&gt;En primer lugar, creamos una clase que hereda de la anterior y que hace el trabajo de log en el fichero:&lt;br /&gt;&lt;pre&gt;package Proxy::Persona;&lt;br /&gt;&lt;br /&gt;use base 'Proxy';&lt;br /&gt;use strict;&lt;br /&gt;use autodie;&lt;br /&gt;&lt;br /&gt;sub salary {&lt;br /&gt;  my $self = shift;&lt;br /&gt;  my @params = @_;&lt;br /&gt;  if( @params ) {&lt;br /&gt;    $self-&gt;{TARGET}-&gt;salary($params[0]);&lt;br /&gt;  }&lt;br /&gt;  else {&lt;br /&gt;    open my $fh, "&gt;&gt;person.txt";&lt;br /&gt;    my @now = localtime(time);&lt;br /&gt;    printf $fh "[%02d-%02d-%d] %10s %s\n", $now[3], 1+$now[4], 1900+$now[5], getlogin, $self-&gt;{TARGET}-&gt;salary;&lt;br /&gt;    close $fh;&lt;br /&gt;&lt;br /&gt;    return $self-&gt;{TARGET}-&gt;salary;&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;1;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Y a continucación creamos un fichero para probar que esto ha funcionado:&lt;br /&gt;&lt;pre&gt;use Persona;&lt;br /&gt;use Proxy::Persona;&lt;br /&gt;&lt;br /&gt;$p = new Persona;&lt;br /&gt;&lt;br /&gt;$p-&gt;name('JOSE');&lt;br /&gt;$p-&gt;role('MANAGER');&lt;br /&gt;$p-&gt;salary(2000);&lt;br /&gt;&lt;br /&gt;$x = Proxy::Persona-&gt;new($p);&lt;br /&gt;print "Salario: ", $x-&gt;salary(), "\n";&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;Precisamente el último print, es el que sirve para llamar al método proxetizado y hacer el log. Cualquier otra llamada a cualquier otro método de la clase Persona, se llama sin mayor actuación. Es de destacar:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;La clase target (Persona) no se ha modificado para nada&lt;/li&gt;&lt;li&gt;El script que utiliza la clase proxy debe ser modificado ligeramente para crear un objeto de la clase Proxy::Persona&lt;/li&gt;&lt;li&gt;Toda la funcionalidad que deseemos añadir, figura en la clase Proxy::Persona, con lo cual queda mucho más limpio el resto del código que empleamos.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Bien, espero que con esta pequeña aportación, haya quedado mucho más claro para que sirve y cómo podemos beneficiarnos del uso del patrón Proxy.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Me gustaría conocer tus opiniones, no únicamente de este tema, sino de la línea de los artículos, o si hay algún tema que sea de tu interés y que pudiese ser motivo de una entrada. ¡Animo!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-5583917384343560199?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/5583917384343560199/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/09/proxy-object.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5583917384343560199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/5583917384343560199'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/09/proxy-object.html' title='Proxy object'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-2062619393260856747</id><published>2009-08-30T15:59:00.017+02:00</published><updated>2009-10-05T22:08:32.132+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cpan'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>Empaquetado con PAR</title><content type='html'>Durante mucho tiempo, el uso de los diferentes módulos que tenemos a nuestra disposición a través del CPAN nos creaba un pequeños handicap: cuando tenemos que distribuir nuestro programa, es necesario asegurar que todas las dependencias están disponibles para poder ser empleadas. Esto, que a priori debería ser algo sencillo, no ha quedado bien resuelto hasta la aparición del Perl Archiver (&lt;a href="http://search.cpan.org/perldoc?PAR"&gt;PAR&lt;/a&gt;). En resumidas cuentas, &lt;b&gt;PAR nos permite agrupar todos los módulos, ficheros de configuración, recursos y otras dependencias en un único fichero comprimido&lt;/b&gt;, para facilitar su distribución.&lt;div&gt;Imagino que a los que trabajen con Java les resultará familiar este concepto, incluso el nombre que se utiliza es similar (JAR, Java Archiver), que se inspira obviamente en el archiconocido TAR.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;En este artículo trataré de resumir las opciones más importantes de cara al uso de esta estupenda herramienta, que pasa por ser un tanto desconocida pese a que tiene sus orígenes por el año 2003.&lt;/div&gt;&lt;h3&gt;Crear un fichero PAR&lt;/h3&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;(a) El caso sencillo&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Un fichero PAR está comprimido en un formato ZIP, por tanto podremos utilizar nuestra herramienta preferida que maneja este tipo de formatos (por ejemplo, el comando "zip" en Linux, o &lt;a href="http://www.7-zip.org/"&gt;7-zip&lt;/a&gt; en Windows). Imaginemos que deseamos crear el fichero "prueba.par", con un par de módulos de contenido&lt;/div&gt;&lt;pre&gt;%&amp;gt; zip prueba.par Modulo1.pm Prueba/Modulo2.pm&lt;br /&gt;&lt;/pre&gt;&lt;div&gt;Como vemos, podemos (y debemos) incluir las estructuras de directorios que estemos utilizando.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;(b) Algo más habitual...&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;Aunque crear un fichero de esta forma es muy sencillo, en aquellos casos en los cuales tengamos un programa complejo que requiera localizar las dependencias de módulos que tiene, puede llegar a ser tedioso, sobre todo cuando además realizamos cambios en el programa que afectan a esas dependencias. Para estos casos disponemos de una utilidad, el &lt;a href="http://search.cpan.org/perldoc?pp"&gt;PAR Packager&lt;/a&gt; (pp) que se encarga de realizar este tipo de tareas, y que obviamente sólo hay que tener instalado en el equipo de desarrollo, no en los usuarios del fichero PAR que construyamos.&lt;div&gt;Imagina que partimos del "programa.pl" y que deseamos encontrar todas sus dependencias y empaquetarlas en un fichero PAR; simplemente hacemos:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;pre&gt;%&amp;gt; pp -p -o programa.par programa.pl&lt;/pre&gt;&lt;br /&gt;&lt;div&gt;Con "-o" especificamos el fichero PAR de salida que se genera, y "-p" indicamos que deseamos generar un fichero PAR. En este ejemplo, el fichero "programa.par" contiene por tanto, todas las dependencias que se han encontrado. Este fichero se puede utilizar así:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Para visualizarlo, con nuestra herramienta ZIP favorita&lt;/li&gt;&lt;li&gt;Para utilizar los recursos que contiene desde otro programa, como se mostrará más adelante&lt;/li&gt;&lt;li&gt;Para ejecutarlo directamente, ya que el fichero PAR creado de la forma anterior ha incluido el fichero "programa.pl" dentro del mismo, si tenemos instalado el PAR Packager, podemos probarlo sin más que escribir:&lt;/li&gt;&lt;br /&gt;&lt;pre&gt;parl programa.par&lt;/pre&gt;&lt;br /&gt;&lt;li&gt;Si queremos distribuirlo a un equipo en el cual no tenemos PAR PAckager, pero sí PAR, podemos usar la opción "-P" cuando lo creamos&lt;/li&gt;&lt;pre&gt;%&gt; pp -P -o programa_empaquetado.pl programa.pl&lt;br /&gt;%&gt; perl programa_empaquetado.pl&lt;/pre&gt;&lt;/ol&gt;&lt;b&gt;&lt;i&gt;(c) Crear un fichero ejecutable "stand-alone"&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;Una posibilidad muy interesante que nos proporciona el uso de PAR es la capacidad de crear ejecutables que puedan ser utilizados en plataformas donde ni siquiera se ha instalado Perl. Esto es un concepto bastante interesante cuando queremos asegurarnos de que nuestro programa funciona en cualquier sitio, aunque un pequeño detalle es que sólo funcionará en la misma arquitectura en la que fue construido. La herramienta que utilizamos para esto sigue siendo obviamente, "pp".&lt;/div&gt;&lt;div&gt;Siguiendo con los ejemplos anteriores, podemos hacer esto:&lt;/div&gt;&lt;br /&gt;&lt;pre&gt;pp -o programa programa.pl       # en Linux&lt;br /&gt;pp -o programa.exe programa.pl   # en Windows&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;h3&gt;Usar un fichero PAR&lt;/h3&gt;Una ver que disponemos del fichero PAR con un conjunto de módulos, si lo queremos emplear desde nuestro programa, debemos tener instalado en nuestro sistema el módulo &lt;a href="http://search.cpan.org/perldoc?PAR"&gt;PAR&lt;/a&gt;, que lo podemos realizar a través del CPAN, como otro módulo normal. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;En nuestro programa debemos hacer entonces (siguiendo con el ejemplo "prueba.par"):&lt;br /&gt;&lt;pre&gt;use PAR "ejemplo.par";&lt;br /&gt;use Prueba::Modulo2;&lt;br /&gt;#...&lt;br /&gt;&lt;/pre&gt;&lt;div&gt;Como vemos, todo lo necesario está en el fichero ".par", y si queremos ubicarlo en una ubicación específica lo podemos hacer sin más que especificarlo a la hora de utilizarlo:&lt;/div&gt;&lt;br /&gt;&lt;pre&gt;use PAR "/la/ruta/del/fichero/par/ejemplo.par";&lt;br /&gt;use Prueba::Modulo2;&lt;br /&gt;#...&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;h3&gt;Referencias&lt;/h3&gt;Si deseas profundizar, te recomiendo una serie de lecturas:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://par.perl.org/"&gt;Página principal PAR&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://search.cpan.org/perldoc?PAR::Tutorial"&gt;Tutorial PAR&lt;/a&gt;&lt;/li&gt;&lt;li&gt;CPAN, &lt;a href="http://search.cpan.org/perldoc?PAR"&gt;PAR&lt;/a&gt; y &lt;a href="http://search.cpan.org/perldoc?pp"&gt;pp&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;¿Cuáles son tus experiencias en la distribución de tu código Perl?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-2062619393260856747?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/2062619393260856747/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/08/empaquetado-con-par.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/2062619393260856747'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/2062619393260856747'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/08/empaquetado-con-par.html' title='Empaquetado con PAR'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-274316387248891828</id><published>2009-08-28T21:52:00.016+02:00</published><updated>2009-08-30T11:53:35.496+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cpan'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>El sentido común</title><content type='html'>&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;Una de mis aficiones consiste en jugar al ajedrez, y hace unos cuantos años, cayó en mis manos un manual titulado "&lt;a href="http://www.amazon.com/Common-Sense-Chess-Emanuel-Lasker/dp/0486214400"&gt;El sentido común en ajedrez&lt;/a&gt;", de &lt;a href="http://es.wikipedia.org/wiki/Emanuel_Lasker"&gt;Emanuel Lasker&lt;/a&gt;, probablemente uno de los mejores (quizás el número uno) de entre todos los campones de este deporte. Este libro era sencillo, directo y servía para hacer fácil aquellas cosas que podían parecer complicadas en un principio.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Te preguntarás ¿que tiene que ver esto con Perl? Bueno, la verdad que me apetecía contarlo, porque esta tarde encontré en mi estantería este libro, y me ha hecho recordar lo bien que me lo pasé cuando lo leí, hará unos 20 años (!). E inmediatamente, he recordado un módulo curioso y más que recomendable: &lt;a href="http://search.cpan.org/perldoc?common::sense"&gt;common::sense&lt;/a&gt;. Por tanto el nexo de unión entre el ajedrez y Perl en este artículo reside precisamente en el uso del menos común de todos los sentidos.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Pero, ¿en qué consiste el sentido común en Perl? Llevamos ya un tiempecito con la versión 5.10 del lenguaje, y muchos no hacemos uso de una serie de características nuevas (no presentes anteriormentem y que por tanto harían que los scripts no funcionasen en plataformas antiguas).&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="font-family:-webkit-monospace;font-size:100%;"&gt;&lt;span class="Apple-style-span"  style=" white-space: pre;font-size:13px;"&gt;&lt;span class="Apple-style-span"   style="font-family:Georgia;font-size:130%;"&gt;&lt;span class="Apple-style-span"  style=" white-space: normal;font-size:16px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;pre&gt;use common::sense;&lt;br /&gt;&lt;br /&gt;# Es lo mismo que:&lt;br /&gt;#&lt;br /&gt;# use strict qw(vars subs);&lt;br /&gt;# use feature qw(say state switch);&lt;br /&gt;# no warnings;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;como podemos observar, hay un par de curiosidades en el módulo:&lt;div&gt;&lt;ol&gt;&lt;li&gt;&lt;b&gt;no warnings&lt;/b&gt;, parece contrario a lo que uno inicialmente puede pensar, pero tiene su lógica. La activación de warnings debería afectar únicamente a aquellas partes del código que el programador tiene bajo su control, no a aquellas pertenecientes a los módulos que está utilizando. Por tanto, si se activa el flag "-w", hay que asegurar que no va a tener implicaciones en nuestro módulo para que no aporte mensajes que no deberían preocupar al programador que lo use.&lt;/li&gt;&lt;li&gt;&lt;b&gt;use feature&lt;/b&gt;, para poder emplear las nuevas características de la versión 5.10 (las cuales no están disponibles si no se las activa de esta manera). Son las siguientes:&lt;/li&gt;&lt;/ol&gt;&lt;ul&gt;&lt;blockquote&gt;&lt;li&gt;say: es lo mismo que hacer un print añadiendo un "\n" al final de forma implícita.&lt;/li&gt;&lt;li&gt;state: viene a ser un equivalente de las variables de tipo static en C o en Java, es decir se crea e inicializa una única vez&lt;/li&gt;&lt;li&gt;switch: el tan debatido largamente control de flujo de tipo switch, que tiene eso sí una implementación avanzada, donde podemos incluso utilizar expresiones regulares&lt;/li&gt;&lt;/blockquote&gt;&lt;/ul&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;Cabe recordar que la versión 5.10 trae unas cuantas cosas más, y si las queremos activar todas, basta con hacer esto:&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;pre&gt;use feature qw(:5.10);&lt;/pre&gt;&lt;br /&gt;¿y tú, haces uso del sentido común que te propongo?&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-274316387248891828?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/274316387248891828/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/08/el-sentido-comun.html#comment-form' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/274316387248891828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/274316387248891828'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/08/el-sentido-comun.html' title='El sentido común'/><author><name>prz</name><uri>http://www.blogger.com/profile/17989445983340548566</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5910101498857524639.post-148394683803220443</id><published>2009-08-26T23:08:00.005+02:00</published><updated>2009-08-30T11:54:01.920+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='parrot'/><category scheme='http://www.blogger.com/atom/ns#' term='perl6'/><title type='text'>Renacimiento</title><content type='html'>Al igual que la humanidad vivió su época de revitalización cultural en la etapa del Renacimiento, podemos decir que estamos experimentando algo similar en el mundo Perl.&lt;br /&gt;Durante unos cuantos años, hemos podido observar una lenta pero progresiva pérdida de importancia o notoriedad de nuestro viejo y querido lenguaje. Quizás vivimos un mundo en el cual nos hemos acostumbrado a versiones frecuentes en las herramientas que usamos, y en el momento que no se producen nos surgen dudas sobre su viabilidad, y en seguida se oyen los cantos de sirena "... is dead".&lt;br /&gt;&lt;br /&gt;Si bien es cierto que no hemos experimentado un crecimiento significativo en estos años, podemos afirmar que el lenguaje se ha ido dotando de una serie de elementos que lo mantienen muy vivo y en buena forma para afrontar los problemas presentes y futuros. Algunos de estos elementos que comento son los siguientes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://search.cpan.org/"&gt;CPAN&lt;/a&gt;, el pozo de la sabiduría donde uno puede encontrar un módulo para prácticamente cualquier cosa que se le ocurra. Algunos argumentan con razón, que se trata de la killer-app de Perl, en el sentido de que la mayor parte del esfuerzo de la gente se ha centrado en enriquecer CPAN. De hecho, todas aquellas características que se añaden en el core del intérprete, han sido previamente probadas a través de algún módulo publicado en el CPAN.&lt;/li&gt;&lt;li&gt;&lt;a href="http://search.cpan.org/dist/Moose/lib/Moose.pm"&gt;Moose&lt;/a&gt;, por fin una forma de programar orientado a objetos que ha sido muy bien diseñada e implementada &lt;/li&gt;&lt;li&gt;&lt;a href="http://search.cpan.org/perldoc?Padre"&gt;Padre&lt;/a&gt;, un IDE para Perl. Esto sí que es algo que sabrán apreciar todos los programadores acostumbrados a las facilidades que nos da un entorno de este tipo. Aunque está en sus etapas iniciales, ya se puede utilizar y comprobar su potencial &lt;/li&gt;&lt;li&gt;&lt;a href="http://search.cpan.org/~flora/Devel-Declare-0.005011/lib/Devel/Declare.pm"&gt;Devel::Declare&lt;/a&gt;, una forma de modificar el comportamiento de Perl en tiempo de compilación sin necesidad de utilizar filtros de código fuente (que por cierto es otra técnica muy potente, si quieres profundizar, mira el módulo &lt;a href="http://search.cpan.org/perldoc?Filter::Simple"&gt;Filter::Simple&lt;/a&gt;). Permite tomar el control del parser, con lo cual es posible crear nuevas sintaxis... imagina el potencial de esto&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.rakudo.org/"&gt;Perl 6&lt;/a&gt;. Bueno, esto será motivo de una serie de artículos... En cualquier caso, hay que estar preparados para la nueva versión de Perl anunciada para Abril del 2010. En realidad no es un sustituto de Perl 5, ya que éste seguirá su progresión (acaba de salir la versión 5.10.1). Se trata de un nuevo concepto, un nuevo diseño y una nueva implementación que se basa en una máquina virtual &lt;a href="http://www.parrot.org/"&gt;Parrot &lt;/a&gt;especializada en la ejecución de lenguajes dinámicos. Cuando salga la versión 1.0 de Rakudo (así es como se ha denominado la implementación de referencia de Perl6) habrán transcurrido 10 años desde su concepción original.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;A mí particularmente hay una razón de tipo sentimental que me refuerza en el pensamiento que da título al artículo. Creo que toda la gente que trabaja con Perl siente algo especial por este lenguaje, algo que no he percibido en los entornos de otros lenguajes (y conozco unos cuantos). Por eso estoy seguro que Perl está vivo, incluso más vivo que nunca. Dentro de 20 años no sé como se programará o cuales serán las técnicas al uso, pero se que se podrá hacer fácilmente en Perl.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Hay muchas otras razones que sirven para reforzar el mensaje del renacimiento de Perl. Si quieres profundizar en ellas, te recomiendo la lectura de este &lt;a href="http://www.modernperlbooks.com/mt/2009/07/milestones-in-the-perl-renaissance.html"&gt;artículo&lt;/a&gt; (escrito por chromatic, un referente de Perl).&lt;br /&gt;&lt;/p&gt;&lt;p&gt;¿Cuáles son las tuyas? &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5910101498857524639-148394683803220443?l=niceperl.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://niceperl.blogspot.com/feeds/148394683803220443/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://niceperl.blogspot.com/2009/08/renacimiento.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/148394683803220443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5910101498857524639/posts/default/148394683803220443'/><link rel='alternate' type='text/html' href='http://niceperl.blogspot.com/2009/08/renacimiento.html' title='Renacimiento'/><author><name>prz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
