Loading…
Tuesday, June 21
 

9:00am CDT

Hackathon (pre-conference)
See "Hackathons" at https://github.com/perlconference/tprc-2022-hou/wiki/ for details.

Speakers
avatar for Bruce Gray

Bruce Gray

Consultant, Gray & Associates
* I eat, sleep, live, and breathe Perl!* Consultant and Contract Programmer.* Frequent PerlMongers speaker.* Dedicated Shakespeare theater-goer.* Armchair Mathematician.* Author of Blue_Tiger, a tool for modernizing Perl.* 38 years coding, 24 years Perl, 19 years Married, 17 YAPC&TPC... Read More →


Tuesday June 21, 2022 9:00am - 5:00pm CDT
Classroom 12400 Greenspoint Dr, Houston, TX 77060

5:00pm CDT

Arrival Dinners
See the wiki for more information https://github.com/perlconference/tprc-2022-hou/wiki#pre-conference-activities

Tuesday June 21, 2022 5:00pm - 7:00pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060
 
Wednesday, June 22
 

8:15am CDT

Checkin
Come get your badge

Wednesday June 22, 2022 8:15am - 9:00am CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

9:00am CDT

Breakfast
Wednesday June 22, 2022 9:00am - 9:30am CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

9:30am CDT

Opening
Welcome to the Conference. You made it!

Speakers
avatar for Todd Rinaldo

Todd Rinaldo

Perl Developer, cPanel
Todd works at cPanel L.L.C. as a Perl Developer and sometimes B::C / p5p hacker. He lives with his wife and son in Houston, TX. Todd is a CPAN maintainer.


Wednesday June 22, 2022 9:30am - 9:45am CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

9:45am CDT

“People still use Perl?” Twenty Years of Making a Living With a Dead Language
A little over twenty years ago, Ruth Holloway wrote her first Perl script, and the person who taught her how even said then that Perl was a “dead” language. Perl’s an awfully lively zombie! Travel along with Ruth through two decades of the joys and sorrows of making a living with Perl.

In 2001, Ruth learned Perl as a way to wrangle the pipe-delimited output of a proprietary database tool. Since then, she’s never stopped learning new things from Perl, working in multiple open and closed-source communities using the language. In this humorous, nostalgic, and thought-provoking talk, we’ll explore some the best—and the worst—that Perl has to offer. She’ll show that Perl can continue to have a life far past the time when so many say it is “dead,” and explore how we as current practitioners of the language can help encourage and mentor a new generation of Perl users and maintainers.

Speakers
avatar for Ruth Holloway

Ruth Holloway

Developer/Project Lead, Clearbuilt
Ruth has been writing Perl for 23 years, and attending Perl conferences for the last ten years, speaking at all but one of the in-person conferences. She is a big fan of DBIx::Class, Dancer2, and Agile programming without all the ceremonies. Ruth is a wife, writer, cook, full-time... Read More →


Wednesday June 22, 2022 9:45am - 10:50am CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

11:00am CDT

Sudoku by Regexp, part II
Elevator Pitch
Sudoku! Windoku! Battenburg! Anti-Knight! Renban! German Whispers! …
And a Regular Expression wizard who solves them with arcane incantations.

Description
The first time YAPC was in Houston I showed how we can solve Sudoku puzzles using regular expressions.
Now that YAPC^WTPC is returning to Houston, it is time to revisit the 2007 talk. The world of Sudoku has moved on. Beside regular Sudokus, there are nowadays a lot of variant, using additional rules. For those who missed part I back in 2007, we will first show how to solve normal Sudokus using regular expressions, then focus on several variants, and generate regular expressions for them as well.
Disclaimer: do not try this at home, unless supervised by a regular expression wizard.

Speakers

Wednesday June 22, 2022 11:00am - 11:50am CDT
NQP

11:00am CDT

Supercharging Perl
Elevator Pitch
Can Perl possibly be faster? YES! How to improve the performance of your Perl scripts using mostly minor changes to your code. Performance often comes at a cost–more memory! So we’ll also look at techniques to shrink your Perl script/module footprint.

Description
This is a followup to my “Perl Optimization Tidbits” talk in 2018. Then we looked at many minor performance differences in expressions like ++$x vs. $x++, “abc” vs. ‘abc’, etc. We go into more depth with more comparisons, but also cover larger strategies–algorithmic, structural, and other optimization techniques to get the best performance. In addition we’ll look at various ways of profiling your code so you can see where your slow places are. Some of these techniques and strategies can be applied to improving performance of other languages as well.

Speakers
avatar for Daina Pettit

Daina Pettit

Developer II, WebPros


Wednesday June 22, 2022 11:00am - 11:50am CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

11:30am CDT

Raku -Ofun for Everyone
Rakoons like to say that Raku is -Ofun (optimized for fun). This talk examines several of the steps that the Raku community has taken to deliver on this promise, from our documentation and code of conduct to our commitment to code examples and mentoring. For each example, we’ll discuss the current progress Raku has made as well as how you could help.

Speakers
avatar for Daniel Sockwell

Daniel Sockwell

I'm a big fan of the Raku language, a member of Raku SteeringCouncil, and a member of The Perl Foundation's Legal Committee.  Before I become a programmer, I was apracticing attorney at Davis Polk & Wardwell (a large New York City law firm) – butdecided to become a software developer... Read More →


Wednesday June 22, 2022 11:30am - 11:50am CDT
Raku Track 12426 Greenspoint Dr, Houston, TX 77060

12:00pm CDT

Lunch
Wednesday June 22, 2022 12:00pm - 1:00pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

1:00pm CDT

NewFangled: Bringing NewRelic to Perl with Alien and FFI Technology
Vendors aren’t rushing to write Perl bindings for their fancy new libraries anymore, but Alien and FFI can help make it easier for Perl developers to do it themselves. I’m going to talk about how I used these technologies and built some new ones to bring NewRelic into the Perl ecosystem.

This talk will describe the process in detail of taking an external non-Perl library and making it work in the Perl ecosystem using Alien and FFI::Platypus. Most software vendors today are no longer providing bindings for Perl anymore. For example at Fastly we wanted to monitor one of our internal Perl applications using NewRelic. The only existing Perl bindings were based on a beta product that had never been supported, so I set about writing my own. I will show how I did this by leveraging existing technology, as well as writing some new tools for handing C structured data. I will also cover some other FFI library bindings and in the tradition of Open Source show how my NewRelic bindings were extended by others.

Speakers
avatar for Graham Ollis

Graham Ollis

Staff Software Engineer, Fastly
Graham Ollis, known as @plicease on the internet, is a Staff Software Engineer at Fastly.  In his free time he enjoys film photography, vintage computing and leads the open source Projects Platypus and Alien::Build... Read More →


Wednesday June 22, 2022 1:00pm - 1:50pm CDT
NQP

1:00pm CDT

Introduction to Perl Data Types
Data types are hints to a computer language, telling the language’s interpreter or compiler how best to allocate resources and optimize performance.

We will introduce the type system provided by the Perl compiler, and the many benefits of utilizing Perl data types.
Let’s explore types together!

The Perl interpreter itself is written in C, and implements data types for its own internal use, including:
  • IV, integer value
  • NV, number value
  • PV, pointer value AKA string
  • AV, array value
  • HV, hash value
  • SV, scalar value
  • RV, reference value
The Perl interpreter does not provide programmers with access to these pre-defined types, and instead it encourages us not to use data types at all.
Perl does allow programmers to create user-defined data types, but none of the (numerous & incompatible) data type systems actually utilizes the underlying C data types implemented in the Perl interpreter.
The Perl compiler finally provides developers with direct access to real C data types and their C++ equivalents.
Upgrade your Perl, start utilizing data types today!

Speakers
avatar for William N. Braswell Jr.

William N. Braswell Jr.

President & CEO, Auto-Parallel Technologies, Inc. & ChatGPU.ai
Creator of RPerl & CloudForFree & Perl Town Hall, Co-Creator of the Perl Community Roadmap.Scouter, Juggler, Mormon, Perl Monger, Serial Entrepreneur, Volunteer, Aspiring Astrophysicist, Community Organizer, Family Man.


Wednesday June 22, 2022 1:00pm - 1:50pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

1:00pm CDT

Raku for Beginners
Important: You will get much more out of the class if you can try the exercises along with your classmates!
https://rakudo.org/star has .msi for Windows-64bit, .dmg for MacOS, or tarball for Linux.
Mac Homebrew users will do better with `brew install rakudo-star`.
Docker (free to install!) users on any platform can use `docker pull rakudo-star`, and we have the run instructions in the class.
Rakudo Star or plain Rakudo releases back to 2020.01 will be fine for this class.

Elevator Pitch:
Curious about Raku, but not sure where to start? Or been dabbling, but want to get your grasp of the language on firmer foundations? Then this session is for you! The tutorial mixes explanations of the Raku language with a number of short, hands-on exercises, to let you try it out for yourself.


Description:
Curious about Raku (formerly Perl 6), but not sure where to start? Or been dabbling, but want to get your understanding of the language on firmer foundations? Then get a Raku compiler on your laptop, and come on down to this session! The tutorial will mix explanations of the Raku language along with a number of short, hands-on exercises and challenges, to give you a chance to try things out for yourself.
Topics covered will include:
  • Values
  • Variables
  • Basic operators
  • Flow control
  • Arrays, iteration
  • Basic I/O
  • Hashes
  • A selection of useful methods on arrays and hashes
  • Subs and signatures
  • (time permitting) Classes, attributes, and methods, regexes, grammars
Participants should install a recent Rakudo compiler on their laptop prior to attending the course. You can find the latest Rakudo Star release, including MSIs for Windows users, at:
http://rakudo.org/downloads/star/
Those familiar with perlbrew (or who want to be on the bleeding edge) may prefer rakudobrew instead:
https://github.com/tadzik/rakudobrew


Speakers
avatar for Bruce Gray

Bruce Gray

Consultant, Gray & Associates
* I eat, sleep, live, and breathe Perl!* Consultant and Contract Programmer.* Frequent PerlMongers speaker.* Dedicated Shakespeare theater-goer.* Armchair Mathematician.* Author of Blue_Tiger, a tool for modernizing Perl.* 38 years coding, 24 years Perl, 19 years Married, 17 YAPC&TPC... Read More →


Wednesday June 22, 2022 1:00pm - 3:30pm CDT
Raku Track 12426 Greenspoint Dr, Houston, TX 77060

2:00pm CDT

TPF Summer Activities 2013-2023
TPF participates in Outreachy, Google Summer of Code, and Google Season of Docs every year. This talk will summarize recent achievements and suggest ways for you to participate.

The Perl Foundation hires student interns every year and they work with us to contribute to Perl. Join the talk to see what good things students did for Perl and learn how you can help the advancement of the language.

Stéphane Gigandet from Open Food Facts will co-present.


Speakers
avatar for Makoto Nozaki

Makoto Nozaki

Board Member and Secretary, The Perl Foundation (aka The Perl and Raku Foundation, Yet Another Society)


Wednesday June 22, 2022 2:00pm - 2:20pm CDT
NQP

2:00pm CDT

Taming the Unicode Beast
There’s More Than One Way to Screw It Up!
This talk will cover common problems and solutions when dealing with Unicode. Attendees will learn how to handle Unicode safely and reliably, in both Perl and XS.


Perl excels at text processing, so why are Unicode bugs so common when using it? If you’ve ever chased encoding problems in Perl, attend this talk to learn effective techniques for diagnosing and avoiding Unicode bugs. You’ll also learn how to help users of your Perl and XS modules in the same way.

Speakers
avatar for Felipe Gasper

Felipe Gasper

Developer III, cPanel/Plesk


Wednesday June 22, 2022 2:00pm - 2:50pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

3:00pm CDT

Stealing an idea from Perl, and bringing it back improved!
Let’s explore what it’s like to be inspired and migrate a feature from Perl to another language, and then to bring it back with improvements

I will demonstrate in this talk a trivial but useful behavior in Perl

perl -E 'my $foo = "a"; say $foo++ for 0..100;'

We’ll take this feature to another language (Rust), and then bring it back to Perl improved and optimized!

Speakers
avatar for Evan Carroll

Evan Carroll

System Lords of the Internets, cPanel


Wednesday June 22, 2022 3:00pm - 3:20pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

3:00pm CDT

TPF Marketing
The Perl Foundation is keen to move forward with plans to overhaul its brand and identity. Join us for a general discussion and share your ideas. How do we move this forward? We want to hear from you.

Speakers
avatar for Daniel Sockwell

Daniel Sockwell

I'm a big fan of the Raku language, a member of Raku SteeringCouncil, and a member of The Perl Foundation's Legal Committee.  Before I become a programmer, I was apracticing attorney at Davis Polk & Wardwell (a large New York City law firm) – butdecided to become a software developer... Read More →
avatar for Stuart Mackintosh

Stuart Mackintosh

President, The Perl Foundation
avatar for Peter Krawczyk

Peter Krawczyk

Treasurer, The Perl Foundation
avatar for Makoto Nozaki

Makoto Nozaki

Board Member and Secretary, The Perl Foundation (aka The Perl and Raku Foundation, Yet Another Society)
avatar for Dave Rolsky

Dave Rolsky

Senior Software Engineer, MongoDB
Dave Rolsky begin his development career with Perl in 1999, and has created or contributed to dozens of Perl CPAN modules, including DateTime, Log::Dispatch, Moose, and more. More recently, he has also developed in Rust and Go.Way back when, he co-wrote Embedding Perl in HTML with... Read More →


Wednesday June 22, 2022 3:00pm - 4:00pm CDT
NQP

3:30pm CDT

BREAK
Wednesday June 22, 2022 3:30pm - 4:00pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

4:00pm CDT

Lightning Talks Day 1
Speakers
avatar for rGeoffrey Avery

rGeoffrey Avery

Programmer, Perceptyx


Wednesday June 22, 2022 4:00pm - 5:00pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

5:15pm CDT

VIP Mixer
Come meet members of the Perl community outside the main talks. Drink tickets will be provided.

Then find new friends to go to dinner with in small groups!

Return to the lobby, we'll be hanging out playing games and talking tech!

Wednesday June 22, 2022 5:15pm - 6:30pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

8:00pm CDT

Hangin' out in the lobby
Wednesday June 22, 2022 8:00pm - 10:30pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060
 
Thursday, June 23
 

8:30am CDT

Breakfast
Thursday June 23, 2022 8:30am - 9:30am CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

9:30am CDT

lets talk about dancer stuff
In lieu of the regularly scheduled keynote from Ovid (lost passport....wowie), and the planned Dancer2 session from Jason Crome, Ruth will bring an update on the Dancer2 community, with some comments on recent updates. For Dancer2 newbies, there will be a brief explanation of Dancer2's capabilities as a web application framework, followed by a vision for upcoming releases and the goals for Dancer2 moving forward.

Ruth has not decided if it is she, or the audience, that is the bigger glutton for punishment.



Speakers
avatar for Ruth Holloway

Ruth Holloway

Developer/Project Lead, Clearbuilt
Ruth has been writing Perl for 23 years, and attending Perl conferences for the last ten years, speaking at all but one of the in-person conferences. She is a big fan of DBIx::Class, Dancer2, and Agile programming without all the ceremonies. Ruth is a wife, writer, cook, full-time... Read More →


Thursday June 23, 2022 9:30am - 10:20am CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

10:30am CDT

Perl T20 - The last minute challenges saved by perl
T20 is a buzz word in cricket world, which represents the short format of the game. Especially the twists in dying minutes, makes it more challenging. Similarly in software, the last minute changes end-up in challenging targets. Lateral thinking is vital in winning those moments. We will share few.


Generally, need is considered the mother of invention. True to that, during tight targets we always ended-up a lean solution that we did not think of or ignored for long. Those challenging & committed times; our mind transcends in all direction, breaks traditional barriers to get a solution. Those times we often felt of a partner, travels in our wave length will be a great gift & boost to accomplish it. In our case, perl’s flexibility & multifaceted character given us the power to solve the non-linear challenges.
Some of it: 1. A data munging operation to capture the missed business leads from 1000s of email 2. Implementing an out-of the box outgoing email capturing in a shared hosting account 3. Producing demo document pdfs in 1/10 of the time for a sudden & surprise business proposal 4. Updating a product image based website with 1/3 of resource with automation of image naming, image resizing, image uploading 5. Revamping a website after 15 years with 1000 of images, gallery update automation 6. Chinese Cyber Incursions & counter actions 7. Website Migration between different CMS engines
Perl’s way for every skill level given way to implement the solution like chasing a tough score game in an incremental way with ups and downs. Most of the scripts now in open-source. We will share the implementation cases and I hope it will give an acumen for similar non-linear & constraint scenarios.

Speakers
RR

Raja Renga Bashyam

Technical Lead, Webstars
A Web App Architect,Developer & Designer from Indian Sub-content. Nearly 20 years of continuous involvement to Web App Development in varied levels with wide range of implementations. Developed a Web Application Frame work based on communication patterns to standardize development... Read More →


Thursday June 23, 2022 10:30am - 10:50am CDT
NQP

10:30am CDT

Modern Approaches to Ancient Perls
Many of us are tied to really old Perl distributions, for a variety of reasons. Just because you’re using Perl from 1998 doesn’t mean you have to develop software like it’s 1998! This talk aims to help developers apply modern, maintainable approaches, even when you use 5.005;.

We’ll briefly discuss a bit of why people might be using ancient Perls, but mostly focus on some practical code examples. For example:
  • named captures were introduced in Perl 5.10, but you can get a lot of their advantages by putting a hash slice on the left side of a capturing regex
  • lexical filehandles were introduced in Perl 5.8, but you can use the Symbol module (in the standard distro!) to make your own lexical filehandles and dirhandles.
We’ll also talk about future-proofing (future resisting maybe..) your code. Maybe someday you’ll be able to update to a contemporary Perl release. If that day comes, you’ll be glad you:
  • added use-version pragmas: use 5.005;
  • use strict; Always. use warnings; except before 5.8. Then use #!perl -w

Speakers
avatar for Brian Kelly

Brian Kelly

Software Architect, Computershare
I'm a technical lead and am always looking for ways to make work better for my team and me. I'm a language enthusiast in general, but my professional life has been Perl for almost 20 years.


Thursday June 23, 2022 10:30am - 10:50am CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

11:00am CDT

Perl Quiz IV
Test your Perl knowledge–Round Four. Everyone will win something. This will be enlightening and lots of fun for everyone–beginners to experts. Last time we handed out board games, puzzles, toys, tools, videos, cool hardware, and other fun stuff. Come have fun, learn more about Perl, and win!


This will be the fourth year doing this presentation. It is structured like a game show–a bell when the answer is right, a buzzer and red light flashes when the answer is wrong. But it doesn’t matter because everyone wins a prize. Questions cover topics having anything to do with Perl. Some questions are fluff and don’t really matter while others are tricky questions that everyone needs to know. It is always fun, informative, and worthwhile.


Speakers
avatar for Daina Pettit

Daina Pettit

Developer II, WebPros


Thursday June 23, 2022 11:00am - 11:50am CDT
NQP

11:00am CDT

Introduction to OpenMP for Perl Programmers
This talk is meant to serve as a primer for the talk later in the conference that discusses using OpenMP, which is supported by default in modern gcc (C, Fortran, C++) via the GOMP project, in your Perl code.

This talk is meant to serve as a primer for the later in the conference that discusses using OpenMP in your Perl code. It covers: what OpenMP is, what it can do, and why Perl programmers might care to consider it for your next computationally intense application. It covers the basics of OpenMP in C code; including what it does, and how to use it - parallel constructs, compiling, and running the code.

Speakers
avatar for Brett Estrade

Brett Estrade

PERL Importer/Exporter


Thursday June 23, 2022 11:00am - 11:50am CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

11:00am CDT

raku::Dan - Re-Inventing the DataFrame
Elevator Pitch:
The explosion in Data Analytics and Data Science applications has been driven by Python and its library modules such as Pandas and Polars. This talk is about re-inventing DataFrames using a raku-centric approach to fundamentally improve architecture, code concision and manipulexity.


Description:
As raku matures, we need useful basic eco-system modules to bring the unique strengths and cultural style of raku to real-world use-cases.
raku::Dan (Data ANalytics) is a new raku module family (also Dan::Pandas and Dan::Polars) that offers top level Raku-oriented data structures for Series and DataFrames. The thinking is:
  1. we need a Raku-esque way to do the analytics basics - Series and DataFrames
  2. much has been inspired by Python Pandas (not least for good interworking)
  3. we can draw from many Raku native capabilities (accessors, types, hypers, laziness, pipes, sort, grep, splice, etc.)
  4. Pandas suffers from featuritis (Pandas has 422 object methods, plus 50 or so module methods and raku offers a fresh start
This talk will describe the raku::Dan family - design considerations, focus & roadmap and unique differentiators - with hands on examples of Data Munging in Raku and interworking with Python Pandas via raku Inline::Python.

Speakers
avatar for p6steve

p6steve

Principal, Henley Cloud Consulting


Thursday June 23, 2022 11:00am - 11:50am CDT
Raku Track 12426 Greenspoint Dr, Houston, TX 77060

12:00pm CDT

Perl Mongeress BOF - Gallileo II

Ladies of TPRC, this is a get together Just For Us! If you identify as a woman, you are welcome here—regardless of your Perl experience or expertise. Grab your lunch and join us in Galileo II!

This isn’t a session for axe-grinding, just a no-agenda time for us to meet, chat, network, collaborate, and share experiences and knowledge. We’ll have a round of introductions, but no other planned activity. We'll do it like a very casual Lean Coffee--if someone has something they want the group's opinions on, I'll chair the discussion, and we can form consensus to talk it over.

A quick note to the gentlemen: This isn’t for you, or about you. Enough said, really.


Speakers
avatar for Ruth Holloway

Ruth Holloway

Developer/Project Lead, Clearbuilt
Ruth has been writing Perl for 23 years, and attending Perl conferences for the last ten years, speaking at all but one of the in-person conferences. She is a big fan of DBIx::Class, Dancer2, and Agile programming without all the ceremonies. Ruth is a wife, writer, cook, full-time... Read More →


Thursday June 23, 2022 12:00pm - 1:00pm CDT
NQP

12:00pm CDT

Lunch
Thursday June 23, 2022 12:00pm - 1:00pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

1:00pm CDT

Why Do Programmers Love Rust?
Rust is an exciting new programming language that aims to make high-performance systems programming safer and easier. Come to this talk to learn what Rust is all about.

Rust is a low-level language that has been voted the most-loved programming language in the Stack Overflow survey for six years straight. This talk aims to show you why.

If you’ve programmed in Perl for long enough, you’ve probably needed to reach for a faster language from time to time, like C or C++. And if you’ve done that, you also know why so many people prefer high-level languages like Perl to low-level languages like C or C++!

Rust brings several interesting features to low-level programming. Rust uses its borrow checker to enforce memory and thread safety without a garbage collector, and with no need for manual malloc and free calls. It also features an advanced type system that requires you to explicitly handle errors, eliminates the billion-dollar null pointer mistake, and allows you to express complex constraints that can be enforced at compile-time through type definitions.

This talk will cover some of the most interesting features of Rust, complete with code examples. There’s not enough time to teach you how to code in Rust, but this talk will help you decide whether learning Rust is something that you want to do.

Speakers
avatar for Dave Rolsky

Dave Rolsky

Senior Software Engineer, MongoDB
Dave Rolsky begin his development career with Perl in 1999, and has created or contributed to dozens of Perl CPAN modules, including DateTime, Log::Dispatch, Moose, and more. More recently, he has also developed in Rust and Go.Way back when, he co-wrote Embedding Perl in HTML with... Read More →


Thursday June 23, 2022 1:00pm - 1:50pm CDT
NQP

1:00pm CDT

Fast perceptual image hashing with Perl
Talk slides, images & code used: https://github.com/dkechag/ImagePHash-Talk

This talk will take you through a novel Perl implementation of perceptual hashes for “similar image” searches. I'll start with the basics, if you don't know what a Discrete Cosine Transform is, you'll find out with a visual demo - no math required (although math is always encouraged!). After DCTs and p-hashing basics, I will go through the implementation’s new features that make it efficient and easy to integrate with our large MySQL-based image database.


At SpareRoom, the world’s largest roommate finding service, we handle tens of millions of images, mostly of customer rooms/properties. When tasked with adding an internal ability for a “similar image” search, I first looked at existing solutions and found out that some did not work as expected, while others were either slow or required changes to our infrastructure (mainly Perl, with the data - including the image index - on a large MySQL database).
In the end, I went with a solution initially based on Image::Hash, but with p-hashes reimplemented to fix collision issues and add speed (over 10x faster than pHash.org’s equivalent DCT-based hash). Then, I added features such as support for mirroring, as well as “index/reduced” hashes, in order to effectively use MySQL indices (and thus easily fit in our existing setup).
After an intro to the theory behind the DCT and perceptual hashes in general, I will discuss the abilites of this implementation and the experiences from developing and using it. The module will be released to CPAN before my talk, although the XS part responsible for the fast DCT calculation has been available for a while as Math::DCT.

Speakers
avatar for Dimitrios Kechagias

Dimitrios Kechagias

Principal Developer, SpareRoom
I started using Perl almost 20 years ago, at the Stony Brook Algorithms lab (now known as the Data Science lab), for NLP and computational finance applications as a CS grad student. I worked on large scale Perl systems frequently after that, mostly in Natural Language / Linguistic... Read More →


Thursday June 23, 2022 1:00pm - 1:50pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

1:00pm CDT

Make a module for you and others: creation and submission to Fez
Elevator Pitch:
Have you caught yourself reusing code? Don’t copy and paste; make a module, reuse it for fun and profit, and then share with everyone else on Fez, the swanky new ecosystem of the future.

Description:
Raku has powerful support for breaking code into modules. In this talk, the basics of module creation will be discussed —what to include where, creating a META6.json file, controlling exports— so that even beginners can feel comfortable creating their own personal modules. For more advanced users, an overview of the Fez ecosystem will be presented with a how-to on using it and submitting modules.

Speakers
avatar for Matthew Stuckwisch

Matthew Stuckwisch

Senior Lecturer, University of Tennessee at Chattanooga
Matthew ‘Matéu’ Stephen Stuckwisch is an associate lecturer of Spanish at the University of Tennesssee at Chattanooga. Trained as a medievalist, his research interests include the Asturian language and digital humanities.


Thursday June 23, 2022 1:00pm - 1:50pm CDT
Raku Track 12426 Greenspoint Dr, Houston, TX 77060

2:00pm CDT

CPAN, Dist::Zilla, and you
Do you have Perl modules that you want to share? Dist::Zilla is a great tool to do it. Come learn how to become a CPAN author, and share your code with the world!

The CPAN repository is a bit of a black-box for most users—ask for code, you get it, done. But if you’re wanting to add something to the repository, you need to learn how. In this talk, Ruth walks through the basics of becoming a CPAN author, from PAUSE accounts, to structuring your code, to uploading using Dist::Zilla, using some common plugins to assist the process.

Speakers
avatar for Ruth Holloway

Ruth Holloway

Developer/Project Lead, Clearbuilt
Ruth has been writing Perl for 23 years, and attending Perl conferences for the last ten years, speaking at all but one of the in-person conferences. She is a big fan of DBIx::Class, Dancer2, and Agile programming without all the ceremonies. Ruth is a wife, writer, cook, full-time... Read More →


Thursday June 23, 2022 2:00pm - 2:50pm CDT
NQP

2:00pm CDT

Meet the TPF board
Meet The Perl Foundation Board members face to face and find out what has been achieved, with your help, over the last few years. Hear about plans for the future and how you could get involved. You can also participate in open discussions.

Speakers
avatar for Stuart Mackintosh

Stuart Mackintosh

President, The Perl Foundation
avatar for Daniel Sockwell

Daniel Sockwell

I'm a big fan of the Raku language, a member of Raku SteeringCouncil, and a member of The Perl Foundation's Legal Committee.  Before I become a programmer, I was apracticing attorney at Davis Polk & Wardwell (a large New York City law firm) – butdecided to become a software developer... Read More →
avatar for Peter Krawczyk

Peter Krawczyk

Treasurer, The Perl Foundation
avatar for Dave Rolsky

Dave Rolsky

Senior Software Engineer, MongoDB
Dave Rolsky begin his development career with Perl in 1999, and has created or contributed to dozens of Perl CPAN modules, including DateTime, Log::Dispatch, Moose, and more. More recently, he has also developed in Rust and Go.Way back when, he co-wrote Embedding Perl in HTML with... Read More →
avatar for Makoto Nozaki

Makoto Nozaki

Board Member and Secretary, The Perl Foundation (aka The Perl and Raku Foundation, Yet Another Society)


Thursday June 23, 2022 2:00pm - 2:50pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

2:00pm CDT

Grammatical (dis)agreement: Mixing grammars in Raku
Elevator Pitch:
In this talk, I will discuss ways a programmer can use an established grammar (e.g. JSON::Tiny) inside of another grammar that they are writing. Why rewrite the rules when you can steal them from someone else?

Description:
This talk will present a problem case (wanting to use an extant grammar inside of another) and discuss several different solutions for it. The process isn’t entirely straightforward, and each method had advantages and drawbacks which will be mentioned and demonstrated. Finally, ideas for writing grammars/actions that play nicely with others will be discussed.

Speakers
avatar for Matthew Stuckwisch

Matthew Stuckwisch

Senior Lecturer, University of Tennessee at Chattanooga
Matthew ‘Matéu’ Stephen Stuckwisch is an associate lecturer of Spanish at the University of Tennesssee at Chattanooga. Trained as a medievalist, his research interests include the Asturian language and digital humanities.


Thursday June 23, 2022 2:00pm - 2:50pm CDT
Raku Track 12426 Greenspoint Dr, Houston, TX 77060

3:00pm CDT

The Perl Navigator: code intelligence for any editor
Language Servers provide language intelligence features such as autocomplete via standardized protocol that can be consumed by different editors. This allows developers to use their preferred code editor and still receive the same high quality code intelligence as any other editor. In this talk, I’ll go through the basics of the Language Server Protocol as well as the architecture of the Perl Navigator, a new language server for Perl.

The Perl Navigator supports syntax checking, code navigation, autocompletion, hover, Perl::Critic and Perl::Tidy. It works on Linux, MacOS, Windows, and can be used in Visual Studio Code, Vim, NeoVim, Emacs and Sublime Text, and supports back to Perl 5.8. I’ll discuss the architecture of the Perl Navigator, including symbol table parsing and how it leverages the B:: compiler backend. I’ll also discuss the roadmap for new integrations and contribution opportunities for those interested. A simplified Raku Navigator exists as well for those who need Raku support. 

Speakers
avatar for Brian Scannell

Brian Scannell

Intex Solutions


Thursday June 23, 2022 3:00pm - 3:20pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

3:30pm CDT

BREAK
Thursday June 23, 2022 3:30pm - 4:00pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

4:00pm CDT

Lightning Talks Day 2
Speakers
avatar for rGeoffrey Avery

rGeoffrey Avery

Programmer, Perceptyx


Thursday June 23, 2022 4:00pm - 5:00pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

6:00pm CDT

Conference Dinner and Game night
TBA

Thursday June 23, 2022 6:00pm - 10:00pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

10:00pm CDT

Bad Movie BOF / DHA memorial
TBA

Speakers

Thursday June 23, 2022 10:00pm - 11:30pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060
 
Friday, June 24
 

8:30am CDT

Breakfast
Friday June 24, 2022 8:30am - 9:30am CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

9:30am CDT

Can Perl Create Video Games?
IntroWe all know Perl created the original CGI scripts in the early WWW.
We’ve all seen Perl database code running on a cloud server.
We’ve each written dozens (if not hundreds) of Perl scripts & utilities.
But can Perl be used to create something as common, yet as complex, as a graphical video game?


DescriptionMany (if not most) video game engines are written using high-performance languages such as C or C++.
This is especially true for graphical video games, which often are among the most computationally demanding of consumer software applications.
We are faced with the question: can Perl be used to create high-performance, high-quality graphical video games?
Recent advances in Perl optimization and performance technologies have finally brought this goal within reach.
Review the general components of video game development, and how they can be implemented in Perl:
  • 3D Graphics Rendering
  • Physics Engines
  • Non-Player Characters
  • Gameplay Genres
  • Storyline & Plot Development
Grab your favorite joystick, dust off your old sprites, and let’s make some games!

Speakers
avatar for William N. Braswell Jr.

William N. Braswell Jr.

President & CEO, Auto-Parallel Technologies, Inc. & ChatGPU.ai
Creator of RPerl & CloudForFree & Perl Town Hall, Co-Creator of the Perl Community Roadmap.Scouter, Juggler, Mormon, Perl Monger, Serial Entrepreneur, Volunteer, Aspiring Astrophysicist, Community Organizer, Family Man.


Friday June 24, 2022 9:30am - 9:50am CDT
NQP

9:30am CDT

Command-line Filters - Time to Shine
Filters are the basic tools of command-line data munging. `grep` `head` `cut` `sort` `uniq` `wc` `diff`, pipes + redirects, intro + advanced tips. Why stop there? You can write your own. Perl, Raku, & Python have strong support for writing filters. Existing code often works better when refactored as a filter.

These techniques are my bread-and-butter for exploratory programming and data analysis, and include a few of my best tricks.

Speakers
avatar for Bruce Gray

Bruce Gray

Consultant, Gray & Associates
* I eat, sleep, live, and breathe Perl!* Consultant and Contract Programmer.* Frequent PerlMongers speaker.* Dedicated Shakespeare theater-goer.* Armchair Mathematician.* Author of Blue_Tiger, a tool for modernizing Perl.* 38 years coding, 24 years Perl, 19 years Married, 17 YAPC&TPC... Read More →


Friday June 24, 2022 9:30am - 10:20am CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

10:00am CDT

The Database Dance: DBIx::Class and Dancer2 treachery to increase web application performance
Writing web applications with DBIx::Class and Dancer2 is super-easy. Learning how to make them efficient takes a little longer. Come see some of the things that Ruth has learned—and created—that make these apps faster and easier to maintain.

Writing inefficient applications is startlingly easy to do; some of my early Dancer2 work shows it! In this talk, we’ll discuss ways to structure queries and code to speed things up, and show some of the tools that are available for Dancer2 and DBIx::Class that make maintaining these systems just a bit easier.

Speakers
avatar for Ruth Holloway

Ruth Holloway

Developer/Project Lead, Clearbuilt
Ruth has been writing Perl for 23 years, and attending Perl conferences for the last ten years, speaking at all but one of the in-person conferences. She is a big fan of DBIx::Class, Dancer2, and Agile programming without all the ceremonies. Ruth is a wife, writer, cook, full-time... Read More →


Friday June 24, 2022 10:00am - 10:50am CDT
NQP

10:30am CDT

Three Ways to Make Wrong Code Look Wrong (er)
Elevator Pitch:
In a now-classic blog post, Joel Spolsky stresses the importance of making wrong code look wrong and explains one strategy for doing so. This talk applies these lessons to Raku – but, embracing the TIMTOWTDI promise of the language – provides three strategies, each with their own pros and cons.

Speakers
avatar for Daniel Sockwell

Daniel Sockwell

I'm a big fan of the Raku language, a member of Raku SteeringCouncil, and a member of The Perl Foundation's Legal Committee.  Before I become a programmer, I was apracticing attorney at Davis Polk & Wardwell (a large New York City law firm) – butdecided to become a software developer... Read More →


Friday June 24, 2022 10:30am - 10:50am CDT
Raku Track 12426 Greenspoint Dr, Houston, TX 77060

10:30am CDT

State of the Art: Perl and Multithreading via OpenMP
Due to the overwhelming interest in the 2021 lightning talk on the same subject, we will discuss the current options available for including OpenMP into your Perl programs for computationally intensive applications. No XS will be harmed during this talk. Modules discussed include,
  • OpenMP::Environment
  • Alien::OpenMP
  • Inline::C
Because OpenMP is meant to be “environmentally aware”, it presents some challenges; these challenges and their solutions will be discussed. The ultimate goal of this talk is to promote the fledgling Perl-OpenMP effort and encourage exploration on the best ways to present SMP programming interfaces within Perl programs.

Speakers
avatar for Brett Estrade

Brett Estrade

PERL Importer/Exporter


Friday June 24, 2022 10:30am - 11:20am CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

11:00am CDT

Keep on turning: Going even further on wheels we didn't re-invent.
Our Friends the Utils was written in 2012, how time flies when you’re having Perl! Both the language and modules have been updated in a variety of ways, leaving us even more things to not re-invent for creating clean, usable code.

Scalar::Utils & List::Utils were great when they came out, then we got List::MoreUtils. The result was a whole lot of Perl code nobody had to write. The last decade has seen advances in Perl and the modules, giving us even more things not to re-invent. Catch is that too many people don’t know about these or have time to keep up on how they change. This talk looks at some changes in Perl, advances in the modules, and ways to use them for creating concise, readable, fast code.

Speakers
avatar for Steven Lembark

Steven Lembark

Yo!, Workhorse Computing
I've been working with Perl since the 1990's, using it for everything but salads -- texture isn't quite right. Most of my work with Perl has been with web back ends, financial data, bioinformatics, sysadmin/DBA utilities, ETL, automation, and occasionally flying a quad-copter.


Friday June 24, 2022 11:00am - 11:50am CDT
NQP

11:00am CDT

Playing nice with others using the new COERCE protocol
Elevator Pitch:
Part history lesson, part practical talk. Learn the origins of coercion in Raku from the very beginning and discover how the COERCE protocol came to be and how it can be used in modules today.

Description:
This talk will begin by looking at the original synopses and how coercion was (and was not) eventually implemented. It will then look at the more recent history and the reason a new system was needed. Lastly it will provide advice for developers on how to take advantage of the protocol to increase compatibility and reduce code noise.

Speakers
avatar for Matthew Stuckwisch

Matthew Stuckwisch

Senior Lecturer, University of Tennessee at Chattanooga
Matthew ‘Matéu’ Stephen Stuckwisch is an associate lecturer of Spanish at the University of Tennesssee at Chattanooga. Trained as a medievalist, his research interests include the Asturian language and digital humanities.


Friday June 24, 2022 11:00am - 11:50am CDT
Raku Track 12426 Greenspoint Dr, Houston, TX 77060

11:30am CDT

Content Audit and Gap Analysis of Perl's Core Documentation
This talk is based on the six-month project completed under Season of Docs 2021. The aim was to identify the major problems in Perl’s existing documentation and to devise a strategy for its improvement. The project was completed successfully with a clear roadmap for the future.

Perl – an open-source, general-purpose programming language – has a lot of documentation, organized in the form of articles, FAQs, and web pages. Such detailed documentation, if not organized well, is overwhelming and frustrating for the audience. With over 100 core documentation pages, the users can easily get lost in the volume of the information, resulting in a bad user experience. This project aimed at resolving these issues and improving the structure of Perl’s core documentation. The project, divided into four major phases, was completed over the course of six months under the Google Season of Docs 2021.
  1. Content Audit It all began with a comprehensive content audit. Every single document in Perl’s core documentation was thoroughly analyzed to identify the shortcomings of the existing documentation and the areas for improvement. A content audit spreadsheet was created, recording the traits of individual documents including but not limited to the date when a document was updated, the intended audience, and cross-referencing. The audit served as a first step in improving the documentation.
  2. Gap Analysis The second phase was that of Gap Analysis, where insights from the Perl community came in handy. Individuals participated in informal user research and shared their feedback on the existing documentation. This gap analysis made the target audience a part of the project and provided clarification on the smaller, task-based, projects that could then be created to help improve the overall documentation.
  3. Information Architecture Content audit and gap analysis, followed by discussions with the contributors at Perl, identified the ways in which the documentation could be made more useful and usable. In order to give a structure to the documentation, it was essential to improve the existing information architecture (IA). A new IA was proposed, which then went through a series of revisions, to incorporate the needs of the users in the structure and presentation of Perl’s core documentation.
  4. Roadmap for the Future The final phase of the project was to devise a roadmap for the future of the documentation. This roadmap brought the findings of content audit, gap analysis, and information architecture together. Specific tasks and projects, along with possible limitations, were created and shared with the contributors of Perl to help improve the documentation in the days to come.
Quality documentation is imperative for the success of an engineering tool like a programming language. The existing documentation of Python, Prettier, and ESLint is a case in point. This project brought technical communication principles to documentation practices in the engineering discipline. The suggested improvements to Perl’s documentation will add value to the user experience by providing better navigation, ease of access, and a useful structure. The findings of this project highlight the best practices in engineering communication, serving as an example that documentation teams can follow in the future.

Perl’s Documentation: https://perldoc.pl/perl Google Season of Docs Proposal by Perl: https://gist.github.com/jmacdotorg/f306d9b0d4eae1dba879cad9cb8d2ace

Speakers
avatar for Khawar Latif Khan

Khawar Latif Khan

PhD Student, North Carolina State University


Friday June 24, 2022 11:30am - 11:50am CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

12:00pm CDT

Lunch
Friday June 24, 2022 12:00pm - 1:00pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

1:00pm CDT

The NEXT steps to simplify EVERY::LAST class you write with mro.
Elevator Pitch
NEXT provides some nice features but was written long before mro, which has some nice features but lacks EVERY & EVERY::LAST. This talk describes why you’d care, how to graft mro into NEXT, and how mro::EVERY makes it easy.


Description
NEXT and mro provide useful features but not play nice together: NEXT uses its own depth-first search and cannot use “c3”. Unfortunately, mro is missing to of the more useful features of NEXT: the EVERY & EVERY::LAST pseudo-classes for automatic cross-class dispatch up and down the inheritance tree. This is especially painful because c3 makes so much more sense but modules that use the pseudo-classes can’t convert.
The pseudo-classes simplify cooperative operations like construction & destruction by passing a call up or down the inheritance stack to each class implementing the required method. This saves every class from having to knowingly participate in the process – and saves us all from people leaving it out or doing it wrong – and really simplifies creating generic base classes that are easy to use.
This talk looks at mro::EVERY and how the pseudo-classes were implemented using mro and what they offer, also how we can graft mro into NEXT, and how they can be used to simplify your life.

Speakers
avatar for Steven Lembark

Steven Lembark

Yo!, Workhorse Computing
I've been working with Perl since the 1990's, using it for everything but salads -- texture isn't quite right. Most of my work with Perl has been with web back ends, financial data, bioinformatics, sysadmin/DBA utilities, ETL, automation, and occasionally flying a quad-copter.


Friday June 24, 2022 1:00pm - 1:50pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

1:00pm CDT

Bring your Perl 5 problems and we'll help you solve them!
I've no slides, no solutions... but you have one problem you want to share with the audience. Let's find together one or more solutions to solve it!

Speakers

Friday June 24, 2022 1:00pm - 2:30pm CDT
NQP

1:00pm CDT

Raku Documentation Working Group
Come collaborate on making Raku's great documentation into something truly stellar.

We have room and time to:
* Start newcomers on how to review and edit the existing docs
* Hear complaints, and turn them in actionable Github Issues.
* Complete and beta-test some new documents that deep-dive, e.g. on sorting.
* Discuss face-to-face some long-term issues that had been unresolved in email

Current plans are to also have remote collaboration with prior contributors who cannot attend in person.

Speakers
avatar for Daniel Sockwell

Daniel Sockwell

I'm a big fan of the Raku language, a member of Raku SteeringCouncil, and a member of The Perl Foundation's Legal Committee.  Before I become a programmer, I was apracticing attorney at Davis Polk & Wardwell (a large New York City law firm) – butdecided to become a software developer... Read More →


Friday June 24, 2022 1:00pm - 3:30pm CDT
Raku Track 12426 Greenspoint Dr, Houston, TX 77060

3:00pm CDT

Juggling Patterns In Perl
Intro
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”


DescriptionI’m the founder of Circus Texas, and I’m friends with some of the guys who invented Siteswap notation in 1981.
In this presentation, you will see both the software and real-life on-stage versions of several Siteswap patterns, including:
  • 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”
  • 441 AKA “Half-Box”
  • 531 AKA “Tower”
  • 52515 AKA “Passing The Baby”
Free juggling lessons will be provided after the talk!

Speakers
avatar for William N. Braswell Jr.

William N. Braswell Jr.

President & CEO, Auto-Parallel Technologies, Inc. & ChatGPU.ai
Creator of RPerl & CloudForFree & Perl Town Hall, Co-Creator of the Perl Community Roadmap.Scouter, Juggler, Mormon, Perl Monger, Serial Entrepreneur, Volunteer, Aspiring Astrophysicist, Community Organizer, Family Man.


Friday June 24, 2022 3:00pm - 3:20pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

3:30pm CDT

BREAK
Friday June 24, 2022 3:30pm - 4:00pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060

4:00pm CDT

Lightning Talks Day 3
Speakers
avatar for rGeoffrey Avery

rGeoffrey Avery

Programmer, Perceptyx


Friday June 24, 2022 4:00pm - 5:00pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060

5:30pm CDT

Closing Ceremonies.
So long, Farewell, Auf Wiedersehen, Goodbye!

Friday June 24, 2022 5:30pm - 6:00pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060
 
Saturday, June 25
 

9:00am CDT

Hackathon (post-conference)
See "Hackathons" at https://github.com/perlconference/tprc-2022-hou/wiki/ for details


Speakers
avatar for Bruce Gray

Bruce Gray

Consultant, Gray & Associates
* I eat, sleep, live, and breathe Perl!* Consultant and Contract Programmer.* Frequent PerlMongers speaker.* Dedicated Shakespeare theater-goer.* Armchair Mathematician.* Author of Blue_Tiger, a tool for modernizing Perl.* 38 years coding, 24 years Perl, 19 years Married, 17 YAPC&TPC... Read More →


Saturday June 25, 2022 9:00am - 5:00pm CDT
Main Event 12426 Greenspoint Dr, Houston, TX 77060
 
Filter sessions
Apply filters to sessions.