Public 0 is the new Inbox 0

If you visit the Github dashboard you will see two entries in the top left corners. Yours and Public with two numbers. These are the number of pull requests you created (Yours) that other people might merge and the Public is the number of pull requests created by others and waiting for you to handles. Please do so. Public 0 is the new Inbox 0.

One of the best ways to encourage people to contribute more is to respond to their contribution quickly. Merging is of course the best action, but even a comment on how the pull request might need to be improved is much better than silence.

Opportunity to support Strawberry Perl

First of all I would like to thank AuditSquare.com for sponsoring our project Strawberry Perl during the last 12 months.

The sponsorship comprised of providing the following VPS as our build machine:
- 3 CPU / 8 GB RAM / 120 GB HDD
- OS license - Windows 2012 Datac EN
- remote access: RDP + KVM
- unlimited Internet connectivity

Unfortunately arranged sponsorship period is over and we are looking for another sponsor willing to provide our project with similarly sized VPS (current provider charges approx. 600 USD per 1 Year).

For further information you can contact me via e-mail at kmx@cpan.org.

EDIT: some answers which might be interesting:

My first YAPC (Yet Another Perl Conference)

Since, I'm an extremely lazy person, so I'm not going to copy-paste-modify text of this post of mine, so please read it here, feel free to comment either here or here.

Thanks for your patience!

Quacks who write software make us all look bad

By now I'm sure that many of you have read about the research which claims that people aren't smart enough for Democracy to flourish. This was big news and made the rounds (including here on Reddit). The main researchers listed were Dunning and Kruger and I don't think anyone disputes their credentials.

Except that this is a science article, not a link to the actual research. In particular, I was intrigued by this by a reference to a software simulation validating their results. That piqued my curiosity.

Marpa has a new web site

[ Cross-posted by invitation from its home on the Ocean of Awareness blog. ]

Marpa has a new official public website, which Ron Savage has generously agreed to manage. For those who have not heard of it, Marpa is a parsing algorithm. It is new, but very much based on earlier work by Jay Earley, Joop Leo, John Aycock and R. Nigel Horspool. Marpa is intended to replace, and to go well beyond, recursive descent and the yacc family of parsers.

Planet Moose - August 2014

Welcome to Planet Moose, a brief write up on what's been happening in the world of Moose in the past month, for the benefit of those of you who don't have their eyes permanently glued to the #moose IRC channel, or the MetaCPAN recent uploads page.

It's now a year since the first Planet Moose. I'm surprised I've managed to keep it up for a whole twelve months. (Though it's not always been posted promptly on the first day of the month!)

If you'd like to contribute some news for next month's issue, you can do so on the wiki.

Moose

Moose 2.1211 has been released containing some documentation updates and minor changes to Moose::Exporter.

More interestingly, three Moose 2.13xx trial releases have been uploaded to CPAN. The major new feature so far is improved support for overloaded operators, especially in roles, eliminating the need for MooseX::Role::WithOverloading.

Citations In the Humanities (Update)

This is a followup from this post. You will want to read that first before continuing.

I just wanted to let everyone know that the British Library now has a means like the Library of Congress to link to specific books. This is called the “British National Bibliography” and is available at http://bnb.data.bl.uk. This should ease the problem of some books not being available from the Library of Congress. For instance, Bechbretha has a URL of http://bnb.data.bl.uk/id/resource/012025232. You can place extensions at the end to get various formats: for example http://bnb.data.bl.uk/id/resource/012025232.rdf will get you the RDF version of the document.

Things are now to the point where we can really drop most citation frameworks and go straight with something that looks like my citation proposal.

Single-page POD for a distribution

I often find myself going back-and-forth between POD pages of a single distribution. (e.g. Dancer and Dancer::Cookbook.

Is there a way to get all the PODs of a distribution as a single HTML page?

Oetiker.ch tilt Kickstarter Campaign for brian d foy

We are proud to make brian d foy's kickstarter campaign a success with a substantial contribution. After the Swiss Perl Workshop 2014 brian stays for another few days in Switzerland to work and teach his famous Mastering Perl course.

OETIKER+PARTNER AG is a Swiss IT company, operating at the nexus of software
development and system management. We heavily rely on open source tools in
our work and open source a lot of our products.
Our open source products include MRTG, the multi router traffic grapher, SmokePing to keep track of your network latency, extopus, a monitoring aggregator, and most recently, ZnapZend for high performance zfs backups.

September grant round is just around the corner

The Grants Committee evaluates grant proposals every two months (rules 1.1). We accept grant proposals all the time, and in this round, we will evaluate proposals which we get between July 15th till September 14th. I will post a CFP tomorrow, September 1st my time, on the TPF news.

Some readers may remember that I discussed the budget in July. Let me be clear; the grant limit is still $10,000 as announced in February.

Read on if you are interested on our budget.

As we funded $6,000 grant in the July round, the allocatable money we have for 2014 is $5,200.

At the same time, let me stress the basic rule for the grant application: Don't try to calculate your proposal based on the budget we have. While the budget is one factor, ultimately your grant value should not be influenced by the budget we have.

How to get involved in YAPC::EU Granada 2015

Next year the YAPC::EU will take place in Granada (Spain) in early September, as you already probably know by now.

The organization team members are currently from Granada.pm, Madrid.pm and Barcelona.pm, but we'd like to invite the Cloud Orga team that worked so well this year to get involved too. We plan to keep on using #yapceu channel on irc.perl.org for contact and co-ordination, but we have a Google group that you may want to join. The conversations on that list are mainly in Spanish but you are welcome to participate in English, if you prefer. Please, send a message to request an invitation to the list.

We'll be posting news on this blog and twitter in order to keep you updated on our progress. Once we have the Act instance in production, we'll publish most important news there too.

Cheers and see you in Granada!

Data::Dumper Debugging

I've never really used the Perl debugger much (maybe I should learn?) and usually resort to lots of use Data::Dumper; print Dumper($somevar); statements to help me understand what's going wrong with a piece of code.

However, what I often find is that $somevar contains exactly the data I expected it to contain. So the problem must be another variable? Or maybe there's a function which isn't returning what I expected it to? Or maybe one of my if statement has jumbled logic? So I need to change my print Dumper(...) statement and re-run the script.

Anyway, sick of that, and inspired by a question on StackOverflow I've released Pry, a really tiny wrapper around DOY's Reply REPL. Using Pry, you can run your script, and drop into a REPL at the point where you suspect things are going wrong. Once in the REPL you can inspect any lexical variables which are in scope (thanks, PadWalker!), or peek at the call stack (thanks, Devel::StackTrace!); you can even call functions and methods to see what's going on.

So if you, like me, have never managed to figure out breakpoints, and watches, and whatever other thingies a proper debugger has to offer, but are getting frustrated by the limitations of Data::Dumper-based debugging, give Pry a try!

Rewriting Pod::Readme

Back in 2005, I wrote Pod::Readme. It languished a bit, and David Precious took over maintainership around 2010.

The core idea for this is that README files contain redundant information that is already in the POD, but not everything in the POD should be in the README (such as the details for individual method calls).

It's recommended in Task::Kensho but I'm not aware of many people using it. The few buildtool plugins that generate README files from POD seem to use plain POD-to-text modules.

So I've started re-writing it. My fork is on GitHub. My hope is to have something that module authors will want to use, and will use by default.

YAPC::EU is over. Everybody is back to their realities. Ado continues...

YAPC::EU is over

Благодаря ти Марияне, че направи това събитие истина! - Thank you Mariane, for making this event true!

Many of the the recorded videos of the talks are on Youtube already.

I met splendid people there. Yet once again my doubts about the vitality of this community showed to be pointless. And it is hard to understand how it continues to exist without a giant company to push the technology behind it further.  Yes there are companies that supported the event. The technologies them selves (http://www.perl6.org/ and http://www.perl.org/) however exist and evolve thanks to enthusiasts from the community. The Perl Foundation helps a lot.

Everybody is back to the usual activities

5 part YAPC::EU report in German

unless you already seen my tweets and you understand German - you maybe wanna read this thread in the biggest German Perl forum.

Firebase - Build Realtime Apps

Firebase - Build Realtime Apps :

I’ve been using Firebase a lot lately to build real-time web apps both in Perl and in Javascript. I figured it was high-time I give them a shout. If you are looking for an easy way to build real-time web apps, have a look at Firebase

[From my blog.]

Link to public version control system (GitHub or otherwise)

You might know one of my pet peeves is to get people to link to the public version control system of their CPAN modules. Earlier I created a few reports , and in the last couple of days I have started to check the most recent modules again.

When I find a module that does not have a link from its META files to its VCS, I try to locate if there is a public VCS at all, if there is one on GitHub, I send a pull request. If I cannot find a public VCS I check with the author if there is one elsewhere or if s/he prefers to keep the VCS private. I am happy to let you know that most people reacted positively to these pull-requests and questions.

Once they merge the pull request I usually mention that the MetaCPAN dashboard lists all of their modules that have no link to VCS (or no entry for license) in their META files.

Book Review: The Origins of the Irish

The Origins of the Irish, J. P. Mallory, Thames & Hudson: London, 2013, ISBN:9780500051757

To give away the game before starting, I would like to say that this book would be an excellent addition to the library of anyone who has an interest in the pre-history of Ireland. While it is not my area of expertise, it illuminated much which I had already gleaned from the writings of others; however, this was done in a highly engaging and effective way. One of the main advantages of this book is the way in which the key points are gathered at the end of each chapter which reminds the reader of all the foregoing material. This would easily make this a book which should appear in any Celtic Studies course. The additional factor which makes this book even more valuable is the easy style and humour of one who has an absolute command of the primary and secondary material. However, this is not a book without its flaws which will be discussed anon.

I learn something about tell(), then abuse it.

I learned a new thing today, or remembered a forgotten one. I can use tell to affect the file handle that $. uses.

It all started very simply. I was going too far in my answer to How do I add the elements of a file to a second one as columns using Perl?, a question I found by looking for the most down voted open questions without an accepted answer. As usual, I thought the answer would be easy. And, for the most part it was.

Then I wanted to make it even easier. I thought Perl might not be necessary at all when we have things like paste and head and tail and other command-line thingys. The problem was a header in one input file and no corresponding header in the other. How could I make paste ignore the header?

A comparison of memory use for primality modules

Performance and memory use are two areas of concern for many libraries. Last December I made a number of changes in my Math::Prime::Util module to reduce memory use, and bulk88 helped really tweak some of the XS. I thought I'd pick a simple task and look at the speed and memory use of a number of solutions.

isprime from 1 to 10 million
Memory Time Solution
2096k 72.6s Perl trial division mod 6
2100k 124.8s Perl trial division
3652k 36.2s Math::GMP
3940k 14.8s Math::GMPz
4040k 1.9s Math::Prime::Util (no GMP backend)
4388k 1.9s Math::Prime::Util (with GMP backend)
4568k 1.4s Math::Prime::Util (GMP + precalc)
4888k 4.4s Math::Prime::XS
5316k 245.1s Math::Primality
5492k 29.8s Math::Pari
6260k 1.5s Math::Prime::FastSieve
~16MB >1 year regex

About blogs.perl.org

blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.