Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions pycascades-2026/category.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"title": "PyCascades 2026"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"description": "Do you ever have a weird feeling that something around you is off? I certainly do, and one recent recurring thought I have is that the vintage boat I'm helping restore has sunk. I decided to use the tools available to me to put my mind at ease: software, a soldering iron, and stubbornness. My crewmate and I have built a way to get live data from our boat while on the couch at home at 3 am :) Data is a great way to reduce anxiety, and in this case has also generated a rising tide of interest in marine tech infrastructure. In this talk, we will give you a tour the cool OSS tools I have discovered for collecting telemetry on boats, a specialized marine data collection platform (Signal K), and an MQTT bridge to bring it all into my smart home dashboards on Home Assistant.\n\n",
"language": "eng",
"recorded": "2026-03-22",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Sarah Kaiser",
"Cassandra Granade"
],
"thumbnail_url": "https://i.ytimg.com/vi/-Kxhvm39v_4/hqdefault.jpg",
"title": "A bridge over (not) troubled waters: Collecting marine data from your couch",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=-Kxhvm39v_4"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "Apache Airflow is famous for orchestrating massive data pipelines, but what if you could also use it to orchestrate things in your physical workspace?\r\n\r\nIn this talk, we'll explore how **Airflow 3's new lightweight architecture** makes *micro-orchestration* possible on resource-constrained devices. I'll demonstrate a real working system where an **Airflow Edge Worker** running on a Raspberry Pi controls an **\"On Air\" LED** that automatically lights up when a Zoom call starts. All built with standard Python and familiar Airflow patterns.\r\n\r\nWhat starts as a desk toy points to a bigger trend: **orchestration breaking free from the data centre and moving closer to where work actually happens.** You'll walk away seeing Airflow (and Python orchestration in general) not just as a data-engineering tool, but as a bridge between the digital and physical worlds. \r\n\r\nBasic familiarity with Python is all you need, no prior Airflow experience required.\n\n",
"language": "eng",
"recorded": "2026-03-21",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Constance Martineau"
],
"thumbnail_url": "https://i.ytimg.com/vi/8prpbVsO_20/hqdefault.jpg",
"title": "Airflow Beyond the Cloud: Python Workflows at the Edge",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=8prpbVsO_20"
}
]
}
22 changes: 22 additions & 0 deletions pycascades-2026/videos/am-i-ready-to-be-a-senior-engineer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "When you move from Junior to Mid-level Software Engineer, you\u2019re mostly building on what you already know. You get better at writing clean code, you pick up speed, and you start to really understand how your team works. But making the leap from Mid to Senior? That\u2019s a whole new game. Suddenly, you\u2019re expected to make technical decisions, work across teams, and help drive your team\u2019s success. I\u2019ll talk about what being a Senior Engineer actually means, and what people are really looking for. These days, on-the-job training is rare. Managers want to see these skills early, not just when you have the title.\r\n\r\nHere\u2019s a challenge: the most experienced engineers are often working remotely, so it\u2019s harder for newer folks to pick things up just by being around them. How are you supposed to know what\u2019s expected if you never get to see it in action? That\u2019s what I want to help with. We\u2019ll dig into everything from system design to working with other teams, the stuff nobody really explains. This is a sneak peek from my upcoming book (coming Fall 2026), pulled from both my own experience and the many engineers I interviewed. \r\n\r\nYou\u2019ll leave with practical skills you can start using right away, and a clearer picture of what it really means to be a Senior Engineer, so you can stop guessing and be ready for your next step.\n\n",
"language": "eng",
"recorded": "2026-03-22",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Michelle Brenner"
],
"thumbnail_url": "https://i.ytimg.com/vi/EqX8qh4rHsM/hqdefault.jpg",
"title": "Am I ready to be a Senior Engineer?",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=EqX8qh4rHsM"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "AB testing is a tried and true standard across technology companies used extensively for 20+ years, Still it's hard to get right. With vendors and libraries, with better statistics and more experience, companies still struggle to scale AB Testing beyond one artisanal test at time.\r\n\r\nLearn the language and systems required to scale AB Testing. Tips and tricks for talking to your manager and stakeholders about the importance of AB Testing as a system and the benefits that happen when it runs like a song.\r\n\r\nA basic understanding of AB Testing and Python will make this talk fully understandable, but attendees that lack both of these things will still get the general idea of how AB Testing can be hard to scale\n\n",
"language": "eng",
"recorded": "2026-03-21",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Stephen Pettinato"
],
"thumbnail_url": "https://i.ytimg.com/vi/IsT1hq_v4iA/hqdefault.jpg",
"title": "Anti-Patterns in A/B Testing - or How does AB Testing Scale?",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=IsT1hq_v4iA"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "Once you've moved past the basics of assert and test_ functions, developers often run into a new set of challenges when projects and test suites grow in complexity. This talk explores using pytest's indirect fixtures to create modular, maintainable test suites that scale with your codebase. \r\n\r\nFixture overuse and mismanagement is one of the most common areas of difficulty with testing/pytest \r\n- passing data to fixtures: they want to parametrize a `fixture` itself (this is how I initially discovered indirect parametrization)\r\n- fixture hell: conftest.py becomes a dumping ground for poorly named, complex, and interdependent fixtures, making it hard to comprehend what a single test is doing\r\n- scope confusion: struggles with when to use `function`, `class`, `module` or `session` scopes that lead to tests that are either slow (re-creating expensive resources for every test) or flaky (tests interfering with each other via session-scoped fixtures).\r\n\r\nYou'll discover how `indirect=True` parametrization can elegantly address each of these pain points and see examples of how to refactor messy, hard-to-read tests into clean, declarative patterns. Come away with a clearer mental model of fixture scopes and how to optimize them to reduce test run times.\r\n\r\nThis talk is for intermediate developers who have basic experience with fixtures and parametrization, who may have encountered the pain points of maintaining a growing test suite.\n\n",
"language": "eng",
"recorded": "2026-03-21",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Sammie Jiang"
],
"thumbnail_url": "https://i.ytimg.com/vi/v2XlE4IQfCA/hqdefault.jpg",
"title": "Climbing Out of Fixture Hell, Indirectly",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=v2XlE4IQfCA"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "The open source community is all about giving back and learning from one another. No matter how small, every contribution is valuable. And everyone can contribute something with a little bit of help. The hardest part is finding something to work on that fits your interests and skills.\r\n\r\nIn this talk, I will provide five ways that I used to get started contributing to different open source projects. I also share some guidance on selecting projects to contribute to and how to set yourself up for success. Get ready to start your open source journey!\r\n\r\n---\r\n\r\nThis talk is for anyone that has wanted to contribute to open source, but didn\u2019t know where to start or thought they wouldn\u2019t be able to do it with their skill set or time. Come learn how to get started!\n\n",
"language": "eng",
"recorded": "2026-03-21",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Stefanie Molin"
],
"thumbnail_url": "https://i.ytimg.com/vi/YXex_F_NiQY/hqdefault.jpg",
"title": "Getting Started with Open Source Contributions",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=YXex_F_NiQY"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"description": "Questionable queues, distributed storage chaos, stateful steps, and race conditions galore! Come join us as we dive into the wild world of queues and tasks in Python to perform asynchronous jobs, and how we built a system to manage user deletion across distributed storage systems and application isolation layers. We'll explore the pros and cons of common task queueing systems, and expose gotchas and workarounds that will hopefully save you future headaches! We'll navigate the challenges of sequential deletion in distributed storage systems as a case study, and ultimately show how we went from problem statement to deployed in production.\n\n",
"language": "eng",
"recorded": "2026-03-21",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Chantelle Chan",
"Tanzim Mokammel"
],
"thumbnail_url": "https://i.ytimg.com/vi/SRSrtlazC-U/hqdefault.jpg",
"title": "Graceful Deletes: Queues, Tasks and Distributed State Management in Python",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=SRSrtlazC-U"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "Python 3.14 introduces t-strings: template string literals that look like f-strings but evaluate to a `Template` instance instead of a `str`. This opens up exciting possibilities for safer string processing (avoiding injection vulnerabilities in SQL and HTML) and powerful custom formatting (like HTML templating directly in Python), all while using the familiar f-string syntax developers already know and love.\r\n\r\nIn this talk, I'll describe what t-strings are and how they differ from f-strings and other common Python formatting tools. I'll explore when they're a good fit for new projects and how to use them effectively in everyday code. I'll also demonstrate two libraries \u2014 `tdom` (HTML) and `t-sql` (SQL) \u2014 and close with a live tooling demo in VS Code showing the current state of formatting, linting, and syntax highlighting support.\r\n\r\nAttendees will leave knowing when to reach for t-strings, how to adopt them safely, and which tools can improve their developer experience.\n\n",
"language": "eng",
"recorded": "2026-03-22",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Dave Peck"
],
"thumbnail_url": "https://i.ytimg.com/vi/MZ4Xq2qzWJo/hqdefault.jpg",
"title": "Introducing t-strings: f-strings with superpowers",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=MZ4Xq2qzWJo"
}
]
}
22 changes: 22 additions & 0 deletions pycascades-2026/videos/more-better.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "What would it look like to be a good software engineer? Would it mean that you are able to solve complex problems with proven solutions? Or would it mean that you can provide novel and creative ways to solve hard problems? The introduction of AI tooling into a developer's workflow promises gains in productivity. But what does _that_ mean? More code? Better Code? Less toil? More _time_?\r\n\r\nSome executives bullish on this technology claim that AI assistants will eventually shorten workers' work weeks. However, the likeliest scenario is not a shorter work week, but increased demands within the same time constraints.\r\n\r\nHow do we become _better_ engineers within the current climate of overhyped AI technologies?\n\n",
"language": "eng",
"recorded": "2026-03-22",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Mario Munoz"
],
"thumbnail_url": "https://i.ytimg.com/vi/L3LVWOECQJE/hqdefault.jpg",
"title": "More. Better.",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=L3LVWOECQJE"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "PyLadiesCon is an online conference for the Global PyLadies community. It is one of a kind conference with programming spans 24 hours and offering talks and contents in multiple languages. Run entirely by volunteers, we face unique challenges specific to the nature of our conference.\r\n\r\nOne of the ways we have been managing the various aspects of PyLadiesCon is by using spreadsheets. Spreadsheets for volunteer sign ups, spreadsheets for program scheduling, spreadsheets for sponsorship. Any information you want about the conference, we have a spreadsheet for that.\r\n\r\nWhile spreadsheets are great for capturing data, they come with drawbacks when it comes to online collaboration with various team members, causing frustrations and confusion among our team of volunteers.\r\n\r\nIn 2025, PyLadiesCon team said no to spreadsheets and instead started building our conference infrastructure: an open source web app for managing various aspects of our conference. Learn more our challenges in managing the online PyLadiesCon conference, and how we're solving our problems with Python and Django. Contribute to the project, and support the PyLadies community.\n\n",
"language": "eng",
"recorded": "2026-03-21",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Mariatta"
],
"thumbnail_url": "https://i.ytimg.com/vi/DK0fmhcisRc/hqdefault.jpg",
"title": "No More Spreadsheets! Building PyLadiesCon Infrastructure with Python and Django",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=DK0fmhcisRc"
}
]
}
22 changes: 22 additions & 0 deletions pycascades-2026/videos/permacomputing-and-python.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "Will you be able to access your cloud data in 10 years? Are you able to easily access your photos and notes in an open format to analyze, aggregate, and backup? Is a device you bought in 2019 bricked now because the vendor stopped supporting it?\r\n\r\nLet's talk about computers and longevity, with special focus on how Python plays into sustainable computing and how you too can reclaim some agency over your data and devices.\n\n",
"language": "eng",
"recorded": "2026-03-21",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"\u0141ukasz Langa"
],
"thumbnail_url": "https://i.ytimg.com/vi/wpuneOh9ZVQ/hqdefault.jpg",
"title": "Permacomputing and Python",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=wpuneOh9ZVQ"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "In tech, it\u2019s easy to get caught up in ego. Chasing the smartest solutions, writing the most complex code, or proving who\u2019s the best in the room. But Python has a funny way of humbling us. Its simplicity reminds us that good code isn\u2019t about showing off; it\u2019s about making things clear, accessible, and collaborative.\r\n\r\nThis talk is about what happens after that sting of humility. Python doesn\u2019t just strip away ego, it builds communities that make you feel proud to belong. I\u2019ll share stories from my journey with Black Python Devs and other Python groups, showing how people from all walks of life come together, support one another, and create space for growth.\r\n\r\nBy the end, you\u2019ll see that the real magic of Python isn\u2019t just the language. It\u2019s the people, the openness, and the sense of pride that comes from being part of something bigger than yourself.\n\n",
"language": "eng",
"recorded": "2026-03-22",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Emmanuel Ugwu"
],
"thumbnail_url": "https://i.ytimg.com/vi/RlVK5g4JeM4/hqdefault.jpg",
"title": "Python Stings Your Ego: Finding Pride in Community, Not Just Code",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=RlVK5g4JeM4"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"description": "A decade from now there's a reasonable chance that Python won't be the world's most popular programming language. Many languages eventually have a successor that inherits large portions of its technical momentum and community contributions. With Python turning 35 years old, the time could be ripe for Python's eventual successor to emerge. How can we help the Python community navigate this risk by embracing change and evolving, or influencing a potential successor language?\r\n\r\nThis talk will cover the past, present, and future of the Python language's growing edge. We'll learn about where Python began and its early influences. We'll look at shortcomings in the language, how the community is trying to overcome them, and opportunities for further improvement. We'll consider the practicalities of language evolution, how other languages have made the shift, and the unique approaches that are possible today (e.g., with tooling and AI).\r\n\r\nAll levels of experience are welcome!\n\n",
"language": "eng",
"recorded": "2026-03-21",
"related_urls": [
{
"label": "Conference Website",
"url": "https://2026.pycascades.com/"
}
],
"speakers": [
"Brett Slatkin"
],
"thumbnail_url": "https://i.ytimg.com/vi/vkwyKN0fDBE/hqdefault.jpg",
"title": "The Future of Python: Evolution or Succession?",
"videos": [
{
"type": "youtube",
"url": "https://www.youtube.com/watch?v=vkwyKN0fDBE"
}
]
}
Loading