Skip to content

Commit ea963c2

Browse files
authored
PyOhio 2025 (#1357)
1 parent 4d6296a commit ea963c2

35 files changed

Lines changed: 888 additions & 0 deletions

File tree

pyohio-2025/category.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"title": "PyOhio 2025"
3+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"description": "A beginner friendly talk that goes from the manifestation of a bug in\nproduction, traces it all the way to its inception, and asks what other\nthan code needs to change to ship faster and NOT break things.\n\nWe open with the support rotation pager going off as customers of a low\nlatency realtime system report an outage. With every second of downtime\nresulting in revenue loss, it is all hands on deck for the site\nreliability team, Dev team, data team, product owners are peeling down\nthe stack. We will see the to the commit messages in polyglot systems\nthat caused the failure, the bug getting squashed, hotfix getting\nshipped and crisis is averted.\n\nCut to the blameless postmortem - the real life challenges of issue\nresolution that is more than changing lines in code, debugging\nworkflows, monitoring gaps, testing limitations, navigating change\nmanagement processes, team dynamics. for each of these pillars we will\nsee what allowed the teams to shift left, and shorten a bug's lifecycle.\n\n| What does the audience get out of it:\n| Modern software deployments are complex and dynamic ecosystems, an\n ideal breeding ground for bugs. In a way, the lifecycle of a bug,\n reveals the truth about the software development lifecycle of a\n product.\n| This talk takes learnings from multiple real life outages and tries to\n condense it as a shift-left journey by Continuous Questioning how can\n we catch bugs in lower environments.\n",
3+
"language": "eng",
4+
"recorded": "2025-07-26",
5+
"related_urls": [
6+
{
7+
"label": "Conference Website",
8+
"url": "https://www.pyohio.org/2025/"
9+
},
10+
{
11+
"label": "Presentation Webpage",
12+
"url": "https://www.pyohio.org/2025/program/talks/a-bug-s-life"
13+
}
14+
],
15+
"speakers": [
16+
"Tathagata Dasgupta"
17+
],
18+
"thumbnail_url": "https://i.ytimg.com/vi/D7FM7Js0GHg/maxresdefault.jpg",
19+
"title": "A Bug's Life",
20+
"videos": [
21+
{
22+
"type": "youtube",
23+
"url": "https://www.youtube.com/watch?v=D7FM7Js0GHg"
24+
}
25+
]
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"description": "AI is the theme of the moment - and even as a pythonista you might not\nknow where to begin, or you may have started as you had time - and\nwished to go further. This talk is a guide about where some have gone,\nand where you might want to go with AI in python. But it is not the last\nstop. This talk is designed to be a stating guide to move from hobbyist\nlevel AI learning to more production-ready coding.\n\nOften where you begin is with some of the low-code GUI tools - for\ninstance Flowise [ flowiseai.com] - where with a api key and some clicks\nyou can quickly build a chatbot - and then you leant to add complexity -\nmaybe you pull out some embeddable code -or start to have more than one\nagent talk to each other, or with some walk-throughs you build a\nknowledge-base of documents for your bot ( a RAG - Retrieval Augmented\nGeneration ) and now it knows - all your recipes.\n\nLater you want to give your bot some \"hands\" or rather tools and later\nyou connect to N8N [n8n.io] - which is a flexible workflow automation.\nYou've made your bot reach out into the world to do something (aka made\nit \"Agentic\").\n\nBut then you want more control - and stability - so you look to do what\nyou previously did in low-code- directly in python, with a view to\nproduction.\n\nThis is when you look to the \"Lang\" flavor tools: Langchain, Langflow,\nLangraph, and Langsmith.\n\nGiven the time, this will be a very quick tour of these concepts with\nboth images and code shown - so it won't be a line-by line build along.\nA repo and suggested resources will be provided at the end.\n",
3+
"language": "eng",
4+
"recorded": "2025-07-27",
5+
"related_urls": [
6+
{
7+
"label": "Conference Website",
8+
"url": "https://www.pyohio.org/2025/"
9+
},
10+
{
11+
"label": "Presentation Webpage",
12+
"url": "https://www.pyohio.org/2025/program/talks/a-very-brief-overview-of-pythons-lang-ai-tools-and-two-low-code"
13+
}
14+
],
15+
"speakers": [
16+
"Curtis Oneal"
17+
],
18+
"thumbnail_url": "https://i.ytimg.com/vi/B700zoxyVHY/maxresdefault.jpg",
19+
"title": "A Very Brief Overview of Python\u2019s \u201cLang\u201d AI Tools and Two Low-Code GUI AI Tools: Flowise and n8n",
20+
"videos": [
21+
{
22+
"type": "youtube",
23+
"url": "https://www.youtube.com/watch?v=B700zoxyVHY"
24+
}
25+
]
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"description": "**Ever wondered why your team still uses pip when benchmarks show\nalternatives are 10x faster?** The answer lies beyond raw performance\nmetrics.\n\nIn this myth-busting session, I'll reveal surprising insights from\nanalyzing thousands of GitHub repositories and real-world implementation\ncase studies. You'll discover why technical superiority doesn't always\ntranslate to organizational success, and how to navigate the complex\ndecision landscape of Python dependency management.\n\n| I'll share:\n| - \u26a1 Eye-opening performance comparisons between UV, Poetry, Conda,\n and pip+pyenv\n| - \ud83d\udcca Actual adoption statistics that challenge conventional wisdom\n| - \ud83d\udcbc ROI calculations that factor in both technical AND human costs\n| - \ud83d\udee3\ufe0f A decision framework for selecting the right tool for YOUR\n specific context\n\nWhether you're contemplating a migration, advocating for better tooling,\nor simply curious about the evolving Python ecosystem, you'll leave with\nactionable insights that balance technical excellence with\norganizational reality.\n\nDon't miss this data-driven exploration of Python's most\nunderappreciated infrastructure challenge!\n",
3+
"language": "eng",
4+
"recorded": "2025-07-27",
5+
"related_urls": [
6+
{
7+
"label": "Conference Website",
8+
"url": "https://www.pyohio.org/2025/"
9+
},
10+
{
11+
"label": "Presentation Webpage",
12+
"url": "https://www.pyohio.org/2025/program/talks/beyond-the-benchmark"
13+
}
14+
],
15+
"speakers": [
16+
"Keming He"
17+
],
18+
"thumbnail_url": "https://i.ytimg.com/vi/ncKno_9NgZs/maxresdefault.jpg",
19+
"title": "Beyond the Benchmark: Why the \u201cBest\u201d Python Dependency Manager Might Not Be Best for You",
20+
"videos": [
21+
{
22+
"type": "youtube",
23+
"url": "https://www.youtube.com/watch?v=ncKno_9NgZs"
24+
}
25+
]
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"description": "ML models behave as a black box in most scenarios. Model predicts or\nprovides a certain output but it is very difficult to generate any\nactionable insights directly. This is mostly because we generally have\nno idea which features are contributing the most to the model behavior\ninternally. SHAP provides a certain way to explain model predictions,\nand can act as an important tool in a data scientist\u2019s toolbox.\n\nIn this talk, we will begin by explaining to the audience the need for\nexplainable ML models and why it is important to understand beyond what\nthe model outputs. We will then briefly go over the mathematical\nintuition behind Shapley values and its origins from game theory. After\nthat we will walk through a couple of case studies of tree based and\nneural network based models. We will be focusing on interpretation of\nSHAP through various plots using the shap library in Python. Finally, we\nwill discuss the best practices for interpreting SHAP visualizations,\nhandling large datasets, and common pitfalls to avoid.\n",
3+
"language": "eng",
4+
"recorded": "2025-07-26",
5+
"related_urls": [
6+
{
7+
"label": "Conference Website",
8+
"url": "https://www.pyohio.org/2025/"
9+
},
10+
{
11+
"label": "Presentation Webpage",
12+
"url": "https://www.pyohio.org/2025/program/talks/beyond-the-black-box"
13+
}
14+
],
15+
"speakers": [
16+
"Avik Basu"
17+
],
18+
"thumbnail_url": "https://i.ytimg.com/vi/8wZ81oyWtxc/maxresdefault.jpg",
19+
"title": "Beyond the Black Box: Interpreting ML Models with SHAP",
20+
"videos": [
21+
{
22+
"type": "youtube",
23+
"url": "https://www.youtube.com/watch?v=8wZ81oyWtxc"
24+
}
25+
]
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"description": "Discover how to harness the power of IoT to tackle real-world problems\nusing affordable and accessible technology. In this talk, you'll learn\nhow to build an IoT system from off-the-shelf components, collect data\nfrom sensors, and visualize the data to tell compelling stories.\n\n| In this talk I'll showcase a project where I used a Raspberry Pi,\n environmental sensor, and Python to measure and monitor noise levels.\n This project demonstrates how to design and implement an IoT solution\n from concept to deployment, including using InfluxDB and Grafana for\n real-time data visualization, all running in Docker.\n| By the end of this talk, you'll have the skills to bring various\n pieces of technology together to solve real-world problems. Whether\n you're an enthusiast, developer, or researcher, this session will\n inspire you to apply open-source tools and inexpensive hardware in\n innovative ways to address the challenges in your every day life.\n",
3+
"language": "eng",
4+
"recorded": "2025-07-27",
5+
"related_urls": [
6+
{
7+
"label": "Conference Website",
8+
"url": "https://www.pyohio.org/2025/"
9+
},
10+
{
11+
"label": "Presentation Webpage",
12+
"url": "https://www.pyohio.org/2025/program/talks/bringing-ideas-to-life-with-diy-iot"
13+
}
14+
],
15+
"speakers": [
16+
"Ryan Carroll"
17+
],
18+
"thumbnail_url": "https://i.ytimg.com/vi/RtvgQLkzj1s/maxresdefault.jpg",
19+
"title": "Bringing Ideas to Life with DIY IoT: Visualizing Noise Pollution with a Raspberry Pi and Python",
20+
"videos": [
21+
{
22+
"type": "youtube",
23+
"url": "https://www.youtube.com/watch?v=RtvgQLkzj1s"
24+
}
25+
]
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"description": "Abstract\n--------\n\n| Stop wrestling with regular expressions (regex) and complex abstract\n syntax tree\n| (AST)-based frameworks to analyze and lint your Python code! Chasten\n offers an\n| elegant solution by leveraging XPath expressions to search Python's\n abstract\n| syntax tree, making static code analysis both powerful and accessible.\n In this\n| talk, you'll discover how to implement custom linting rules, enforce\n coding\n| standards, and perform sophisticated pattern matching in your Python\n projects\n| using a tool designed for both simplicity and flexibility. Whether\n you're a\n| developer tired of writing fragile regex patterns, an instructor\n validating\n| student code, or a project maintainer who wants to ensure code\n quality, Chasten\n| provides the perfect balance of power and usability for your static\n analysis\n| needs. More details about chasten are available at:\n| https://github.com/AstuteSource/chasten.\n\nKey Takeaways\n-------------\n\n- Create custom linting rules through simple YAML configuration\n- Practical examples of enforcing code standards on documentation and\n code\n- Ways to analyze results through interactive dashboards with Datasette\n- How to integrate Chasten into development workflow and CI/CD\n pipelines\n",
3+
"language": "eng",
4+
"recorded": "2025-07-26",
5+
"related_urls": [
6+
{
7+
"label": "Conference Website",
8+
"url": "https://www.pyohio.org/2025/"
9+
},
10+
{
11+
"label": "Presentation Webpage",
12+
"url": "https://www.pyohio.org/2025/program/talks/chasten-your-python-program"
13+
}
14+
],
15+
"speakers": [
16+
"Gregory M. Kapfhammer"
17+
],
18+
"thumbnail_url": "https://i.ytimg.com/vi/DkbYq-N8AIA/maxresdefault.jpg",
19+
"title": "Chasten Your Python Program: Configurable Program Analysis and Linting with XPath",
20+
"videos": [
21+
{
22+
"type": "youtube",
23+
"url": "https://www.youtube.com/watch?v=DkbYq-N8AIA"
24+
}
25+
]
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"description": "Everyone\u2019s talking about AI Agents! But what are they, and how can you\nbuild them? This talk cuts through the hype. Drawing on a year spent\ndeveloping a GenAI platform, I'll show you that creating powerful AI\nAgents is within your reach, no advanced degree required.\n\nWe\u2019ll define agents practically: Large Language Models combined with\ntools and memory. Moving beyond the abstract definition, I\u2019ll show you\nhow to build your first agent using the OpenAI Python SDK and\nfundamental Python concepts you\u2019re already familiar with: functions,\nloops, and conditions. From there, I will demonstrate how you can use\nthe CrewAI framework to abstract away the boilerplate code, allowing for\nsimpler setup of multi-agent systems.\n\nBy the end, you won't just understand agents; you'll be equipped and\ninspired to build your own, ready to tackle custom tasks by integrating\nthe APIs that matter to you.\n",
3+
"language": "eng",
4+
"recorded": "2025-07-26",
5+
"related_urls": [
6+
{
7+
"label": "Conference Website",
8+
"url": "https://www.pyohio.org/2025/"
9+
},
10+
{
11+
"label": "Presentation Webpage",
12+
"url": "https://www.pyohio.org/2025/program/talks/demystifying-ai-agents-with-python-code"
13+
}
14+
],
15+
"speakers": [
16+
"William Horton"
17+
],
18+
"thumbnail_url": "https://i.ytimg.com/vi/jOEdb9HnwsQ/maxresdefault.jpg",
19+
"title": "Demystifying AI Agents with Python Code",
20+
"videos": [
21+
{
22+
"type": "youtube",
23+
"url": "https://www.youtube.com/watch?v=jOEdb9HnwsQ"
24+
}
25+
]
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"description": "Deploying code shouldn\u2019t be stressful. But too often, the journey from\nlocal dev to production is fragile, manual, and hard to debug. This talk\nis about building peace of mind into your pipeline \u2014 with GitOps,\nKubernetes, and open source tools like Argo CD that make continuous\ndelivery predictable, repeatable, and scalable from the very first\nrelease to the 50th.\n\nWe\u2019ll tackle the realities of \u201cday two\u201d DevOps \u2014 what happens after the\nfirst deploy. From managing rollbacks and coordinating releases to\nenforcing consistency across dev, staging, and production, you\u2019ll learn\nhow to bring stability and scalability to your delivery pipeline.\n\nIn a live demo, we\u2019ll deploy a full stack Django app from GitHub to\nproduction using Argo CD and GitHub Actions \u2014 with observability,\nrollback strategies, and environment parity built in from the start.\n\n| **You\u2019ll learn how to:**\n| - Set up a GitOps-based CI/CD pipeline that works across all\n environments\n| - Automate rollouts, rollbacks, and version control of infrastructure\n| - Understand why Kubernetes is a future-proof platform for Django\n teams\n| - Gain confidence in releasing updates safely, consistently, and at\n scale\n| - Leverage open source tools to eliminate manual deployment headaches\n\nWhether you're writing the code or leading the team, you'll leave with a\nclear, practical blueprint for shipping faster \u2014 and with fewer\nsurprises.\n",
3+
"language": "eng",
4+
"recorded": "2025-07-26",
5+
"related_urls": [
6+
{
7+
"label": "Conference Website",
8+
"url": "https://www.pyohio.org/2025/"
9+
},
10+
{
11+
"label": "Presentation Webpage",
12+
"url": "https://www.pyohio.org/2025/program/talks/deploy-django"
13+
}
14+
],
15+
"speakers": [
16+
"Calvin Hendryx-Parker"
17+
],
18+
"thumbnail_url": "https://i.ytimg.com/vi/H7GMjMgue14/maxresdefault.jpg",
19+
"title": "Deploy Django: GitOps & Kubernetes Made Easy",
20+
"videos": [
21+
{
22+
"type": "youtube",
23+
"url": "https://www.youtube.com/watch?v=H7GMjMgue14"
24+
}
25+
]
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"description": "Monitoring the health of city streets and roadways is expensive,\ntime-consuming, and often reactive. But what if we could automate part\nof that process using satellite imagery and Python?\n\nIn this talk, we\u2019ll walk through a real-world project that combines\ntransfer learning, PyTorch, and publicly available datasets to classify\nroad segment conditions (good, fair, poor) from aerial imagery. You'll\nlearn how to work with messy real-world geospatial data, fine-tune a\ndeep learning model using only a small training set (~2,000 examples),\nand overcome common challenges like blurry imagery, inconsistent labels,\nand overfitting.\n\nThis session is practical and code-driven, aimed at data scientists and\nanalysts working in mobility analytics, urban development, or\ninfrastructure who want to apply machine perception techniques in their\nwork. By the end, you\u2019ll walk away with a reusable workflow for\nanalyzing and predicting urban infrastructure quality \u2014 all using free\ntools and open data.\n",
3+
"language": "eng",
4+
"recorded": "2025-07-26",
5+
"related_urls": [
6+
{
7+
"label": "Conference Website",
8+
"url": "https://www.pyohio.org/2025/"
9+
},
10+
{
11+
"label": "Presentation Webpage",
12+
"url": "https://www.pyohio.org/2025/program/talks/detecting-road-conditions-from-space-using-pytorch-public-data"
13+
}
14+
],
15+
"speakers": [
16+
"Cynthia Ukawu"
17+
],
18+
"thumbnail_url": "https://i.ytimg.com/vi/-V3-8Ocq2rQ/maxresdefault.jpg",
19+
"title": "Detecting Road Conditions from Space Using PyTorch, Public Data, and Free Satellite Imagery",
20+
"videos": [
21+
{
22+
"type": "youtube",
23+
"url": "https://www.youtube.com/watch?v=-V3-8Ocq2rQ"
24+
}
25+
]
26+
}

0 commit comments

Comments
 (0)