The Perl Advent Calendar 2017 Redux

By: Mark Fowler (‎Trelane‎) from Albany.pm
Date: Thursday, 16 August 2018 13:50
Duration: 50 minutes
Target audience: Any
Language: English

You can find more information on the speaker's site:


A resource for beginners and advanced Perl users alike, the Perl Advent calendar features humourous stories featuring Santa's Elves and the fun they have with Perl.

This talk will talk about all the exciting things that occurred in this year's calendar. Somewhat akin to twenty four two minute lighting talks, it'll expose you to a range of topics including:

- Unicode and Emoji in Perl, and parsing numbers in foreign scripts.
- The advantages and pitfalls of context in Perl, and One Important Tip About Searching in DBIx::Class that Everyone Should Know.
- Writing your own Perl::Critic rules to help detect mistakes you don't want to make again.
- How to write better heredocs with the new syntax in Perl 5.26 and how to take advantage of the babycart operator.
- How to create a reusable collection of strictures and helper modules you can load with a single use statement at the start of each script
- Dead easy tools for interactively picking from a list of options at the command line.
- How to get true constants in Perl, fast, secure and as useable as any normal variable.
- Perform blinding fast complex parameter validation for subroutine calls with arbitrary Moose type checking.
- Parsing custom non-regular grammars with Perl's souped-up regular expression engine.
- Meta programming and how to compile code at runtime without accidentally exposing variables from your lexical scope.
- Using Path::Tiny to abstract away the nitty-gritty details of path building and quickly do common file operations the right way with respect to encoding, error handling, and file locking.
- How to deep dive into the memory usage of your program within the interactive shell of Devel::MAT to find overly large variables, data structures or detect memory leaks.
- Detecting the prerequisites modules that your code relies on you both with the simple @INC hook technique, and with a range of powerful source code scanners from the CPAN.
- Leverage the power of Mojolicious from the command line to quickly scrape websites, perform CSS DOM selection and throw JSON to and from webservices.
- Bend Moose to your will by adding:
- Shortcuts for common attribute declarations.
- Disallowing undeclared constructor arguments.
- Using class attributes.
- Lazy requiring attributes.
- Ignoring constructor arguments that have undefined values.
- Quickly build DBIx::Class schemas directly from your database.
- Learn to use Reply to interactively watch what SQL DBIx::Class is generating and executing.
- Define complex custom DBIx::Class relationships and prefetch arbitrary related table data in single SQL statements.
- Learn how to use Perl to download all the videos from previous Perl conferences so you can watch them at the beach.


Attended by: Dave Cross (‎davorg‎), Tina Müller (‎tinita‎), Joelle Maslak, Simon Proctor (‎Scimon‎), Dagfinn Ilmari Mannsåker (‎ilmari‎), Salve J. Nilsen (‎sjn‎), Kivanc Yazan, Barbie, Ilya Chesnokov (‎ichesnokov‎), Phil King, Wieger Opmeer (‎a6502‎), Todd Rinaldo (‎toddr‎), Andreas Koenig, Chris Jack, Matthew Chubb (‎mchubb‎), Steve Rogerson, Felix Antonius Wilhelm Ostmann (‎Sadrak‎), Aaron Crane (‎arc‎), Michael Lush, Max Maischein (‎Corion‎), Erik Johansen (‎uniejo‎), scott, Richard Newsham (‎rnewsham‎)

Community Sponsors

Enlightened Perl Organisation Magnum Solutions Logo Perl6 Community Perl Weekly