Djet

Now that I've put Djet into production, I recon it's time I at least told about it.

Djet is a Node Based Content Management System. It's a rather advanced one, using features from modern Perl and PostgreSQL. It's meant to be used behind some kind of frontend server, e.g. Nginx, or at least a Web Cache like Varnish.

My CPAN Cleaning, Day 2457025.500000

My second day of CPAN Cleaning was just the sort of work that I like: organizing a chaotic mess into something I can work with. My CPAN distributions are a mix of almost everything I've done in my history as a CPAN author. There was a CVS repository in the mix, several things left over from Sourceforge, and various ways of using Git. Even in the Git repos, many files still had CVS tags. A surprising number of files don't end in a newline, making for apparently pointless file changes.

Marines hard at work

Fixing all that up is easy; it's just work.

But then I want to ensure that all the .gitignore files have everything they need. In some repos, some .DS_Store entries snuck in, for instance. For MANIFEST.SKIP, we have a default set of includes. I went looking for the same thing for Git, and, of course, Github has a repo of sample .gitignore for many languages.

My First Day on the CPAN Pull Request Challenge

So yesterday, I started on the CPAN Pull Request Challenge. I was assigned the module Devel::StackTrace::WithLexicals, so, I read the doc and installed it.

The doc references two other modules' influence: Devel::StackTrace and PadWalker

So I figured I'd have a look at those first. Combining two examples from the doc for Devel::StackTrace, I wrote this:

More

New Dancer2 release en route to CPAN: 0.158000

A new Dancer2 release is heading to CPAN as we speak.

Christmas threw us off a bit on timing but we're back on track this week with our weekly Dancer2 release.

The popularity of Perl - 2014

In case you are interested I've published visitor-count numbers of some of the Perl-related sites such as search.cpan.org, metacpan.org and blogs.perl.org:

The popularity of Perl in 2014

My CPAN Cleaning, Day 2457023.500000

Read my other entries in "cpan cleaning"

With some encouragement from Neil Bowers, I'm tidying up my CPAN footprint. Over the years I've collected modules I did not write, permissions I never used, and all sorts of other situations that muddied the data when I what to create a list of CPAN objects I want to pay attention to. On the first day of the new year (check out the sweet Julian Date converter), I set out to tidy up.

Cleaning

First, I scheduled old files for deletion from PAUSE, including older versions and modules that I don't want to maintain anymore. Even through it's {Winter|Summer}, it's time for CPAN Spring Cleaning.

delete_files.png

Then, I made fresh versions of the modules I want to give up so their Makefiles, docs, and READMEs note that the module is unmaintained. I upload the modules into the ADOPTME user. That gets it out of the listings in CPAN Search or MetaCPAN.

adoptme.png

Book Report - December 2014

As you may be aware, I'm writing a book which will eventually become a free e-book. This is my third report on how I'm getting along.

CPAN Pull Request Challenge - resources available!

The CPAN PR Challenge is starting today. Latest polls have settled on 195 participants. People of all shapes and forms with different levels of Perl familiarity, experience, knowledge, and skill. Everyone seems excited and geared towards the challenge!

If you're participating, you might want to make use of the resources made available. I've tried to collect them here.

RESTful API using Bedrock (part V)

The fifth and final installment...

http://openbedrock.blogspot.com/2014/12/restful-apis-with-bedrock-part-v.html

Wondering what you can do for Perl?

An interesting idea seems to be floating around the Internet ... creating a basic interactive website on how to contribute to a particular FLOSS project. After some noise on the Perl Monger Groups and Perl Propaganda lists I decided to help a few folks put together: http://whatcanidoforperl.org/ . You might have read something about it on Perl Weekly or not. If you have suggestions please create a ticket or better yet create a pull request here. Cheers!

Bring out yer distributions!

In January more than 50 perl hackers will be starting the CPAN pull request challenge. They'll be randomly assigned a CPAN distribution and will have a month to submit at least one pull request.

Here I'll outline some things you can do to help the process, if you have distributions on CPAN, and are so inclined. Many of the particpants are relatively new to Perl, open source, and git(hub), so this is a way to help them "join in".

It's not too late to join in yourself — you can join at any time. Just email me: neil at bowers dot com.

You have nothing to lose but your chains!

Perhaps a misleading title. Seeing as this is not a political blog but a Perl one, I’m going to talk about method chaining, not worker’s unions.

Method chaining is the practice of consecutively calling methods on the return of a previous method. This comes in primarily two flavors. The first isn’t as common in Perl, though it is used extensively in Mojolicious, is when a method has nothing useful to return, it can return itself. This allows for say chaining setter methods $self->set_foo("FOO")->set_bar("baz"), or chaining related test methods

my $t = Test::Mojo->new;
$t->get_ok('/page/1/')
   ->status_is(200)
   ->text_like('#id' => qr/foo/);

While this is useful, it’s not my topic today. I’m going to talk about the more simple form, calling a method that returns an object, then calling a method on it, and so on.

RESTful APIs with Bedrock (part IV)

My series on creating RESTful APIs with Bedrock continues...

http://openbedrock.blogspot.com/2014/12/restful-apis-with-bedrock-part-iv.html

Is Perl dead?

Or just deader than Ruby?

(Does this constitute a Ruby-o-meter++? Can it increment in reverse?)

Reading about Perl

I like to read at least a computer book every 2-3 months, that makes around six books per year. This year was a very unluky one for me, due to family and personal wealth problems and surgeries. However I'm back on the rail of reading computers book again, and Perl is the predominant one this year.

Facebook::Graph 1.09

I’ve updated Facebook::Graph to use Moo instead of Any::Moose. Enjoy!

[From my blog.]

RESTful APIs with Bedrock

Viewing Michael McClennen's talk on RESTful data services got me to blog more precisely about using Bedrock and creating RESTful APIs.

Parts II and III can be found here...

http://openbedrock.blogspot.com/2014/12/restful-apis-with-bedrock-part-ii.html

http://openbedrock.blogspot.com/2014/12/restful-apis-with-bedrock-part-iii.html

Inline TPF Grant to be Finished by Christmas

OMG! That's now!!!

The Inline Grant is Finished!

Merry Christmas, Ingy and David

Take the 2015 CPAN Pull Request Challenge

If you join the CPAN pull request challenge, then at the start of each month in 2015 you'll be emailed a (somewhat) randomly selected CPAN distribution. You'll have one month to submit at least one pull request. You don't have to be an experienced Perl programmer, CPAN author, or githubber. The goal is to help others, possibly learn something, and hopefully have a bit of fun.

If you want to sign up, email me (neil at bowers dot com), letting me know your github username and your PAUSE id, if you have one.

Config::JSON 1.52

I just released Config::JSON 1.52 to CPAN which replaces Any::Moose with Moo. Enjoy.

[From my blog.]

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.