Finding unused variables in your Template stash

Quite often companies who use Catalyst (with Template Toolkit) find that after a while, they're over relying on the use of the stash as a global dumping ground. To deal with that, I wrote a highly experimental module to print out unused template variables.

Some statistics from Debian package tags

I'm running Debian Stable (7.x, Wheezy, 7.4 to be exact) on amd64.

Count all Debian packages by their implementation language (I know, not the most efficient way):

% ( for tag in `debtags tagcat | grep '^Tag: implemented-in::' | sed 's/^Tag: //'`; do
    echo -e `debtags search $tag | wc -l` "\t" $tag
  done ) | sort -nr
4439     implemented-in::c
3258     implemented-in::perl
1840     implemented-in::c++
1063     implemented-in::python
304      implemented-in::java
289      implemented-in::ruby
214      implemented-in::ocaml
199      implemented-in::lisp
194      implemented-in::shell
137      implemented-in::php
118      implemented-in::TODO
97       implemented-in::r
92       implemented-in::haskell
79       implemented-in::c-sharp
62       implemented-in::objc
55       implemented-in::tcl
47       implemented-in::fortran
41       implemented-in::vala
41       implemented-in::scheme
37       implemented-in::lua
30       implemented-in::ecmascript
28       implemented-in::ada
2        implemented-in::ml
0        implemented-in::pike
0        implemented-in::erlang

I wonder why no Go yet...

Let's exclude all Perl libraries (/^lib.+perl$/) from that Perl count:

P5CMF Needs some love

The Perl 5 Core Maintenance Fund was initially announce at YAPC::NA in 2011. Since then, it has been TPF's most successful grant program, awarding over $260,000 in grants for continued development and debugging of the Perl 5 core.

Unfortunately, most of the funds have now been depleted. Our four present grantees, Tony Cook, Paul Johnson, Dave Mitchell, and Jess Robinson are each running on allocations that have between 3 and 6 months remaining. Without further contributions to the fund, there will not be enough money to renew their grants.

If you value the work that these people are doing for the Perl 5 Core, please consider making a contribution to the P5CMF by visiting soon.

Benchmarking several ASCII-table-generator modules

UPDATE #1 2014-07-11: Added Catmandu::Exporter::Table. This module is not exactly lightweight, so I will not consider it for usage in Perinci::CmdLine::Lite, but it's interesting to benchmark anyway.

UPDATE #2 2014-07-11: Nudged by me, Jakob extracted the table-generating
functionality of Catmandu::Exporter::Table into its own module Text::MarkdownTable. This module depends on nothing but Moo. Great job Jakob. Although for my particular project Perinci::CmdLine::Lite, I declared that Moo is a bit too heavy, and so excluded it. :)

UPDATE #3 2014-07-11: Added more modules to the mix: Text::FormatTable, Text::Table::Tiny. Excluded more modules: Data::ShowTable, Text::UnicodeBox::Table.

UPDATE #4 2014-07-11: Excluded 2 more modules: Table::Simple, Text::SimpleTable::AutoWidth

See you at YAPC::EU!

I'm happy to announce that, as usual, Nestoria will be sponsoring this year's YAPC::EU in Sofia, Bulgaria.

Also as usual we will be sending along a contingent from our dev team. Other than myself you'll also see Sam, Ignacio and Tim - all of whom have never attended a YAPC before and some of whom have learned Perl quite recently. I'm hoping they are going to get as much out of YAPC as I did at my first one back in 2007.

You can read more - and see some photos so you'll know who to say Hi to - on the Nestoria Dev Blog:

Hope to see you there!

P.S. Although I'm not speaking at YAPC::EU this year, I am speaking about Test::Kit 2.0 at the technical meeting on Thursday July 24th :-)

Swiss Perl Workshop in Two Months :-)

In a bit less than two months the second Swiss Perl Workshop takes place.

Lots of cool things are going to happen!

Register soon to secure one of the limited tickets.

Book your seat at the courses by brian d foy.

To make waiting for the workshop easier, and to get in touch with fellow Swiss Perl Mongers, come to our Swiss Perl Community Meetups. The next event happens on July 24 in Zürich. You will know us by at least one small puppet camel on the table.

Last time we "meetupped" in Olten, the workshop venue. Look at the view we had:


Thanks to our sponsors: | |

Grants Committee Budget

I don't know the Grants Committee ever published the annual budget. I see reasons to do so and not to do, but let's do it. Transparency is a good thing.

Conclusion first. The Grants Committee's budget for 2014 is $16,000.

Here is how it works.

Rule #1: The committee evaluates and funds grants every two months. At the point of funding, the money is "spent".

Suppose you submit a grant proposal of $3,000. Your proposal is great, the community feedback is all positive, and your grant is funded. At this point, we have spent the money; it's like putting the $3000 in a special envelope that has your name on it. The money is still in the TPF safe but it is reserved for you.

Rule #2: We are out of the money when all the money is spent for the year.

Rex meet Rspec~

As an DevOps, I use Puppet and Rex, and like automatic testing for my infrastructure. So when I saw serverspec, I thought: maybe I can do such things in Perl?

I know there are already so many testing frameworks at CPAN. But I like the syntax used by serverspec( yes, evoloved from Rspec!) so DIY begin~

Here is my work:Rex::Test::Spec.

We can use it as follow:

About is a common blogging platform for the Perl community. Written in Perl and offering the modern features you’ve come to expect in blog platforms, the site is run by Dave Cross and Aaron Crane, with a design donated by Six Apart, Ltd.