Long Story Short

Not a tech blog today more just a store on design and development. So here goes.

Once upon a time not too long ago and not very far away I was happily working working away when the dreaded battle started between 'The Design' and the 'The Process' types.

Well the end of this was that neither side won their little war and as the big hats came in an 'solved' the team problems by a compromise which left both sides unhappy and shall we say not on speaking terms.

So on the process side the great and glorious 'Scrum' process was adopted (btw not the choice of the Process types) and on the design side they stuck with good old Requirements and Design from the 'Waterfall' model we all know and love.

The real rub was the chief process guy was put in charge of the requirements and the chief design person was place in charge of the process. Needless to say I smelt disaster from a long way off.

"Wow, Perl 6!" Talk: Slides, Recording, and Answers to Questions

Last night I gave a "Wow, Perl 6!" talk at the Toronto Perl Mongers, whom I thank for letting me speak, even after I got lost for 15 minutes in the building the event was hosted at and was subsequently late.

The talk is an overview of some of the cool features Perl 6 offers. If you didn't get a chance to be at the talk or to watch it via a Google Hangout, you can still get a recording of it.

You can view the slides at http://tpm2016.zoffix.com/ and the recording of the talk is on YouTube:

Synopsis

Couch Potato:

  • Lazy lists and their uses

Molding Your Own:

  • Subsets
  • Custom operators
  • Muti-dispatch

Hyperspace: Multi-core processing at a touch of a button

  • Hyper operators
  • Hyper sequence methods
  • Autothreaded junctions
  • Promises, Supplies, and Channels

How's Your Spellin'?

  • Grammars: Parsing made easy

Whatever, man!:

  • Whatever Code
  • Meta operators
  • Model6 Object Model (very brief "teaser" overview)
  • MOP: Meta Object Protocol
  • Sets, bags, and mixes

Polyglot:

  • NativeCall
  • Inline::Perl5

Not Really Advanced Things:

The Perl Weekly needs you help

There is a new page on the Perl Weekly website listing all the authors.
It would be awesome to have a list of articles by author mapped from that page.

The problem is that the list of authors is probably not complete and many of the articles that were included in the 4+ years of the newsletter were not tagged with the author. Especially in the first 2 years. So if you have some spare time and would like to help adding the authors to the articles....

All the source code is in this repository. The source files are in the src/ directory. Including the authors.json file that holds the information about the authors. The html/ files are generated. Don't bother with those.

If you are already there, it would be nice to include the Twitter account of all the authors who have a Twitter account so the little Twitter links next to their articles (See the latest) will also include their handle. That can help people further distribute the articles and also mention the author in one click.

cpanparty is over

Well, it was a great party but .. It seems everybody needs to get home, as home is better place than being a guest somewhere ... as Russian would say ;)

But to be serious I am going to close cpanparty project as:

  • I don't have much time to write new test cases for existed CPAN module and it seem nobody wanted to join this process

  • My initial idea behind sparrowhub was to create a repository of reusable test / monitoring suites to match various life practical cases. CpanParty is a bit different - this is specification by example / test descriptions of existed CPAN modules. Still thinking that idea is quite interesting I am going to remove cpanparty plugins from sparrowhub to keep it clean and dedicated to initial purposes so not to confuse user asking how can I use test cases for Dancer2 or Mojlicious or other great web frameworks in my daily test/monitoring tasks?

So farewell for CpanParty!

As result:

  • cpanpatry plugins will be removed from sparrowhub index
  • plugins source code will remain on my github repos though
  • let'me know if for some reasons you want to resurrect or start new cpanparty tests for some CPAN distributions ....

Binary parsing with Marpa: .class files

Perl 5 Porters Mailing List Summary: March 15-27th

March 15th-27th

News and updates

Perl 5.23.9 is now out!

All tickets blocking 5.25.1 are now collected in Perl #127731.

Ricardo Signes and the team are reviewing all the 5.24 blockers here and here.

Steve Hay is organizing the voting file for 5.22.2.

Tony Cook providing his grant reports. In total about 38 hours and approximately 18 tickets were reviews or worked on, and 3 patches applied.

Dave Mitchell providing his grant report.

Term::ANSIColor 4.05 is now out.

podlators 4.07 is now out.

version.pm was upgraded in core to 0.9914.

Encode 2.83 is now out.

Matthew Horsfall is adding more macros from handy.h to Devel::PPPort so they are available in earlier versions of Perl.

Issues

New issues

On The Mojolicious Codebase

There has been some discussion this week about forks of pieces of Mojolicious. Frustrating discussions over what is proper and how to discourage forking. It has been a long week to be honest (and thankfully the recent incident has been peacefully resolved, see postscript).

But then finally, just today, I’ve chosen to see things a different way. I’m really happy to see what lengths people are willing to go to in order to use Mojolicious. This includes addressing a perceived need for streamlining by taking a maintenance burden onto themselves and forking that code that which they need. They see the value in Mojolicious’ code, if not the value in the toolkit as a whole.

Help required: The SVG module & mouse effects

Can anyone show me code using mouseover etc with the SVG module? I'm afraid the docs are too terse for me. FWIW: I'll be using jQuery/jQuery UI.
TIA.

Virtual Spring Cleaning (part 1 of X)

At the 2016 German Perl Workshop in Nuremberg I first released and demonstrated a simple local search engine created from Elasticsearch with Perl for the surrounding infrastructure. The search application is distributed via CPAN as Dancer::SearchApp.

A Tutorial for using LibXML from Perl

In my ongoing crusade to direct people away from XML::Simple and towards XML::LibXML, I've recently published a documentation project called "Perl XML::LibXML by Example". The primary target of this documentation is the desperate Perl hacker who might otherwise reach for XML::Simple without realising the awful horrors that module will inflict upon them. My hope is that by pointing people at this documentation we'll be able to help them solve their problems sooner and with less pain.

In helping people with their Perl and XML problems I've come to realise that in order to become proficient with XML::LibXML what people really need (and what I've aimed to provide) is:

New to Perl? Come to The Perl Conference in Orlando for only $50.

Perl is a thriving language backed by an active community that continues to grow daily as newcomers discover what the language has to offer. The Perl Conference (also affectionately referred to as “YAPC::NA”) is the premiere North American event featuring training, workshops, hackathons for all things Perl and for all skill levels.

If you are new to Perl and have never attended YAPC before, The Perl Foundation is pleased to announce a very special welcome gift for a few lucky individuals. If this is your first time, you could join the Perl community at YAPC::NA::2016 in Orlando, Florida June 19th through 22nd for only $50.

Here’s what your $50 will get you:

  • Free admission to the main conference event, including all track talks, all keynotes, and some fun social events. (Regular ticket price is $250).
  • Free hotel accommodations June 19, 20, and 21 (The lowest room rate is $119/night)
  • Free Zero to Perl 5 Beginner Class. (Regular ticket price is $75).

That’s over $650 worth of YAPC for only $50!

SparrowHub - a repository of reusable testing/monitoring suites

Hi all!

SparrowHub - is a test/monitoring suites repository. SparrowHub repository contains collections of reusable testing/monitoring suites which are also called plugins. These are test suites for various use cases. From testing web services to checking disk available amount on your server. Sparrow suites are runnable via console script called sparrow which produce TAP output. It could be used in whatever monitoring , testing task and could be easily integrated into existed monitoring / deployment / configuration / automation systems. Sparrow plugins to be written on outthentic DSL and to be extended by Perl.

I have just added two 5 minutes tutorials for those who:

  • wants just to use sparrow suites in monitoring / testing purpose
  • wants to develop new sparrow plugins

A helper managing your PM social media

Social media will absolutely help you grow your local PM. Through consistent social media usage, when combined with consistently holding meetings, Sydney PM meeting attendance has grown from a motley crew of ~6 people 18 months ago to a venue busting 25 last month.

Attendance was so unexpectedly large we had to move out of our hosts board room (thanks Broadbean) to their general staff area. Thankfully their wall mounted status TV was quickly re-purposed for presenters and the show went on smoothly.

Social media for us has been Facebook and our pm.org email list, with Meetup being recently reinvigorated along with #australia on irc.per.org (does that count as social media?)

Heres a strategy: Facebook is very good at gently reaching out to people who can be convinced to play around with perl and come along to your meetings. They might not have used perl in a while, or at all, and everything in between. These people can be gradually enticed to come along via your PM's Facebook page.

Drop perl 5.8 support in GitPrep 2.0

I decide to drop the support of perl v5.8 in GitPrep 2.0 today.

This is because I want to use latest Mojlicious, which requires perl 5.10.1+.

and because mojo-legacy project stop at 2014.

https://github.com/jamadam/mojo-legacy

GitPrep have basic authentication bug in CGI access.
This is maybe old Mojolicious bug.

Perl 5.8 user can continue to use GitPrep 1.xx or install newly perl by using perlbrew.

http://perlbrew.pl/

This is a little pain but I believe this decision is good.

Announce: Rakudo Perl 6 compiler, Release #97 (2016.03)

On behalf of the Rakudo development team, I'm very happy to announce the March 2016 release of Rakudo Perl 6 #97. Rakudo is an implementation of Perl 6 on the Moar Virtual Machine[^1].

This release implements the 6.c version of the Perl 6 specifications. It includes bugfixes and optimizations on top of the 2015.12 release of Rakudo, but no new features.

Upcoming releases in 2016 will include new functionality that is not part of the 6.c specification, available with a lexically scoped pragma. Our goal is to insure that anything that is tested as part of the 6.c specification will continue to work unchanged. There may be incremental spec releases this year as well.

The tarball for this release is available from http://rakudo.org/downloads/rakudo/.

Please note: This announcement is not for the Rakudo Star distribution[^2] --- it's announcing a new release of the compiler only. For the latest Rakudo Star release, see http://rakudo.org/downloads/star/.

Perl 6: The Next Node.js, Done Right

If you've been a programmer for more than a couple of years, then you remember when Node.js first appeared. Some folks were raging about how insanely fast their ecosystem was growing, while others confusedly shrugged, wondering why anyone would want to use a language made for scripting browsers for server side work.

I can easily dismiss Node's large ecosystem of reinvented wheels, but the underlying point of why it got popular is valid: the fewer languages you need for an app, the fewer (or less experienced) programmers you have to hire, the cheaper it is to make your app. The self-proclaimed "HTML programmer" who was copy-pasting JS snippets from blogs and forums, now of all a sudden became a full-stack Web developer. But is using a made-for-browsers language for all-purpose work the right approach?

Introduction to Marpa book in progress

My latest blog post is the introduction to my Marpa Book, currently in progress. The book will be a theory monograph, so it's kind of stuffy, but it's a good summary of Marpa's features. It also discusses the implications of these features for applications.

Super Easy SSL Certs for Mojolicious Apps

I’m assuming that by now you’ve probably heard of Let’s Encrypt. If you haven’t, they are a brand new Certificate Authority that issues SSL certificates for free via an automated system!

There has to be a catch right? Well kinda, but it’s a small one. The certificate is only valid for 90 days. They mention two reasons for this in a blog post: to encourage automation and to contain the damage of a compromised cert.

If you need to renew every 90 days, you don’t want to be doing that by hand right? By encouraging automation, they can effectively force you to investigate how to make security easier for yourself over the long term. You may have read the famous Ten Immutable Laws Of Security but the related Ten Immutable Laws of Security Administration tells us in Law #2 that

Security only works if the secure way also happens to be the easy way

Once you have automated your SSL cert generation then the easy way will be the standard way.

PRC 2016 - First Three Months

As last year I was unable to post every month about the Pull Request Challenge assignments, I decided that this year I would try to post updates every three months.

So, for the first month, I got WebInject. The PR was not huge. Just a contribution to add a README file to the distribution. As the author did not want to update the README and the POD, the PR was changed in order to generate the README from the POD. This PR was then merged. Yay, first month complete.

Spek - test oriented web framework

Recently keep playing with TDD and swat I have created a small web framework based on Kelp and swat.

The essential features of this framework named Spek are:

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.