<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">

	<title>Planet Perl</title>
	
	<link href="http://planet.perl.org/" />
	<id>http://planet.perl.org/atom.xml</id>
	<updated>2010-02-10T06:01:47+00:00</updated>
	<generator uri="http://www.planetplanet.org/">Planet/2.0 +http://www.planetplanet.org</generator>

	<feedburner:info uri="planetperl" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://planet.perl.org/atom.xml" /><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Fplanet.perl.org%2Fatom.xml" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Fplanet.perl.org%2Fatom.xml" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Fplanet.perl.org%2Fatom.xml" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://planet.perl.org/atom.xml" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Fplanet.perl.org%2Fatom.xml" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Fplanet.perl.org%2Fatom.xml" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Fplanet.perl.org%2Fatom.xml" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><entry>
		<title type="html">Release Announcements.</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/jIkl8Fhp8uU/8334.html" />
		<id>urn:lj:dreamwidth.org:atom1:csjewell:8334</id>
		<updated>2010-02-10T01:31:56+00:00</updated>
		<content type="html">&lt;blockquote&gt;&lt;br /&gt;Turning and turning in the widening gyre&lt;br /&gt;The falcon cannot hear the falconer;&lt;br /&gt;Things fall apart; the centre cannot hold;&lt;br /&gt;Mere anarchy is loosed upon the world...&lt;br /&gt;Surely some revelation is at hand;&lt;br /&gt;Surely the Second Coming is at hand.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;mdash;William Yates, &lt;i&gt;The Second Coming&lt;/i&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;I've got 3 release announcements to do:  &lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Strawberry Perl January 2010.  &lt;br /&gt;&lt;br /&gt;It's been out for over a week - I really should start writing these release announcements beforehand.  This is an &amp;quot;upgrade version&amp;quot; - The only new module is GDBM_File. There are a number of non-user-facing internals changes, however. Things just got too busy over the holidays to do the user-facing changes that were planned.&lt;br /&gt;&lt;br /&gt;5.10.1.1 is at: &lt;a href="http://strawberry-perl.googlecode.com/files/strawberry-perl-5.10.1.1.msi"&gt;http://strawberry-perl.googlecode.com/files/strawberry-perl-5.10.1.1.msi&lt;/a&gt;&lt;br /&gt;Other releases are mentioned at: &lt;a href="http://strawberryperl.com/releases.html"&gt;http://strawberryperl.com/releases.html&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&amp;quot;Strawberry Perl plus Padre&amp;quot; 0.56.  &lt;br /&gt;&lt;br /&gt;This is the new version of what has been previously called &amp;quot;Padre Standalone&amp;quot;. In this case, it's been updated to the latest versions of both Strawberry Perl and Padre.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://strawberryperl.com/download/padre/strawberry-plus-padre-0.56.msi"&gt;http://strawberryperl.com/download/padre/strawberry-plus-padre-0.56.msi&lt;/a&gt; &lt;a href="http://strawberryperl.com/download/padre/strawberry-plus-padre-0.56.zip"&gt;http://strawberryperl.com/download/padre/strawberry-plus-padre-0.56.zip&lt;/a&gt;  &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&amp;quot;Merge Module&amp;quot; for Strawberry Perl.  &lt;br /&gt;&lt;br /&gt;We're starting to build a merge module that can be used in other Windows Installer packages.  The infrastructure to do this was one of the things that got added to Strawberry Perl in this version.  &lt;br /&gt;&lt;br /&gt;If you're wondering &amp;quot;What is a merge module?&amp;quot; - a merge module is a Windows Installer &amp;quot;sub-package&amp;quot; that can be included in other packages.  &lt;br /&gt;&lt;br /&gt;More documentation about how to include Strawberry Perl in their own software will be posted within the next few days.  &lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;hr /&gt;  &lt;br /&gt;&lt;br /&gt;Plans for April:  &lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Relocatability on install&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&amp;quot;Strawberry Professional&amp;quot;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;64-bit versions&lt;/li&gt;&lt;br /&gt;&lt;li&gt;perl 5.12.x (assuming it gets released soon enough)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Non-admin installation and support&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/jIkl8Fhp8uU" height="1" width="1"/&gt;</content>
		<author>
			<name>csjewell</name>
			<uri>http://csjewell.dreamwidth.org/</uri>
		</author>
		<source>
			<title type="html">Curtis Jewell's Perl stuff</title>
			<subtitle type="html">There really IS more than one way to do it, even on Windows!</subtitle>
			<link rel="self" href="http://csjewell.dreamwidth.org/data/atom" />
			<id>urn:lj:dreamwidth.org:atom1:csjewell</id>
			<updated>2010-02-10T01:41:44+00:00</updated>
		</source>
	<feedburner:origLink>http://csjewell.dreamwidth.org/8334.html</feedburner:origLink></entry>

	<entry>
		<title type="html">Problem with Strawberry + Padre 0.56</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/wMyOcDLv4F4/8490.html" />
		<id>urn:lj:dreamwidth.org:atom1:csjewell:8490</id>
		<updated>2010-02-10T01:29:57+00:00</updated>
		<content type="html">I included a development version of the wxWidgets libraries in the Strawberry+Padre builds, and it turns out that the development version causes Padre to crash upon exit.&lt;br /&gt;&lt;br /&gt;Here's what to do about it, until Padre 0.57 is released and a new build is created:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;rem These 2 lines delete the old version, just to be safe.&lt;br /&gt;del /F c:\strawberry\perl\vendor\lib\Alien\wxWidgets.pm&lt;br /&gt;del /F /S c:\strawberry\perl\vendor\lib\Alien\wxWidgets\*.*&lt;br /&gt;&lt;br /&gt;rem The next command should all be on one line, &lt;br /&gt;rem and will install the fixed libraries.&lt;br /&gt;perl -MPAR::Dist -e"install_par q(&lt;a href="http://www.strawberryperl.com/download/padre/Alien-wxWidgets-0.50-MSWin32-x86-multi-thread-5.10.1.par"&gt;http://www.strawberryperl.com/download/padre/Alien-wxWidgets-0.50-MSWin32-x86-multi-thread-5.10.1.par&lt;/a&gt;)"&lt;br /&gt;&lt;br /&gt;rem This rebuilds the Wx perl connector. &lt;br /&gt;cpan -f Wx&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;(The .par file has now been updated to use wxWidgets 2.8.10 instead of the 2.9.0 that was used.)&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/wMyOcDLv4F4" height="1" width="1"/&gt;</content>
		<author>
			<name>csjewell</name>
			<uri>http://csjewell.dreamwidth.org/</uri>
		</author>
		<source>
			<title type="html">Curtis Jewell's Perl stuff</title>
			<subtitle type="html">There really IS more than one way to do it, even on Windows!</subtitle>
			<link rel="self" href="http://csjewell.dreamwidth.org/data/atom" />
			<id>urn:lj:dreamwidth.org:atom1:csjewell</id>
			<updated>2010-02-10T01:41:44+00:00</updated>
		</source>
	<feedburner:origLink>http://csjewell.dreamwidth.org/8490.html</feedburner:origLink></entry>

	<entry>
		<title type="html">Benchmarking MooseX::Method::Signatures</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/SXo506l0ejw/benchmarking-moosexmethodsignatures.html" />
		<id>tag:blog.urth.org,2010://2.128</id>
		<updated>2010-02-09T18:07:33+00:00</updated>
		<content type="html" xml:lang="en">&lt;p&gt;I've been seeing some talk about &lt;a href="http://search.cpan.org/dist/MooseX-Method-Signatures"&gt;MooseX::Method::Signatures&lt;/a&gt; and its speed. Specifically, &lt;a href="http://blogs.perl.org/users/aevar_arnfjor_bjarmason/2010/02/moosexmethodsignatures-is-really-slow.html"&gt;Ævar Arnfjörð Bjarmason said&lt;/a&gt; says that MXMS is about 4 times slower than a regular method call. He determined this by comparing two different versions of a large program, Hailo. This is interesting, but I think a more focused benchmark might be useful.&lt;/p&gt;

&lt;p&gt;Specifically, I'm interested in comparing MXMS to &lt;em&gt;something else&lt;/em&gt; that does similar validation. One of the main selling points of MXMS is its excellent integration of argument type checking, so it makes no sense to compare MXMS to plain old unchecked method calls. Therefore, I &lt;a href="http://blog.urth.org/mxms-vs-mxpv-benchmark"&gt;made a benchmark&lt;/a&gt; that compares MXMS to &lt;a href="http://search.cpan.org/dist/MooseX-Params-Validate"&gt;MooseX::Params::Validate&lt;/a&gt;. Both MXMS and MXPV provide argument type checking use Moose types. That should eliminate the cost of doing type checking as a variable. If you don't care about type checking, you really don't need MXMS (or MXPV).&lt;/p&gt;

&lt;p&gt;The benchmark has two classes with semantically identical methods doing argument validation. One uses MXMS and the other MXPV. All method calls are wrapped in eval since a validation failure causes an exception. I also tested both success and failure cases. My experience with Params::Validate tells me that there's a big difference in speed between success and failure, and the results bear that out.&lt;/p&gt;

&lt;p&gt;Here's what the benchmark came up with:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;               Rate   MXMS failure   MXPV failure   MXMS success   MXPV success
MXMS failure  262/s             --           -41%           -81%           -94%
MXPV failure  448/s            71%             --           -68%           -90%
MXMS success 1393/s           431%           211%             --           -69%
MXPV success 4545/s          1634%           915%           226%             --
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;First, as I pointed out, there's a big difference between success and failure. I can only assume that throwing an exception is expensive in Perl. Second, the difference between MXMS and MXPV is much greater in the success case. This makes sense if simply throwing an exception is costly.&lt;/p&gt;

&lt;p&gt;It seems that in the success case, MXPV is about 3 times faster than MXMS in the success case. I think the success case is most important, since we probably don't expect a lot of validation failures in our production code.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blog.urth.org/mxms-vs-mxpv-benchmark"&gt;Benchmark code&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/SXo506l0ejw" height="1" width="1"/&gt;</content>
		<author>
			<name>Dave Rolsky</name>
			<uri>http://blog.urth.org/</uri>
		</author>
		<source>
			<title type="html">House Absolute(ly Pointless)</title>
			<subtitle type="html">Unsubstantiated Opinions and Meaningless Blather</subtitle>
			<link rel="self" href="http://blog.urth.org/programming/atom.xml" />
			<id>tag:blog.urth.org,2008-08-19://2</id>
			<updated>2010-02-09T18:21:45+00:00</updated>
		</source>
	<feedburner:origLink>http://blog.urth.org/2010/02/benchmarking-moosexmethodsignatures.html</feedburner:origLink></entry>

	<entry>
		<title type="html">Devel::NYTProf - Perl profiling links needed</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/PTqiidux8Qk/develnytprof---perl-profiling-links-needed.html" />
		<id>tag:blogs.perl.org,2010:/users/leo_lapworth//12.261</id>
		<updated>2010-02-09T08:29:17+00:00</updated>
		<content type="html" xml:lang="en">&lt;p&gt;A conversation on IRC this morning...&lt;/p&gt;

&lt;p&gt;07:46 XXXX damn... is it normal for DProf/Profiler to not work correctly with moose stuff?&lt;br /&gt;
07:46 aaaa people still use dprof?&lt;br /&gt;
07:47 XXXX people who might not be aware of alternatives, sure&lt;br /&gt;
07:48 XXXX what would you suggest instead then?&lt;br /&gt;
07:49 aaaa Devel::NTYProf is THE profiller these days :)&lt;br /&gt;
07:52 XXXX unfortunately googling perl profiling doesn't take you anywhere near it :(&lt;/p&gt;

&lt;p&gt;So, I'd like to talk about &lt;a href="http://search.cpan.org/dist/Devel-NYTProf/"&gt;Perl profiling&lt;/a&gt;, or even &lt;a href="http://search.cpan.org/dist/Devel-NYTProf/"&gt;profiling Perl&lt;/a&gt;. &lt;a href="http://search.cpan.org/dist/Devel-NYTProf/"&gt;Devel::NYTProf&lt;/a&gt; doesn't make the claim that it is THE  &lt;a href="http://search.cpan.org/dist/Devel-NYTProf/"&gt;Perl profiler&lt;/a&gt;, but it really does seem to be the best &lt;a href="http://search.cpan.org/dist/Devel-NYTProf/"&gt;profiler for Perl&lt;/a&gt; that is currently available.&lt;/p&gt;

&lt;p&gt;If you've not come across &lt;a href="http://search.cpan.org/dist/Devel-NYTProf/"&gt;Devel::NYTProf the Perl profiler&lt;/a&gt; please go and give it at try. &lt;/p&gt;

&lt;p&gt;If like me you think it's fantastic, please link to &lt;a href="http://search.cpan.org/dist/Devel-NYTProf/"&gt;http://search.cpan.org/dist/Devel-NYTProf/&lt;/a&gt; in a blog post or from your website with some appropriate link words, so we can let Google know about it, and therefor the rest of the world.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/PTqiidux8Qk" height="1" width="1"/&gt;</content>
		<author>
			<name>Ranguard</name>
			<uri>http://blogs.perl.org/users/leo_lapworth/</uri>
		</author>
		<source>
			<title type="html">Leo Lapworth</title>
			<subtitle type="html">A blog about the Perl programming language</subtitle>
			<link rel="self" href="http://blogs.perl.org/users/leo_lapworth/atom.xml" />
			<id>tag:blogs.perl.org,2009-11-03:/users/leo_lapworth//12</id>
			<updated>2010-02-09T08:41:44+00:00</updated>
		</source>
	<feedburner:origLink>http://blogs.perl.org/users/leo_lapworth/2010/02/develnytprof---perl-profiling-links-needed.html</feedburner:origLink></entry>

	<entry xml:lang="en">
		<title type="html">Can you help identify ambiguous CPAN distributions?</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/a19F9Zi7jKg/" />
		<id>http://www.dagolden.com/?p=675</id>
		<updated>2010-02-09T02:45:06+00:00</updated>
		<content type="html">&lt;p&gt;Hello, Perl community.  As I work on converting legacy &lt;a href="http://www.cpantesters.org/"&gt;CPAN Testers&lt;/a&gt; (CT1.0) reports to the new CPAN Testers 2.0 (CT2.0) format, I&amp;#8217;ve encountered a curious conundrum and could use some volunteer help.&lt;/p&gt;
&lt;p&gt;CT1.0 indexes reports based on the distribution &lt;b&gt;name&lt;/b&gt; and &lt;b&gt;version&lt;/b&gt;, e.g. &amp;#8220;Foo-Bar-1.23&amp;#8243;.  This is an unfortunate historical accident, since &lt;a href="http://pause.perl.org/"&gt;PAUSE&lt;/a&gt; does not prevent uploads with the same file name to &lt;b&gt;different&lt;/b&gt; author directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;JDOE/Foo-Bar-1.23.tar.gz&lt;/li&gt;
&lt;li&gt;JQPUBLIC/Foo-Bar-1.23.tar.gz&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;CT2.0 will index reports based on the full &lt;b&gt;unique&lt;/b&gt; distribution file path.  I&amp;#8217;m currently working on a heuristic to link any given legacy test report (on &amp;#8220;Foo-Bar-1.23&amp;#8243;) with the correct distribution file path for that distribution name and version for the conversion to CT2.0.&lt;/p&gt;
&lt;p&gt;For the most part, it works.  Usually, there is only one distribution file path on &lt;a href="http://backpan.cpan.org/"&gt;BackPAN&lt;/a&gt; that matches.  Sometimes there is more than one possibility, but I&amp;#8217;ve worked out ways to resolve the ambiguity by comparing the possibilities to information in the 01mailrc files or the 02packages.details file.&lt;/p&gt;
&lt;p&gt;But there are about 50 distribution name-version pairs on BackPAN that my heuristic fails to resolve.  Since this is a one-time conversion from CT1.0 to CT2.0, all I need is a mapping file with entries like this for these ambiguous cases:&lt;/p&gt;
&lt;pre class="brush: plain;"&gt;
    YAML-0.39    INGY/YAML-0.39.tar.gz
&lt;/pre&gt;
&lt;p&gt;If you think you can help &amp;#8212; either through some automated approach or just by volunteering your human brain to do some basic research to identify the &amp;#8220;authoritative&amp;#8221; path (e.g. historical author list in the distribution documentation files), that would be a great help for me so I can keep plugging away on the conversion code and other todos.&lt;/p&gt;
&lt;p&gt;Even confirming that the candidates on BackPAN have the same md5 sum would be helpful since then even if we guess the wrong author, the test results are still &amp;#8220;good&amp;#8221; for the mistaken distribution file.&lt;/p&gt;
&lt;p&gt;Here is the list.  The name-version pair is followed by an indented list of possible paths for that pair.&lt;/p&gt;
&lt;pre class="brush: plain;"&gt;
Attribute-Memoize-0.01
  DANKOGAI/Attribute-Memoize-0.01.tar.gz
  MARCEL/Attribute-Memoize-0.01.tar.gz
B-Generate-1.12_03
  JCROMIE/B-Generate-1.12_03.tar.gz
  JJORE/B-Generate-1.12_03.tar.gz
Bundle-Cobalt-0.01
  HARASTY/Bundle-Cobalt-0.01.tar.gz
  JPEACOCK/Bundle-Cobalt-0.01.tar.gz
CDDB-0.9
  FONKIE/CDDB-0.9.tar.gz
  KRAEHE/CDDB-0.9.tar.gz
Catalyst-Plugin-Session-Store-File-0.07
  ESSKAR/Catalyst-Plugin-Session-Store-File-0.07.tar.gz
  KARMAN/Catalyst-Plugin-Session-Store-File-0.07.tar.gz
Catalyst-Plugin-Static-0.05
  MRAMBERG/Catalyst-Plugin-Static-0.05.tar.gz
  SRI/Catalyst-Plugin-Static-0.05.tar.gz
Catalyst-Plugin-Static-Simple-0.14
  AGRUNDMA/Catalyst-Plugin-Static-Simple-0.14.tar.gz
  MRAMBERG/Catalyst-Plugin-Static-Simple-0.14.tar.gz
Crypt-SSLeay-0.51
  CHAMAS/Crypt-SSLeay-0.51.tar.gz
  TAKESAKO/Crypt-SSLeay-0.51.tar.gz
Curses-UI-0.72
  MARCUS/Curses-UI-0.72.tar.gz
  MMAKAAY/Curses-UI-0.72.tar.gz
Curses-UI-0.73
  MARCUS/Curses-UI-0.73.tar.gz
  MMAKAAY/Curses-UI-0.73.tar.gz
DateManip-5.20
  PHOENIX/DateManip-5.20.tar.gz
  SBECK/DateManip-5.20.tar.gz
Finance-Bank-HSBC-1.04
  BISSCUITT/Finance-Bank-HSBC-1.04.tar.gz
  MWILSON/Finance-Bank-HSBC-1.04.tar.gz
Finance-Bank-HSBC-1.05
  BISSCUITT/Finance-Bank-HSBC-1.05.tar.gz
  MWILSON/Finance-Bank-HSBC-1.05.tar.gz
Locale-Object-0.73
  EMARTIN/Locale-Object-0.73.tar.gz
  FOTANGO/Locale-Object-0.73.tar.gz
MARC-0.81
  BBIRTH/MARC-0.81.tar.gz
  ESUMMERS/MARC-0.81.tar.gz
MARC-1.13
  ESUMMERS/MARC-1.13.tar.gz
  PETDANCE/MARC-1.13.tar.gz
Mail-Thread-2.41
  RCLAMP/Mail-Thread-2.41.tar.gz
  SIMON/Mail-Thread-2.41.tar.gz
Math-MatrixReal-1.1
  ANDK/Math-MatrixReal-1.1.tar.gz
  STBEY/Math-MatrixReal-1.1.tar.gz
Maypole-Authentication-Abstract-0.6
  BOBTFISH/Maypole-Authentication-Abstract-0.6.tar.gz
  SRI/Maypole-Authentication-Abstract-0.6.tar.gz
Maypole-Config-YAML-0.1
  BOBTFISH/Maypole-Config-YAML-0.1.tar.gz
  SRI/Maypole-Config-YAML-0.1.tar.gz
Maypole-Loader-0.1
  BOBTFISH/Maypole-Loader-0.1.tar.gz
  SRI/Maypole-Loader-0.1.tar.gz
Maypole-Plugin-Authentication-Abstract-0.10
  BOBTFISH/Maypole-Plugin-Authentication-Abstract-0.10.tar.gz
  SRI/Maypole-Plugin-Authentication-Abstract-0.10.tar.gz
Maypole-Plugin-Component-0.05
  BOBTFISH/Maypole-Plugin-Component-0.05.tar.gz
  SRI/Maypole-Plugin-Component-0.05.tar.gz
Maypole-Plugin-Config-YAML-0.04
  BOBTFISH/Maypole-Plugin-Config-YAML-0.04.tar.gz
  SRI/Maypole-Plugin-Config-YAML-0.04.tar.gz
Maypole-Plugin-Exception-0.03
  BOBTFISH/Maypole-Plugin-Exception-0.03.tar.gz
  SRI/Maypole-Plugin-Exception-0.03.tar.gz
Maypole-Plugin-I18N-0.02
  BOBTFISH/Maypole-Plugin-I18N-0.02.tar.gz
  SRI/Maypole-Plugin-I18N-0.02.tar.gz
Maypole-Plugin-Loader-0.03
  BOBTFISH/Maypole-Plugin-Loader-0.03.tar.gz
  SRI/Maypole-Plugin-Loader-0.03.tar.gz
Maypole-Plugin-Relationship-0.03
  BOBTFISH/Maypole-Plugin-Relationship-0.03.tar.gz
  SRI/Maypole-Plugin-Relationship-0.03.tar.gz
Maypole-Plugin-Transaction-0.02
  BOBTFISH/Maypole-Plugin-Transaction-0.02.tar.gz
  SRI/Maypole-Plugin-Transaction-0.02.tar.gz
Maypole-Plugin-Untaint-0.04
  BOBTFISH/Maypole-Plugin-Untaint-0.04.tar.gz
  SRI/Maypole-Plugin-Untaint-0.04.tar.gz
Net-DNS-0.02
  ANDK/Net-DNS-0.02.tar.gz
  MFUHR/Net-DNS-0.02.tar.gz
Net-SSH2-0.07
  AWA/AWA/Net-SSH2-0.07.tar.gz
  DBROBINS/Net-SSH2-0.07.tar.gz
NetPacket-0.04
  ATRAK/NetPacket-0.04.tar.gz
  CGANESAN/NetPacket-0.04.tar.gz
PDL-2.3.2
  CSOE/PDL-2.3.2.tar.gz
  KGB/PDL-2.3.2.tar.gz
PNGgraph-1.11
  DMOW/PNGgraph-1.11.tar.gz
  SBONDS/PNGgraph-1.11.tar.gz
POE-Session-Attributes-0.01
  CFEDDE/POE-Session-Attributes-0.01.tar.gz
  JSN/POE-Session-Attributes-0.01.tar.gz
Plucene-1.19
  SIMON/Plucene-1.19.tar.gz
  STRYTOAST/Plucene-1.19.tar.gz
RT-Extension-MergeUsers-0.02
  JESSE/RT-Extension-MergeUsers-0.02.tar.gz
  KEVINR/RT-Extension-MergeUsers-0.02.tar.gz
SNMP-1.6
  GSM/SNMP-1.6.tar.gz
  WMARQ/SNMP-1.6.tar.gz
SXIP-Membersite-1.0.0
  KGRENNAN/SXIP-Membersite-1.0.0.tar.gz
  TOKUHIROM/SXIP-Membersite-1.0.0.tar.gz
Scalar-Defer-0.13
  AUDREYT/Scalar-Defer-0.13.tar.gz
  NUFFIN/Scalar-Defer-0.13.tar.gz
Term-Prompt-0.02
  ALLENS/Term-Prompt-0.02.tar.gz
  DAZJORZ/Term-Prompt-0.02.tar.gz
Term-Prompt-0.05
  ALLENS/Term-Prompt-0.05.tar.gz
  DAZJORZ/Term-Prompt-0.05.tar.gz
Test-Warn-0.07
  BIGJ/Test-Warn-0.07.tar.gz
  MPRESSLY/Test-Warn-0.07.tar.gz
Time-0.01
  JPRIT/Time-0.01.tar.gz
  PGOLLUCCI/Time-0.01.tar.gz
Tk-Wizard-Bases-1.07
  LGODDARD/Tk-Wizard-Bases-1.07.tar.gz
  MTHURN/Tk-Wizard-Bases-1.07.tar.gz
UUID-0.03
  CFABER/UUID-0.03.tar.gz
  LZAP/UUID-0.03.tar.gz
Win32-EventLog-Carp-1.21
  IKEBE/Win32-EventLog-Carp-1.21.tar.gz
  RRWO/Win32-EventLog-Carp-1.21.tar.gz
YAML-0.39
  INGY/YAML-0.39.tar.gz
  KING/YAML-0.39.tar.gz
finance-yahooquote_0.19
  DJPADZ/finance-yahooquote_0.19.tar.gz
  EDD/finance-yahooquote_0.19.tar.gz
libapreq-1.33
  GEOFF/libapreq-1.33.tar.gz
  STAS/libapreq-1.33.tar.gz
pg95perl5-1.2.0
  MERGL/pg95perl5-1.2.0.tar.gz
  YVESP/pg95perl5-1.2.0.tar.gz
&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/a19F9Zi7jKg" height="1" width="1"/&gt;</content>
		<author>
			<name>David Golden</name>
			<uri>http://www.dagolden.com</uri>
		</author>
		<source>
			<title type="html">dagolden</title>
			<subtitle type="html">Whatever comes to mind</subtitle>
			<link rel="self" href="http://www.dagolden.com/index.php/feed/" />
			<id>http://www.dagolden.com/index.php/feed/</id>
			<updated>2010-02-09T03:01:05+00:00</updated>
		</source>
	<feedburner:origLink>http://www.dagolden.com/index.php/675/can-you-help-identify-ambiguous-cpan-distributions/</feedburner:origLink></entry>

	<entry xml:lang="en-us">
		<title type="html">Why Ruby is prettier and Padre changes the Perl community</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/tFKY1FUQTok/40170" />
		<id>http://use.perl.org/~Alias/journal/40170?from=rss</id>
		<updated>2010-02-09T02:13:57+00:00</updated>
		<content type="html">&lt;p&gt;Why is PHP so much easier for newbies?&lt;/p&gt;&lt;p&gt;Why does Java have the best IDE tools?&lt;/p&gt;&lt;p&gt;Why is Ruby prettier than Perl?&lt;/p&gt;&lt;p&gt;Why does Perl have the best package repository?&lt;/p&gt;&lt;p&gt;As I've played through &lt;a href="http://masseffect.bioware.com/"&gt;Mass Effect 2&lt;/a&gt; over the last few weeks, I see some interesting parallels.&lt;/p&gt;&lt;p&gt;In the Mass Effect universe, human technology is bootstrapped by the discovery of an ancient abandoned alien observation outpost on Mars, and the further discovery that the dwarf planet Charon is really an abandoned but active interstellar jump gate covered in ice.&lt;/p&gt;&lt;p&gt;Other similar species have done the same, resulting in a galactic community of around a dozen civilisations all based around the same basic technological underpinnings.&lt;/p&gt;&lt;p&gt;Despite these civilisations believing a recently (50,000 years) extinct civilisation built the gates, it turns out the technology is perhaps millions of years old.&lt;/p&gt;&lt;p&gt;Every 50,000 years, the synthetic AI race that built them returns from hiding in intergalactic space to wipe out all of the existing advanced species based on "their" technology, and reset the galaxy for the next set of civilisations to rise.&lt;/p&gt;&lt;p&gt;In a conversation between the game's protagonist and one of these old AIs, we are lambasted by the AI for taking the shortcut on their technology. The jump gates and other technology is left in place intentionally, so that each new generation of civilisations take a controlled and predictable development path, making it easier to destroy them.&lt;/p&gt;&lt;p&gt;The AI posits that it is the overcoming of adversity on your own that drives true technological advancement, and that easy routes make you (technologically) weak.&lt;/p&gt;&lt;p&gt;I think you can see something similar in the development of the different programming languages.&lt;/p&gt;&lt;p&gt;Java is long and wordy, taking a long time to type. The need to work around this limitation resulted in the proliferation of powerful IDEs, resulting in the annual 20 million line of code Eclipse release train.&lt;/p&gt;&lt;p&gt;PHP as a web language would have been stillborn if it didn't deal competently and quickly with the need to easily deploy code, the result of which is that you can effortlessly just change .html to .php, add a hello world tag, and upload via FTP as normal (something Perl still can't do well).&lt;/p&gt;&lt;p&gt;Python's need to gain mindshare against an entrenched Perl led to a huge focus on being easy to learn, to a simplification of the language, and to hugely popular things such as the PyGame library and game competitions.&lt;/p&gt;&lt;p&gt;Faced with the lack of truly great package repository, and with a web-heavy community, Ruby became the "prettiest" language. Creating an elegant website is both expected and required if you are going to gain mindshare for an idea.&lt;/p&gt;&lt;p&gt;And Perl's messy syntax and difficulties in the area of maintaining large codebases, combined with a pragmatic sysadmin-heavy community, resulted in an unmatched packaging system that allowed code to be maintained in small pieces, with enormous volumes of support infrastructure around it.&lt;/p&gt;&lt;p&gt;The ease of publishing and trend to smaller package that the CPAN allowed conversely means that the Perl community has never really had the need for pretty and elaborate websites, and the smaller package size means that we lack the giant headline libraries that make the payoff from website work better.&lt;/p&gt;&lt;p&gt;Our bias towards a pragmatic tech-savvy sysadmin userbase means we haven't really provided anything like the focus on learnability that has driven Python's gradual dominance in the mindshare of the young. It takes a certain rigour in your prioritisation to intentionally remove and dumb down existing powerful features so that the language is easier to learn.&lt;/p&gt;&lt;p&gt;Even for Strawberry, which focuses on the userbase with the lowest traditional knowledge, we intentionally have the smallest and most maintainable website possible and we don't even have the kind of introductory screencasts that we really really need (which should be easy but which I never seem to find the time to do).&lt;/p&gt;&lt;p&gt;If you throw a bunch of Perl coders against some PHP coders in a website competition, it is not unexpected that when both sides play to their strengths you will see something like &lt;a href="http://geo2gov.com.au/html?location=e.g.+1+Oxford+Street"&gt;http://geo2gov.com.au/html?location=e.g.+1+Oxford+Street&lt;/a&gt; from the Perl coders and something like &lt;a href="http://www.hackdays.com/knowwhereyoulive/postcodes/view/2000"&gt;http://www.hackdays.com/knowwhereyoulive/postcodes/view/2000&lt;/a&gt; from the PHP coders.&lt;/p&gt;&lt;p&gt;The former required a massive amount of data extraction, transformation, aggregation, a gigabyte-sized PostGIS database, and deployment via a Linux virtual appliance to Amazon EC2 to allow for strategic load-shedding.&lt;/p&gt;&lt;p&gt;The latter required the ability to turn data into presentable and understandable information for real humans, and to make it pretty enough that they WANT to look at it.&lt;/p&gt;&lt;p&gt;Driving true technological progress, then, may often be about identifying weaknesses that are hard to solve but aren't completely impossible (and don't have any crippling long-term conceptual flaws at an economic or project-management level).&lt;/p&gt;&lt;p&gt;The three best projects I have driven - PPI, Strawberry, and (in part) Padre - all share this property. All three of these represent hard but not impossible problems, and require an awareness about which issues are intractable and which issues merely exist because there's been no need to solve them any better.&lt;/p&gt;&lt;p&gt;Padre in particular has suffered greatly from issues with Wx quality and threading. But given the low takeup of both threading and Wx it was reasonable to move forward on the basis that these would be fixed once there was something depending on them, and driving a need to fix them.&lt;/p&gt;&lt;p&gt;All of our early problems are gone now, and there is continued pressure to find ways to improve our use of (and the efficiency of) Perl's native ithreads.&lt;/p&gt;&lt;p&gt;Similarly, the creation of Strawberry required a lengthy year-long process of fixing Win32 bugs in all kinds of toolchain and low level modules, because we'd never had a proper working developer feedback loop before.&lt;/p&gt;&lt;p&gt;Similarly, Perl's current push for marketing and blogging and websites is directly resulting from Python's success in mindshare capture.&lt;/p&gt;&lt;p&gt;So my question for you to ponder this week is the following:&lt;/p&gt;&lt;p&gt;What can you see that Perl as a whole struggles to do well, for which a good solution is not impossible, and is only being held back by smaller problems which would go away if there was a working candidate solution put in place that needed those small problem solved.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/tFKY1FUQTok" height="1" width="1"/&gt;</content>
		<author>
			<name>Adam Kennedy</name>
			<uri>http://use.perl.org/~Alias/journal/</uri>
		</author>
		<source>
			<title type="html">Alias's Journal</title>
			<subtitle type="html">Alias's use Perl Journal</subtitle>
			<link rel="self" href="http://use.perl.org/~Alias/journal/rss" />
			<id>http://use.perl.org/~Alias/journal/rss</id>
			<updated>2010-02-09T09:01:32+00:00</updated>
			<rights type="html">use Perl; is Copyright 1998-2006, Chris Nandor. Stories, comments, journals, and other submissions posted on use Perl; are Copyright their respective owners.</rights>
		</source>
	<feedburner:origLink>http://use.perl.org/~Alias/journal/40170?from=rss</feedburner:origLink></entry>

	<entry>
		<title type="html">Building RPMs from CPAN Distributions</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/A1TQbJJV_50/building-rpms-from-cpan-distributions.php" />
		<id>tag:perlhacks.com,2010://1.47</id>
		<updated>2010-02-08T15:16:54+00:00</updated>
		<content type="html" xml:lang="en">Regular readers will know that in the past I've shown some interest in &lt;a href="http://www.slideshare.net/davorg/perl-in-rpmland-presentation"&gt;building RPMs from CPAN distributions&lt;/a&gt;. It's been a while since I did much work in this area (although I do still release the occasional module to &lt;a href="http://rpm.mag-sol.com/"&gt;my RPM repository&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Over the weekend I was at FOSDEM and I attended Gabor's talk on &lt;a href="http://fosdem.org/2010/schedule/events/dist_perl_cpan"&gt;packaging CPAN modules for Linux distributions&lt;/a&gt;. This has rekindled my interest in this area and I spent most of the train journey back from Brussels hacking around the area.&lt;br /&gt;&lt;br /&gt;There's one thing that has been bothering me in particular recently. The standard RPM building mechanism (or, at least, the way it's configured in Fedora and Centos) does something incredible brain dead when trying to work out what other modules the current module depends on. It does it by parsing the source code and looking for "use" statements. This means that a module that might only be used in really obscure cases is going to be listed as a mandatory requirement for your module.&lt;br /&gt;&lt;br /&gt;Gabor and I actually saw an example of this over the weekend when the Fedora packaging team raised a bug against &lt;a href="http://search.cpan.org/dist/Padre/"&gt;Padre&lt;/a&gt; because it requires Win32::API. Padre, of course, only uses Win32::API when being used on Windows. And for that reason Win32::API is not listed as a dependency in its &lt;a href="http://cpansearch.perl.org/src/PLAVEN/Padre-0.56/META.yml"&gt;META.yml&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;And that's, of course, where the RPM builders should be going to get a list of dependencies. META.yml contains the list of other modules that the author wants the module to depend on. This should be seen as the definitive list. Of course, there might be errors in that list - but that should be addressed by raising a bug against the module.&lt;br /&gt;&lt;br /&gt;I've poked at this problem a few times, trying to work out how the RPM system parses the code and trying to replace that with code that looks at META.yml instead. But the RPM system uses a baroque system of interdependent macros and eventually they all lead to a piece of rather clunky Perl code. So each time I've approached this problem, I've backed off again.&lt;br /&gt;&lt;br /&gt;The problem became more urgent when I wanted to package &lt;a href="http://search.cpan.org/dist/Plack/"&gt;Plack&lt;/a&gt; for Fedora. Plack supports all sorts of hosting environments and therefore includes "use" statements loading a number of modules that most people will never use. Fedora includes Apache2, so Apache::Request (which is for Apache1) will never be available. It's not listed in &lt;a href="http://search.cpan.org/src/MIYAGAWA/Plack-0.9031/META.yml"&gt;META.YML&lt;/a&gt;, but it is used by one of the modules. The RPM build system was therefore insisting that it should be present. An impasse was reached.&lt;br /&gt;&lt;br /&gt;Then I decided to turn the problem on its head. RPM building has two steps. You create a spec file for the RPM and then you build the RPM using the spec file and your original tarball. I started wondering if I could ensure that the spec had all of the requirements (from the META.yml). Once I'd done that I would only need to find some way to turn off the RPM build system's default behaviour.&lt;br /&gt;&lt;br /&gt;People packaging CPAN modules for Fedora (and Centos) use a program called 'cpanspec' to generate spec files. I started digging into the code there in order to find out how to insert the list of correct dependencies.&lt;br /&gt;&lt;br /&gt;Only to find that it has already been done. cpanspec is already doing the right thing and generating a list of 'Requires' statements from the data in META.yml.&lt;br /&gt;&lt;br /&gt;Then all I needed to do was to see if I could turn off the (broken) default RPM build behaviour which was adding spurious extra dependencies. That proved to be easy too. It's just a case of adding &lt;tt&gt;%__perl_requires %{nil}&lt;/tt&gt; to your .rpmmacros files.&lt;br /&gt;&lt;br /&gt;So now all of my RPMs will have only the correct dependencies listed. This makes me very happy.&lt;br /&gt;&lt;br /&gt;I suppose I should go back and rebuild all of the older ones too.&lt;br /&gt;&lt;br /&gt;Oh, and because I've worked out a really easy way to generate this - here's &lt;a href="http://spreadsheets.google.com/pub?key=tVoSlaYU1SGovwwjV0fqt9Q&amp;amp;output=html"&gt;a spreadsheet listing which CPAN modules are available as RPMs for Fedora&lt;/a&gt;. I plan to keep this list up to date (and make it much longer). [Link now fixed]&lt;br /&gt;&lt;br /&gt;p.s. More about my trip to FOSDEM and the Perl marketing push there over the next couple of days.&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/A1TQbJJV_50" height="1" width="1"/&gt;</content>
		<author>
			<name>Dave Cross</name>
			<uri>http://perlhacks.com/</uri>
		</author>
		<source>
			<title type="html">Perl Hacks</title>
			<subtitle type="html">Just another Perl Blog</subtitle>
			<link rel="self" href="http://perlhacks.com/atom.xml" />
			<id>tag:perlhacks.com,2009-05-18://1</id>
			<updated>2010-02-09T11:01:44+00:00</updated>
		</source>
	<feedburner:origLink>http://perlhacks.com/2010/02/building-rpms-from-cpan-distributions.php</feedburner:origLink></entry>

	<entry>
		<title type="html">Spock and Data look at CPAN</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/JYWGs01paWM/spock-and-data-look-at-cpan.html" />
		<id>tag:blogs.perl.org,2010:/users/jeffrey_kegler//63.256</id>
		<updated>2010-02-08T02:03:32+00:00</updated>
		<content type="html" xml:lang="en">&lt;p&gt;In the two Star Trek series,
the characters of Data and Spock pose a question:
What would it be like to be able to make decisions on a largely,
or even purely, logical basis?
Not widely known is that this is a question with an answer based on
evidence.

&lt;p&gt;Because of tumors, surgery, and accidents,
some unfortunate individuals lose
all or most of their ability to make decisions
based on emotion.
Particularly striking are patients with ventromedial (VM)
damage.
Patients after VM damage seem to function normally.
Their IQ is not impaired, and is sometimes above average.
VM patients also do well on multiple-choice tests aimed
at measuring their ability to make the kind
of decisions needed to
cope with everyday life.

But VM patients do not make real life decisions well.
They cannot hold jobs.
They cannot manage their own financial affairs.
Everyday decisions,
even ones they make successfully on multiple-choice tests,
they are unable to make in real life.
When family is not available to care for them,
people with VM damage
live out their lives
in institutions.

&lt;p&gt;Data and Spock could not function as Starfleet officers.
Why?
Antonio Damasio studied VM patients for many years,
and he gives his answer in the book
&lt;a href="http://www.amazon.com/Descartes-Error-Emotion-Reason-Human/dp/014303622X/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1265594040&amp;amp;sr=8-1"&gt;Descartes' Error&lt;/a&gt;.
Written for the non-specialist,
the book
reveals how we actually make complex decisions,
including complex technical decisions.
It is well worth studying.

&lt;p&gt;Imagine looking for a module on CPAN.
You look at what the modules claim to do.
You note the author's name.
Do you know him from elsewhere?
What did you think of his other work?
You look at the documentation.
Well written?
Does it give you the feeling
that the writer knows what he is talking about?
You read the reviews.
You assess not just what is said, but how the review says it.
Is the reviewer thoughtful or reckless?
Well-informed or a newbie?
Bigoted or open-minded?

&lt;p&gt;These decision variables,
according to Damasio, are matched to "somatic states".
Somatic states can be thought of as snapshots of the body
state, internal and external.
Body chemistry is a major component in a somatic state.
Somatic states embody (pun intended) emotional value judgements.
Somatic states
are the variables in the forebrain's decision-making calculator.

&lt;p&gt;Our somatic state calculator is able to
make complex decisions
in situations where the data is not just uncertain,
but deeply uncertain.
Real-life uncertainty cannot be characterized as
a Bell curve distribution of well-defined variables.
Real-life uncertainty goes deeper than that.
Deep uncertainty cannot be plotted as a distribution.
In a deeply uncertain situation, we are uncertain,
not only about the shape of a probability distribution,
but also about the meaning and significance of the distribution itself.

&lt;p&gt;
Even a relatively structured real-life decision,
like selecting a CPAN module,
is deeply uncertain.
The human brain can make quick
and relatively accurate
decisions in the face of deep uncertainty.
An unemotional thinker
could not effectively choose among CPAN modules,
and could not
make accurate decisions about which programming language
to use.
Data, Spock or a computer might be able to 
deal with
technical subproblems if the subproblems
were structured to eliminate
deep uncertainty,
but their logic would get lost in
the technical decisions that
actually occur in real-life.

&lt;p&gt;Damasio theorizes that
the basic "variables" of our decision making
are body-images.
He uses this hypothesis to outline a mechanism to
explain how human decision-making came to be through evolution.
Earlier brains (perhaps pre-human) would have started by
associating somatic states with actions and/or things in their environment.
Perhaps their memory would have contained action-to-somatic-state pairs like these:

&lt;pre&gt;
    "Tried to eat porcupine" =&gt; "Still hungry and boy do I hurt"
&lt;/pre&gt;
&lt;p&gt;While informative, this by itself does not tell an organism whether it should
avoid all porcupines,
or whether it should merely be more cautious
when they are on the menu.
It would be an evolutionary advantage
to be able to analyze
fact-to-somatic-state data entries like the above
and calculate with them
in complex ways.
Logic would be one tool for doing that.
A creature with some degree of ability to reason logically would have a survival advantage.&lt;/p&gt;

&lt;p&gt;Logical decision-making seems to have evolved from emotion.
It remains rooted in it.
The role of emotion in decision-making is not a useless vestige like the appendix.
We can't cut it out without destroying our decision-making mechanism.

&lt;p&gt;&lt;b&gt;Closing apologies&lt;/b&gt;:
I hope Star Trek fans will forgive my simplified
picture of Spock and Data.
While Spock and Data do not have the usual humanoid emotional lives,
they do have emotional lives,
emotional lives which play major roles in some
episodes.
In fact, the two series
seem to spend more time on Spock's and Data's emotional issues
than on those of anyone else on the Enterprise.
For Spock and Data to function
as well as they do, they would &lt;b&gt;need&lt;/b&gt; to be emotional.
It might be that,
even in fiction,
there is no way of getting around this.

&lt;p&gt;Damasio's theory is complex, and like Spock and Data,
it resists simplification.
I hope my summary will encourage others to read Damasio directly.
&lt;a href="http://www.amazon.com/Descartes-Error-Emotion-Reason-Human/dp/014303622X/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1265594040&amp;amp;sr=8-1"&gt;Descartes' Error&lt;/a&gt; is written for a general audience,
and most of it is about his somatic marker hypothesis.&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/JYWGs01paWM" height="1" width="1"/&gt;</content>
		<author>
			<name>Jeffrey Kegler</name>
			<uri>http://blogs.perl.org/users/jeffrey_kegler/</uri>
		</author>
		<source>
			<title type="html">Ocean of Awareness</title>
			<subtitle type="html">A blog on topics of interest to the Perl and open source communities.</subtitle>
			<link rel="self" href="http://blogs.perl.org/users/jeffrey_kegler/atom.xml" />
			<id>tag:blogs.perl.org,2009-11-03:/users/jeffrey_kegler//63</id>
			<updated>2010-02-08T02:21:33+00:00</updated>
		</source>
	<feedburner:origLink>http://blogs.perl.org/users/jeffrey_kegler/2010/02/spock-and-data-look-at-cpan.html</feedburner:origLink></entry>

	<entry>
		<title type="html">Help keep the world safe from SQL injection</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/_XwzXh-oe8M/help-keep-the-world-safe-from-sql-injection.html" />
		<id>tag:perlbuzz.com,2010://1.761</id>
		<updated>2010-02-06T20:55:45+00:00</updated>
		<content type="html" xml:lang="en">&lt;p&gt;A while back, I put up &lt;a href="http://bobby-tables.com"&gt;bobby-tables.com&lt;/a&gt; as a repository for showing people the right way to handle external data in their SQL calls.  Whenever someone pops up on a mailing list or IRC and they're building SQL statements using external tainted data, you can just refer them to the site.&lt;/p&gt;

&lt;p&gt;In the past few days, I've spiffed up the site (with design help from &lt;a href="http://jeanaclark.org/"&gt;Jeana Clark&lt;/a&gt;) and added pages on &lt;a href="http://bobby-tables.com/perl.html"&gt;Perl&lt;/a&gt; and &lt;a href="http://bobby-tables.com/php.html"&gt;PHP&lt;/a&gt;.  I need more examples, though.  It's 2010, and there's no reason anyone shouldn't know about parameterized SQL calls.&lt;/p&gt;

&lt;p&gt;The site source is &lt;a href="http://github.com/petdance/bobby-tables"&gt;hosted on github&lt;/a&gt;, so if you have any contributions, please fork it and let me know about your applied changes, or you can email me directly.&lt;/p&gt;

&lt;p&gt;Thanks!&lt;/p&gt;

&lt;p&gt;P.S. In the next few days, I hope to fire up some redesign on &lt;a href="http://perl101.org/"&gt;perl101.org&lt;/a&gt;, too.&lt;/p&gt;

        

    &lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PerlBuzz?a=PCYWGTpFDNs:duvaYEU_5FM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PerlBuzz?d=yIl2AUoC8zA" border="0" /&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PerlBuzz?a=PCYWGTpFDNs:duvaYEU_5FM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PerlBuzz?i=PCYWGTpFDNs:duvaYEU_5FM:F7zBnMyn0Lo" border="0" /&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PerlBuzz?a=PCYWGTpFDNs:duvaYEU_5FM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PerlBuzz?i=PCYWGTpFDNs:duvaYEU_5FM:V_sGLiPBpWU" border="0" /&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PerlBuzz?a=PCYWGTpFDNs:duvaYEU_5FM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PerlBuzz?d=qj6IDK7rITs" border="0" /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PerlBuzz/~4/PCYWGTpFDNs" height="1" width="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/_XwzXh-oe8M" height="1" width="1"/&gt;</content>
		<author>
			<name>Andy Lester</name>
			<uri>http://perlbuzz.com/</uri>
		</author>
		<source>
			<title type="html">Perlbuzz</title>
			<subtitle type="html">What's happening in the world of Perl programming, including Perl 5, Perl 6, the CPAN and Parrot?</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/PerlBuzz" />
			<id>tag:perlbuzz.com,2008-11-11://1</id>
			<updated>2010-02-09T19:21:10+00:00</updated>
		</source>
	<feedburner:origLink>http://feedproxy.google.com/~r/PerlBuzz/~3/PCYWGTpFDNs/help-keep-the-world-safe-from-sql-injection.html</feedburner:origLink></entry>

	<entry xml:lang="en">
		<title type="html">An English-only Planet Iron Man</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/IryOVjgO1eI/" />
		<id>http://www.dagolden.com/?p=664</id>
		<updated>2010-02-06T12:55:04+00:00</updated>
		<content type="html">&lt;p&gt;I&amp;#8217;m very happy to know that Perl has global appeal from seeing all the non-English Perl blogs aggregated on &lt;a href="http://ironman.enlightenedperl.org/"&gt;Planet Iron Man&lt;/a&gt;, but since I&amp;#8217;m a (typical American) monoglot, I&amp;#8217;d prefer an Iron Man feed with only English articles.  So I made one.&lt;/p&gt;
&lt;p&gt;It&amp;#8217;s available at &lt;a href="http://feeds.dagolden.com/ironman-english.xml"&gt;http://feeds.dagolden.com/ironman-english.xml&lt;/a&gt;.  It updates hourly from the master feed.&lt;/p&gt;
&lt;p&gt;And for the curious, or for anyone who wants to adapt this for other languages, here&amp;#8217;s the Perl program that I whipped-up to create the feed:&lt;/p&gt;
&lt;pre class="brush: perl;"&gt;
# feedfilter.pl - downloads and filters the Perl Ironman feed for English
# entries. Results sent to STDOUT.
#
# The heuristic filters out entries unless the content is mostly latin
# characters and English is close to the best guess of a language.  Short
# entries with code seem to confuse Lingua::Identify, so we take entries that
# seem &amp;quot;close-enough&amp;quot;.  Tuned via trial-and-error.
#
# Copyright (c) 2010 by David Golden - This may be used or copied under the
# same terms as Perl itself.

use 5.008001;
use strict;
use warnings;
use utf8;
use autodie;

use IO::File;
use Lingua::Identify qw(:language_identification);
use Time::Piece;
use URI;

use XML::Atom::Feed;
$XML::Atom::ForceUnicode = 1;
$XML::Atom::DefaultVersion = &amp;quot;1.0&amp;quot;;

# Global heuristic tuning
my $latin_target = 0.95;  # 95% latin chars
my $lang_fuzz = 0.02;     # English within 2% probability of best language

run();

#--------------------------------------------------------------------------#

sub latin_ratio {
  my $string = shift;
  my $alpha =()= $string =~ /(\p{Alphabetic})/g;
  my $latin =()= $string =~ /(\p{Latin})/g;

  return 0 if ! $latin || !$alpha; # !$alpha probably redundant
  return $latin / $alpha;
}

sub run {
  my $in_feed = XML::Atom::Feed-&amp;gt;new(URI-&amp;gt;new(&amp;quot;http://ironman.enlightenedperl.org&amp;quot;));

  my $out_feed = XML::Atom::Feed-&amp;gt;new;
  $out_feed-&amp;gt;title(&amp;quot;Planet Iron Man: English Edition&amp;quot;);
  $out_feed-&amp;gt;subtitle( $in_feed-&amp;gt;subtitle );
  $out_feed-&amp;gt;id(&amp;quot;tag:feeds.dagolden.com,&amp;quot;.gmtime-&amp;gt;year().&amp;quot;:ironman:english&amp;quot;);
  $out_feed-&amp;gt;generator(&amp;quot;XML::Atom/&amp;quot; . XML::Atom-&amp;gt;VERSION);
  $out_feed-&amp;gt;updated( gmtime-&amp;gt;datetime . &amp;quot;Z&amp;quot; );
  for my $l ( $in_feed-&amp;gt;link ) {
    $out_feed-&amp;gt;link($l);
  }

  for my $e ( $in_feed-&amp;gt;entries ) {
    my $content = $e-&amp;gt;content-&amp;gt;body;
    my $latin = latin_ratio($content);
    my %lang = langof($content);
    my $best = [sort { $lang{$b} &amp;lt;=&amp;gt; $lang{$a} } keys %lang]-&amp;gt;[0];
    $lang{en} ||= 0;
    $out_feed-&amp;gt;add_entry($e)
      if $latin &amp;gt; $latin_target &amp;amp;&amp;amp; ($lang{$best} - $lang{en} &amp;lt; $lang_fuzz);
  }

  binmode(STDOUT, &amp;quot;:utf8&amp;quot;);
  print $out_feed-&amp;gt;as_xml;
}
&lt;/pre&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/IryOVjgO1eI" height="1" width="1"/&gt;</content>
		<author>
			<name>David Golden</name>
			<uri>http://www.dagolden.com</uri>
		</author>
		<source>
			<title type="html">dagolden</title>
			<subtitle type="html">Whatever comes to mind</subtitle>
			<link rel="self" href="http://www.dagolden.com/index.php/feed/" />
			<id>http://www.dagolden.com/index.php/feed/</id>
			<updated>2010-02-09T03:01:05+00:00</updated>
		</source>
	<feedburner:origLink>http://www.dagolden.com/index.php/664/an-english-only-planet-iron-man/</feedburner:origLink></entry>

	<entry xml:lang="en">
		<title type="html">CPAN Testers 2.0 end-January update</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/U72Wh2hRnIg/" />
		<id>http://www.dagolden.com/?p=661</id>
		<updated>2010-02-04T23:45:11+00:00</updated>
		<content type="html">&lt;p&gt;The bad news is that we&amp;#8217;re still about two weeks behind schedule. The good news is that we&amp;#8217;re not falling &lt;em&gt;further&lt;/em&gt; behind and in some areas, we&amp;#8217;re already ahead.&lt;/p&gt;
&lt;p&gt;As I wrote in the &lt;a href="http://www.dagolden.com/index.php/647/cpan-testers-2-0-mid-january-update/"&gt;last update&lt;/a&gt;, a number of my early-January tasks for revising the Metabase libraries didn&amp;#8217;t get done and were blocking progress on other fronts.  That work is now pretty much complete and I&amp;#8217;m ready to turn my attention to the actual migration of legacy reports into a Metabase repository.  Once that&amp;#8217;s done, we&amp;#8217;ll be able to test using it to feed the cpantesters.org databases that Barbie has been preparing for the conversion.&lt;/p&gt;
&lt;p&gt;CPAN Testers 2.0 activity in the last couple weeks:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I revised Metabase framework libraries to separate user profile information and user authentication into separate facts.  This also meant revising the user-profile generation program to match.&lt;/li&gt;
&lt;li&gt;I implemented new Metabase::Resource classes to standardize extraction indexing data from Metabase::Fact resource strings.  (E.g. cpan://distfile/DAGOLDEN/Capture-Tiny-0.07.tar.gz can be indexed under author &amp;#8220;DAGOLDEN&amp;#8221;, distribution name &amp;#8220;Capture-Tiny&amp;#8221;, and so on).  This wasn&amp;#8217;t on the plan, but I discovered that Ricardo and I had never actually gotten around to implementing, so it had to go from stubs to working code.&lt;/li&gt;
&lt;li&gt;I confirmed that despite all the Metabase framework changes, I could still launch a local Metabase server and send CPAN::Reporter test reports via Test::Reporter::Transport::Metabase.  (Thanks to Florian Ragwitz and Matt Trout for patches and guidance respectively on updating the Metabase web server for a more modern Catalyst runtime).&lt;/li&gt;
&lt;li&gt;Barbie converted cpantesters.org backend databases to index on GUIDs instead of NNTP IDs.  Existing legacy report had their NNTP IDs mapped to GUIDs.&lt;/li&gt;
&lt;li&gt;Barbie and I agreed to have cpantesters.org get updates directly from the Amazon back-end rather than going through a web server.  This postpones the need to implement search capability through the web until after launch.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The exact semantics of direct search against the back-end have yet to be worked out, but I&amp;#8217;ve decided to hold off on that until we have a Metabase of historical records to experiment against.  &lt;/p&gt;
&lt;p&gt;At this point, the critical path is the conversion of old articles to the Metabase and the deployment of a web server to inject new reports into it.  I&amp;#8217;m working on the first, and hope to have both of those done by mid Feb.  That leaves us a tight two week period for testing, so stay tuned for the next update.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/U72Wh2hRnIg" height="1" width="1"/&gt;</content>
		<author>
			<name>David Golden</name>
			<uri>http://www.dagolden.com</uri>
		</author>
		<source>
			<title type="html">dagolden</title>
			<subtitle type="html">Whatever comes to mind</subtitle>
			<link rel="self" href="http://www.dagolden.com/index.php/feed/" />
			<id>http://www.dagolden.com/index.php/feed/</id>
			<updated>2010-02-09T03:01:05+00:00</updated>
		</source>
	<feedburner:origLink>http://www.dagolden.com/index.php/661/cpan-testers-2-0-end-january-update/</feedburner:origLink></entry>

	<entry>
		<title type="html">Perlbuzz news roundup for 2010-02-01</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/ljs0dZCdumo/perlbuzz-news-roundup-for-2009-02-01.html" />
		<id>tag:perlbuzz.com,2010://1.760</id>
		<updated>2010-02-04T16:00:00+00:00</updated>
		<content type="html" xml:lang="en">&lt;p&gt;
These links are collected from the
&lt;a href="http://twitter.com/perlbuzz"&gt;Perlbuzz Twitter feed&lt;/a&gt;.
If you have suggestions for news bits, please mail me at
&lt;a href="mailto:andy@perlbuzz.com"&gt;andy@perlbuzz.com&lt;/a&gt;.
&lt;/p&gt;

&lt;ul&gt;

&lt;li&gt;Famous Perl One-Liners Explained, Part IV: String and Array Creation (&lt;a href="http://www.catonmat.net/blog/perl-one-liners-explained-part-four/"&gt;catonmat.net&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Run invdividual Test::Class methods in vim (&lt;a href="http://blogs.perl.org/users/ovid/2010/01/run-individual-testclass-methods-via-vim.html"&gt;blogs.perl.org&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;A regular expression tip every day from &lt;a href="http://twitter.com/regextip"&gt;@regextip&lt;/a&gt; (and not just Perl regexes)&lt;/li&gt;
&lt;li&gt;A few resources for women in open source (&lt;a href="http://www.itworld.com/open-source/92129/a-few-resources-women-open-source"&gt;itworld.com&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;The next QA hackathon: What do you need? (&lt;a href="http://blogs.perl.org/users/ovid/2010/01/next-qa-hackathon----what-do-you-need.html"&gt;blogs.perl.org&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;YAPC::NA 2010 dates announced: June 21-23, 2010 (&lt;a href="http://news.perlfoundation.org/2010/01/yapcna_2010_dates_announced.html"&gt;news.perlfoundation.org&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Pod: Now with sane web links (&lt;a href="http://justatheory.com/computers/programming/perl/sane-pod-links.html"&gt;justatheory.com&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Creating mailing labels with PostScript::MailLabels (&lt;a href="http://blog.worldlabel.com/2010/labels-with-postscriptmaillabels-getting-started-open-source.html"&gt;blog.worldlabel.com&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Ten ways to destroy your community (&lt;a href="http://coffee.geek.nz/10-ways-destroy-your-community.html"&gt;coffee.geek.nz&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Conferences on the cheap (&lt;a href="http://blogs.stpcollaborative.com/matt/2010/01/18/conferences-on-the-cheap/"&gt;blogs.stpcollaborative.com&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Perl 5.11.4 available (&lt;a href="http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2010-01/msg00643.html"&gt;xray.mpe.mpg.de&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Using Perl to find best Wii bundle pricing (&lt;a href="http://blogs.perl.org/users/yary_h/2010/01/bundled-or-unbundled-perl-programming-helps-decide.html"&gt;blogs.perl.org&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Now's the chance for North Americans to easily get to a Nordic Perl Workshop (&lt;a href="http://blogs.perl.org/users/brian_d_foy/2010/01/npw-isnt-going-to-get-any-closer-for-north-americans.html"&gt;blogs.perl.org&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;What is Moose? (&lt;a href="http://perltraining.com.au/tips/2010-01-27.html"&gt;perltraining.com.au&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Pretty Perl (&lt;a href="http://blogs.perl.org/users/su-shee/2010/01/perl-made-all-pretty.html"&gt;blogs.perl.org&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;

        

    &lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PerlBuzz?a=85Ea6dDB9UA:uGx4YPasDsA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PerlBuzz?d=yIl2AUoC8zA" border="0" /&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PerlBuzz?a=85Ea6dDB9UA:uGx4YPasDsA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PerlBuzz?i=85Ea6dDB9UA:uGx4YPasDsA:F7zBnMyn0Lo" border="0" /&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PerlBuzz?a=85Ea6dDB9UA:uGx4YPasDsA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PerlBuzz?i=85Ea6dDB9UA:uGx4YPasDsA:V_sGLiPBpWU" border="0" /&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/PerlBuzz?a=85Ea6dDB9UA:uGx4YPasDsA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PerlBuzz?d=qj6IDK7rITs" border="0" /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PerlBuzz/~4/85Ea6dDB9UA" height="1" width="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/ljs0dZCdumo" height="1" width="1"/&gt;</content>
		<author>
			<name>Andy Lester</name>
			<uri>http://perlbuzz.com/</uri>
		</author>
		<source>
			<title type="html">Perlbuzz</title>
			<subtitle type="html">What's happening in the world of Perl programming, including Perl 5, Perl 6, the CPAN and Parrot?</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/PerlBuzz" />
			<id>tag:perlbuzz.com,2008-11-11://1</id>
			<updated>2010-02-09T19:21:10+00:00</updated>
		</source>
	<feedburner:origLink>http://feedproxy.google.com/~r/PerlBuzz/~3/85Ea6dDB9UA/perlbuzz-news-roundup-for-2009-02-01.html</feedburner:origLink></entry>

	<entry xml:lang="en">
		<title type="html">Using Devel::REPL to develop a mail cleanout script</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/OT7oLcI3dOY/using-develrepl-to-develop-a-mail-cleanout-script.html" />
		<id>tag:vox.com,2007-05-06:asset-6a00cd971ce84f4cd500d41435c3843c7f</id>
		<updated>2010-02-04T11:17:06+00:00</updated>
		<content type="html">&lt;div&gt;
         So, weeks and weeks on from when I planned, I'm finally getting down to sorting my e-mail out. First thing is to pick an IMAP client library. A quick poke for IMAP client libraries on CPAN reveals a few, notably IMAP::Client, Net::IMAP and Net::IM...   &lt;p&gt; 
    &lt;a href="http://chainsawblues.vox.com/library/post/using-develrepl-to-develop-a-mail-cleanout-script.html?_c=feed-atom#comments"&gt;Read and post comments&lt;/a&gt;   |   
    &lt;a href="http://www.vox.com/share/6a00cd971ce84f4cd500d41435c3843c7f?_c=feed-atom"&gt;Send to a friend&lt;/a&gt; 
&lt;/p&gt;

                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/OT7oLcI3dOY" height="1" width="1"/&gt;</content>
		<author>
			<name>mst</name>
			<uri>http://chainsawblues.vox.com/library/posts/page/1/</uri>
		</author>
		<source>
			<title type="html">Chainsaw Blues</title>
			<subtitle type="html">Sufficiently Advanced Insanity</subtitle>
			<link rel="self" href="http://chainsawblues.vox.com/library/posts/atom.xml" />
			<id>tag:vox.com,2006:6p00cd971ce84f4cd5/</id>
			<updated>2010-02-04T11:21:03+00:00</updated>
		</source>
	<feedburner:origLink>http://chainsawblues.vox.com/library/post/using-develrepl-to-develop-a-mail-cleanout-script.html?_c=feed-atom</feedburner:origLink></entry>

	<entry>
		<title type="html">CPAN Testers Summary - January 2010 - The Wedge</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/8VCptOW7UFM/cpan-testers-summary---january-2010---the-wedge.html" />
		<id>tag:blogs.perl.org,2010:/users/cpan_testers//73.242</id>
		<updated>2010-02-04T10:49:36+00:00</updated>
		<content type="html" xml:lang="en">&lt;p&gt;One month to go and work is progressing well on the transformation to &lt;em&gt;&lt;strong&gt;CPAN Testers 2.0&lt;/strong&gt;&lt;/em&gt;. Over the last month many changes to the websites have been visible, but just as many changes have been happening behind the scenes. The Metabase is a key part of the transformation, and although work has been going well, it is reaching the point where it'll need some serious testing prior to switch over on &lt;strong&gt;1st march 2010&lt;/strong&gt;. If you have the time, please join the &lt;em&gt;cpan-testers-discuss&lt;/em&gt; mailing list or contact &lt;em&gt;David Golden&lt;/em&gt; to let him know what you can help with. See David's &lt;a href="http://www.dagolden.com/index.php/647/cpan-testers-2-0-mid-january-update/"&gt;CPAN Testers 2.0 mid-January update&lt;/a&gt; blog post for a more detailed status update.&lt;/p&gt;
&lt;p&gt;In order to reduce the load on the perl.org servers, after the announcement of the switch over, the CPAN Testers agreed to back off their smokers to ease the pressure on the perl.org mail servers. The &lt;em&gt;cpan-testers&lt;/em&gt; mailing list is a very high volume list, and takes up a lot of resources to manage it. Many of the testers throttled back their smoke bots and we did see a dramatic reduction in test reports being submitted. We were aiming for around 5,000 a day maximum. Within a day or two we were successfully below the target.&lt;/p&gt;
&lt;p&gt;However, not all went well. One smoker bot suddenly appeared to go AWOL, and the tester didn't seem to be responding to direct requests to throttle the smoker. Worse still the bulk of reports being produced were bogus. While some PASS reports got through, most were failing due to what appears to be a bad combination of environment and old toolchain software. As this was now polluting the pool of reports at a considerable rate (for every good report submitted, 1 or more was submitted by the bad smoker), something needed to be done to reduce or halt the effects. Several authors were rightly concerned that this would make their distributions look bad on the &lt;a href="http://www.cpantesters.org"&gt;CPAN Testers Reports&lt;/a&gt; site. Thankfully, a new site (more on the later) is in the works which will make this easier to manage, but in the interim a further measure was put in place. I now have the ability to blacklist runaway smokers, by invalidating their reports as the come in. This then means the reports are ignored by the Reports site, the &lt;a href="http://stats.cpantesters.org"&gt;Statistics&lt;/a&gt; site and the rest of the eco-system. I also manually marked all the smoker's reports during January as invalid.&lt;/p&gt;
&lt;p&gt;It transpires that the tester was on holiday and had started off his smokers before he went, without checking to ensure the reports they were sending were valid. Once this tester has upgraded to use the right tools, I'll remove him from the blacklist. However, it is good to know that we can now quickly stop any future runaway smokers before they can do much damage to the reports and statistics.&lt;/p&gt;
&lt;p&gt;Normally one story would be the only excitement of a month, but there was more to come. On 17th January, the CPAN Testers server started show effects of being under attack. In the early hours of 18th January, the server locked up, and required manual intervention to reboot it. Once back online, an investigation through the logs revealled that the MSNBot, as used by Microsoft, had been hitting the server at a rate of knots. In fact, so much so, that the logs began rapidly filling up again after the reboot. After initially blocking the range of IPs, which grew as the day went, I wrote an article and posted to the &lt;a href="http://blog.cpantesters.org/diary/65"&gt;CPAN&lt;/a&gt; &lt;a href="http://blogs.perl.org/users/cpan_testers/2010/01/msnbot-must-die.html"&gt;Testers&lt;/a&gt; blogs to warn anyone who might be using the CPAN Testers server. Little did I realise that the story would spread like wildfire around the world on numerous IT related news networks and blogs! I did get an apology from someone representing the Bing team, but it should never have got to that. Reading many of the comments on various blogs, although a small minority took delight in having a kick at Perl, the majority of posts were in support of the ban, and many even had their own experiences. While I may have been the first to shout loudly, CPAN Testers definitely weren't the first to be knocked out by Microsoft.&lt;/p&gt;
&lt;p&gt;Over a week later, with the ban still in place, and the robots.txt changed to ban all access to msnbot, every hour now the msnbot blasts the server for about 5-10 minutes at the rate of between 4-8 requests a second, mostly from the same 2 IP addresses. So even after banning the bot (it gets a 403) and having an apology from Microsoft, the bot still hasn't learnt to get itself under control. If Microsoft ever want people to take Bing seriously as a search engine, then they need to start acting responsibly, otherwise they are likely to find themselves banned from a good portion of the internet.&lt;/p&gt;
&lt;p&gt;One thing I would like to make clear about the incident, is that all the monitoring of the server is done completely voluntarily. Over the last month this has taken up a lot of spare time, which often wasn't there to begin with. However, the server itself is *NOT* a High-Availability setup, and is *ONE* server on its own. No redundancy (apart from the RAIDed disks) with the web server, database and processing tools all sharing the same physical hardware. If it takes 2 seconds to return a web page, its likely that the server is under considerable load to process incoming reports, running backups or generating web pages, RSS feeds, JSON/YAML files to keep the rest of the eco-system (including CPAN/CPANPLUS, search.cpan.org, etc) able to keep up to date. Taking it out of action is not something that is taken lightly.&lt;/p&gt;
&lt;p&gt;The original post was perhaps rather emotionally put together, and I apologise to anyone who may have got caught in any flak for that. However, I had just woken up and spent much of the morning trying to get the server back online while getting the kids ready for school and heading out to work! With it being a Monday morning too, hopefully it was understandable that a rant ensued. I'll be taking several deep breaths, if (though hopefully not) it happens again!&lt;/p&gt;
&lt;p&gt;As mentioned earlier in the post, and in the previous summary, I did plan to release a new site during January. The CPAN Testers Administration site is still planned to go live, just not yet. With all the changes to the underlying software for CT2.0, there are some changes required for the Administration site that also need to be done. As this isn't live yet, I now consider it a low priority to getting CT2.0 completed, and will now wait until after CT2.0 has gone live, before finishing off the release.&lt;/p&gt;
&lt;p&gt;In the last weekend of January, the biggest changes to the current databases went into effect, with the Metabase GUID now being used. Although the full extent of the change won't be seen until we're using the Metabase for submitting reports, this first shift is an important one. There were a few glitches as I brought the processing tools back online, as I soon discovered little parts that were affected by the change that I hadn't anticipated. Thankfully the errors were minor and all were quickly fixed. The server is now catching up on processing from the weekend, and I anticipate all will be back to normal service within the next day or two.&lt;/p&gt;
&lt;p&gt;To reduce the processing load, &lt;a href="http://blog.cpantesters.org/diary/67"&gt;as mentioned in a previous post&lt;/a&gt;, the database backups are now happening a little less frequently. The CVS backups have now been disabled, with the uploads and release databases both backed up once a day (usually between 00:30 and 02:30 Central European Time). The cpanstats database is currently backed up once an hour, but seeing as the bzip version seems to be only popular with a few people (one being Yahoo! Slurp :)) and only downloaded at most once a day by any single IP (including Yahoo! Slurp ... see Microsoft, some search engines can get it right), I'm considering only generating the bzip version only once a day. I'll watch the logs and see if there are any changes, but if aren't I will likely adjust the backups inline with current requests for the files.&lt;/p&gt;
&lt;p&gt;Along with the backup changes, various other daily server processes have been reviewed and many have been rescheduled to reduce server load. The end result has been to reduce the nightly overheads and hopefully the server will be in a better position to process reports once the CPAN Testers switch to the Metabase and unleash their smokers from the current limiters.&lt;/p&gt;
&lt;p&gt;Last month we had a total of 162 tester addresses submitting reports. The mappings this month included 21 total addresses mapped, of which 7 were for newly identified testers. Another low mapping month, due to work being done on CPAN Testers as a whole.&lt;/p&gt;
&lt;p&gt;A long summary this month, but then a lot has been happening. Expect updates throughout the month as various parts of CT2.0 undergo testing, and we start to see the results of all the hard work of the past couple of years. The future is nigh.&lt;/p&gt;            
&lt;p&gt;Cross-posted from the &lt;a href="http://blog.cpantesters.org/diary/68"&gt;CPAN Testers Blog&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/8VCptOW7UFM" height="1" width="1"/&gt;</content>
		<author>
			<name>CPAN Testers</name>
			<uri>http://blogs.perl.org/users/cpan_testers/</uri>
		</author>
		<source>
			<title type="html">CPAN Testers</title>
			<subtitle type="html">A blog about the Perl programming language</subtitle>
			<link rel="self" href="http://blogs.perl.org/users/cpan_testers/atom.xml" />
			<id>tag:blogs.perl.org,2009-11-03:/users/cpan_testers//73</id>
			<updated>2010-02-04T11:01:26+00:00</updated>
		</source>
	<feedburner:origLink>http://blogs.perl.org/users/cpan_testers/2010/02/cpan-testers-summary---january-2010---the-wedge.html</feedburner:origLink></entry>

	<entry xml:lang="en-us">
		<title type="html">microsoft customer service madness</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/AHzj4IjEG-s/1815" />
		<id>http://rjbs.manxome.org/rubric/entry/1815</id>
		<updated>2010-02-04T00:00:10+00:00</updated>
		<content type="html">&lt;p&gt;In January, I ordered an &lt;a href="http://www.amazon.com/Xbox-360-Play-Charge-Kit/dp/B000B6MLS2"&gt;Xbox 360 Play &amp;amp; Charge
Kit&lt;/a&gt; from Amazon.
It's a NiMH battery pack with a USB cable to connect the controller (also a
charger) to the Xbox.  It arrived a few days later.  While the cable would
power the controller, its "charging" light wouldn't come on and it didn't seem
to be charging the controller.  The kit came with a piece of paper that said,
"In case of problems, do not return!  Contact Microsoft!"&lt;/p&gt;

&lt;p&gt;It didn't say how to do that, but I found a way to do it online (it wasn't
very easy, either) and after a few emails, they told me to phone them.  On the
phone, they gave me a mailing address.  "Send the kit here and we will send you
a replacement."  That sounded fair, so I did so.&lt;/p&gt;

&lt;p&gt;Today, I got a package in the mail from Microsoft.  I opened it, and it
contained an &lt;a href="http://www.amazon.com/Xbox-360-Quick-Charge-Kit/dp/B000EYF88G"&gt;Xbox 360 Quick Charge
Kit&lt;/a&gt;.  This is a
slightly different product.  It's more expensive, but does not allow you to
play while you charge.  Without two battery packs, it's not very useful, and it
only comes with one.&lt;/p&gt;

&lt;p&gt;I called Microsoft to explain their error, and after &lt;em&gt;a lot&lt;/em&gt; of explaining, the
representative asked me for my tracking number for the item I sent to their
returns facility.  I said, "I never got one."  He hissed and said he'd &lt;em&gt;try&lt;/em&gt; to
help, but that without a tracking number, they couldn't prove that the facility
had ever received my original item.&lt;/p&gt;

&lt;p&gt;"Well," I said, "you sent me a replacement, so surely you did it after
receiving something.  Also, the replacement is in a box labeled with my RMA
number."&lt;/p&gt;

&lt;p&gt;This didn't mean much to him.  He said I should go to the local USPS office and
ask for my tracking number.  I assured him that this was not possible.  USPS
does not have a tracking number for every parcel, unless one is requested.  He
confirmed this with his supervisor.  Instead, he said, I could just give them
my "drop off confirmation number," which would be on my receipt.&lt;/p&gt;

&lt;p&gt;"I sent this over a week ago.  I do not have the receipt anymore." He said I
should go to the USPS and ask them for my receipt.  I tried to explain that the
post office would have no means to find a record of my business with them.  The
guy kept repeating that I could just go ask USPS for my receipt and they'd have
it... somehow.  I'm pretty sure he thought I was insane for suggesting
otherwise.&lt;/p&gt;

&lt;p&gt;Eventually I said, "You know, I have the tracking number of the package in
which my replacement came."  This excited him, and he took the number and put
me on hold.  When he came back he said, "Great!  Now we know you received a
package from us!  All I need now is the tracking number for the package you
sent us."  He seemed to think that I had the number, but was reluctant to give
it.&lt;/p&gt;

&lt;p&gt;"Look," I said, "I have a box, from you, with a tracking number showing you
sent it and I received it.  It has my RMA number on it, which refers to what I
sent in.  The box's shipping label has the name of the incorrect part.  How on
Earth is this not enough information?"&lt;/p&gt;

&lt;p&gt;He said, "I'm going to go the extra mile here and really be on your side.  I'm
going to bypass our procedures and file this request anyway.  It will probably
be rejected, but I promise you I'll call you back.  When I promise I'll do
something, I'll do it!"  I'm pretty sure I'm never gonna hear from this guy
again.  I'll call them on Tuesday and they'll deny having any knowledge of my
case or possibly of what an Xbox is.&lt;/p&gt;

&lt;p&gt;On the bright side, at least I ended up with something more expensive than what
I sent them.  If they had sent me a small plastic widget-cover, I'd be pretty
angry.  As it is, I just think they're hopelessly disorganized.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/AHzj4IjEG-s" height="1" width="1"/&gt;</content>
		<author>
			<name>Ricardo Signes</name>
			<uri>http://rjbs.manxome.org/rubric</uri>
		</author>
		<source>
			<title type="html">Rubric: rjbs's entries with a body</title>
			<subtitle type="html">Rubric</subtitle>
			<link rel="self" href="http://rjbs.manxome.org/rubric/entries/user/rjbs/has_body/1?format=rss" />
			<id>http://rjbs.manxome.org/rubric/entries/user/rjbs/has_body/1?format=rss</id>
			<updated>2010-02-10T06:01:09+00:00</updated>
		</source>
	<feedburner:origLink>http://rjbs.manxome.org/rubric/entry/1815</feedburner:origLink></entry>

	<entry xml:lang="en-us">
		<title type="html">Perl for Windows statistics</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/NrBKMUPJnxQ/1265247260.html" />
		<id>http://szabgab.com/blog/2010/02/1265247260.html</id>
		<updated>2010-02-03T17:34:20+00:00</updated>
		<content type="html">&lt;p&gt;
&lt;a href="http://ali.as/"&gt;Adam Kennedy&lt;/a&gt; pointed me to the 
&lt;a href="http://code.google.com/p/strawberry-perl/downloads/list?can=1&amp;amp;q=&amp;amp;sort=uploaded&amp;amp;colspec=Filename%20Summary%20Uploaded%20Size%20DownloadCount"&gt;download count of Strawberry Perl for Windows&lt;/a&gt;.
this shows that in the last 3 months there were approximately 54K downloads of 5.10.x and 4.5K downloads of 5.8.x That would be about 650 downloads a day.
&lt;/p&gt;
&lt;p&gt;
Back on 7/7/2007 Jan Dubois &lt;a href="http://aspn.activestate.com/ASPN/Mail/Message/perl5-porters/3521207"&gt;mentioned&lt;/a&gt;
that &lt;a href="http://www.activestate.com/"&gt;ActiveState&lt;/a&gt; has more than 4,500 downloads of ActivePerl 5.8.x per day for Windows
and more than 1,000 downloads of ActivePerl 5.6.1 per day.
&lt;/p&gt;
&lt;p&gt;
Unfortunatelly I don't have newer numbers from ActiveState but it would be interesting to see how have the numbers 
changed? Also it would be nice if we had numbers from the other Perl distributions for Windows.
&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/NrBKMUPJnxQ" height="1" width="1"/&gt;</content>
		<author>
			<name>Gabor Szabo</name>
			<uri>http://szabgab.com</uri>
		</author>
		<source>
			<title type="html">Blog of Gabor Szabo</title>
			<subtitle type="html">Gabor Szabo about Perl, automated testing, dynamic languages and everyting else</subtitle>
			<link rel="self" href="http://szabgab.com/blog/szabgab.rss" />
			<id>http://szabgab.com/blog/szabgab.rss</id>
			<updated>2010-02-10T06:01:25+00:00</updated>
			<rights type="html">Copyright 2002-2010, Gabor Szabo</rights>
		</source>
	<feedburner:origLink>http://szabgab.com/blog/2010/02/1265247260.html</feedburner:origLink></entry>

	<entry>
		<title type="html">On Nagios, Thunk, Shinken and wrapper included marketing</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/Cgz3D1AZuXI/on-nagios-thunk-shinken-and-wrapper-included-marketing.html" />
		<id>tag:blogs.perl.org,2010:/users/sawyer_x//87.237</id>
		<updated>2010-02-03T11:35:39+00:00</updated>
		<content type="html" xml:lang="en">&lt;p&gt;&lt;a href="http://www.nagios.org/"&gt;Nagios&lt;/a&gt; is probably the most famous and used monitoring program on the market. It's free, GPL and has nice features such as object representation of data, inheritance, plugin systems, passive testing, built-in Perl interpreter, result caching, pipe interface, alert delegations and so on and so on.&lt;/p&gt;

&lt;p&gt;The web interface of Nagios is, however, incredible ugly. It's written in CGI the way the early CGI scripts were written. When you make a change to a server via the web interface, you get a few screens (avoiding Javascript is a benefit for some cell phones, I guess) and the old and quickly-annoying &lt;em&gt;"You have done the action you wanted, please click this &lt;u&gt;back&lt;/u&gt; link we created to go backwards"&lt;/em&gt; screen. You &lt;strong&gt;won't&lt;/strong&gt; simply get automatically directed back to where you were before with a new message at the top in bright green saying &lt;em&gt;"Action X done"&lt;/em&gt; or something like that. That would be too easy and &lt;em&gt;Web 2.0&lt;/em&gt;. It uses frames (yuck!) to show the sidebar, you don't see the content of comments in hover, only when you &lt;em&gt;click&lt;/em&gt; on the comment to get to the &lt;em&gt;comment screen&lt;/em&gt; to view the comment. It's literally a pitfall and at least one company where I worked at rewrote the entire interface in ASP and .NET (I know, I know...) by parsing the Nagios log.&lt;/p&gt;

&lt;p&gt;For that reason, it has always been a bit difficult (though possible) selling Nagios to the enterprise when your boss isn't tech savvy, and other programs, not much better or worse (&lt;a href="http://www.opennms.org/wiki/Main_Page"&gt;OpenNMS&lt;/a&gt; for instance) find their way since they have a much better user interface.&lt;/p&gt;

&lt;p&gt;A new fork of Nagios has begun with a PHP interface, calling &lt;a href="http://www.icinga.org/"&gt;Icinga&lt;/a&gt;. The point is to accept a lot of patches that were difficult to get into Nagios (that has only one actual developer - Ethan Galstad), and provide a beautiful web interface with Javascript. At least one Nagios community members sees the entire fork's point is the web interface, and assumes there's a good chance it will be merged back into Nagios, keeping the core as it is.&lt;/p&gt;

&lt;p&gt;Apparently, there is a Perl &lt;a href="http://www.catalystframework.org/"&gt;Catalyst&lt;/a&gt;-based project to revamp the Nagios web interface, called &lt;a href="http://github.com/sni/Thruk"&gt;Thunk&lt;/a&gt;. It is available on Github and also has a &lt;a href="http://thruk-demo.nierlein.de/"&gt;demo page&lt;/a&gt;. It's incredibly fast and seems promising. However, there is no website for it. Currently the only face it has is the Github page which seems generic and perhaps non-welcoming for some people who consider using it. You can also view the demo, but it still has the basic dull look of Nagios' oldschool interface.&lt;/p&gt;

&lt;p&gt;Another new project relating to Nagios is &lt;a href="http://shinken-monitoring.org/"&gt;Shinken&lt;/a&gt;, which is a Python rewrite of Nagios. Apparently someone thought that Nagios is great, except it's written in C, which makes it a barrier to include other peoples' work. I personally disagree for a variety of reasons which I won't go into. What does seem interesting is that Shinken is very welcoming, even though (at least to me) it seems like an exercise in futility. I'm assuming it will rapidly develop a stable core userbase, and the website is to thank, IMHO.&lt;/p&gt;

&lt;p&gt;One more issue to note: Ethan Galstad is now developing &lt;a href="http://www.nagios.com/products/nagiosxi/"&gt;Nagios XI&lt;/a&gt;, an enterprise solution. The "&lt;em&gt;solution&lt;/em&gt;" boasts a new &lt;strong&gt;web interface&lt;/strong&gt;, which I suspect will be the leading selling point of it.&lt;/p&gt;

&lt;p&gt;So:&lt;br /&gt;
&lt;ul&gt;&lt;br /&gt;
	&lt;li&gt;Nagios has a terrible interface.&lt;/li&gt;&lt;br /&gt;
	&lt;li&gt;Nagios XI has a pretty interface (and a free iPod Touch with every purchase, according to the site).&lt;/li&gt;&lt;br /&gt;
	&lt;li&gt;Icinga say they will put more patches in that were rejected or ignored for Nagios (but will keep core compatibility). However the strong point of Icinga (and where most efforts are now going to) is the web interface.&lt;/li&gt;&lt;br /&gt;
	&lt;li&gt;Thunk attacks the interface problem directly, but doesn't seem it will be adopted much because it doesn't even have a face.&lt;/li&gt;&lt;br /&gt;
	&lt;li&gt;Shinken tries to replace Nagios by rewriting the core to be in Python, but the best reason to adopt it (as with OpenNMS) is the web interface.&lt;/li&gt;&lt;br /&gt;
&lt;/ul&gt;&lt;/p&gt;

&lt;p&gt;Now, of course there's a difference in Python, Perl, C and all that. However, in marketing, the selling value goes to the more presentable. In a System Monitoring conference I would have a pretty difficult time selling anything with just a Github page. It all boils down (in marketing terms) to the interface.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/Cgz3D1AZuXI" height="1" width="1"/&gt;</content>
		<author>
			<name>Sawyer X</name>
			<uri>http://blogs.perl.org/users/sawyer_x/</uri>
		</author>
		<source>
			<title type="html">Sawyer X</title>
			<subtitle type="html">A blog about the Perl programming language</subtitle>
			<link rel="self" href="http://blogs.perl.org/users/sawyer_x/atom.xml" />
			<id>tag:blogs.perl.org,2009-11-03:/users/sawyer_x//87</id>
			<updated>2010-02-03T11:41:38+00:00</updated>
		</source>
	<feedburner:origLink>http://blogs.perl.org/users/sawyer_x/2010/02/on-nagios-thunk-shinken-and-wrapper-included-marketing.html</feedburner:origLink></entry>

	<entry>
		<title type="html">More design love please...</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/7i8gYJOGEcE/more-design-love-please.html" />
		<id>tag:blogs.perl.org,2010:/users/leo_lapworth//12.232</id>
		<updated>2010-02-03T09:08:52+00:00</updated>
		<content type="html" xml:lang="en">&lt;p&gt;This is a follow up, or rather extension to xSawyerxs &lt;a href="http://blogs.perl.org/users/sawyer_x/2010/02/marketing-the-entire-box-including-the-wrapper.html"&gt;Marketing the Entire Box (including the wrapper)&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I completely agree, design is the first thing people notice about a project. If you do not put effort into the look of your projects web page then whether you like it or not it will have an affect on the perception of your project (and indirectly on Perl).&lt;/p&gt;

&lt;p&gt;If someone (my list of projects is way too large at the moment unfortunately) has time I think there are two projects which would make a massive difference.&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Provide a Creative Commons licensed design(s) that anyone can use for a Perl project. Lots of us are not designers, so even if we'd like to make our projects look better we don't know how!&lt;/li&gt;
&lt;li&gt;See if it is possible to get CPAN redesigned, this is already the home to thousands of Perl projects, so improving this will have a massive impact.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;br /&gt;
Many of the Apple applications websites have a similar feeling (simple and clean), this is because they all use iWeb. Good design does not mean lots of design. It just means a clean page, and separating content under headings (rather than having a single page with everything just listed).&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/7i8gYJOGEcE" height="1" width="1"/&gt;</content>
		<author>
			<name>Ranguard</name>
			<uri>http://blogs.perl.org/users/leo_lapworth/</uri>
		</author>
		<source>
			<title type="html">Leo Lapworth</title>
			<subtitle type="html">A blog about the Perl programming language</subtitle>
			<link rel="self" href="http://blogs.perl.org/users/leo_lapworth/atom.xml" />
			<id>tag:blogs.perl.org,2009-11-03:/users/leo_lapworth//12</id>
			<updated>2010-02-09T08:41:44+00:00</updated>
		</source>
	<feedburner:origLink>http://blogs.perl.org/users/leo_lapworth/2010/02/more-design-love-please.html</feedburner:origLink></entry>

	<entry>
		<title type="html">Marketing the Entire Box (including the wrapper)</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/3q_uwy_6hiQ/marketing-the-entire-box-including-the-wrapper.html" />
		<id>tag:blogs.perl.org,2010:/users/sawyer_x//87.226</id>
		<updated>2010-02-02T13:35:49+00:00</updated>
		<content type="html" xml:lang="en">&lt;p&gt;For a long while now I've been wondering about some observations I've made of Perl, Ruby, Python and PHP in marketing terms. I'm going to discuss them here in detail, and I hope it will gain us some insight into better marketing understanding or at least not bore anyone.&lt;/p&gt;

&lt;p&gt;I've understood through the years that projects with beautiful websites have a better chance of getting picked up by users (even when the project itself is purely command-line) and definitely gives much more credit to the encompassing layer (like the programming language itself).&lt;/p&gt;

&lt;p&gt;I've also noticed that a rather large portion of Ruby-related projects have very beautiful websites. You might have noticed this yourself as well. I tried to understand how this situation occurred and had a few discussions at $work with people whose opinion I appreciate, one being a Python and PHP programmer (or, as I like to see him, a programmer who knows PHP) and the other being a Ruby, RoR and overall Javascript whiz.&lt;/p&gt;

&lt;p&gt;At first, my thoughts were that most Ruby programmers major in Rails, so they're into web, while the major web frameworks in Perl (&lt;a href="http://jifty.org/view/HomePage"&gt;Jifty&lt;/a&gt;, &lt;a href="http://www.catalystframework.org/"&gt;Catalyst&lt;/a&gt;, &lt;a href="http://search.cpan.org/perldoc?Mojo"&gt;Mojo&lt;/a&gt;, &lt;a href="http://search.cpan.org/perldoc?Mojolicious"&gt;Mojolicious&lt;/a&gt;, &lt;a href="http://search.cpan.org/perldoc?Mojolicious::Lite"&gt;Mojolicious::Lite&lt;/a&gt;, &lt;a href="http://dancer.sukria.net/"&gt;Dancer&lt;/a&gt;, &lt;a href="http://cgi-app.org/"&gt;CGI::Application&lt;/a&gt;, etc.) only flowered in recent years, which could lend the thought that most Perl programmers aren't web-oriented or web-aware. I mean this obviously as "aware" in higher extent than most users. As &lt;em&gt;mst&lt;/em&gt; eloquently expressed, we're still into IRC (me included, of course).&lt;/p&gt;

&lt;p&gt;Quickly that theory was squashed when I entered the &lt;a href="http://www.djangoproject.com/"&gt;Django&lt;/a&gt; website. For a web framework, it is horrible. Especially for a web framework that speaks of cleanliness. The website design is horrendous. Same goes for the &lt;a href="http://haml-lang.com/"&gt;HAML&lt;/a&gt; website. PHP as a very successful web-oriented language shows interesting results. Most PHP programs/scripts come in various index sites (much like oldschool &lt;a href="http://www.perlfoundation.org/perl5/index.cgi?perl_vs_perl"&gt;PERL&lt;/a&gt; scripts), few PHP frameworks have websites and fewer have beautiful websites. Most of them are awful. Frontpage awful.&lt;/p&gt;

&lt;p&gt;So apparently, dealing with web doesn't mean you create beautiful websites. Yeah, I guess anyone could say that, but to put it in better words: &lt;em&gt;&lt;strong&gt;knowing&lt;/strong&gt; web doesn't mean you &lt;strong&gt;do&lt;/strong&gt; web.&lt;/em&gt; So what is the reason it is almost given that a Ruby project (as small as it might be) will have a website, and it will be beautiful?&lt;/p&gt;

&lt;p&gt;A thought that formed rapidly through the conversations was that Ruby programmers see the marketing as relating to not just the product, but its wrapper. That is, that many Ruby programmers understand at a very core level (more than most programmers - at least me) that the website which shows the project is the actual wrapper of the project and is &lt;em&gt;just as important&lt;/em&gt;, if not more so. When I thought of a "nice wrapper", I just thought of a detailed &lt;em&gt;POD&lt;/em&gt; and &lt;em&gt;--help&lt;/em&gt; output. Obviously, this isn't the case for many Ruby programmers. Those Ruby programmers think &lt;em&gt;"I cannot ship this application without wrapping it nicely, it is just incomplete."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I began to see the major difference between many Perl programmers and many Ruby programmers. I haven't ever written a website for a project I worked on. Evidently, perhaps many of them don't merit a website of their own, but perhaps some of them do! One of the prime examples for this, IMHO, is &lt;a href="http://lesscss.org/"&gt;LessCSS&lt;/a&gt; which has a beautiful website for a rather simple filter, which could definitely be accomplished just as well in other languages such as Perl. I thought how simple it would be to write a version in Perl, stepped up to CPAN and here is &lt;a href="http://search.cpan.org/perldoc?CSS::LESSp"&gt;CSS::LESSp&lt;/a&gt; and &lt;a href="http://search.cpan.org/perldoc?Apache2::Filter::LESS::CSS"&gt;Apache2::Filter::LESS::CSS&lt;/a&gt;. I have to say that CPAN is indeed comfortable for me, but as a design, it isn't very attractive or compelling. CPAN is an index site, not a front page wrapper for your project.&lt;/p&gt;

&lt;p&gt;When I see the &lt;a href="http://lesscss.org/"&gt;LessCSS&lt;/a&gt; website, I'm seeing beauty which attracts me not only to &lt;a href="http://lesscss.org/"&gt;LessCSS&lt;/a&gt; (which I don't really have any use for right now), but also (and &lt;strong&gt;this is key&lt;/strong&gt;) to Ruby itself.&lt;/p&gt;

&lt;p&gt;Returning to my quest, I had already sat down with our resident Ruby/Rails expert and a cup of tea and flux-seeds crackers. What I still wondered about was how can a Rails programmer know Ruby, Rails, Javascript (usually) and web design all at once and on such a high level for each to produce such beautiful websites. It's definitely not common, or is it?&lt;/p&gt;

&lt;p&gt;We've laid the foundation that many programmers use prepared (sorry, there is no "pre-prepared" in English) templates and layouts, or hire an actual professional web designer. Hiring a web designer is not a cheap cost. Why are these people spending good sums of money on professional web designers to create (usually static) websites for such small programs? I couldn't understand it.&lt;/p&gt;

&lt;p&gt;Then he mentioned some conventions he went to. When someone shows her peers and future employers projects she has done, the first impression is on the looks of things, not the sound or ability of them. If it's beautiful, she got to first base. If it works much better, but it doesn't even have a face, it stands much less chance of even getting a shot. This is what I was missing.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Marketing my project is not just marketing a code that does a task, it's marketing &lt;strong&gt;me&lt;/strong&gt;!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://dancer.sukria.net/"&gt;Dancer&lt;/a&gt; doesn't just market a small web framework, it markets Perl and &lt;a href="http://plackperl.org/"&gt;Plack&lt;/a&gt; (the encompassing technologies), but also the developer(s) of &lt;a href="http://dancer.sukria.net/"&gt;Dancer&lt;/a&gt;. Same goes for &lt;a href="http://www.catalystframework.org/"&gt;Catalyst&lt;/a&gt;, same goes for &lt;a href="http://www.iinteractive.com/moose/"&gt;Moose&lt;/a&gt; and &lt;a href="http://www.iinteractive.com/kiokudb/"&gt;KiokuDB&lt;/a&gt; and &lt;a href="http://search.cpan.org/perldoc?Module::Starter"&gt;Module::Starter&lt;/a&gt; and &lt;a href="http://search.cpan.org/perldoc?Test::More"&gt;Test::More&lt;/a&gt; and on and on and on.&lt;/p&gt;

&lt;p&gt;A response I'm expecting is "well, obviously!" and my answer would be the same, I do know it, however &lt;em&gt;&lt;strong&gt;Understanding&lt;/strong&gt; it is much more important than &lt;strong&gt;knowing&lt;/strong&gt; it.&lt;/em&gt; To &lt;strong&gt;understand&lt;/strong&gt; it means to write a website for whatever project I have done which I think can elevate me, and which I think can elevate Perl, or some other encompassing technology (like &lt;a href="http://www.iinteractive.com/moose/"&gt;Moose&lt;/a&gt; or &lt;a href="http://dancer.sukria.net/"&gt;Dancer&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;This morning I imagined having a space for project websites. Actual beautiful static website for each Perl project. I don't have the time to set up an infrastructure for hosting and all that. However, I did purchase PerlProjects.net and I will be giving NS hosting for free to anyone who wants to set up a website at &amp;lt;YourProject&amp;gt;.PerlProjects.net, no matter how small. Also, I want to set up a main site at PerlProjects.net which will be an index of... Perl Projects.&lt;/p&gt;

&lt;p&gt;I do believe that having individual beautiful websites for projects (even the small or relatively exclusive ones) will help market Perl better, and any technology (of Perl or not) you're using in your project. This will help boost interest and consequently the number of programmers who know Perl will go up and of course job offerings will follow. If we can present an image of "Perl projects come in beautiful wrappers", we can present an image of "Perl is beautiful", and that is what we should strive for - at least in marketing terms.&lt;/p&gt;

&lt;p&gt;If you feel like helping with PerlProjects.net (design, design, design) or want your own subdomain and free NS hosting, let me know!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/3q_uwy_6hiQ" height="1" width="1"/&gt;</content>
		<author>
			<name>Sawyer X</name>
			<uri>http://blogs.perl.org/users/sawyer_x/</uri>
		</author>
		<source>
			<title type="html">Sawyer X</title>
			<subtitle type="html">A blog about the Perl programming language</subtitle>
			<link rel="self" href="http://blogs.perl.org/users/sawyer_x/atom.xml" />
			<id>tag:blogs.perl.org,2009-11-03:/users/sawyer_x//87</id>
			<updated>2010-02-03T11:41:38+00:00</updated>
		</source>
	<feedburner:origLink>http://blogs.perl.org/users/sawyer_x/2010/02/marketing-the-entire-box-including-the-wrapper.html</feedburner:origLink></entry>

	<entry>
		<title type="html">Cultured Perl Blog</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/q0WNnsk_CtI/cultured-perl-blog.php" />
		<id>tag:perlhacks.com,2010://1.46</id>
		<updated>2010-02-02T13:31:26+00:00</updated>
		<content type="html" xml:lang="en">A couple of years ago I thought that one thing the Perl community was missing was a network of blog sites about Perl. I'm not talking about the individual blogs that are being shown off to such good effect by the &lt;a href="http://ironman.enlightenedperl.org/"&gt;Iron Man project&lt;/a&gt;, I'm talking about a set of multi-author blogs that covered particular facets of the Perl world. Something like a Perl-specific version of &lt;a href="http://lifehacker.com/"&gt;LifeHacker&lt;/a&gt; or &lt;a href="http://boingboing.net/"&gt;BoingBoing&lt;/a&gt;. To that end, I registered a number of domains and set about installing Movable Type.&lt;br /&gt;&lt;br /&gt;That bit was easy. That bit I can do. The next bit is harder.&lt;br /&gt;&lt;br /&gt;The next bit involves getting authors interested in writing for the blogs on a regular basis. That bit I didn't do so well at and none of the blogs florished.&lt;br /&gt;&lt;br /&gt;One of them didn't even get going. That was &lt;a href="http://culturedperl.com/"&gt;Cultured Perl&lt;/a&gt;. The idea behind Cultured Perl was that it would discuss Perl culture. That's all the non-technical bits of the Perl world. Perl Mongers, Perl conferences, things like that. I had a few authors signed up, but nothing ever really happened.&lt;br /&gt;&lt;br /&gt;So why am I telling you this? Well, the Cultured Perl domains are up for renewal. And I'm trying to work out whether it's worth keeping them.&lt;br /&gt;&lt;br /&gt;Would you be interested in reading a Cultured Perl blog? And would you be interested in writing for it?&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/q0WNnsk_CtI" height="1" width="1"/&gt;</content>
		<author>
			<name>Dave Cross</name>
			<uri>http://perlhacks.com/</uri>
		</author>
		<source>
			<title type="html">Perl Hacks</title>
			<subtitle type="html">Just another Perl Blog</subtitle>
			<link rel="self" href="http://perlhacks.com/atom.xml" />
			<id>tag:perlhacks.com,2009-05-18://1</id>
			<updated>2010-02-09T11:01:44+00:00</updated>
		</source>
	<feedburner:origLink>http://perlhacks.com/2010/02/cultured-perl-blog.php</feedburner:origLink></entry>

	<entry xml:lang="en-us">
		<title type="html">Showing Perl on non-Perl conferences, getting money from TPF for swag</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/CLv6XrBkYVw/1265137032.html" />
		<id>http://szabgab.com/blog/2010/02/1265137032.html</id>
		<updated>2010-02-02T10:57:12+00:00</updated>
		<content type="html">&lt;p&gt;
On this weekend I'll be on &lt;a href="http://www.fosdem.org/"&gt;FOSDEM&lt;/a&gt; along with several other Perl Mongers. 
In addition to just trying to enjoy the talks we'll be promoting Perl. I am really happy that 
&lt;a href="http://www.perlfoundation.org/"&gt;The Perl Foundation&lt;/a&gt; was ready to provide us with $500
to buy conference swag we can give away.
&lt;/p&gt;
&lt;p&gt;
Similarry, a month from now we will be present at &lt;a href="http://www.cebit.de/"&gt;CeBIT&lt;/a&gt; in Hannover,
Germany where we will have a booth to promote Perl and Perl based projects. I've just heard from 
&lt;a href="http://martian.org/karen/"&gt;Karen Pauley&lt;/a&gt; that TPF agreed to provide us another $500 
for further materials to give away on CeBIT.
&lt;/p&gt;
&lt;p&gt;
This is awesome and this probably means that if you are ready to talk to people on non-perl related
events telling them about Perl &lt;b&gt;you could also get some money from TPF&lt;/b&gt; in order to have some hard
material to give away.
&lt;/p&gt;
&lt;p&gt;
For FOSDEM we are preparing some &lt;a href="http://www.flickr.com/photos/hfb/56871343/"&gt;round tuits&lt;/a&gt;
and a postcard listing the Perl events in Europe that will take place in the coming months.
&lt;/p&gt;
&lt;p&gt;
For CeBIT we are also preparing some further marketing materials - more business oriented - that we will
be able to hand out.
&lt;/p&gt;
&lt;p&gt;
There are further ideas to prepare various fun promotional materials one can give away during a chat with
a fellow developer and we have also discussed that we should have a Linux liveCD full of Perl applications
ready to be used by anyone. (Also include Windows binaries in the form of Strawberry Perl for those using Windows)
&lt;/p&gt;
&lt;p&gt;
Of course almost none of the the above is my work. There are several people involved in the preparation:
&lt;a href="http://www.RSandsConsulting.com"&gt;Rich Sands&lt;/a&gt; organzied the tuits and the postcards for FOSDEM,
&lt;a href="http://use.perl.org/~sjn/journal/"&gt;Salve J. Nilsen&lt;/a&gt; is working and on community intro cards,
&lt;a href="http://reneeb-perlblog.blogspot.com/"&gt;Renee Backer&lt;/a&gt; is working hard on the materials for CeBIT
just to thank a few of them.
&lt;/p&gt;
&lt;p&gt;
We are also expecting some help from the &lt;a href="http://www.enlightenedperl.org/"&gt;Enlightend Perl Organization (EPO)&lt;/a&gt;
as they are preparing beer-mats to give away.
&lt;/p&gt;
&lt;p&gt;
&lt;h2&gt;Getting involved&lt;/h2&gt;
&lt;/p&gt;
&lt;p&gt;
Most of the conversation about this is done on the events mailing list and some data is collected on the TPF wiki. 
If you would like to help in preparing the materials or if you'd are planning to attend a non-perl event and would
like to have some fun or business oriented material to give away, please join us on the events mailing list
to discuss the details.  You can find information on the &lt;a href="http://www.perlfoundation.org/perl5/index.cgi?events"&gt;TPF wiki&lt;/a&gt;.
&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/CLv6XrBkYVw" height="1" width="1"/&gt;</content>
		<author>
			<name>Gabor Szabo</name>
			<uri>http://szabgab.com</uri>
		</author>
		<source>
			<title type="html">Blog of Gabor Szabo</title>
			<subtitle type="html">Gabor Szabo about Perl, automated testing, dynamic languages and everyting else</subtitle>
			<link rel="self" href="http://szabgab.com/blog/szabgab.rss" />
			<id>http://szabgab.com/blog/szabgab.rss</id>
			<updated>2010-02-10T06:01:25+00:00</updated>
			<rights type="html">Copyright 2002-2010, Gabor Szabo</rights>
		</source>
	<feedburner:origLink>http://szabgab.com/blog/2010/02/1265137032.html</feedburner:origLink></entry>

	<entry xml:lang="en">
		<title type="html">DBIx::Class 0.08001 released (and a podcast)</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/jWgWspg9tE0/dbixclass-008-released-and-a-podcast.html" />
		<id>tag:vox.com,2007-06-17:asset-6a00cd971ce84f4cd500d41444f38a3c7f</id>
		<updated>2010-02-01T18:15:28+00:00</updated>
		<content type="html">&lt;div&gt;
         For those of you who're interested in me demonstrating just how badly I interview, you can hear a perlcast podcast interview with me about DBIx::Class which was recorded last month.  Better still, after 7 dev releases, four of them RC grade, a lot...   &lt;p&gt; 
    &lt;a href="http://chainsawblues.vox.com/library/post/dbixclass-008-released-and-a-podcast.html?_c=feed-atom#comments"&gt;Read and post comments&lt;/a&gt;   |   
    &lt;a href="http://www.vox.com/share/6a00cd971ce84f4cd500d41444f38a3c7f?_c=feed-atom"&gt;Send to a friend&lt;/a&gt; 
&lt;/p&gt;

                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/jWgWspg9tE0" height="1" width="1"/&gt;</content>
		<author>
			<name>mst</name>
			<uri>http://chainsawblues.vox.com/library/posts/page/1/</uri>
		</author>
		<source>
			<title type="html">Chainsaw Blues</title>
			<subtitle type="html">Sufficiently Advanced Insanity</subtitle>
			<link rel="self" href="http://chainsawblues.vox.com/library/posts/atom.xml" />
			<id>tag:vox.com,2006:6p00cd971ce84f4cd5/</id>
			<updated>2010-02-04T11:21:03+00:00</updated>
		</source>
	<feedburner:origLink>http://chainsawblues.vox.com/library/post/dbixclass-008-released-and-a-podcast.html?_c=feed-atom</feedburner:origLink></entry>

	<entry>
		<title type="html">$obj-&amp;gt;blessed</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/_pykMAr-8eQ/obj.html" />
		<id>tag:blogger.com,1999:blog-876358347971598886.post-6125596033217946257</id>
		<updated>2010-02-01T18:10:48+00:00</updated>
		<content type="html">&lt;p&gt;I've been meaning to write about this gotcha for a long time, but somehow forgot. This was actually an undiscovered bug in Moose for several &lt;em&gt;years&lt;/em&gt;:&lt;/p&gt;

&lt;pre class="fake-gist" id="fake-gist-291746"&gt;use strict;
use warnings;

use Test::More;

use Try::Tiny qw(try);

{
    package Foo;

    use Scalar::Util qw(blessed);

    sub new { bless {}, $_[0] }
}

my $foo = Foo-&amp;gt;new;

is( try { blessed($foo) }, undef );

is( try { blessed $foo }, undef );

done_testing;&lt;/pre&gt;

&lt;p&gt;The first test passes. &lt;tt&gt;blessed&lt;/tt&gt; has't been imported into &lt;tt&gt;main&lt;/tt&gt;, so the code results in the error &lt;tt&gt;Undefined subroutine &amp;amp;main::blessed&lt;/tt&gt;.&lt;/p&gt;

&lt;p&gt;The second test, on the other hand, fails. This is because &lt;tt&gt;blessed&lt;/tt&gt; has been invoked as a method on &lt;tt&gt;$foo&lt;/tt&gt;.&lt;/p&gt;

&lt;p&gt;The Moose codebase had several instances of &lt;tt&gt;if ( blessed $object )&lt;/tt&gt;, in packages that did not import &lt;tt&gt;blessed&lt;/tt&gt; at all. This worked for ages, because &lt;tt&gt;Moose::Object&lt;/tt&gt;, the base class for most objects in the Moose ecosystem, didn't clean up that export, and therefore provided an inherited &lt;tt&gt;blessed&lt;/tt&gt; method for pretty much any class written in Moose.&lt;/p&gt;

&lt;p&gt;I think this example provides a very strong case for using &lt;a href="http://search.cpan.org/perldoc?namespace::clean"&gt;&lt;tt&gt;namespace::clean&lt;/tt&gt;&lt;/a&gt; or &lt;a href="http://search.cpan.org/perldoc?namespace::autoclean"&gt;&lt;tt&gt;namespace::autoclean&lt;/tt&gt;&lt;/a&gt; routinely in your classes.&lt;/p&gt;

&lt;p&gt;To cover the other half of the &lt;a href="http://www.shadowcat.co.uk/blog/matt-s-trout/indirect-but-still-fatal/"&gt;problem&lt;/a&gt;, the &lt;tt&gt;no &lt;a href="http://search.cpan.org/perldoc?indirect"&gt;indirect&lt;/a&gt;&lt;/tt&gt; pragma allows the removal of this unfortunate feature from specific lexical scopes.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/876358347971598886-6125596033217946257?l=blog.woobling.org" alt="" /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/yuvalkogman/~4/crxMY9iKYHA" height="1" width="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/_pykMAr-8eQ" height="1" width="1"/&gt;</content>
		<author>
			<name>nothingmuch</name>
			<email>nothingmuch@woobling.org</email>
			<uri>http://blog.woobling.org/</uri>
		</author>
		<source>
			<title type="html">nothingmuch's perl blog</title>
			<link rel="self" href="http://blog.woobling.org/feeds/posts/default" />
			<id>tag:blogger.com,1999:blog-876358347971598886</id>
			<updated>2010-02-02T16:41:34+00:00</updated>
		</source>
	<feedburner:origLink>http://feedproxy.google.com/~r/yuvalkogman/~3/crxMY9iKYHA/obj.html</feedburner:origLink></entry>

	<entry>
		<title type="html">FOSDEM</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/9sKAaRd1n0k/fosdem.php" />
		<id>tag:perlhacks.com,2010://1.45</id>
		<updated>2010-02-01T13:12:23+00:00</updated>
		<content type="html" xml:lang="en">This weekend is the annual &lt;a href="http://fosdem.org/"&gt;FOSDEM&lt;/a&gt; conference in Brussels. I really enjoy FOSDEM but, for reasons I don't really understand, this will be the first time I've been since 2005. It will also be one of the rare occasions where I attend a conference without giving a talk - the organisers turned down my proposed talk on Modern Perl.&lt;br /&gt;&lt;br /&gt;I like FOSDEM because it's not just a Perl conference. It's about the wider open source movement. In fact Perl is a really small part of of the conference. In many years it has been completely unrepresented. One of the things I mentioned in my "&lt;a href="http://www.slideshare.net/davorg/the-m-word"&gt;M Word&lt;/a&gt;" talk at the London Perl Workshop was that Perl needed to be better represented at non-Perl conferences. With that in mind, the Perl Foundation has booked &lt;a href="http://fosdem.org/2010/stands"&gt;a stand at the conference&lt;/a&gt; and various volunteers (including me) will be there telling people about how wonderful Perl is.&lt;br /&gt;&lt;br /&gt;The main driver behind this push to get Perl represented at other conferences has been &lt;a href="http://szabgab.com/"&gt;Gabor Szabo&lt;/a&gt; and he'll also be at FOSDEM giving a couple of talks. One is a lightning talk introducing people to &lt;a href="http://fosdem.org/2010/schedule/events/padre_the_perl_ide"&gt;Padre&lt;/a&gt;. The other is about &lt;a href="http://fosdem.org/2010/schedule/events/dist_perl_cpan"&gt;packaging CPAN modules for Linux distributions&lt;/a&gt;. Those of you with long memories might remember me &lt;a href="http://www.slideshare.net/davorg/perl-in-rpmland-presentation"&gt;talking about this&lt;/a&gt; at YAPC in Copenhagen. I'm hoping that attending Gabor's talk will galvanise me into having another go at my project to automatically build RPMs of many more CPAN modules than are currently available.&lt;br /&gt;&lt;br /&gt;So, as you can see, there are plenty of good reasons to be at FOSDEM this weekend. And that's even before considering that it takes place in one of my favourite European cities. I might even treat myself to a &lt;a href="http://en.wikipedia.org/wiki/Pauwel_Kwak"&gt;Kwak&lt;/a&gt; in one of the bars on the Grand Place.&lt;br /&gt;&lt;br /&gt;If you're at FOSDEM next weekend, please stop by the Perl stand and say hello.&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/9sKAaRd1n0k" height="1" width="1"/&gt;</content>
		<author>
			<name>Dave Cross</name>
			<uri>http://perlhacks.com/</uri>
		</author>
		<source>
			<title type="html">Perl Hacks</title>
			<subtitle type="html">Just another Perl Blog</subtitle>
			<link rel="self" href="http://perlhacks.com/atom.xml" />
			<id>tag:perlhacks.com,2009-05-18://1</id>
			<updated>2010-02-09T11:01:44+00:00</updated>
		</source>
	<feedburner:origLink>http://perlhacks.com/2010/02/fosdem.php</feedburner:origLink></entry>

	<entry xml:lang="da">
		<title type="html">Rainy Day Outage (update four)</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/h64DXs4kvOw/rainy-day-outage-update-four.html" />
		<id>http://log.perl.org/2010/01/rainy-day-outage-update-four.html</id>
		<updated>2010-02-01T07:08:53+00:00</updated>
		<content type="html">&lt;p&gt;Good news everyone!&lt;/p&gt;&lt;p&gt;The few remaining services that were out should be back shortly.&lt;/p&gt;&lt;p&gt;We moved the failed server from Robert's house to Ask's office today and finally got enough parts replaced that the server is running again. As we hoped all data is intact. &amp;#0160;It's currently copying all the data off to a couple of 2TB disks. &amp;#0160;Actually, I just checked and the only missing services right now are some pm.org sites and some of the historical mirrors /archives (very old versions of perl, some cpan-testers mails).&lt;/p&gt;&lt;p&gt;The pm.org sites should be back by the morning; the rest might need a few days for us to do the &lt;a href="http://en.wikipedia.org/wiki/Sneakernet"&gt;sneakernet&lt;/a&gt; thing to get the data to a fast enough network connection that copying hundreds of GB isn't too slow.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/h64DXs4kvOw" height="1" width="1"/&gt;</content>
		<author>
			<name>Perl NOC Log</name>
			<uri>http://log.perl.org/</uri>
		</author>
		<source>
			<title type="html">Perl NOC</title>
			<subtitle type="html">the perl.org infrastructure weblog</subtitle>
			<link rel="self" href="http://log.perl.org/index.rdf" />
			<id>http://log.perl.org/index.rdf</id>
			<updated>2010-02-01T07:21:42+00:00</updated>
		</source>
	<feedburner:origLink>http://log.perl.org/2010/01/rainy-day-outage-update-four.html</feedburner:origLink></entry>

	<entry xml:lang="en-us">
		<title type="html">Test Automation using Perl classes</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/nRmKHh56SRs/1265027318.html" />
		<id>http://szabgab.com/blog/2010/02/1265027318.html</id>
		<updated>2010-02-01T04:28:38+00:00</updated>
		<content type="html">&lt;p&gt;
The conference season is warming up and so I'll start offering my 
&lt;a href="http://szabgab.com/perl_in_test_automation.html"&gt;Test Automation using Perl&lt;/a&gt; training class so I can have an excuse to 
go to the workshops and conferences. Here is the schedule:
&lt;/p&gt;
&lt;p&gt;
&lt;ul&gt;
&lt;li&gt;March 8-11, Berlin, Germany, after &lt;a href="http://www.cebit.de/"&gt;CeBIT&lt;/a&gt; where we have a &lt;a href="http://www.perlfoundation.org/perl5/index.cgi?events"&gt;Perl booth&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;March 15-18, Tel Aviv, Israel&lt;/li&gt;
&lt;li&gt;Apr 13-16 Vienna, Austria, right after the &lt;a href="http://2010.qa-hackathon.org/qa2010/"&gt;QA Hackathon&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;May 11-14, Stockholm, Sweden, (no workshop here but I cannot make it to NPW in Rekyavik on 1-2/May)&lt;/li&gt;
&lt;li&gt;June 1-4, Stuttgart, Germany, just before the &lt;a href="http://conferences.yapceurope.org/gpw2010/"&gt;German Perl Workshop&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;June 15-18, Columbus, Ohio, USA, the week before &lt;a href="http://www.yapc2010.com/"&gt;YAPC::NA&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;
The first one in Berlin is a bit tight in the schedule now but I hope there will be enough people interested 
to warrant opening the class.
&lt;/p&gt;
&lt;p&gt;
The class is 4 days long. Details can be found here: &lt;a href="http://szabgab.com/perl_in_test_automation.html"&gt;Test Automation using Perl&lt;/a&gt;.
For pricing please &lt;a href="http://szabgab.com/contact.html"&gt;contact me&lt;/a&gt; directly via e-mail.
&lt;/p&gt;
&lt;p&gt;
Related announcement &lt;a href="http://perl-nachrichten.de/index.cgi/details/648"&gt;in German&lt;/a&gt;
&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/nRmKHh56SRs" height="1" width="1"/&gt;</content>
		<author>
			<name>Gabor Szabo</name>
			<uri>http://szabgab.com</uri>
		</author>
		<source>
			<title type="html">Blog of Gabor Szabo</title>
			<subtitle type="html">Gabor Szabo about Perl, automated testing, dynamic languages and everyting else</subtitle>
			<link rel="self" href="http://szabgab.com/blog/szabgab.rss" />
			<id>http://szabgab.com/blog/szabgab.rss</id>
			<updated>2010-02-10T06:01:25+00:00</updated>
			<rights type="html">Copyright 2002-2010, Gabor Szabo</rights>
		</source>
	<feedburner:origLink>http://szabgab.com/blog/2010/02/1265027318.html</feedburner:origLink></entry>

	<entry xml:lang="en-us">
		<title type="html">Test::Class::Most</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/xTD4u03f5eI/40148" />
		<id>http://use.perl.org/~Ovid/journal/40148?from=rss</id>
		<updated>2010-01-31T19:25:10+00:00</updated>
		<content type="html">&lt;a href="http://blogs.perl.org/users/ovid/2010/01/-package-sometestclass.html"&gt;Test::Class::Most&lt;/a&gt;.&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/xTD4u03f5eI" height="1" width="1"/&gt;</content>
		<author>
			<name>Curtis Poe</name>
			<uri>http://use.perl.org/~Ovid/journal/</uri>
		</author>
		<source>
			<title type="html">Ovid's Journal</title>
			<subtitle type="html">Ovid's use Perl Journal</subtitle>
			<link rel="self" href="http://use.perl.org/~ovid/journal/rss" />
			<id>http://use.perl.org/~ovid/journal/rss</id>
			<updated>2010-01-31T19:41:04+00:00</updated>
			<rights type="html">use Perl; is Copyright 1998-2006, Chris Nandor. Stories, comments, journals, and other submissions posted on use Perl; are Copyright their respective owners.</rights>
		</source>
	<feedburner:origLink>http://use.perl.org/~Ovid/journal/40148?from=rss</feedburner:origLink></entry>

	<entry xml:lang="en-us">
		<title type="html">hmm, Nordic Perl Workshop...</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/oawMdkQmUOI/40147" />
		<id>http://use.perl.org/~domm/journal/40147?from=rss</id>
		<updated>2010-01-30T21:20:43+00:00</updated>
		<content type="html">&lt;p&gt;It came to my attention via &lt;a href="http://blogs.perl.org/users/brian_d_foy/2010/01/npw-isnt-going-to-get-any-closer-for-north-americans.html"&gt;brian d foy's blog post&lt;/a&gt; that the next Nordic Perl Workshop will take place in Iceland - which sounds very interesting. At the same time I decided that I need to take a longish break after working very hard for the last two years. So I will combine my holiday with NPW!&lt;/p&gt;&lt;p&gt;My current plan is bike from Vienna via Prague to Berlin, spend a few days there to visit some friends, take a plane to Rekjavik, attend NPW, and then either cycle a bit more through Iceland or treck a bit (probably combined with public transport). Then take the plane back to Berlin and a train back to Vienna.&lt;/p&gt;&lt;p&gt;The plan still has some issues:&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;Is it totally insane to cycle through Iceland in May (if any Icelandic person could comment on this, I'd appreciate that..).&lt;/li&gt;
&lt;li&gt;Maybe cycling from Vienna to Berlin takes to long or is boring. Then I could take the train to Berlin, and cycle from there to Copenhagen, fly to Iceland, and go back to Berlin.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Anyway, I'm really looking forward to this!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/oawMdkQmUOI" height="1" width="1"/&gt;</content>
		<author>
			<name>Thomas Klausner</name>
			<uri>http://use.perl.org/~domm/journal/</uri>
		</author>
		<source>
			<title type="html">domm's Journal</title>
			<subtitle type="html">domm's use Perl Journal</subtitle>
			<link rel="self" href="http://use.perl.org/~domm/journal/rss" />
			<id>http://use.perl.org/~domm/journal/rss</id>
			<updated>2010-01-30T21:21:11+00:00</updated>
			<rights type="html">use Perl; is Copyright 1998-2006, Chris Nandor. Stories, comments, journals, and other submissions posted on use Perl; are Copyright their respective owners.</rights>
		</source>
	<feedburner:origLink>http://use.perl.org/~domm/journal/40147?from=rss</feedburner:origLink></entry>

	<entry xml:lang="en-us">
		<title type="html">Testing with PostgreSQL</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/3wSsakyxZE4/40145" />
		<id>http://use.perl.org/~Ovid/journal/40145?from=rss</id>
		<updated>2010-01-30T16:22:57+00:00</updated>
		<content type="html">&lt;p&gt;My new personal project has a PostgreSQL database.  &lt;a href="http://blogs.perl.org/users/ovid/2010/01/testing-postgresql.html"&gt;Here's how I'm handling testing&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/3wSsakyxZE4" height="1" width="1"/&gt;</content>
		<author>
			<name>Curtis Poe</name>
			<uri>http://use.perl.org/~Ovid/journal/</uri>
		</author>
		<source>
			<title type="html">Ovid's Journal</title>
			<subtitle type="html">Ovid's use Perl Journal</subtitle>
			<link rel="self" href="http://use.perl.org/~ovid/journal/rss" />
			<id>http://use.perl.org/~ovid/journal/rss</id>
			<updated>2010-01-31T19:41:04+00:00</updated>
			<rights type="html">use Perl; is Copyright 1998-2006, Chris Nandor. Stories, comments, journals, and other submissions posted on use Perl; are Copyright their respective owners.</rights>
		</source>
	<feedburner:origLink>http://use.perl.org/~Ovid/journal/40145?from=rss</feedburner:origLink></entry>

	<entry xml:lang="da">
		<title type="html">Rainy Day Outage (Update Three)</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/3LdMYJm8H4Y/rainy-day-outage-update-three.html" />
		<id>http://log.perl.org/2010/01/rainy-day-outage-update-three.html</id>
		<updated>2010-01-30T08:26:20+00:00</updated>
		<content type="html">&lt;p&gt;Not a lot of new news.&lt;/p&gt;&lt;p&gt;We got a new motherboard for the system, and have installed it.... but it's not working. &amp;#0160;Which leads us to believe that its actually the powersupply thats shot. &amp;#0160;We're on the hunt for a compatible powersupply locally, but its probably not worth pouring more money into this box, so we're working on Plan B, which is to get the 3ware RAID controller installed in another system and get the data off the drives. &amp;#0160;This is complicated by the fact that we need to connect eight drives at a time and that the controller is PCI-X, a no-longer popular form factor.&lt;/p&gt;&lt;p&gt;If anyone in the Los Angeles area happens to have an idle server we could borrow for a few days with a PCI-X motherboard and at least 8 PATA bays, we'd love to hear from you. &amp;#0160;Drop us a line to webmaster at perl.org.&lt;/p&gt;&lt;p&gt;(We're trying to avoid Plan C, which involves taking images of all the drives one at a time and then gluing them together.)&lt;/p&gt;&lt;p&gt;We've initiated a plan to get rt.perl.org up and running again ASAP, and are dedicated to getting the pm.org (and other) data off these drives.&amp;#0160;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/3LdMYJm8H4Y" height="1" width="1"/&gt;</content>
		<author>
			<name>Perl NOC Log</name>
			<uri>http://log.perl.org/</uri>
		</author>
		<source>
			<title type="html">Perl NOC</title>
			<subtitle type="html">the perl.org infrastructure weblog</subtitle>
			<link rel="self" href="http://log.perl.org/index.rdf" />
			<id>http://log.perl.org/index.rdf</id>
			<updated>2010-02-01T07:21:42+00:00</updated>
		</source>
	<feedburner:origLink>http://log.perl.org/2010/01/rainy-day-outage-update-three.html</feedburner:origLink></entry>

	<entry xml:lang="en">
		<title type="html">Writing a perl REPL part 3 - lexical environments</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/mCT3zV2aTe0/writing-a-perl-repl-part-3---lexical-environments.html" />
		<id>tag:vox.com,2007-04-22:asset-6a00cd971ce84f4cd500d4142b7835685e</id>
		<updated>2010-01-29T22:14:55+00:00</updated>
		<content type="html">&lt;div&gt;
         (this is a continuation of the series started in this post, so you may want to start there)  New tool for today: Rocco Caputo's amazingly handy Lexical::Persistence module. We're going to use this to persist lexical variables - i.e. those declared...   &lt;p&gt; 
    &lt;a href="http://chainsawblues.vox.com/library/post/writing-a-perl-repl-part-3---lexical-environments.html?_c=feed-atom#comments"&gt;Read and post comments&lt;/a&gt;   |   
    &lt;a href="http://www.vox.com/share/6a00cd971ce84f4cd500d4142b7835685e?_c=feed-atom"&gt;Send to a friend&lt;/a&gt; 
&lt;/p&gt;

                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/mCT3zV2aTe0" height="1" width="1"/&gt;</content>
		<author>
			<name>mst</name>
			<uri>http://chainsawblues.vox.com/library/posts/page/1/</uri>
		</author>
		<source>
			<title type="html">Chainsaw Blues</title>
			<subtitle type="html">Sufficiently Advanced Insanity</subtitle>
			<link rel="self" href="http://chainsawblues.vox.com/library/posts/atom.xml" />
			<id>tag:vox.com,2006:6p00cd971ce84f4cd5/</id>
			<updated>2010-02-04T11:21:03+00:00</updated>
		</source>
	<feedburner:origLink>http://chainsawblues.vox.com/library/post/writing-a-perl-repl-part-3---lexical-environments.html?_c=feed-atom</feedburner:origLink></entry>

	<entry xml:lang="en">
		<title type="html">Devel::REPL part 4 - script options, rc files and profiles</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/ZZf9MqP_jy4/develrepl-part-4---script-options-rc-files-profiles-and-packaging.html" />
		<id>tag:vox.com,2007-07-30:asset-6a00cd971ce84f4cd500e39898ee4d0005</id>
		<updated>2010-01-29T22:14:52+00:00</updated>
		<content type="html">&lt;div&gt;
         Ok, so this post is spectacularly late. Work's been busy, my business partner got married and I got to annoy all sorts of brilliant people at OSCON (my slides are up if you care). And I -did- actually write the code that this post depends on a whi...   &lt;p&gt; 
    &lt;a href="http://chainsawblues.vox.com/library/post/develrepl-part-4---script-options-rc-files-profiles-and-packaging.html?_c=feed-atom#comments"&gt;Read and post comments&lt;/a&gt;   |   
    &lt;a href="http://www.vox.com/share/6a00cd971ce84f4cd500e39898ee4d0005?_c=feed-atom"&gt;Send to a friend&lt;/a&gt; 
&lt;/p&gt;

                &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/ZZf9MqP_jy4" height="1" width="1"/&gt;</content>
		<author>
			<name>mst</name>
			<uri>http://chainsawblues.vox.com/library/posts/page/1/</uri>
		</author>
		<source>
			<title type="html">Chainsaw Blues</title>
			<subtitle type="html">Sufficiently Advanced Insanity</subtitle>
			<link rel="self" href="http://chainsawblues.vox.com/library/posts/atom.xml" />
			<id>tag:vox.com,2006:6p00cd971ce84f4cd5/</id>
			<updated>2010-02-04T11:21:03+00:00</updated>
		</source>
	<feedburner:origLink>http://chainsawblues.vox.com/library/post/develrepl-part-4---script-options-rc-files-profiles-and-packaging.html?_c=feed-atom</feedburner:origLink></entry>

	<entry xml:lang="en">
		<title type="html">FreeBSD hates Capture::Tiny</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/ZOvH0dNWfAg/" />
		<id>http://www.dagolden.com/?p=656</id>
		<updated>2010-01-29T21:59:15+00:00</updated>
		<content type="html">&lt;p&gt;At least, FreeBSD 7.1 does.&lt;/p&gt;
&lt;p&gt;Could anyone with access to perl on FreeBSD 7.1 please test &lt;a href="http://search.cpan.org/dist/Capture-Tiny/"&gt;Capture::Tiny&lt;/a&gt;?  It now &lt;a href="http://matrix.cpantesters.org/?dist=Capture-Tiny+0.07"&gt;passes test on most platform&lt;/a&gt;s, but &lt;a href="http://matrix.cpantesters.org/?dist=Capture-Tiny%200.07;reports=1;os=freebsd"&gt;FreeBSD 7.1 still sometimes fails&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I suspect the FAIL reports I&amp;#8217;m seeing are something specific to either CPANPLUS or BinGOs&amp;#8217; smokers, but I need more data points (PASS or FAIL) on that OS to get a better idea of what the issue is.&lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;
&lt;p&gt;Oh, and if you haven&amp;#8217;t seen the alpha CPAN Testers Analysis site, check this out: &lt;a href="http://analysis.cpantesters.org/solved?distv=Capture-Tiny-0.07"&gt;Capture-Tiny-0.07 failure analysis&lt;/a&gt;.  Cool stuff!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/ZOvH0dNWfAg" height="1" width="1"/&gt;</content>
		<author>
			<name>David Golden</name>
			<uri>http://www.dagolden.com</uri>
		</author>
		<source>
			<title type="html">dagolden</title>
			<subtitle type="html">Whatever comes to mind</subtitle>
			<link rel="self" href="http://www.dagolden.com/index.php/feed/" />
			<id>http://www.dagolden.com/index.php/feed/</id>
			<updated>2010-02-09T03:01:05+00:00</updated>
		</source>
	<feedburner:origLink>http://www.dagolden.com/index.php/656/freebsd-hates-capturetiny/</feedburner:origLink></entry>

	<entry xml:lang="en-us">
		<title type="html">Perl 6 Design Minutes for 27 January 2010</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/YDuXHL9L6YA/40144" />
		<id>http://use.perl.org/~chromatic/journal/40144?from=rss</id>
		<updated>2010-01-29T21:00:38+00:00</updated>
		<content type="html">&lt;p&gt;The Perl 6 design team met by phone on 27 January 2010.  Larry, Allison, Patrick, and chromatic attended.&lt;/p&gt;&lt;p&gt; &lt;strong&gt;Larry:&lt;/strong&gt; &lt;/p&gt;&lt;ul&gt;
&lt;li&gt;tweaked definition of when a series operator is considered infinite&lt;/li&gt;&lt;li&gt;nailed down more list assignment semantics with respect to interators&lt;/li&gt;&lt;li&gt;clarified how &lt;code&gt;($a, $b, @a) = 1..*&lt;/code&gt; works&lt;/li&gt;&lt;li&gt; &lt;code&gt;KeyWeight&lt;/code&gt; deletion criterion kept consistent with other &lt;code&gt;KeyHash&lt;/code&gt; types&lt;/li&gt;&lt;li&gt;negative keyweights are allowed to fail at pick time&lt;/li&gt;&lt;li&gt;"mostly eager" now assumes unknown closure generators are probably infinite&lt;/li&gt;&lt;li&gt;random whackage on &lt;code&gt;List&lt;/code&gt;, &lt;code&gt;Seq&lt;/code&gt;, &lt;code&gt;Parcel&lt;/code&gt;, &lt;code&gt;Capture&lt;/code&gt;, &lt;code&gt;Iterator&lt;/code&gt;, &lt;code&gt;Nil&lt;/code&gt; etc.&lt;/li&gt;&lt;li&gt; &lt;code&gt;List&lt;/code&gt; is now simply the iterator role, and doesn't do &lt;code&gt;Positional&lt;/code&gt; &lt;/li&gt;&lt;li&gt; &lt;code&gt;Seq&lt;/code&gt; takes over &lt;code&gt;Positional&lt;/code&gt; duties for reified (or reifiable) value lists&lt;/li&gt;&lt;li&gt;think of &lt;code&gt;Seq&lt;/code&gt; now as a constant &lt;code&gt;Array&lt;/code&gt; (but also lazy like &lt;code&gt;Array&lt;/code&gt;)&lt;/li&gt;&lt;li&gt; &lt;code&gt;Iterable&lt;/code&gt; now means you can ask for an iterator, but doesn't do &lt;code&gt;List&lt;/code&gt; &lt;/li&gt;&lt;li&gt; &lt;code&gt;Array&lt;/code&gt;, &lt;code&gt;Seq&lt;/code&gt;, etc do &lt;code&gt;Iterable&lt;/code&gt;, but not &lt;code&gt;List&lt;/code&gt; &lt;/li&gt;&lt;li&gt;only actual iterators do &lt;code&gt;List&lt;/code&gt; &lt;/li&gt;&lt;li&gt; &lt;code&gt;Nil&lt;/code&gt; is defined as a suitable sentinel for both list and slice iterators&lt;/li&gt;&lt;li&gt;continued to rethink that with pmichaud++ et al&lt;/li&gt;&lt;li&gt;we'll probably end up with an &lt;code&gt;EMPTY&lt;/code&gt; special exception object to be the iterator sentinal&lt;/li&gt;&lt;li&gt;proposed an &lt;code&gt;E&lt;/code&gt; operator to go with it to make testing for &lt;code&gt;EMPTY&lt;/code&gt; across multiple iterators very fast&lt;/li&gt;&lt;li&gt;other than that, mostly just bug whacking, no major refactors&lt;/li&gt;&lt;li&gt;still thinking about doing real LTM for STD&lt;/li&gt;&lt;li&gt;did lazify &lt;code&gt;Cursor&lt;/code&gt;'s fnum-&amp;gt;fate translations for shorter LTM candidates in preparation for smarter LTM&lt;/li&gt;&lt;li&gt;we don't need special objects for the items that get matches&lt;/li&gt;&lt;li&gt;we do need to think more about the hyper cases&lt;/li&gt;&lt;li&gt;how to do list processing using balanced trees of delegated sub refs&lt;/li&gt;&lt;li&gt;don't want to build in serial assumptions where we don't need them&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;strong&gt;Patrick:&lt;/strong&gt; &lt;/p&gt;&lt;ul&gt;
&lt;li&gt;made the Rakudo #25 release last week&lt;/li&gt;&lt;li&gt;it was much easier to make the release than explain what we were planning to do instead&lt;/li&gt;&lt;li&gt;also working on iterators and lists&lt;/li&gt;&lt;li&gt;NG branch is blocking on that&lt;/li&gt;&lt;li&gt;worked on the design in my head for three weeks&lt;/li&gt;&lt;li&gt;realized that we were doing iterators completely wrong the other night&lt;/li&gt;&lt;li&gt;Larry's making some useful changes to the spec in response&lt;/li&gt;&lt;li&gt;there are still some unclear spots in the spec&lt;/li&gt;&lt;li&gt;we need an implementation to figure those out&lt;/li&gt;&lt;li&gt;my biggest question is the relationship between &lt;code&gt;List&lt;/code&gt;, &lt;code&gt;Parcel&lt;/code&gt;, &lt;code&gt;Itertor&lt;/code&gt;, and array&lt;/li&gt;&lt;li&gt;as of this morning, I think I have it&lt;/li&gt;&lt;li&gt;that code seems to be working &lt;em&gt;and&lt;/em&gt; efficient&lt;/li&gt;&lt;li&gt;so far it's working well&lt;/li&gt;&lt;li&gt;continuing with that&lt;/li&gt;&lt;li&gt;wrote a very short range iterator prototype that colomon has used&lt;/li&gt;&lt;li&gt;also write a &lt;code&gt;map&lt;/code&gt; iterator that works&lt;/li&gt;&lt;li&gt;coming up with examples for the &lt;code&gt;zip&lt;/code&gt; operator was nice&lt;/li&gt;&lt;li&gt;good ideas for what we need to be able to do&lt;/li&gt;&lt;li&gt;objects that can iterate have a &lt;code&gt;.iterator()&lt;/code&gt; method&lt;/li&gt;&lt;li&gt;to interpolate that into a list, &lt;code&gt;.list()&lt;/code&gt; returns a flat &lt;code&gt;Parcel&lt;/code&gt; for that iterator&lt;/li&gt;&lt;li&gt; &lt;code&gt;Parcel&lt;/code&gt;s know how to generate &lt;code&gt;Iterator&lt;/code&gt;s&lt;/li&gt;&lt;li&gt;those know how to handle &lt;code&gt;Iterator&lt;/code&gt;s of &lt;code&gt;Iterator&lt;/code&gt;s&lt;/li&gt;&lt;li&gt;I suspect that's how we do hyper iteration&lt;/li&gt;&lt;li&gt;change &lt;code&gt;Parcel&lt;/code&gt;s to understand that&lt;/li&gt;&lt;li&gt;adding pieces back into the ng branch&lt;/li&gt;&lt;li&gt;next I have to fix slurpy parameters&lt;/li&gt;&lt;li&gt;many of our builtins need that&lt;/li&gt;&lt;li&gt;need to figure out Jonathan's code to do that&lt;/li&gt;&lt;li&gt;after that, I'll do arrays&lt;/li&gt;&lt;li&gt;that should remove the blockers on the ng branch&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;strong&gt;Allison:&lt;/strong&gt; &lt;/p&gt;&lt;ul&gt;
&lt;li&gt;working on Pynie&lt;/li&gt;&lt;li&gt;Francois has helped greatly to update it for Plumage&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;strong&gt;c:&lt;/strong&gt; &lt;/p&gt;&lt;ul&gt;
&lt;li&gt;still working on the TT #389 fix&lt;/li&gt;&lt;li&gt;think I have the right design, just need time to implement it&lt;/li&gt;&lt;li&gt;working on a potential new time for #parrotsketch&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;strong&gt;Allison:&lt;/strong&gt; &lt;/p&gt;&lt;ul&gt;
&lt;li&gt;thinking about hackathons&lt;/li&gt;&lt;li&gt;would be nice to have a Rakudo hackathon at YAPC::NA&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;strong&gt;c:&lt;/strong&gt; &lt;/p&gt;&lt;ul&gt;
&lt;li&gt;Parrot will come up; didn't it come up about half the time last year?&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;strong&gt;Patrick:&lt;/strong&gt; &lt;/p&gt;&lt;ul&gt;
&lt;li&gt;it was all Parrot&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;strong&gt;Allison:&lt;/strong&gt; &lt;/p&gt;&lt;ul&gt;
&lt;li&gt;you'll have an influx of Rakudo interest two months after Rakudo Star&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;strong&gt;Patrick:&lt;/strong&gt; &lt;/p&gt;&lt;ul&gt;
&lt;li&gt;probably will have one before then&lt;/li&gt;&lt;li&gt;but can tell people "Go to YAPC; we'll show you how to help in person there"&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/YDuXHL9L6YA" height="1" width="1"/&gt;</content>
		<author>
			<name>chromatic</name>
			<uri>http://use.perl.org/~chromatic/journal/</uri>
		</author>
		<source>
			<title type="html">chromatic's Journal</title>
			<subtitle type="html">chromatic's use Perl Journal</subtitle>
			<link rel="self" href="http://use.perl.org/~chromatic/journal/rss" />
			<id>http://use.perl.org/~chromatic/journal/rss</id>
			<updated>2010-01-29T21:01:27+00:00</updated>
			<rights type="html">use Perl; is Copyright 1998-2006, Chris Nandor. Stories, comments, journals, and other submissions posted on use Perl; are Copyright their respective owners.</rights>
		</source>
	<feedburner:origLink>http://use.perl.org/~chromatic/journal/40144?from=rss</feedburner:origLink></entry>

	<entry xml:lang="en-us">
		<title type="html">Perl QA Hackathon 2010 Venue &amp;amp;amp; Vienna.pm Sponsorship</title>
		<link href="http://feedproxy.google.com/~r/PlanetPerl/~3/us46Qy1BTw8/40142" />
		<id>http://use.perl.org/~domm/journal/40142?from=rss</id>
		<updated>2010-01-29T16:49:24+00:00</updated>
		<content type="html">&lt;p&gt;The &lt;a href="http://2010.qa-hackathon.org/"&gt;Perl QA Hackathon 2010&lt;/a&gt; will take place in the lovely &lt;b&gt; &lt;a href="http://www.metalab.at/"&gt;MetaLab&lt;/a&gt; &lt;/b&gt;, a grass-root non-profit hack-space in the middle of Vienna (more on &lt;a href="http://en.wikipedia.org/wiki/Metalab"&gt;Wikipedia&lt;/a&gt;).
There will be lots of space, workplaces, sofas, wireless and wired network and a big fridge full of drinks.&lt;/p&gt;&lt;p&gt; &lt;a href="http://vienna.pm.org/"&gt;Vienna.pm&lt;/a&gt; has also proud to announce that we will sponsor the hackathon with &lt;b&gt;10.500 Euro&lt;/b&gt;. We will reserve a small part for catering during the event, but most of the money will go into paying for transport and hotel of invited guests.&lt;/p&gt;&lt;p&gt;If you want to hack on a QA / Toolchain project, please add yourself to the &lt;a href="http://2010.qa-hackathon.org/qa2010/wiki?node=Attendees"&gt;Attendees&lt;/a&gt; page of the &lt;a href="http://2010.qa-hackathon.org/qa2010/wiki"&gt;wiki&lt;/a&gt;.

&lt;/p&gt;&lt;p&gt;Thomas Klausner,&lt;br /&gt;
on behalf of Vienna.pm and the Perl QA Hackathon 2010 team&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PlanetPerl/~4/us46Qy1BTw8" height="1" width="1"/&gt;</content>
		<author>
			<name>Thomas Klausner</name>
			<uri>http://use.perl.org/~domm/journal/</uri>
		</author>
		<source>
			<title type="html">domm's Journal</title>
			<subtitle type="html">domm's use Perl Journal</subtitle>
			<link rel="self" href="http://use.perl.org/~domm/journal/rss" />
			<id>http://use.perl.org/~domm/journal/rss</id>
			<updated>2010-01-30T21:21:11+00:00</updated>
			<rights type="html">use Perl; is Copyright 1998-2006, Chris Nandor. Stories, comments, journals, and other submissions posted on use Perl; are Copyright their respective owners.</rights>
		</source>
	<feedburner:origLink>http://use.perl.org/~domm/journal/40142?from=rss</feedburner:origLink></entry>

</feed>
