Buy a late-bird
conference ticket
Book a Perl 5 and/or
Perl 6 master class
Best prices for the
hotel room at the venue

PerlCon Talks

The parsed and the curious: macros for Perl 6 — Carl Mäsak, 45 minutes; accepted

What drive and desperation leads a developer to create an entirely new scripting language, just to figure out how to put macros in Perl 6? Find out in this talk!

How we moved (successfully) from monolithic application to the micro services — Yury Pats, 20 minutes; accepted

In the talk I would share our company experience of applying different approaches in the way to split the monolith application and survive in a mixed world between.

Perl 5: The past, the present, and one possible future — Sawyer X, 45 minutes; accepted

Perl 5.30, past and future. At least one of them.

The working architecture of Perl applications — Viktor Turskyi, 45 minutes; accepted

I've seen a lot of Perl applications. I see a lot of misunderstandings around architectural patterns. 99% of Perl tutorials do not cover this topic and limited to "hello world" apps. How to build a really large application? What to choose Monolith or Microservices? How to think about architectural layers? How does GraphQL influence my architecture? I will answer all of these questions.

What can you do with YAML in 2019? — Tina Müller, 20 minutes; accepted

YAML support for Perl has been improved in various ways over the last years. You can use it for more than just simple configuration files.

Growing our workforce — Diego Kuperman, 20 minutes; accepted

In this talk I will explain why and how we grown our resque based event system to allow new workloads

Supercharging Math Modules with Databases — Martin Becker, 20 minutes; accepted

Add a database to a math module to make it faster. But know what type of database to use and where to put it.

When Cro is not a Web Framework: implementing LDAP for Perl 6 — Alexander Kiryuhin, 20 minutes; accepted

So far Perl 6 did not have support for the LDAP protocol. This talk briefly explains the main parts of the Cro-centered implementation we built.

goto considered useful — Herbert Breunung, 45 minutes; accepted

While coding my first, small real life project in Perl 6, a handy command line tool named goto, I discovered some pros and con's I want to share here. It's mostly about the traps I ran into most often and some general (software engineering type) thoughts you should consider before even starting your Perl 6 adventure.

You Can Save The Planet. How About After Tea? — Sören Laird Sörries, 45 minutes; accepted

I don't mean to mock you, I don't think we will finish the task tonight. But I'd like to show it is feasible, and that it needs us to go about it and never stop. Facts, numbers, statistics, prognoses, colourful diagrammes... Old and proven engineering techniques, pretty unexpensive ones, too. Alternatively: What I have been doing and learning since the last PerlCon.

Console oriented sites and Perl 6: joining the worlds together — Igor Chubin, 20 minutes; accepted

Console sites or console services are sites that can be accessed from the browser or directly from the terminal, and though in both cases have the same or similar look and feel, accessing them from the terminal is usually preferable because of the advantages of the terminal itself. The question is, could Perl 6 become the main templating language for the console sites? And if yes, what main obstacles will be possibly faced on this way?

Things I learned at 'Advent of Code' — Thomas Klausner, 20 minutes; accepted

Advent of Code is an Advent calendar of small programming puzzles. In this talk I show how I fared and what I've learned.

What I learned about SQL in 2018 — Max Maischein, 45 minutes; accepted

This talk shows how to use SQL Window Functions (ISO SQL:2008) and how to use Common Table Expressions (CTE, ISO SQL:1999).

Lightning Talks Day 3 — R Geoffrey Avery, 45 minutes; accepted

More lightning talks.

Lightning Talks Day 2 — R Geoffrey Avery, 45 minutes; accepted

More lightning talks.

Lightning Talks Day 1 — R Geoffrey Avery, 45 minutes; accepted

Lightning talk description and the schedule for day 1. Also see the other sessions for more talks.

The Perl Family Tree: Discovering Our Heritage — Will Braswell, 45 minutes; accepted

Your family is where you come from. Your family tree helps you visualize your past, and perhaps capture a glimpse of the future. Discover our shared heritage with an investigation into the history of Perl.

C, RPerl. C, RPerl, Run. Run, RPerl, Run! — Will Braswell, 45 minutes; accepted

See RPerl run! This presentation is chock-full of real-life, bona-fide, honest-to-goodness running RPerl examples, demos, and applications.

Human Determination: A critique of CAPTCHAs — Job _, 45 minutes; accepted

You're familiar with CAPTCHAs getting in your way. But why are they such an ubiquitous security measure to begin with? Why are there different implementations and which problem are they attempting to solve? During this lecture you'll learn how these "Human Interactive Proofs" came to be, how they're still evolving, why they are a bad solution to the wrong problem, and which solutions are preferable within a set of common scenarios.

WebPerl - Run Perl in the Browser! — Hauke Dämpfling, 45 minutes; accepted

In this talk I'll give an overview of WebPerl - background, how it works, and what you can do with it.

1st Locale-TextDomain-OO practical examples, 2nd Locale-TextDomain-OO autotranslation — Steffen Winkler, 45 minutes; accepted

The talk is splitted into 2 parts. The first part explains how to handle the modules of Locale-TextDomain-OO in practice. The second part explains dynamic translation.

Using GeoIP to monitor break-in attempts — H.Merijn Brand, 20 minutes; accepted

Access to sites or applications that are (very) region specific, like elections, might well want to block regions that try to break-in and/or corrupt the data. When a firewall or similar monitor reports break-in attempts, it might be useful to see the region the attempt comes from.

Moving Mountains With Perl — Lee Johnson, 20 minutes; accepted

Using a Raspberry Pi + stepper motor, with some simple Perl, to pan a large format camera. Ultimately to take photographs of mountains.

Threads, thread unsafe modules, and an alternative — E. Choroba, 20 minutes; accepted

Using the PerlMonks Chatter Box GUI Client as an example, we'll see how to integrate Tk and XML::LibXML safely into a threaded program via Thread::Queue, or via MCE to avoid threads

Finding humans to turn into developers — Julien Fiegehenn, 45 minutes; accepted

This talk deals with strategies for finding trainee and junior developer candidates.

Debugging with Perl — Eugen Konkov, 45 minutes; accepted

Interactive debugging.

Quick and Dirty GUI Applications using GUIDeFATE (revisited) — Saif Ahmed, 45 minutes; accepted

GUI applications for Perl are tricky, but Perl can make tricky things easy. A simple toolkit-less, back-end agnostic GUI development is described but this time demo-ing the development of three applications from design to code, along with a little audience participation at the end.

Modern Perl Web Development with Dancer2 — Dave Cross, 480 minutes; accepted

In this workshop we will build a simple web application using Dancer2 and several other modern web tools.

CPAN Contributors - Do's and Don'ts — Mohammad Anwar, 45 minutes; accepted

Share the secrets of successful CPAN contributors

Apocrypha: stories about Perl 6 documentation — Juan Julián Merelo-Guervós, 45 minutes; accepted

Perl 6 has a peculiar, all volunteer, model of documenting the language. This talk will explain the history of Perl 6 documentation, the state it is now, and how it might navigate into the future. It also hopes to shed some light on how documentation is the one of the things that binds the community together, how to look at it as a Perl application, and also what you can learn from documenting and how documentation is written for making your own applications (and its documentation) better.

Measuring the Quality of your Perl Code — Dave Cross, 45 minutes; accepted

A few suggestions of ways you can measure the "quality" of your Perl code. Because once you can measure something, you can start to improve it.

Deploying Perl Apps using Docker, Gitlab & Kubernetes — Thomas Klausner, 45 minutes; accepted

What we learned when we tried to deploy a set of Perl backends into the cloud.

Software Engineers are in Demand but which Language and how does Perl compare — Rick Deller, 45 minutes; accepted

IT will be a look at the software engineer market as a whole, what companies are hiring for what. What Languages are most in demand and how does Perl compare

Overloading Perl OPs using XS — Nicolas Rochelemagne, 45 minutes; accepted

Several CORE functions can be overloaded using CORE::GLOBAL:: override, but sometimes it’s not possible and XS is the alternate option to mock some Perl OPs. You are going to learn how to mock Perl OPs in XS and replace them by some convenient Pure Perl helpers using the FileCheck operators -X.

Welcome to PerlCon — Andrew Shitov, 5 minutes; accepted

Opening the conference and its first day.

Women in Programming (Down South Subcontinent Context) — Raja Renga Bashyam, 20 minutes; pending

As a trainer of web technologies(Perl/PHP/JS) for years, i had a personal myth of women programmers are not fit for core programming activities. Over the time, I realized women programmers have more stamina in deep dive and delivering commitment. I will share the initial myth & learning over the time and things that supports women in programming.

Fibenis Way - a language neutral approach to web app foundation from Perl to PHP & JavaScript — Raja Renga Bashyam, 45 minutes; pending

Fiben Information System is a Full-Stack web information system framework based on communication pattern & natural language principles. The framework evolved from collection of web app components implemented in Perl. The framework later extended by PHP & JavaScript.

How to scale yourself with freelance workforce. — Yury Pats, 5 minutes; pending

Guidelines for team leaders and company owners.

Geekuni — Julien Fiegehenn, 5 minutes; pending

Introduction to the sponsor

Genesis: Concurrent evolutionary algorithms in Perl 6 — Juan Julián Merelo-Guervós, 20 minutes; pending

Perl 6, as a language with facilities for concurrency, is amenable to be used as a research tool for the implementation of evolutionary algorithms. However, concurrency is not a straightforward feature that can be tacked in an existing algorithm. In this talk we will talk about how we designed and implemented this kind of algorithms, and the good, bad and ugly results we got out of them.

ASN.1 for Perl 6: with elegance and metacompilation — Alexander Kiryuhin, 20 minutes; pending

During this talk we will take a quick look at the process of implementing Perl 6 support for an ASN.1 subset: what was easy, what was hard and what was awesome.

RPC-Switch: JSON-RPC service-composition — Wieger Opmeer, 20 minutes; pending

The RPC-Switch is a toolkit/framework to combine multiple microservices into a larger API.

medical image processing with Perl — Herbert Breunung, 5 minutes; pending

This will be a small report about Perl 5 in action or more precisely about extracting data from a series of images to support headache research.

Practical Perl 6 — Jeffrey Goff, 240 minutes; pending

Learn Perl 6 hands-on as we build a database-driven wiki application from the ground up with a modern fully-asynchronous web server, SQLite and a full OORDBMS. We'll construct a simple web application that you can deploy and launch with one command! Don't worry if you don't know Perl 6, that's what you're here to learn.

Monoliths, Balls of Mud and Silver Bullets — Dave Cross, 20 minutes; pending

Monoliths are bad. Microservices will save us all!

RPerl Yellow Belt — Will Braswell, 240 minutes; pending

This course is a continuation of the RPerl White Belt, and will provide hands-on guidance to lead students through RPerl's scalar data literals & types, scalar operators, constants, basic input & output, conditional statements, and loop control structures. We will implement solutions to the exercises in chapter 2 of the course textbook, Learning RPerl.

RPerl White Belt: From Zero To RPerl — Will Braswell, 240 minutes; pending

RPerl is the new optimizing compiler for Perl 5. This course will provide hands-on guidance to lead students through installing RPerl and writing their first RPerl programs. We will implement solutions to the exercises in chapter 1 of the course textbook, Learning RPerl. We will begin work on chapter 2 if time permits.

The State Of The Scallion Address: Perl Compiler Current Affairs — Will Braswell, 45 minutes; pending

Perl is an onion, and RPerl is a skinny green onion, a scallion! 22 years after Saint Larry's original State of the Onion at The Perl Conference, it's time for everything old to be new again. Will the Chill speaks on the current affairs of the RPerl compiler and related topics of interest.

Auto-Parallel Programming On The Cloud — Will Braswell, 45 minutes; pending

Learn how to write code which will automatically execute in parallel on the Cloud. Push your programming skills to the next level with transpiler technologies.

Juggling Patterns In Perl — Will Braswell, 45 minutes; pending

Juggling patterns are described by a mathematical language named Siteswap, with names such as: 333 AKA “Cascade” 4444 AKA “Fountain” AKA “Can’t You Juggle More Than 3?” 55555 AKA “5 Cascade” AKA “Can’t You Juggle More Than 4?” 51 AKA “Shower” 52515 AKA “Passing The Baby”

Protect your Perl script from common security issues — Mohammad Anwar, 45 minutes; pending

In this talk, I would talk about some of the most misused features of Perl. Also I will share how their incorrect use can expose the system running the Perl script. At the end, I will talk about how to fix the issues.

Custom Routing Protocols in Dancer - Play Nicely With JavaScript — Jeffrey Goff, 45 minutes; pending

Simplify communicating between Dancer2 and your JavaScript front end by writing your own custom routing protocols. We’ll take Dancer2, DXtreme’s DataGrid, and your existing DBIx::Class schema, and combine them into a single route keyword you can use in your own apps.

Procrastinate with DBIx::LazyCache — Jeffrey Goff, 45 minutes; pending

Do you experience feelings of dread or fear when you update database tables? Have you ever wanted to tell a DBIC column “Ah, fuggedaboudit” and populate it later? Then you need DBIx::LazyCache, at a CPAN mirror near you. Consolidate your caching and business logic in one easy-to-use DBIx::Model.

Joining on Bi-Temporal tables — Eugen Konkov, 20 minutes; pending

About Bi-Temporal tables and data reference integrity

Submit a new talk