Friday, June 27, 2025
Preconference class, “Going Rogue with Metamodern Perl” in the Crescent room from 9:00 AM to 5:00 PM.
The conference registration will open from 1:00 PM to 5:00 PM in the Palmetto Foyer.
The hackathon space will be open from 9:00 AM to 5:00 PM in the Carolina Boardroom.
The Arrival Dinner will depart from the lobby at 5:15 PM. Please be prompt! This year’s Arrival Dinner will be at Chuy’s Mexican, just across the parking lot from the hotel. See the wiki to join or set up an Anti-Arrival Dinner!
Saturday, June 28, 2025
Hackathon: 8:00 AM – 7:00 PM, Carolina Boardroom
Time | Palmetto Lobby | Palmetto | Crescent |
---|---|---|---|
8:00 AM | Registration Open | ||
8:30 AM | |||
9:00 AM | Opening/ Keynote | ||
9:30 AM | Keynote | ||
10:00 AM | |||
10:30 AM | Break | ||
11:00 AM | Lightning Talks | ||
11:30 AM | Lunch (provided) | Politics Management of Migrating Projects from Perl BOF | Raku BOF |
12:00 PM | |||
12:30 PM | |||
1:00 PM | Book Signing with David Both | Closing in on an Application: Applying Closures with Perl and Raku Steven Lembark | |
1:30 PM | |||
2:00 PM | Classes in Corinna and Camelia Matthew Stephen Stuckwisch | ||
2:30 PM | |||
3:00 PM | Break | ||
3:30 PM | Dancer2 2.0 – Oh, myyyyyy! Jason Chrome ——– Meet The Board | ||
4:00 PM | |||
4:30 PM | |||
5:00 PM – 7:00 PM | CLOSED | ||
7:00 PM – 9:00 PM | Conference Dinner (provided) |
The Pros and Cons of Torturing Your Implementers: A Raku Case Study
– Daniel Sockwell
One of Raku’s core design principles has always been to “torture the implementer on behalf of the users”. This talk examines what this principle means in theory – and how it has been applied in practice. We’ll discuss the ways this principle has helped Raku and how it has held Raku back and assess whether the tradeoff has been worth its price. We’ll also consider whether the language can strike a better balance – and argue that, with a few tweaks, Raku can preserve most of the benefits of this torture with significantly less actual pain.
Exodist’s Toolbox
– Chad Granum
This talk covers a selection of modules Chad has written, or enjoys using. None of these modules or topics justify their own talk, but a talk covering a collection of them may provide valuable tools for people. Modules include: goto::file, Atomic::Pipe, Importer, DBix::QuickDB, DBIx::QuickORM and possibly more.
Closing in on an Application: Applying Closures with Perl and Raku
– Steven Lembark
Over the last few years we’ve had the opportunity to look at what closures are and basics how to create them in Perl & Raku. We even had a chance to look at how Raku’s more advanced signatures can improve closures there. Now it’s time to take a deeper look at how apply them. This talk will quickly review what we’ve see so far on how to define closures, then look at specific examples in testing and data processing where they can simplify frameworks used for CI, data munging, or general data processing.
Meet the Board
– The Perl and Raku Foundation Board
Join the TPRF Board for an opportunity to learn what we’ve been up to in the last year, and have an opportunity to make your voice heard on our future directions. Ruth Holloway, Community Engagement Chair, will moderate this round-table discussion. If you have questions for the Board you’d like addressed, you can enter them on the wiki.
Sunday, June 29, 2025
Hackathon: 8:00 AM to 5:00 PM, Carolina Boardroom
Time | Palmetto Foyer | Palmetto | Crescent |
---|---|---|---|
8:30 AM | Registration Open | ||
9:00 AM | Raku Next Steps: Hypersonic Bruce Gray | ||
9:30 AM | |||
10:00 AM | Break | ||
10:30 AM | Padding Your Objects: Using Object::Pad for next-generation Perly objects Steven Lembark | ||
11:00 AM | |||
11:30 AM | Lunch (provided) | BOF (Available) | Mongeresses BOF |
12:00 PM | |||
12:30 PM | |||
1:00 PM | Test2::UI Howto Andy Baugh | ||
1:30 PM | |||
2:00 PM | Sharding a Database, Twice Abigail | ||
2:30 PM | |||
3:00 PM | Break | ||
3:30 PM | Lightning Talks | ||
4:00 PM | Closing |
Test2 and Yath, or how to make testing less painful!
– Chad Granum
This talk is the logical progression from my previous ones. At this point Test2 has traction and no longer needs a hectic sales pitch for its talk. This talk will assume people know in concept what Test2 is and spends less time explaining what it is (compared to previous years). This lets me focus on introducing more tools and concepts, and keeps the talk fresh compared to the same talk I have given multiple years in a row.
RSC Update
– Daniel Sockwell
Raku has seen tremendous progress in 2024 and 2025, both at the technical and community level. This talk will review this progress and preview what Rakoons have to look forward to in 2026 and beyond!
Padding Your Objects: Using Object::Pad for next-generation Perly objects
– Steven Lembark
Object::Pad is a test-bed for the new Perly OO model. It evolve faster than the Perl core, offering a view of the future and a chance for feedback on where it goes. This talk looks at the basics of using the new OO model, some of its guardrails, and ways to get involved using and improving it.
Classes in Corinna and Camelia
– Matthew Stephen Stuckwisch
This talk examines the two core class systems in the family of languages: Corinna from Perl and the Raku’s core class. The idea of the talk is to enable folks from both languages to have an appreciation of the other class system, and particularly for Corinna, might provide a good intro to it from a different voice.
Test2::UI Howto
– Andy Baugh
By now you may have heard Chad talk about all the new things coming with Test2 and how there’s a UI component to it, but how would one go about actually using this without directly pestering him like I did? By listening to this talk, of course!
Discussion will include:
- What do I need installed on the server?
- What do I need installed for the user running yath (and how can this be slightly different)?
- OK, got the deps, now how do I configure it to work (submodules and plack app script)?
- What if I want to use a reverse proxy to host the server?
- Demonstration of how this looks while tests are running, talk about differences between DB route and upload route
Raku Next Steps: Hypersonic
– Bruce Gray
Raku’s hyper-operators: a simple syntax granting us safe parallel processing, like Prometheus sneaking a flame from the heavens.
Shorten @B = map { $_ * 5 }, @A;
to @B = @A »*» 5
; boost performance!
Come learn how to cook with all your cores, with the fire that cannot burn down your house.
(Need to catch up? See the “Raku for Beginners class from 2023 at: https://youtu.be/eb-j1rxs7sc and https://youtu.be/2UO-LEhOkiM )
Presenting hyper-operators in a way that will move us from typical reactions of “Oh! Cool!” to actual adoption in everyday coding, by focusing on spotting the use-cases. For example, “When you see FOO, think BAR”, where FOO might be a index loop running an operation across two arrays, and BAR would be >>op<<
.
Sharding a Database, Twice
– Abigail
There comes a time in the life time of a database, the database takes too many resources (be it disk space, number of I/O transactions, or something else) to be handled by a single box.
Sharding, where data is distributed over several identically shaped databases is one technique to solve this.
For a high volume database at $WORK
I work with, we hit this limit about ten years ago. Then we hit the limit again last year.
In this talk, we will first discuss how we initially switched our systems to make use of a sharded database, without any significant downtime.
Then we will discuss the totally different way we resharded last year, making use of the code infrastructure changes of 10 years ago, and making use of the improved database tooling available.