
The Real Python Podcast
Real Python·Hosted by Christopher Bailey·298 episodes
A weekly Python podcast hosted by Christopher Bailey with interviews, coding tips, and conversation with guests from the Python community. The show covers a wide range of topics including Python programming best practices, career tips, and related software development topics. Join us every Friday morning to hear what's new in the world of Python programming and become a more effective Pythonista.
Why listen
The Real Python Podcast is a weekly check-in for Python developers who want to keep learning without sitting down for a course. Host Christopher Bailey mixes interviews with people building Python tools, Real Python team discussions, and PyCoder's Weekly style article roundups, so each episode feels like a guided tour through what matters in the Python ecosystem. It is especially useful if you work with Python, are learning it seriously, or want practical context around libraries, tooling, testing, data science, AI, web development, and developer workflow.
Episodes
Have you ever been confused by the naming of modules you’re importing from a package? Is there a standard way to organize and name your Python virtual environments? This week on the show, Brett Cannon returns to discuss the Python Enhancement Proposals (PEPs) he’s been working on recently. We start with PEP 794, which extends the metadata fields for Python packages to specify the import names a project provides. The metadata will help developers identify the correct project to install when they know the import name or the importable module names a project provides once installed. We dive back into WebAssembly to discuss PEP 816, which specifies the WASI support in CPython releases. We also wade into the controversy around PEP 832, which proposes standards around naming and the discovery of virtual environments. Brett shares his motivation for being a prolific author and supporter of PEPs. We discuss his promotion of standards and protocols to simplify the Python ecosystem for current and future developers. Course Spotlight: Tapping Into the Zen of Python Explore the Zen of Python and its 19 guiding principles for writing readable, practical code. Learn its history, jokes, and meaning. Topics: 00:00:00 – Introduction 00:02:01 – Prolific PEP creation 00:03:37 – Improving the future of Python through standards 00:09:30 – PEP 794 - Import Name Metadata 00:30:12 – PEP 816 - WASI (WebAssembly System Interface) Support 00:40:55 – Why the interest in WASI? 00:45:23 – Video Course Spotlight 00:47:07 – PEP 832 - Virtual Environment Discovery 01:10:02 – Type Server Protocol 01:17:41 – How can people follow your work online? 01:19:12 – Thanks and goodbye Show Links: Tall, Snarky Canadian PEP 794 – Import Name Metadata Towards fixing Python project names and import modules - Goran et al. PEP 816 – WASI Support State of WASI support for CPython: March 2026 PEP 11 – CPython platform support PEP 816: How Python is getting serious about WASM - InfoWorld PEP 832 – Virtual environment discovery Discussions on Python.org
How can you avoid schema problems in your Polars data pipeline when adding new columns? How can you quickly examine a GitHub user’s profile to decide how much to invest in their contributions? Christopher Trudeau is back on the show this week with another batch of PyCoder’s Weekly articles and projects. Christopher shares a recent article about handling schema issues in Python Polars. The piece covers ways that a schema change can break your data pipeline. It provides strategies to avoid and resolve issues. We cover a recent project from previous guest Eric Matthes to investigate GitHub profiles of a potential contributor. With the rise of AI-slop pull requests, the tool can provide valuable background on the user. We also share other articles and projects from the Python community, including recent releases, exploring four different “get” special methods, what’s new in Pip 26.1, inverse Sapir-Whorf and programming languages, and a Python scripting framework for CAD. This episode is sponsored by Six Feet Up. Course Spotlight: Working With Python Polars Welcome to the world of Polars, a powerful DataFrame library for Python. In this video course, you’ll get a hands-on introduction to Polars’ core features and see why this library is catching so much buzz. Topics: 00:00:00 – Introduction 00:02:51 – Python 3.14.5 is out! 00:03:16 – Python 3.15.0 beta 1 is here! 00:03:34 – PyPy v7.3.22 Released 00:03:45 – Django Security Releases: 6.0.5 and 5.2.14 00:04:04 – 2026 Django Developers Survey 00:04:24 – PEP 797: Shared Object Proxies (Deferred to 3.16) 00:04:40 – PEP 828: Supporting ‘Yield From’ in Asynchronous Generators 00:05:59 – Do You Get It Now? 00:11:54 – Sponsor: Six Feet Up 00:12:47 – Handling Schema Issues in Polars 00:17:10 – What’s New in Pip 26.1 00:24:27 – Video Course Spotlight 00:25:39 – Inverse Sapir-Whorf and Programming Languages 00:34:04 – cadquery: CAD Scripting Framework 00:38:16 – gh-profiler: Examine a GH user’s profile 00:40:46 – Thanks and goodbye News: Python 3.14.5 is out! - Python Insider Python 3.15.0 beta 1 is here! - Python Insider PyPy v7.3.22 Released Django Security Releases: 6.0.5 and 5.2.14 <a href="https://www.djangoproject.com/weblog/2026/may/12/2026-django-developers-surve
What are the limitations of using a file-based agent workflow? Why do massive context windows tend to collapse? This week on the show, Mikiko Bazeley from MongoDB joins us to discuss agentic architecture and context engineering. Mikiko is an applied AI engineer. She helps developers and organizations build AI and ML applications using MongoDB. We dig into the debate of files versus a database. What are some of the limitations of building an agent with just a folder of files? We explore the surprising limitations of massive context windows and strategies for fixing them. Mikiko also shares advice and resources to help you get up to speed on building your own agent skills. Our conversation touches on multiple topics in the current development landscape. This episode is sponsored by SerpApi. Video Course Spotlight: Building Type-Safe LLM Agents With Pydantic AI Build type-safe LLM agents in Python with Pydantic AI using structured outputs, function calling, and dependency injection. Topics: 00:00:00 – Introduction 00:02:31 – Catching up with MongoDB 00:07:02 – Are the files all you need? 00:15:14 – What is a workflow agent? 00:24:43 – Sponsor: SerpApi 00:25:45 – Model vs harness 00:29:57 – Context rot and tool loadouts 00:41:07 – Sharing state and coordination of agents 00:47:27 – Video Course Spotlight 00:49:16 – What do dataflows look like 01:00:38 – The human-in-the-loop & coding agents 01:10:30 – Resources to explore 01:17:49 – What are you excited about in the world of Python? 01:18:38 – What do you want to learn next? 01:22:54 – Thanks and goodbye Show Links: The “files are all you need” debate misses what’s actually happening in agent memory architecture - The New Stack MongoDB: The World’s Leading Modern Data Platform Karpathy shares ‘LLM Knowledge Base’ architecture that bypasses RAG with an evolving markdown library maintained by AI - VentureBeat Files Are All You Need: Context, Search, Skills Guide | LlamaIndex Converged Datastore For Agentic AI - MongoDB Why Developers Need Vector Search
What if you could build charts in Python by describing what your data means, instead of scripting every visual detail? Christopher Trudeau is back on the show this week with another batch of PyCoder’s Weekly articles and projects. We cover a recent Real Python article about the data visualization library Altair. Most tools require you to write detailed boilerplate code to set up the axis and figure. Altair follows a declarative approach where you specify which columns go to which axis, the type of chart or plot, and what should be interactive. We also share other articles and projects from the Python community, including recent releases, clarifying the differences between iterators and iterables, decoupling your business logic from the Django ORM, comparing an LLM-based tool for web scraping against Playwright, a neural network emulator for guitar amplifiers, and a CLI tool to generate ASCII art of the current moon phase. This episode is sponsored by Build Your Own Coding Agent. Video Course Spotlight: Use Codex CLI to Enhance Your Python Projects Learn how to use Codex CLI to add features to Python projects directly from your terminal, without needing a browser or IDE plugins. Topics: 00:00:00 – Introduction 00:02:38 – Read the Docs Now Supports uv Natively 00:03:09 – Reverting the Incremental GC in Python 3.14 and 3.15 00:04:51 – Altair: Declarative Charts With Python 00:12:23 – Sponsor: Build Your Own Coding Agent 00:13:17 – Decoupling Your Business Logic From the Django ORM 00:19:51 – browser-use vs. Playwright: Which to Pick for Web Scraping? 00:26:58 – 2048: iterators and iterables - Ned Batchelder 00:31:31 – Video Course Spotlight 00:33:00 – Discussion: Jumping back into solo developer mode 00:46:59 – neural-amp-modeler: Neural network emulator for guitar amplifiers 00:51:48 – ascii-moon-phase-python: CLI for ASCII art of the current moon phase 00:53:11 – Thanks and goodbye 00:54:43 – Appendix: Neural Amp Modeler - Demo News: Read the Docs Now Supports uv Natively – Popular open source documentation site Read the Docs has announced they now support native uv in .readthedocs.yaml for Python dependency installation. Learn how to use it in your configurations Reverting the Incremental GC in Python 3.14 and 3.15 Fixing a Memory “Leak” From Python 3.14’s
How do you add agent skills to your data science workflow? How can a coding agent assist with data wrangling and research? This week on the show, Trevor Manz from marimo joins us to discuss marimo pair. Trevor is a founding engineer at marimo, where he’s been working on integrating LLM tools with marimo. We discuss the balancing act of building a skill and determining how to give an agent access to all the variables in a notebook. He shares how they built a specialized reactive REPL that eliminates hidden state and allows the agent to continue constructing a reproducible Python program. We dig into installing and getting started with marimo pair. Trevor also covers several of the tasks an agent can tackle in a data science workflow. Video Course Spotlight: Getting Started With marimo Notebooks Discover how marimo notebook simplifies coding with reactive updates, UI elements, and sandboxing for safe, sharable notebooks. Topics: 00:00:00 – Introduction 00:02:26 – Trevor’s role at marimo 00:03:08 – Current AI tools in marimo 00:06:26 – Describing marimo notebooks 00:10:11 – What is marimo pair? 00:18:49 – Building an agent skill 00:27:34 – Setup & installation 00:31:16 – Video Course Spotlight 00:32:42 – Examples of EDA and data wrangling 00:45:46 – Experimenting inside of a notebook 00:50:40 – Managing context 00:53:25 – Accessing additional libraries 00:57:16 – Recent tools and updates from the marimo community 00:59:31 – What are you excited about in the world of Python? 01:01:10 – What do you want to learn next? 01:02:26 – How can people follow your work online? 01:03:13 – Thanks and goodbye Show Links: Introducing marimo pair - marimo marimo-pair: Drop agents inside running marimo notebook sessions Marimo pair – Reactive Python notebooks as environments for agents - Hacker News Episode #230: marimo: Reactive Notebooks and Deployable Web Apps in Python marimo Pair - YouTube We gave Claude Access to All Python Variables - YouTube Using the marimo editor’s AI features - marimo ty: An extremely fast Python type checker and language server, written in Rust. <
How can learning Rust help make you a better Python Developer? How do techniques required by a compiled language translate to improving your Python code? Christopher Trudeau is back on the show this week with another batch of PyCoder’s Weekly articles and projects. We discuss a recent article by Bob Belderbos titled “Learning Rust Made Me a Better Python Developer.” Bob has been on a journey learning to program in Rust, which has made him rethink how he’s been writing Python. The compiler forced him to confront things he’d been ignoring. We also share other articles and projects from the Python community, including recent releases, a boatload of PEPs, NumPy as a synth engine, firing and forgetting with Python’s asyncio, managing state with signals in Python, a documentation site generator for Python packages, and a tool to explain your Python environment. This episode is sponsored by AgentField. Video Course Spotlight: Using Loguru to Simplify Python Logging Learn how to use Loguru for simpler Python logging, from zero-config setup and custom formats to file rotation, retention, and adding context. Topics: 00:00:00 – Introduction 00:02:23 – Python 3.15.0a8, 3.14.4 and 3.13.13 Released 00:03:01 – Django Security Releases: 6.0.4, 5.2.13, and 4.2.30 00:03:38 – DjangoCon Europe 2027 Call for Organizers 00:04:04 – PEP 803: "abi3t": Stable ABI for Free-Threaded Builds 00:04:44 – PEP 829: Structured Startup Configuration via .site.toml File 00:05:18 – PEP 830 – Add timestamps to exceptions and tracebacks 00:05:44 – PEP 831 – Frame Pointers Everywhere: Enabling System-Level Observability for Python 00:06:59 – PEP 832 – Virtual environment discovery 00:10:13 – PyCoder’s Weekly - Submit a Link 00:11:15 – NumPy as Synth Engine 00:21:04 – Sponsor: AgentField 00:22:05 – Fire and Forget at Textual 00:25:39 – Learning Rust Made Me a Better Python Developer 00:34:06 – Video Course Spotlight 00:35:49 – Signals: State Management for Python Developers 00:40:34 – great-docs: Documentation Site Generator for Python Package 00:42:32 – pywho: Explain Your Python Environment and Detect Shadows 00:44:01 – Thanks and goodbye News: Python 3.15.0a8, 3.14.4 and 3.13.13 Released Django Security Releases: 6.0.4, 5.2.13, and 4.2.30 DjangoCon Europe 2027 Call for Organizers <a hr
What are the current techniques being employed to improve the performance of LLM-based systems? How is the industry shifting from post-training towards context engineering and multi-agent orchestration? This week on the show, Jodie Burchell, data scientist and Python Advocacy Team Lead at JetBrains, returns to discuss the current AI coding landscape. In our last conversation, Jodie covered how LLMs were approaching the limits of scaling laws. This time, we recap last year’s big focus on reasoning models and a post-training method called “reinforcement learning from verifiable rewards” (RLVR). We also cover test-time compute, where models spend more time reasoning through steps and considering multiple approaches to solve a problem. We touch on Agent Context Protocol (ACP), agent orchestration layers, and context engineering. We also share some concerns about the hype cycle, maintaining all that code being generated, and running local models. Course Spotlight: Vector Databases and Embeddings With ChromaDB Learn how to use ChromaDB, an open-source vector database, to store embeddings and give context to large language models in Python. Topics: 00:00:00 – Introduction 00:02:02 – Build a Language-Learning Agent course 00:02:55 – Update on the past six months of LLMs 00:05:32 – Reinforcement Learning From Verifiable Rewards 00:07:32 – Test Time Compute 00:08:36 – 2025 and the rise of agents 00:14:24 – Benchmarks shifting 00:15:23 – Andrew Karpathy and jagged intelligence 00:19:16 – Not evolving or growing animals but summoning ghosts 00:23:34 – Diminishing gains in newer models 00:24:23 – Context Engineering 00:35:01 – Multi-agent systems and diversity of models 00:36:56 – Video Course Spotlight 00:38:34 – Current generation of coding agents 00:44:00 – Fast vs deep reasoning 00:45:18 – Agent Context Protocol 00:50:19 – Working through the hype cycle 00:55:43 – Open-source contribution pollution 00:57:21 – Local models 00:58:36 – Rick Beato comparing how the music industry failed 01:08:41 – LLMs are an amazing development 01:11:33 – Keynote talk on AI summers and winters 01:12:45 – PyCon US and EuroPython 01:14:11 – Thanks and goodbye Show Links: AI Agent Course - Build a Language‑Learning Agent with OpenAI, LangGraph, Ollama & MCP - YouTube Episode #264: Large Language Models on the Edge of the Scaling Laws Reinforcement Learning with Verifiabl
What goes into managing a major project? What techniques can you employ for a project that’s in crisis? Christopher Trudeau is back on the show this week with another batch of PyCoder’s Weekly articles and projects. We discuss an article by Ben Kuhn titled, “How I’ve Run Major Projects.” We dig into the skills required for project management, and provide advice for when projects fall into crisis. We cover how the field’s terminology has been updated. However, the time investment, sober communication, and planning still remain at the core of successful projects. We also share other articles and projects from the Python community, including recent releases and announcements, exploring an IDE for data science development, using Python set comprehensions, making friendly classes, using atexit for cleanup, a high-performance caching library for Python written in Rust, and a curated list of awesome marimo things. This episode is sponsored by PropelAuth. Video Course Spotlight: Using Data Classes in Python When using data classes, you don’t have to write boilerplate code to get proper initialization, representation, and comparisons for your objects. Topics: 00:00:00 – Introduction 00:02:15 – Starlette 1.0 Released 00:03:08 – PyOhio 2026 Call for Proposals Now Open! 00:03:42 – Spyder: Your IDE for Data Science Development in Python 00:11:04 – Python Set Comprehensions: How and When to Use Them 00:14:40 – Sponsor: PropelAuth 00:15:17 – Making Friendly Classes 00:23:51 – How to Use atexit for Cleanup 00:25:49 – Video Course Spotlight 00:27:14 – How I’ve run major projects 00:47:47 – awesome-marimo: Curated List of Awesome Marimo Things 00:51:37 – moka-py: A high performance caching library for Python written in Rust 00:53:24 – Thanks and goodbye News: Starlette 1.0 Released PyOhio 2026 Call for Proposals Now Open! Show Links: Spyder: Your IDE for Data Science Development in Python – Learn how to use the Spyder IDE, a Python code editor built for scientists, engineers, and data analysts working with data-heavy workflows. Python Set Comprehensions: How and When to Use Them – In this tutorial, you’ll learn how to write set comprehensions in Python. You’ll also explore the most common use cases for set comprehensions and learn about some bad practices that you should avoid when using them in your code. <a href="https://www.
With the mountains of Python code that it’s possible to generate now, how’s your code review going? What are the limitations of human review, and where does machine review excel? Christopher Trudeau is back on the show this week with another batch of PyCoder’s Weekly articles and projects. We discuss a recent piece from Glyph titled, “What Is Code Review For?” We dig into the limitations of human review and where software tools like linters and formatters can help you. We cover the challenges developers and open-source maintainers face with the rise of LLM-generated code and pull requests. We also share other articles and projects from the Python community, including a collection of recent releases and announcements, creating publication-ready tables from DataFrames, choosing the right Python task queue, mastering context managers, statically checking Python dicts for completeness, an open-source inventory management system, and an ORM-based backend for Django tasks. This episode is sponsored by SerpApi. Spotlight: Intermediate Python Deep Dive: Write Better Python and Build Better Systems Master advanced patterns, OOP, and Pythonic design in eight weeks–with live expert guidance. Topics: 00:00:00 – Introduction 00:02:32 – DuckDB 1.5.0 Released 00:03:11 – PyPy v7.3.21 Released 00:03:30 – Sunsetting Jazzband 00:04:08 – Thoughts on OpenAI acquiring Astral and uv/ruff/ty 00:05:19 – Great Tables: Publication-Ready Tables From DataFrames 00:10:24 – Comparing PDF Table Extraction Tools 00:11:53 – Sponsor: SerpApi 00:12:55 – Choosing the Right Python Task Queue 00:16:57 – Mastering Python Context Managers 00:22:40 – Statically Checking Python Dicts for Completeness 00:25:00 – Spotlight: Intermediate Python Deep Dive 00:26:16 – What Is Code Review For? 00:43:48 – usdatasets: Installable Collection of Datasets on USA 00:45:22 – InvenTree: OSS Inventory Management System 00:48:01 – django-tasks-db: An ORM-based Backend for Django Tasks 00:49:41 – Thanks and goodbye News: DuckDB 1.5.0 Released PyPy v7.3.21 Released Sunsetting Jazzband Thoughts on OpenAI acquiring Astral and uv/ruff/ty OpenAI Acquiring Astral: A 4th Option for Fun - Will Vincent Show Links: <a href="https://codecut.ai/great-table
How do you quickly get an understanding of what’s inside a new set of data? How can you share an exploratory data analysis with your team? Christopher Trudeau is back on the show this week with another batch of PyCoder’s Weekly articles and projects. We discuss a recent Real Python tutorial about YData Profiling. This library lets you quickly generate an exploratory data analysis (EDA) report with a few lines of code. The report provides column-level analysis, visualizations, and summary statistics that can be exported to HTML to share with others. We cover an article by Trey Hunner about building your own Python comprehensions. Python includes list, dictionary, and set comprehensions. But what if you want to create ones for other collections, such as a tuple, frozenset, or a Counter? We also share other articles and projects from the Python community, including a collection of recent releases and PEPs, using the Django ORM as a standalone module, a history of attempts to eliminate programmers, a discussion of bad managers, a modern Python project template, and a CLI to summarize code size by language. This episode is sponsored by AgentField. Course Spotlight: Understanding Python List Comprehensions Python list comprehensions make it easy to create lists while performing sophisticated filtering, mapping, and conditional logic on their members. In this course, you’ll learn when to use list comprehensions in Python and how to create them effectively. Topics: 00:00:00 – Introduction 00:02:46 – Python 3.12.13, 3.11.15, 3.10.20 and Python 3.15.0 alpha 7 Released 00:03:25 – Django Security Releases Issued: 6.0.3, 5.2.12, and 4.2.29 00:03:39 – PEP 825: Wheel Variants: Package Format 00:04:20 – PEP 827: Type Manipulation 00:05:11 – Automate Python Data Analysis With YData Profiling 00:11:31 – Django ORM Standalone: Querying an Existing Database 00:16:43 – Sponsor: AgentField 00:17:42 – Invent Your Own Comprehensions in Python 00:22:34 – A History of Attempts to Eliminate Programmers 00:28:51 – Video Course Spotlight 00:30:03 – Three Bad Managers 00:50:42 – python_template: Modern Python Project Template 00:53:38 – tallyman: CLI to Summarize Code Size by Language 00:55:06 – Thanks and goodbye News: Python 3.12.13, 3.11.15 and 3.10.20 Released Python 3.15.0 alpha 7 - Python Insider Django Security Releases Issued: 6.0.3, 5.2.12, and 4.2.29 <a href="ht
What goes into creating the tutorials you read at Real Python? What are the steps in the editorial process, and who are the people behind the scenes? This week on the show, Real Python team members Martin Breuss, Brenda Weleschuk, and Philipp Acsany join us to discuss topic curation, review stages, and quality assurance. We start by sharing the multiple roles our panel of guests perform across the editorial process. They describe the phases a tutorial passes through, including layers of reviews, from technical accuracy to educational effectiveness. We also discuss our editorial independence, external authors, and the continuous feedback loop with our readers. This episode is sponsored by AgentField. Spotlight: Claude Code Course: Stop Copy-Pasting From ChatGPT Most Python developers use AI as fancy autocomplete. This 2-day course teaches you to build entire projects with an AI agent inside your codebase. Topics: 00:00:00 – Introduction 00:03:33 – Martin’s role at Real Python 00:04:35 – Philipp’s role at Real Python 00:05:27 – Brenda’s role at Real Python 00:06:49 – Internal core team and external contributors 00:13:46 – Selecting topics and subjects 00:21:43 – Outlining and review 00:28:26 – Sponsor: AgentField 00:29:27 – Writing drafts 00:34:03 – Changes to our style and format 00:37:32 – Technical review and using Git 00:43:53 – Didactic review 00:52:59 – Language edit 00:57:16 – Spotlight: Claude Code Live Course 00:59:00 – Final QA 01:01:00 – Scheduling 01:03:36 – Reader feedback and updating existing tutorials 01:06:04 – Using modern tools 01:13:59 – Shining the light on contributors 01:16:26 – Independence and editorial choices 01:19:10 – Thanks and goodbye Show Links: Editorial Guidelines – Real Python Meet Our Team About Martin Breuss About Philipp Acsany About Brenda Weleschuk Create Your Learning Plan Python Learning Paths Reference – Real Python Join the Real Python Team – Real Python Cohort-Based Live Python Courses – Real Python</l
Do you have complex logic and unpredictable dependencies that make it hard to write reliable tests? How can you use Python’s mock object library to improve your tests? Christopher Trudeau is back on the show this week with another batch of PyCoder’s Weekly articles and projects. Christopher shares details about his recent Real Python video course, “Improving Your Tests With the Python Mock Object Library.” He describes how mocking in Python with unittest.mock allows you to simulate complex logic or unpredictable dependencies, such as responses from external services. He covers how the Mock class can imitate real objects, and the patch() function lets you temporarily substitute mocks for real objects in your tests. We also share other articles and projects from the Python community, including a collection of recent releases, using open source AI at Wagtail, updates from the inaugural PyPI Support Specialist, a lightweight OS for microcontrollers in MicroPythonOS, why match-case is not necessarily switch-case for Python, thinking about time in programming, a TUI-based presentation tool for the terminal, and a tool to check Django projects for dead code. This episode is sponsored by AgentField. Course Spotlight: Improving Your Tests With the Python Mock Object Library Master Python testing with unittest.mock. Create mock objects to tame complex logic and unpredictable dependencies. Topics: 00:00:00 – Introduction 00:02:53 – Python 3.14.3 and 3.13.12 Released 00:03:15 – Django Security Releases Issued: 6.0.2, 5.2.11, and 4.2.28 00:03:36 – Open Source AI We Use to Work on Wagtail 00:07:27 – Dispatch From the Inaugural PyPI Support Specialist 00:09:01 – MicroPythonOS Graphical Operating System 00:11:27 – Sponsor: AgentField 00:12:21 – Improving Your Tests With the Python Mock Object Library 00:17:30 – Need Switch-Case in Python? It’s Not Match-Case! 00:26:03 – Video Course Spotlight 00:27:38 – How to Think About Time in Programming 00:31:58 – Prezo: A TUI-based Presentation Tool for the Terminal 00:34:52 – django-deadcode: Tracks URLs, Templates, and Django Views 00:38:09 – Thanks and goodbye News: Python 3.14.3 and 3.13.12 Released Python 3.15.0 Alpha 6 Released Django Security Releases Issued: 6.0.2, 5.2.11, and 4.2.28 Show Links: <a href="https://wagtail.org/
How can you move your MCP tools beyond plain text? How do you add interactive UI components directly inside chat conversations? This week on the show, Den Delimarsky from Anthropic joins us to discuss MCP Apps and interactive UIs in MCP. Den is a member of the MCP Steering Committee and a Core Maintainer focusing on auth and security. He explains how MCP acts as a universal bridge, providing AI models with the real-time context they need. He shares insights on working with MCP Apps and moving beyond simple text to render web-based user interfaces directly in your chat window. Den previously worked on GitHub Spec Kit, and we discuss taking advantage of spec-driven development and how to use “Skills” to remove the toil from your workflow. We also talk briefly about his podcast and his conversations about navigating careers in technology. This episode is sponsored by AgentField. Course Spotlight: Getting Started With Google Gemini CLI Learn how to use Gemini CLI to bring Google’s AI-powered coding assistance into your terminal for faster code analysis, debugging, and fixes. Topics: 00:00:00 – Introduction 00:02:17 – Den’s Background 00:02:53 – The Work Item Podcast 00:06:55 – Career Move to Anthropic 00:10:24 – What is Model Context Protocol (MCP)? 00:11:39 – MCP UI and MCP Apps 00:16:17 – Sponsor: AgentField 00:17:13 – Structuring MCP Tools 00:24:52 – Cloudflared & tunneling 00:29:59 – Reverse engineering with Ghidra MCP 00:35:43 – Connecting MCP tools 00:43:10 – Video Course Spotlight 00:44:23 – Spec-Driven Development & Context Management 00:57:23 – Leveraging Skills for Model Guidance 01:02:51 – What are you excited about in the world of Python? 01:03:42 – What do you want to learn next? 01:07:14 – How can people follow your work online? 01:07:48 – Thanks and goodbye Show Links: The Work Item Podcast Den Delimarsky - Principal Product Engineer, Tinkerer, Nerd, Trail Explorer Hello, Anthropic · Den Delimarsky What is the Model Context Protocol (MCP)? - Model Context Protocol MCP Apps And Interactive UIs In MCP Clients - Den Delimarsky ext-apps: Official repo for spec & SDK of MCP Apps protocol MCP Will Never Be The Same - Render UI With MC
Would you like to learn how to work with LLMs locally on your own computer? How do you integrate your Python projects with a local model? Christopher Trudeau is back on the show this week with another batch of PyCoder’s Weekly articles and projects. We cover a recent Real Python step-by-step tutorial on installing local LLMs with Ollama and connecting them to Python. It begins by outlining the advantages this strategy offers, including reducing costs, improving privacy, and enabling offline-capable AI-powered apps. We talk through the steps of setting things up, generating text and code, and calling tools. We also share other articles and projects from the Python community, including the 2026 Python Developers Survey, creating callable instances with Python’s .__call__(), creating maps and projections with GeoPandas, ending 15 years of subprocess polling, discussing backseat software, a retry library that classifies errors, and a peer-to-peer encrypted CLI chat project. This episode is sponsored by Honeybadger. Course Spotlight: Tips for Using the AI Coding Editor Cursor Learn Cursor fast: Use AI-powered coding with agents, project-aware chat, and inline edits to supercharge your VS Code workflow. Topics: 00:00:00 – Introduction 00:02:37 – Take the Python Developers Survey 2026 00:03:07 – How to Integrate Local LLMs With Ollama and Python 00:08:15 – Sponsor: Honeybadger 00:09:01 – Create Callable Instances With Python’s .__call__() 00:12:13 – GeoPandas Basics: Maps, Projections, and Spatial Joins 00:16:03 – Ending 15 Years of subprocess Polling 00:18:57 – Video Course Spotlight 00:20:23 – Backseat Software – Mike Swanson 00:39:06 – cmd-chat: Peer-to-Peer Encrypted CLI Chat 00:41:58 – redress: A Retry Library That Classifies Errors 00:43:56 – Thanks and goodbye News: Take the Python Developers Survey 2026 The State of Python 2025: Trends and Survey Insights - The PyCharm Blog Topics: How to Integrate Local LLMs With Ollama and Python – Learn how to integrate your Python projects with local models (LLMs) using Ollama for enhanced privacy and cost efficiency. Create Callable Instances With Python’s .__call__() – Learn about Python callables, including what “callable” means, how to use dunder call, and how to
What are ways to improve how you’re using GitHub? How can you collaborate more effectively and improve your technical writing? This week on the show, Adam Johnson is back to talk about his new book, “Boost Your GitHub DX: Tame the Octocat and Elevate Your Productivity”. Adam has written a series of books about improving developer experience (DX). In this episode, we dig into his newest book, which focuses on GitHub and how to get the most out of its features—from settings and keyboard shortcuts to hidden tools, CLI commands, and the command palette. Adam also shares insights on the best ways to communicate on the platform. We discuss the nuances of GitHub-Flavored Markdown (GFM), best practices for effective communication in open source, the importance of maintaining civility in issue reports, and why he included a glossary of acronyms to help developers decode common shorthand like LGTM and FTFY. This episode is sponsored by Honeybadger. Course Spotlight: Introduction to Git and GitHub for Python Developers What is Git, what is GitHub, and what’s the difference? Learn the basics of Git and GitHub from the perspective of a Pythonista in this step-by-step video course. Topics: 00:00:00 – Introduction 00:02:20 – Why the focus on developer experience? 00:03:41 – Process of writing the book 00:06:26 – Filling in the gaps of knowledge 00:11:52 – GitHub-Flavored Markdown 00:16:00 – Sponsor: Honeybadger 00:16:47 – Acronym glossary 00:25:18 – GitHub command palette 00:28:35 – What questions did you want to answer? 00:29:42 – Whether to cover Copilot or not 00:36:14 – Video Course Spotlight 00:37:50 – Advice on working with coding agents 00:40:46 – Defining the scope 00:48:07 – GitHub pages and codespaces 00:50:46 – Finding the hidden features 00:51:53 – Data-oriented Django series 00:53:59 – How to find the book 00:54:51 – What are you excited about in the world of Python? 00:57:27 – What do you want to learn next? 00:58:00 – How can people follow your work online? 00:58:22 – Thanks and goodbye Show Links: Adam Johnson’s Website Boost Your GitHub DX Boost Your Git DX GitHub-Flavored Markdown (GFM) Spec GitHub CLI (gh) GitHub Command Palette - GitHub Docs <a
How do you create automated tests to check your code for degraded performance as data sizes increase? What are the new features in pandas 3.0? Christopher Trudeau is back on the show this week with another batch of PyCoder’s Weekly articles and projects. Christopher digs into an article about building tests to make sure your software is fast, or at least doesn’t get slower as it scales. The piece focuses on testing Big-O scaling and its implications for algorithms. We also discuss another article covering the top features in pandas 3.0, including the new dedicated string dtype, a cleaner way to perform column-based operations, and more predictable default copying behavior with Copy-on-Write. We share several other articles and projects from the Python community, including a collection of recent releases and PEPs, a profiler for targeting individual functions, a quiz to test your Django knowledge, when to use each of the eight versions of UUID, the hard-to-swallow truths about being a software engineer, an offline reverse geocoding library, and a library for auto-generating CLIs from any Python object. Our live Python cohorts start February 2, and we’re down to the last few seats. There are two tracks: Python for Beginners or Intermediate Deep Dive. Eight weeks of live instruction, small groups, and real accountability. Grab your seat at realpython.com/live. This episode is sponsored by Honeybadger. Course Spotlight: Intro to Object-Oriented Programming (OOP) in Python Learn Python OOP fundamentals fast: master classes, objects, and constructors with hands-on lessons in this beginner-friendly video course. Topics: 00:00:00 – Introduction 00:03:28 – Python 3.15.0 Alpha 4 Released 00:03:50 – Django Bugfix Release: 5.2.10, 6.0.1 00:04:22 – PEP 819: JSON Package Metadata 00:04:41 – PEP 820: PySlot: Unified Slot System for the C API 00:04:59 – PEP 822: Dedented Multiline String (d-String) 00:06:04 – What’s New in pandas 3.0 00:13:11 – pandas 3.0.0 documentation 00:13:44 – Sponsor: Honeybadger 00:14:30 – Unit Testing Your Code’s Performance 00:17:51 – Introducing tprof, a Targeting Profiler 00:23:03 – Video Course Spotlight 00:24:31 – Django Quiz 2025 00:24:56 – 8 Versions of UUID and When to Use Them 00:29:17 – 10 hard-to-swallow truths they won’t tell you about software engineer job 00:44:02 – gazetteer: Offline Reverse Geocoding Library 00:46:13 – python-fire: A library for automatically generating
If you haven’t visited the Real Python website lately, then it’s time to check out a great batch of updates on realpython.com! Dan Bader returns to the show this week to discuss improvements to the site and more ways to learn Python. Dan details changes to the website, including our Python reference area. This tool provides a quick reference for both beginners and experienced developers looking for concise definitions and refreshers on Python’s features. We discuss the expansion of our live courses to include a beginner course and an intermediate deep dive. Dan also shares how we’re growing the team and highlights the ongoing commitment to our editorial standards. Spotlight: Python for Beginners: Code With Confidence Learn the fundamentals of Python step-by-step in a friendly, interactive cohort. Build confidence writing code and understand the “why” behind Python’s core concepts. Topics: 00:00:00 – Introduction 00:02:54 – Real Python Reference 00:08:31 – Integration with search 00:13:51 – Sponsor: Honeybadger 00:14:38 – Live courses 00:23:20 – Podcast visibility and interconnection 00:32:42 – Spotlight 00:33:35 – Editorial standards and goals for 2026 00:36:28 – Building the team 00:37:52 – Real Python for teams 00:40:56 – Feedback and listening to users 00:43:23 – Thanks and goodbye Show Links: Reference – Real Python Cohort-Based Live Python Courses – Real Python Episode #246: Learning Intermediate Python With a Deep Dive Course Episode #279: Coding Python With Confidence: Beginners Live Course Participants The Real Python Podcast – Real Python Python Learning Paths – Real Python Editorial Guidelines – Real Python Meet Our Team – Real Python Team Memberships – Real Python Feedback – Real Python Level up your Python skills with our expert-led courses: Python Decorators 101 Python Basics: Code Your First Python Program <a href="https://realpython.com/c
How often have you heard about the speed of Python? What’s actually being measured, where are the bottlenecks—development time or run time—and which matters more for productivity? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher shares an article titled “The Uselessness of ‘Fast’ and ‘Slow’ in Programming.” It digs into how the different aspects of software performance span a wide range of orders of magnitude, and how developers can obsess over irrelevant performance details, often losing more time working in suboptimal environments than building what they need with tools they already know. We also discuss an article about why uv is fast, which explains how most of its speed comes from engineering decisions rather than just being written in Rust. We then share several other articles and projects from the Python community, including a roundup of 2025 year-end lists, an explanation of why Python’s deepcopy can be so slow, serving a website with FastAPI using Jinja2, Python numbers every programmer should know, a discussion of spec-driven development and whether waterfall is back, a tool to detect whether a PDF has a bad redaction, and a CLI for measuring HTTP request phases. Course Spotlight: Jinja Templating With Jinja, you can build rich templates that power the front end of your web applications. But you can also use Jinja without a web framework running in the background. Whenever you need to generate text files with dynamic content, Jinja provides a flexible and powerful solution. Topics: 00:00:00 – Introduction 00:02:53 – Top Python Libraries of 2025 00:04:43 – 2025 Python Year in Review 00:04:58 – PyPI in 2025: A Year in Review 00:05:36 – Join in the PSF Year-End Fundraiser & Membership Drive! 00:06:10 – How uv Got So Fast 00:12:29 – Why Python’s deepcopy Can Be So Slow 00:17:03 – Serve a Website With FastAPI Using HTML and Jinja2 00:23:19 – The Uselessness of “Fast” and “Slow” in Programming 00:27:06 – Python Numbers Every Programmer Should Know 00:28:17 – Video Course Spotlight 00:29:43 – Spec-Driven Development: The Waterfall Strikes Back 00:49:21 – x-ray: A Tool to Detect Whether a PDF Has a Bad Redaction 00:52:20 – httptap: CLI Measuring HTTP Request Phases 00:54:19 – Thanks and goodbye 2025 Top List Roundup Top Python Libraries of 2025 – Explore Tryolabs’ 11th annual Top Python Libraries roundup, featuring two curated Top 10 lists: one for General Use and one for AI/ML/Data tools. <a href="http
Are you looking for that solid foundation to begin your Python journey? Would the accountability of scheduled group classes help you get through the basics and start building something? This week, two members of the Python for Beginners live course discuss their experiences. We speak with course instructor Stephen Gruppetta about building a course where the participants start using their knowledge as soon as possible. He describes how he’s evolved his teaching techniques over years of working with beginners. We explore the advantages of having a curated collection of written tutorials, video courses, and a forum for asking those nagging questions. We also speak with students Louis and Andrew about their experiences learning Python through the course. They discuss learning how to apply their new skills, employing them in their careers, and building confidence to continue their Python learning journey. Spotlight: Python for Beginners: Code With Confidence Learn the fundamentals of Python step-by-step in a friendly, interactive cohort. Build confidence writing code and understand the “why” behind Python’s core concepts. Topics: 00:00:00 – Introduction 00:01:40 – Instructor Stephen Gruppetta 00:02:42 – Designing the course 00:09:01 – Introducing mini-projects early 00:13:22 – How have the questions changed for Python beginners? 00:20:23 – Taking advantage of Real Python resources 00:24:07 – More courses for 2026 00:25:40 – Spotlight: Python for Beginners 00:26:39 – Python for Beginners participants 00:27:50 – Louis’ background in programming 00:30:46 – Andrew’s background in programming 00:37:43 – Starting to use the knowledge with mini-projects 00:42:52 – What were challenges with the language? 00:54:15 – Working on the larger final project 00:59:45 – What advantages did the cohort-style course provide? 01:03:56 – Are you ready for that blank page? 01:12:00 – How do you see yourself using these new skills? 01:17:39 – Thanks and goodbye Show Links: Python for Beginners: Code With Confidence – Real Python Episode #246: Learning Intermediate Python With a Deep Dive Course Intermediate Python Deep Dive Course – Real Python Cohort-Based Live Python Courses – Real Python MI6 chief: We’ll be as fluent in Python as we are in Russian - The Register</li
PyCoder’s Weekly included over 1,500 links to articles, blog posts, tutorials, and projects in 2025. Christopher Trudeau is back on the show this week to help wrap up everything by sharing some highlights and uncovering a few hidden gems from the pile. We share the top links explored by PyCoder’s readers. We also dig into trends across all the articles and stories this year. We highlight a few gems that we didn’t cover on the show and a couple that explore the overall themes of the year. We hope you enjoy this review! We look forward to bringing you an upcoming year full of great Python news, articles, topics, and projects. Course Spotlight: Using Functional Programming in Python Boost your Python skills with a quick dive into functional programming: what it is, how Python supports it, and why it matters. Topics: 00:00:00 – Introduction 00:01:52 – Django 6.0 released 00:02:58 – The Inner Workings of Python Dataclasses Explained 00:03:40 – Going Beyond requirements.txt With pylock.toml and PEP 751 00:04:58 – Django vs. FastAPI, An Honest Comparison 00:05:46 – How to Use Loguru for Simpler Python Logging 00:06:47 – Narwhals: Unified DataFrame Functions 00:08:32 – Observations and statistics for the year of articles 00:13:23 – Data Validation Libraries for Polars (2025 Edition) 00:18:53 – Video Course Spotlight 00:20:25 – Create Temporary Files and Directories in Unittest 00:22:27 – Capture Stdout and Stderr in Unittest 00:24:59 – I don’t like NumPy 00:26:34 – Python performance myths and fairy tales 00:31:05 – Congratulations on making through 2025! News: Django 6.0 released - Django Weblog Top PyCoders Links 2025: The Inner Workings of Python Dataclasses Explained – Discover how Python dataclasses work internally! Learn how to use __annotations__ and exec() to make our own dataclass decorator! Episode #249: Going Beyond requirements.txt With pylock.toml and PEP 751 – What is the best way to record the Python dependencies for the reproducibility of your projects? What advantages will lock files provide for those projects? This week on the show, we welcome back Python Core Developer Brett Cannon to discuss his journey to bring PEP 751 and the pylock.toml file format to the community. Django vs. FastAPI, An Honest Comparison – David has worked
What are the advantages of spec-driven development compared to vibe coding with an LLM? Are these recent trends a move toward declarative programming? This week on the show, Marc Brooker, VP and Distinguished Engineer at AWS, joins us to discuss specification-driven development and Kiro. Marc describes the process of developing an application by writing specifications, which outline what a program should do and what needs it should meet. We dig into a bit of computer science history to explore the differences between declarative and imperative programming. We also discuss Kiro, a new integrated development environment from Amazon, built around turning prompts into structured requirements. We examine the various types of documents used to specify tasks, requirements, design, and steering. Real Python Resource Spotlight: Python Coding With AI - Learning Path Explore tools and workflows for AI in Python: coding partners, prompt engineering, RAG, ChromaDB, FastAPI chatbots, and MCP integrations. Stay current and start today. Topics: 00:00:00 – Introduction 00:02:41 – How did you get involved in open source? 00:07:23 – How would you describe spec-driven development? 00:10:49 – Balancing the desire to start coding with defining the project 00:13:06 – What does this documentation look like? 00:18:27 – Declarative vs imperative programming 00:24:13 – Infrastructure as part of the design 00:27:03 – Getting started with a small project 00:29:05 – Committing the spec files along with the code 00:31:08 – What is steering? 00:34:17 – How to get better at distilling specifications? 00:38:59 – What are anti-patterns in spec-driven development? 00:41:08 – Should you avoid third-party libraries? 00:43:16 – Real Python Resource Spotlight 00:44:39 – Getting started with Kiro 00:51:00 – Neuro-symbolic AI 00:55:41 – What are you excited about in the world of Python? 00:58:36 – What do you want to learn next? 01:00:18 – How can people follow your work online? 01:00:57 – Thanks and goodbye Show Links: Kiro and the future of AI spec-driven software development - Kiro Marc Brooker’s Blog - Marc’s Blog Kiro: The AI IDE for prototype to production Beyond Prompts: The Future of AI-Assisted Development | Marc Brooker - YouTube Understanding Spec-Driven-Developmen
What are the recent advances in the field of quantum computing and high-performance computing? And what Python tools can you use to develop programs that run on quantum computers? This week on the show, Real Python author Negar Vahid discusses her tutorial, “Quantum Computing Basics With Qiskit.” Negar digs into the fundamentals of quantum computers, describing qubits, superposition, entanglement, and interference. We discuss the concept of quantum advantage and the fields of exploration where quantum computing promises speed-ups over classical computers. She also shares tools for designing quantum circuits with Python. Course Spotlight: Profiling Performance in Python Learn to profile Python programs with built-in and popular third-party tools, and turn performance insights into faster code. Topics: 00:00:00 – Introduction 00:01:31 – Writing for Real Python 00:02:37 – What drew you to quantum computing? 00:04:27 – What is quantum advantage? 00:07:10 – Quantum computing basics article 00:09:32 – Linear algebra 00:10:32 – What is a quantum computer? 00:14:52 – Superconducting devices 00:17:29 – Looking for ways to advance computing 00:19:17 – Superposition of qubits and entanglement 00:22:43 – Video Course Spotlight 00:24:27 – Potential areas of research 00:26:45 – IBM quantum computing & Qiskit 00:29:43 – Describing superposition as a spinning coin 00:30:41 – Other types of quantum computers 00:32:08 – Qiskit Global Summer School 2025 00:32:48 – Qiskit Advocate 00:33:49 – What do you see in the near future? 00:37:42 – What are the type of HPCs? 00:40:05 – Additional resources to learn more 00:43:32 – Answering to skeptics 00:47:51 – What are you excited about in the world of Python? 00:48:24 – What do you want to learn next? 00:49:04 – What’s the best way to follow your work online? 00:49:25 – Thanks and goodbye Show Links: Quantum Computing Basics With Qiskit Quantum mechanics - Wikipedia Qubit - Wikipedia Quantum superposition - Wikipedia Quantum entanglement - Wikipedia Quantum supremacy - Wikipedia Linear Algebra in Python: Matrix Inverses and Least Square
What are the steps to get started building a FastAPI application? What are the different types of concurrency available in Python? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We discuss a recent Real Python step-by-step tutorial about programming a FastAPI example application. You practice installing FastAPI, building your first endpoints, adding path and query parameters, and validating endpoints using Pydantic. Christopher covers updates to his Real Python video course about concurrency in Python. The course digs into what concurrency means in Python and why you might want to incorporate it in your code. He describes the different methods and demonstrates how to approach coding using threading, asyncio, and multiprocessing. We also share several other articles and projects from the Python community, including a news roundup, the PSF fundraiser campaign for 2025, where Python stores attributes, performance hacks for faster Python code, a project to transform functions into a web interface, and a Python disk-backed cache. Course Spotlight: Python Descriptors Learn what Python descriptors are, how the descriptor protocol works, and when descriptors are useful, with practical, hands-on examples. Topics: 00:00:00 – Introduction 00:02:18 – Django Security Release 00:02:46 – Django Is Now a CVE Numbering Authority (CNA) 00:03:53 – An Annual Release Cycle for Django 00:04:12 – PEP 810: Explicit Lazy Imports (Accepted) 00:04:27 – PSF Board Office Hour Sessions for 2026 00:05:42 – PyCon US 2026: Call for Proposals Open 00:06:15 – PSF Fundraiser campaign for 2025 00:10:12 – A Close Look at a FastAPI Example Application 00:16:36 – Speed Up Python With Concurrency 00:21:08 – __dict__: Where Python Stores Attributes 00:25:59 – Video Course Spotlight 00:27:17 – 10 Smart Performance Hacks for Faster Python Code 00:29:56 – FuncToWeb: Transform Python Functions Into a Web Interface 00:32:48 – python-diskcache: Python Disk-Backed Cache 00:34:07 – Thanks and goodbye News: Django Security Release: 5.2.8, 5.1.14, and 4.2.26 Django Is Now a CVE Numbering Authority (CNA) An Annual Release Cycle for Django - Buttondown PEP 810: Explicit Lazy Imports (Accepted) <a href="https://p
How do you prepare your Python data science projects for production? What are the essential tools and techniques to make your code reproducible, organized, and testable? This week on the show, Khuyen Tran from CodeCut discusses her new book, “Production Ready Data Science.” Khuyen shares how she got into blogging and what motivated her to write a book. She shares tips on how to create repeatable workflows. We delve into modern Python tools that will help you bring your projects to production. Course Spotlight: Python Project Management With uv Create and manage Python projects with uv, a blazing-fast package and project manager built in Rust. Learn setup, workflow, and best practices. Topics: 00:00:00 – Introduction 00:01:27 – Recent article about top six visualization libraries 00:02:19 – How long have you been blogging? 00:03:55 – What do you cover in your book? 00:07:07 – Potential issues with notebooks 00:11:40 – Structuring data science projects 00:15:12 – Reproducibility and sharing notebooks 00:20:33 – Using Polars 00:26:03 – Advantages of marimo notebooks 00:34:21 – Video Course Spotlight 00:35:44 – Shipping a project in data science 00:42:10 – Advice on testing 00:49:50 – Creating importable parameter values 00:53:55 – Seeing the commit diff of a notebook 00:55:12 – What are you excited about in the world of Python? 00:56:04 – What do you want to learn next? 00:56:52 – What’s the best way to follow your work online? 00:58:28 – Thanks and goodbye Show Links: Production Ready Data Science by Khuyen Tran - CodeCut CodeCut Top 6 Python Libraries for Visualization: Which One to Use? - CodeCut Ruff uv Cookiecutter marimo - a next-generation Python notebook Episode #230: marimo: Reactive Notebooks and Deployable Web Apps in Python Polars — DataFrames for the new era Episode #260: Harnessing the Power of Python Polars Narwhals Episode #224: Narwhals: Expanding DataFrame Compatibility Between Lib
What are techniques for writing maintainable Python code? How do you make your Python more readable and easier to refactor? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We discuss a recent article about writing code that is easy to maintain. We cover writing comments, creating meaningful names, avoiding magic numbers, and preparing code for your future self. We also share several other articles and projects from the Python community, including release news, modifying the REPL, differences between Polars and pandas, generating realistic test data in Python, investigating quasars with Polars and marimo, creating simple meta tags for Django objects, and a GUI toolkit for grids of buttons. Course Spotlight: Modern Python Linting With Ruff Ruff is a blazing-fast, modern Python linter with a simple interface that can replace Pylint, isort, and Black—and it’s rapidly becoming popular. Topics: 00:00:00 – Introduction 00:01:53 – PyTorch 2.9 Release 00:02:38 – Django 6.0 Beta 1 00:03:05 – Handy Python REPL Modifications 00:11:06 – Polars vs pandas: What’s the Difference? 00:17:55 – Faker: Generate Realistic Test Data in Python 00:22:06 – Video Course Spotlight 00:23:35 – Investigating Quasars With Polars and marimo 00:27:37 – Writing Maintainable Code 00:49:48 – buttonpad: GUI Toolkit for Grids of Buttons 00:52:10 – django-snakeoil: Simple Meta Tags for Django Objects 00:54:07 – Thanks and goodbye News: PyTorch 2.9 Release Django 6.0 Beta 1 Show Links: Handy Python REPL Modifications – Trey uses the the Python REPL a lot. In this post he shows you his favorite customizations to make the REPL even better. Polars vs pandas: What’s the Difference? – Discover the key differences in Polars vs pandas to help you choose the right Python library for faster, more efficient data analysis. Faker: Generate Realistic Test Data in Python – If you want to generate test data with specific types (bool, float, text, integers) and realistic characteristics (names, addresses, colors, emails, phone numbers, locations), Faker can help you do that. Investigating Quasars With Polars and marimo
How do you deploy your Python application without getting locked into an expensive cloud-based service? This week on the show, Michael Kennedy from the Talk Python podcast returns to discuss his new book, “Talk Python in Production.” Michael runs multiple Python applications online, including a training site, blog, and two podcasts. While searching for the best solution for hosting his business, he documented his findings in a book. We talk about containerizing Python applications, generating static sites, preparing for traffic spikes, and avoiding cloud service lock-in. Course Spotlight: Speed Up Python With Concurrency Learn what concurrency means in Python and why you might want to use it. You’ll see a simple, non-concurrent approach and then look into why you’d want threading, asyncio, or multiprocessing. Topics: 00:00:00 – Introduction 00:01:28 – Welcome back! 00:03:05 – Is this your first book? 00:04:13 – A book that reads like a blog 00:06:15 – Incentives to keep you locked in 00:09:20 – Following the journey of the Talk Python sites 00:11:47 – Audio reader briefs 00:15:19 – Discussing Dev Ops as a topic 00:18:31 – Background of developing for the web 00:20:14 – Stack-Native vs Cloud-Native 00:24:40 – Using Quart web framework 00:25:50 – Embracing Docker 00:32:39 – Sharing a single powerful machine allows for individual peaks 00:37:04 – Video Course Spotlight 00:38:30 – Minimal cloud lock-in 00:40:04 – Using OrbStack for local builds and testing 00:42:07 – Coolify as a Docker host 00:47:14 – Moving away from Google analytics and a GDPR rant 00:50:43 – Diving deep into web tech of ngnix, SSL, and CDNs 00:54:33 – Talking about the prices for hosting 00:59:09 – Creating static sites 01:06:22 – Invitation to come back to discuss AI and agents 01:10:06 – What are you excited about in the world of Python? 01:16:19 – What do you want to learn next? 01:17:34 – What’s the best way to follow your work online? 01:19:40 – Thanks and goodbye Links: Talk Python in Production Book Quart documentation: Documentation Docker: Accelerated Container Application Development South Korea Loses Its Government “Cloud” After a Fire: No Backups or Recovery Plan OrbStack: Fast, light, sim
How does Python 3.14 perform under a few hand-crafted benchmarks? Does the performance of asyncio scale on the free-threaded build? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. At the top of the show, we have a mountain of release news and Python Enhancement Proposals to cover. Then, we dig into a couple of articles covering the performance of Python 3.14. The first is a benchmarking comparison of the last several Python versions and their variations, including JIT and free-threaded mode. The second explores the changes in 3.14 that enable asyncio to scale on CPython’s free-threaded build. We also share several other articles and projects from the Python community, including an introduction to NiceGUI, a free-threaded Python library compatibility checker, an exploration of what is “good taste” in software engineering, HTML templating with t‑strings, and a tool for testing Sphinx docs instantly in the browser. Course Spotlight: Documenting Python Projects With Sphinx and Read the Docs In this video series, you’ll create project documentation from scratch using Sphinx, the de facto standard for Python. You’ll also hook your code repository up to Read the Docs to automatically build and publish your code documentation. Topics: 00:00:00 – Introduction 00:02:28 – Python 3.12.12, 3.11.14, 3.10.19 and 3.9.24 now available 00:03:08 – Python 3.13.9 is now available 00:03:26 – Python 3.15.0 alpha 1 00:04:02 – PEP 804: An External Dependency Registry and Name Mapping Mechanism 00:04:56 – PEP 806: Mixed Sync/Async Context Managers With Precise Async Marking 00:06:34 – PEP 807: Index Support for Trusted Publishing 00:07:21 – PEP 809: Stable ABI for the Future 00:08:10 – PEP 810: Explicit Lazy Imports 00:10:31 – Python lazy imports you can use today 00:10:48 – Lazy Imports Using wrapt 00:11:18 – Python 3.14 Is Here. How Fast Is It? 00:17:45 – Free-Threaded Python Library Compatibility Checker 00:19:54 – Scaling Asyncio on Free-Threaded Python 00:24:06 – Real Python 3.14 Resources 00:25:18 – Video Course Spotlight 00:26:31 – Intro to NiceGUI: Build Interactive Python Web Apps 00:30:22 – What Is “Good Taste” in Software Engineering? 00:40:52 – Try Sphinx Docs Instantly in Your Browser 00:43:11 – Introducing tdom: HTML Templating With t‑strings 00:46:21 – Thanks and goodbye News: Python Insider: Python 3.12.12, 3.11.14, 3.10.19 and 3.9.24 are now available! <a href="https://pythoninsider.bl
How is teaching young students Python changing with the advent of LLMs? This week on the show, Kelly Schuster-Paredes from the Teaching Python podcast joins us to discuss coding and AI in the classroom. Kelly shares her current thoughts on teaching Python to young students. She stresses that the earliest classes still need to cover the fundamentals. We also discuss how coding instruction is evolving toward reading and reviewing code more than writing it. Course Spotlight: Building a Python GUI Application With Tkinter In this video course, you’ll learn the basics of GUI programming with Tkinter, the de facto Python GUI framework. Master GUI programming concepts such as widgets, geometry managers, and event handlers. Then, put it all together by building two applications: a temperature converter and a text editor. Topics: 00:00:00 – Introduction 00:01:28 – Starting to use AI in the classroom 00:05:17 – How did students react to using NLP and NLTK? 00:06:40 – Teaching Python beginners now 00:12:31 – Code editor changes with LLM features 00:15:25 – Less in-classroom teaching 00:16:22 – What sparks interest in coding for students? 00:21:14 – Video Course Spotlight 00:22:44 – Exploratory robotics 00:25:56 – Do you need to struggle to learn? 00:32:52 – Working through frustration and the tendency not to read 00:36:37 – Mixed feelings on the changes to teaching 00:41:19 – Teaching through reading and code reviewing 00:45:33 – Lower-level classes are still about fundamentals 00:47:47 – Other areas of teaching using AI tools 00:51:29 – Improving prompting skills 00:54:22 – Using these tools to organize creativity 00:54:53 – What AI tools are working for you? 00:57:13 – Sharing knowledge and techniques with other teachers 01:00:02 – General advice for teachers 01:02:03 – What are you excited about in the world of Python? 01:02:52 – What do you want to learn next? 01:03:46 – How can people follow your work online? 01:04:10 – Thanks and goodbye Show Links: Teaching Python Podcast Code With Mu Flint - AI for schools Claude colab.google AI Explorers’ Club 🛶 – Center for Digital Thriving Building a Python GUI Application With Tkinter –
Python 3.14 is here! Christopher Trudeau returns to discuss the new version with Real Python team member Bartosz Zaczyński. This year, Bartosz coordinated the series of preview articles with members of the Real Python team and wrote the showcase tutorial, “Python 3.14: Cool New Features for You to Try.” Christopher’s video course, “What’s New in Python 3.14”, covers the topics from the article and shows the new features in action. Christopher and Bartosz dug into the new release to create code examples showcasing the new features for the tutorial and course. We look at the enhanced and more colorful REPL experience, better error messages, safer hooks for live debugging, and deferred annotation evaluation. We also discuss template strings, Zstandard compression, and multiple performance improvements. We share our thoughts on the updates and offer advice about incorporating them into your projects. We also discuss when you should start running Python 3.14. Course Spotlight: What’s New in Python 3.14 Covers Python 3.14’s key changes: free-threading, subinterpreters, t-strings, lazy annotations, new REPL features, and improved error messages. Topics: 00:00:00 – Introduction 00:02:03 – Cool New Features for You to Try - Tutorial 00:02:20 – What’s New in Python 3.14 - Video Course 00:02:54 – Even Friendlier Python REPL 00:05:05 – Allow “json” instead of “json.tool” 00:05:49 – Zstandard compression 00:06:37 – Working With Numbers 00:11:09 – Deferred Evaluation of Annotations 00:17:35 – More Helpful Error Messages 00:20:41 – Warnings in try…finally Blocks 00:22:08 – Safer Live Process Debugging 00:25:22 – Pathlib Improvements 00:26:50 – Additional assert methods for unittest 00:27:19 – Template Strings (T-strings) 00:31:01 – Free-threaded Build Updates 00:35:30 – Incremental Garbage Collector 00:37:59 – functools partial & placeholder improvement 00:40:13 – Video Course Spotlight 00:41:12 – Experimental JIT Builds 00:46:52 – Parallel Subinterpreters 00:48:59 – Unicode Database Update 00:49:47 – 𝜋thon - Easter Egg 00:51:26 – Starting to use the new version 00:55:26 – Thanks and goodbye Show Links: Python 3.14: Cool New Features for You to Try – Real Python What’s New in Python 3.14 Python 3.14 Preview: REPL Autocompletion and Highlighting – Real Python Python 3.1
What’s changed about learning Python over the last few years? What new techniques and updated advice should beginners have as they start their journey? This week on the show, Stephen Gruppetta and Martin Breuss return to discuss beginning to learn Python. We share techniques for finding motivation, building projects, and learning the fundamentals. We provide advice on installing Python and not obsessing over finding the perfect editor. We also examine incorporating LLMs into learning to code and practicing asking good questions. Stephen shares details about our upcoming eight-week live course, Python for Beginners: Code With Confidence. Check out realpython.com/live to learn more and reserve your spot. Course Spotlight: 11 Beginner Tips for Learning Python In this course, you’ll see several learning strategies and tips that will help you jumpstart your journey towards becoming a successful Python programmer. Topics: 00:00:00 – Introduction 00:02:36 – Martin’s teaching background 00:02:57 – Stephen’s teaching background 00:04:07 – Having a vested interest in learning 00:08:35 – No shortcut to learning the fundamentals 00:09:21 – Parallels to learning a foreign language 00:12:43 – What’s different about starting to learn Python now? 00:15:03 – Stephen’s journey to coaching and using LLMs 00:16:20 – Are LLMs helpful for learning? 00:18:50 – Teaching what you’ve learned to someone else 00:19:38 – Learning how to ask good questions 00:22:11 – Improved error messages 00:24:35 – REPL: Read Evaluate Print Loop 00:26:33 – Video Course Spotlight 00:27:48 – Installing Python and choosing an editor 00:35:16 – Considering the scale of beginner projects 00:37:39 – Should a beginner be concerned with making Pythonic code? 00:40:55 – Using LLM tools and defining your level of skill 00:42:39 – Python for Beginners: Code With Confidence - live course 00:47:32 – Looking at projects - Awesome Python 00:48:02 – Asking an LLM to explain the code generated 00:50:46 – Debuggers and seeing code run 00:51:23 – Thanks and goodbye Show Links: Python for Beginners: Code With Confidence: Real Python’s intensive Python training program with live expert instruction 11 Beginner Tips for Learning Python Programming – Tutorial Episode #4: Learning Python Thr
What’s a good way to enable or disable code paths without redeploying the software? How can you use feature flags to toggle functionality for specific users of your application? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher shares an article exploring the use of feature flags. The piece advises targeting specific users, storing schemas, and relying on well-worn code paths. He also discusses the danger of the exponential growth of functionality tests as feature flags are added. We dig into a comparison of six popular Python visualization libraries. The article provides code examples along with their respective visual output to highlight features and make selecting the optimal library for your work easier. We also share several other articles and projects from the Python community, including a news roundup, benchmarking MicroPython, simplifying IPs and networks in Python, a “scream” cipher, and a browser-based graphical viewer for the output of Python’s cProfile module. This episode is sponsored by InfluxData. Course Spotlight: Exploring Astrophysics in Python With pandas and Matplotlib This course uses three problems often covered in introductory astrophysics courses to explore in Python. Along the way, you’ll learn some astronomy and how to use a variety of data science libraries like NumPy, Matplotlib, pandas, and pint. Topics: 00:00:00 – Introduction 00:03:04 – Python 3.14.0rc3 is go! 00:03:14 – Django 6.0 alpha 1 released 00:04:27 – PEP 782: Add PyBytesWriter C API 00:05:06 – PEP 794: Import Name Metadata 00:05:30 – PEP 803: Stable ABI for Free-Threaded Builds 00:05:55 – Announcing the 2025 PSF Board Election Results! 00:06:18 – Top 6 Python Libraries for Visualization: Which One to Use? 00:18:34 – Sponsor: InfluxData 00:19:24 – Feature Flags in Depth 00:22:55 – Benchmarking MicroPython 00:30:02 – Video Course Spotlight 00:31:16 – Simplify IPs, Networks, and Subnets With the ipaddress 00:34:52 – SCREAM CIPHER (“ǠĂȦẶAẦ ĂǍÄẴẶȦ” 00:36:20 – SnakeViz: browser based graphical viewer for the output of Python’s cProfile module 00:40:58 – Thanks and goodbye News: Python Insider: Python 3.14.0rc3 is go! Django 6.0 alpha 1 released - Django PEP 782: Add PyBytesWriter C API (Final) PEP 794: Import Name Meta
When converting an existing REST API to the Model Context Protocol, what should you consider? What anti-patterns should you avoid to keep an AI agent’s context clean? This week on the show, Kyle Stratis returns to discuss his upcoming book, “AI Agents with MCP”. Kyle has been busy since he last appeared on the show in 2020. He’s taken his experience working in machine learning startups and started his own consultancy, Stratis Data Labs. He’s been documenting his explorations working with LLMs and MCP on his blog, The Signal Path. Kyle is also writing a book about building MCP clients, services, and end-to-end agents. We discuss a recent article he wrote about the hazards of using an automated tool to convert a REST API into an MCP server. He shares his personal experiences with building MCP tools and provides additional resources for you to learn more about the topic. This episode is sponsored by InfluxData. Spotlight: Python for Beginners: Code With Confidence – Real Python Learn Programming Fundamentals and Pythonic Coding in Eight Weeks—With a Structured Course Topics: 00:00:00 – Introduction 00:02:41 – Updates on career 00:04:36 – The Signal Path - newsletter 00:07:15 – Moving into consulting 00:12:35 – Recent projects 00:14:51 – Need for data skills with MCP 00:16:49 – Describing the differences between REST APIs and MCP 00:19:59 – Interaction model differences 00:27:29 – Sponsor: InfluxData 00:28:21 – Agent stories 00:32:58 – Going through a simple example of MCP server 00:37:50 – Defining client and server 00:40:19 – Examples of servers currently 00:51:44 – Announcement: Python for Beginners: Code with Confidence 01:02:07 – Resources for further study 01:05:07 – Breaking down advice on moving an API to MCP 01:08:04 – What are you excited about in the world of Python? 01:18:20 – What do you want to learn next? 01:21:35 – How can people follow your work online? 01:22:46 – Thanks and goodbye Show Links: AI Agents with MCP - Book Episode #10: Python Job Hunting in a Pandemic Stop Converting Your REST APIs to MCP Stop Generating MCP Servers from REST APIs! Context7 - Up-to-date documentation for LLMs and AI code editors
What are your options for hosting your Python application or scripts? What are the advantages of a platform as a service, container-based hosts, or setting up a virtual machine? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We discuss a recent article about hosting Python applications. The piece digs into the differences between using containers or platform-provided tools to automatically configure your project. We also cover an older article listing several free hosting options for smaller projects or Python scripts. The Python documentary premiered this past week, and we provide a synopsis and our thoughts. Following a similar theme, we cover our recent code conversation video course, which explores the history of Python versions and the features added across the releases. We also share several other articles and projects from the Python community, including a news roundup, regex affordances, four different ways to speed up your code, a Python-based music library manager, a tool to visualize the structure of your data in Python, and a project for exploring color science in Python. This episode is sponsored by InfluxData. Course Spotlight: A History of Python Versions and Features Explore Python’s evolution from the 1990s to today with a brief history and demos of key features added throughout its lifetime. Topics: 00:00:00 – Introduction 00:03:02 – PEP 728: TypedDict With Typed Extra Items 00:04:09 – Django security releases issued: 5.2.6, 5.1.12, and 4.2.24 00:04:37 – Python Type System and Tooling Survey 2025 00:04:56 – Python: The Documentary - An Origin Story 00:14:11 – A History of Python Versions and Features 00:16:58 – Sponsor: InfluxData 00:17:48 – Regex Affordances 00:21:34 – Where to Host Your Python App 00:26:48 – Best hosting platforms for Python applications and Python scripts 00:30:18 – Video Course Spotlight 00:31:59 – 330× Faster: Four Different Ways to Speed Up Your Code 00:37:18 – beets: Music Library Manager 00:39:12 – Memory Graph - GitHub 00:40:49 – colour: Colour Science for Python 00:42:35 – Thanks and goodbye News: PEP 728: TypedDict With Typed Extra Items (Accepted) Django security releases issued: 5.2.6, 5.1.12, and 4.2.24 Python Type System and Tooling Survey 2025 Show Links: <a href="http
What’s happening with the latest releases of large language models? Is the industry hitting the edge of the scaling laws, and do the current benchmarks provide reliable performance assessments? This week on the show, Jodie Burchell returns to discuss the current state of LLM releases. The most recent release of GPT-5 has been a wake-up call for the LLM industry. We discuss how the current scaling of these systems is reaching a diminishing edge. Jodie also shares how many AI model assessments and benchmarks are flawed. We also take a sober look at the productivity gains from using these tools for software development within companies. We discuss how newer developers should consider additional factors when looking at the current job market. Jodie digs into how economic changes and rising interest rates are influencing layoffs and hiring freezes. Then we share a wide collection of resources for you to continue exploring these topics. This episode is sponsored by InfluxData. Course Spotlight: Exploring Python Closures: Examples and Use Cases Learn about Python closures: function-like objects with extended scope used for decorators, factories, and stateful functions. Topics: 00:00:00 – Introduction 00:03:00 – Recent conferences and talks 00:04:18 – What’s going on with LLMs? 00:06:06 – What happened with the GPT-5 release? 00:08:14 – Simon Willison - 2025 in LLMs so far 00:09:00 – How did we get here? 00:10:37 – OpenAI’s and scaling laws 00:12:25 – Pivoting to post-training 00:16:01 – Some history of AI eras 00:17:54 – Issues with measuring performance and benchmarks 00:22:19 – Chatbot Arena 00:24:06 – Languages are finite 00:26:22 – LLMs and the illusion of humanity 00:30:41 – Sponsor: InfluxData 00:31:34 – Types of solutions to move past these limits 00:36:57 – Does AI actually boost developer productivity? 00:44:19 – Agentic Al Programming with Python 00:48:02 – Results of non-programmers vibe coding 00:50:18 – Back to the concept of overfitting 00:52:52 – The money involved in training 00:56:50 – Video Course Spotlight 00:58:21 – Deepseek and new methods of training 01:01:02 – Quantizing and fitting on a local machine 01:04:48 – The layoffs and the economic changes 01:10:32 – AI implementation failures 01:21:01 – Don’t doubt yourself as a developer 01:24:06 – What are you excited about in the world of Python? 01:25:39 – What do you want to learn next? 01:26:42 – What’s the best way to follow your work online? 01:27:04 – Thanks and goodbye Survey: <a href="https://ta
What is a good way to add isolated, reusable functionality to Python classes? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher covers a recent Real Python tutorial about developing mixin classes to reuse code across multiple Python classes. He describes how mixins rely on multiple inheritance to combine features from different classes, enhancing flexibility and code reuse. We also share several other articles and projects from the Python community, including a news roundup, highlights from the 2024 Python Developers Survey, reasons you might not need a Python class, an exploration of asyncio’s sharp corners, an explanation of how JIT builds of CPython work, a web-based GUI library, and a project for quickly querying Python lists. This episode is sponsored by InfluxData. Course Spotlight: Design and Guidance: Object-Oriented Programming in Python In this video course, you’ll learn about the SOLID principles, which are five well-established standards for improving your object-oriented design in Python. By applying these principles, you can create object-oriented code that’s more maintainable, extensible, scalable, and testable. Topics: 00:00:00 – Introduction 00:03:14 – Python 3.13.7 Released 00:03:38 – Python 3.14.0rc2 Released 00:04:10 – PEP 802: Display Syntax for the Empty Set 00:04:59 – Announcing the PSF Board Candidates for 2025 00:05:26 – Rodrigo - PSF - Community Service Award for Q2 2025 00:06:06 – Python Developers Survey 2024 Results 00:13:27 – pyx: A Python-Native Package Registry 00:15:12 – Test & Code Final Episode 00:15:48 – You Might Not Need a Python Class 00:20:52 – Sponsor: InfluxData 00:21:44 – asyncio: A Library With Too Many Sharp Corners 00:25:43 – How JIT Builds of CPython Actually Work 00:35:21 – Video Course Spotlight 00:37:12 – What Are Mixin Classes in Python? 00:44:05 – nicegui: Create Web-Based UI With Python 00:46:51 – leopards: Quickly query your Python lists 00:49:00 – Thanks and goodbye Survey: Listener Survey - Help Shape the Future of the Real Python Podcast News: Python 3.13.7 Released Python 3.14.0rc2 Released PEP 802: Display Syntax for the Empty Set (Added) Ann
What went into developing the open-source Python tools data scientists use every day? This week on the show, we talk with Travis Oliphant about his work on SciPy, NumPy, Numba, and many other contributions to the Python scientific community. Travis discusses his initial involvement in the open-source community and how he discovered Python while working in biomedical imaging. He was trying to find ways to manage large sets of numerical data, which led to his initial contributions and collaborations in building scientific libraries. His appearance on the show coincides with the release of the Python documentary, in which he’s featured. We discuss the myriad organizations Travis founded, including Quansight, OpenTeams, and Anaconda. We dig into his underlying mission to continue fostering the growth of the open-source scientific computing community. This episode is sponsored by InfluxData. Course Spotlight: NumPy Techniques and Practical Examples In this video course, you’ll learn how to use NumPy by exploring several interesting examples. You’ll read data from a file into an array and analyze structured arrays to perform a reconciliation. You’ll also learn how to quickly chart an analysis and turn a custom function into a vectorized function. Topics: 00:00:00 – Introduction 00:02:41 – Python documentary 00:07:44 – Getting involved in open source 00:12:04 – Numeric Python 00:15:36 – SciPy and the SciPy community 00:17:35 – Starting to think about entrepreneurship 00:18:16 – NumPy evolving from the work of Numeric 00:22:01 – Sponsor: InfluxData 00:22:53 – Python as controlling code for lower-level libraries 00:23:37 – Numba open-source JIT compiler 00:30:09 – Starting to build in Python before learning it all 00:34:45 – Python as the language AI generates 00:36:31 – Guilds and sharing knowledge 00:40:15 – More NumPy backstory 00:46:36 – Contributing to Python 00:48:24 – Video Course Spotlight 00:49:41 – The investment of companies in Python 00:51:22 – Quansight and businesses in open source 00:53:09 – Open Teams and Quansight details 00:57:14 – NumFOCUS and Anaconda 00:58:51 – FairOSS 01:02:36 – Documenting these efforts 01:05:37 – What are you excited about in the world of Python? 01:07:12 – What do you want to learn next? 01:08:10 – How can people follow your work online? 01:10:03 – Thanks and goodbye Show Links: Python: The Documentary - OFFICIAL TRAILER - Coming August 28 - YouTube <a href="http://hugunin.net/papers/hugunin9
When considering an object-oriented programming problem, should you prefer inheritance or composition? Why wouldn’t it just be simpler to use functions? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher shares an article about structuring code using inheritance, composition, or only functions. We discuss how the piece is a good exploration of the trade-offs of each solution. Unlike the tutorials beginners typically encounter while learning the fundamentals, the article goes much deeper into the “why” of object-oriented programming. We also share several other articles and projects from the Python community, including a news roundup, processing audio in Python, reasons why you shouldn’t call dunder methods, smuggling arbitrary data through an emoji, an HTML to markdown converter, and a library to convert Python requests into curl commands. Course Spotlight: Single and Double Underscore Naming Conventions in Python In this video course, you’ll learn a few Python naming conventions involving single and double underscores (_). You’ll learn how to use this character to differentiate between public and non-public names in APIs, write safe classes for subclassing purposes, avoid name clashes, and more. Topics: 00:00:00 – Introduction 00:02:23 – Python 3.13.6 Released 00:02:47 – Django 5.2.5 Released 00:02:55 – Django REST Framework Release v3.16.1 00:03:09 – Narwhals v2.0.0 Released 00:03:22 – mypy 1.17 Released 00:03:42 – PEP 798: Unpacking in Comprehensions 00:04:11 – PEP 799: A Dedicated Profilers Package for Organizing Python Profiling Tools 00:06:12 – PyPI Users Email Phishing Attack 00:07:33 – Django in Action 00:08:00 – Call for proposals deadline - PyCon NL 00:08:59 – Python Audio Processing With pedalboard 00:18:49 – Smuggling Arbitrary Data Through an Emoji 00:21:53 – Don’t Call Dunder Methods 00:28:51 – Video Course Spotlight 00:30:27 – Inheritance Over Composition, Sometimes 00:40:03 – html-to-markdown: HTML to Markdown Converter 00:42:20 – curlify: A library to convert Python requests request object into curl commands 00:44:18 – transfunctions: Support Both Sync and Async 00:45:18 – Thanks and goodbye Survey: Listener Survey - Help Shape the Future of the Real Python Podcast News: Python 3.13.6 Released Django 5.2.5 Released <a href="h
What are the advantages of using Polars for your Python data projects? When should you use the lazy or eager APIs, and what are the benefits of each? This week on the show, we speak with Jeroen Janssens and Thijs Nieuwdorp about their new book, Python Polars: The Definitive Guide. Jeroen and Thijs describe how they were introduced to Polars while working at Xomnia. They were converting a large data project to Python and saw surprising speed increases using the new library. We discuss converting projects from pandas to Polars, getting away from indexes, consistent syntax, and using lazy vs eager APIs. Along the way, Jeroen and Thijs offer tips for getting the most out of Polars in your code. We dig into the process of writing a definitive guide and the advantages of working collaboratively on a book project. They also share resources for practicing data wrangling and building visualizations with Pydy Tuesday. Course Spotlight: Working With Python Polars Welcome to the world of Polars, a powerful DataFrame library for Python. In this video course, you’ll get a hands-on introduction to Polars’ core features and see why this library is catching so much buzz. Topics: 00:00:00 – Introduction 00:02:47 – Polars start at Xomnia 00:04:08 – Putting Polars into production 00:07:18 – Realizing the speed differences 00:08:49 – Converting the project from R to Python 00:14:34 – How did Polars improve the project? 00:16:34 – Making the code more ergonomic and readable 00:19:21 – Only grabbing the data that is needed 00:20:37 – Titling and deciding to write the book 00:24:40 – Advantages to collaboration 00:29:34 – What were you excited to include in the book? 00:31:55 – Working with different engines and Nvidia’s Cuda 00:35:05 – Defining a Polars expression 00:36:11 – Transitioning from pandas to Polars 00:37:34 – Not needing an index 00:39:56 – What inspired the syntax? 00:45:01 – Defining lazy vs eager workflows 00:49:16 – Examples covered in first chapter preview 00:51:51 – Video Course Spotlight 00:53:14 – Data formats and Arrow 00:55:41 – Working with NaN, null, or None 00:58:11 – Measuring performance through a benchmark 00:59:12 – Advantages to working with the Discord community 01:02:32 – Code examples and applying the techniques 01:03:34 – Pydy Tuesday 01:05:47 – What are you excited about in the world of Python? 01:09:21 – What do you want to learn next? 01:13:26 – What’s the best way to follow your work online? 01:14:14 – Thanks and goodbye Survey: <a href="https://tall
Do the design patterns learned in other programming languages translate to coding in Python? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher dives into an article that tackles popular object-oriented design patterns from the famous Gang of Four book. These patterns offer solutions to common coding problems, but as Christopher explores, Python often doesn’t even have the problems these solutions try to fix. He discusses several common design patterns and the simpler, more Pythonic ways to achieve the same goals. We also share several other articles and projects from the Python community, including an exceptionally robust news roundup, running coverage on tests, an exploration of expert generalists, a preview of template strings from Python 3.14, a quiz on f-strings, and a project that calculates the complexity of your Python code. Course Spotlight: Working With Python’s Built-in Exceptions Learn the most common built-in Python exceptions, when they occur, how to handle them, and how to raise them properly in your code. Topics: 00:00:00 – Introduction 00:02:03 – Python 3.14.0b4 Released 00:02:11 – Python 3.14 release candidate 1 is go! 00:02:48 – PyPy v7.3.20 Release 00:03:00 – Textual 4.0.0 Released 00:03:23 – Announcing Toad - a universal UI for agentic coding in the terminal 00:03:42 – uv 0.8.0 Released 00:03:56 – Django Bugfix Release 5.2.4 00:04:14 – Django Community Ecosystem 00:04:52 – Happy 20th Birthday Django! 00:05:31 – PyData London 2025 Videos 00:05:48 – PEP 792: Project Status Markers in the Simple Index 00:06:09 – PEP 800 – Solid bases in the type system 00:07:06 – Run Coverage on Tests 00:14:32 – Design Patterns You Should Unlearn in Python 00:18:13 – Video Course Spotlight 00:19:24 – Expert Generalists 00:34:42 – Python 3.14 Preview: Template Strings (T-Strings) 00:41:00 – fstrings.wtf - Python F-String Quiz 00:43:09 – complexipy: Calculate Complexity of Your Python 00:48:18 – Thanks and goodbye Survey: Listener Survey - Help Shape the Future of the Real Python Podcast News: Python 3.14.0b4 Released Python 3.14 release candidate 1 is go! - Core Development - Discussions on Python.org PyPy v7.3.20 Release <a href="https://github.com/Textualize/
What goes into supporting more than 650,000 projects and nearly a million users of the Python Package Index? This week on the show, we speak with Maria Ashna about her first year as the inaugural PyPI Support Specialist. Maria has a varied background in creative arts and neuroscience. She decided to apply for the PyPI support position, defying common misconceptions about who can take on roles inside the Python Software Foundation, and challenging imposter syndrome along the way. Her recent talks at PyCon US 2025 and EuroPython 2025 were about her experiences in the role. She describes tackling the backlogs of account recovery and PEP 541 requests, and we also discuss PyPI community and company organizations. Course Spotlight: Publishing Python Packages to PyPI In this video course, you’ll learn how to create a Python package for your project and how to publish it to PyPI, the Python Package Index. Quickly get up to speed on everything from naming your package to configuring it using setup.cfg. Topics: 00:00:00 – Introduction 00:01:42 – What led you to learn Python? 00:08:09 – PyCon 2025 talk about the first year at PyPI 00:11:06 – Embracing asking questions 00:13:55 – Being willing to say “I don’t know, let’s find out” 00:15:06 – What is PEP 541 and resolving name retention issues 00:23:22 – Video Course Spotlight 00:24:40 – Addressing the account recovery backlog 00:26:43 – PyPI Organizations 00:30:54 – Moving beyond the hesitancy to submit a package to PyPI 00:40:43 – Getting past imposter syndrome and applying 00:45:07 – What are you excited about in the world of Python? 00:46:10 – What do you want to learn next? 00:47:52 – How can people follow your work online? 00:49:03 – Thanks and goodbye Show Links: Adventures in Account Recovery, PEP 541 & More As Inaugural PyPI Support Specialist - Maria Ashna - YouTube PyCon US 2025 - A PEP Talk: Adventures in Account Recovery, PEP 541, And More As the Inaugural PyPI Support Specialist EuroPython 2025 - July 14th-20th 2025 - Prague, Czech Republic & Remote PyPI - The Python Package Index PEP 541 – Package Index Name Retention Introducing PyPI Organizations - The Python Package Index Blog <a href="https://packaging.python.org/en/latest/tutorials/packaging-projects/"
How does the performance of an algorithm hold up when you put it into a realistic context? Where might Python code defy Big O notation expectations when using a profiler? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher shares an article about why real-world performance often defies Big O expectations. The piece starts with a task coded in Go and then optimized from O(n²) to O(n). Can an interpreted language like Python compete with a compiled language? Profiling the performance of both versions provides some interesting results. We also share several other articles and projects from the Python community, including a news roundup, the fastest way to detect a vowel in a string, whether Python dictionaries are ordered data structures, an overview of Python’s enum module, a Python client library for Google Data Commons, and a project to convert plain ASCII to “smart” punctuation. Course Spotlight: Building Enumerations With Python’s enum In this video course, you’ll discover the art of creating and using enumerations of logically connected constants in Python. To accomplish this, you’ll explore the Enum class and other associated tools and types from the enum module in the Python standard library. Topics: 00:00:00 – Introduction 00:02:12 – ruff Release 0.12.0 00:02:38 – streamlit Release 1.46.0 00:02:48 – lxml 6.0.0 Released 00:03:00 – PSF Board Election Schedule 00:03:26 – Are Python Dictionaries Ordered Data Structures? 00:08:59 – The Fastest Way to Detect a Vowel in a String 00:16:37 – Module enum Overview 00:24:46 – Video Course Spotlight 00:26:24 – O(no) You Didn’t 00:38:34 – New Python Client Library for Google Data Commons 00:41:55 – smartypants.py: Plain ASCII to “Smart” Punctuation 00:44:07 – Thanks and goodbye News: ruff Release 0.12.0 streamlit Release 1.46.0 lxml 6.0.0 Released PSF Board Election Schedule – It is time for the Python Software Foundation Board elections. Nominations are due by July 29th. See the article for the full election schedule and deadlines. Show Links: Are Python Dictionaries Ordered Data Structu
What motivates someone to learn how to code as a scientist? How do you harness the excitement of solving problems quickly and make the connection to the benefits of coding in your scientific work? This week on the show, we speak with Ben Lear and Christopher Johnson about their book “Coding For Chemists.” Christopher is an associate professor of chemistry at Stony Brook University. Ben is a professor of chemistry at Penn State’s Eberly College of Science. They’re long-time friends who decided to collaborate on a book after discussing the challenges of teaching coding to chemistry students. The book targets chemists and other researchers who want to streamline common workflows with Python. It covers core Python concepts, data visualization, and data analysis topics by sharing common problems encountered in chemical research and presenting a complete Python-based solution for each problem. We discuss how they collaborated on the book and decided what libraries and tools to include. We cover how LLM tools have affected classroom teaching and require new techniques to reinforce learning. We also dig into what motivates students to learn how to code. Course Spotlight: Defining Python Functions With Optional Arguments In this video course, you’ll learn about Python optional arguments and how to define functions with default values. You’ll also learn how to create functions that accept any number of arguments using args and kwargs. Topics: 00:00:00 – Introduction 00:02:06 – Ben’s background and starting with Python 00:04:34 – Chris’ background and starting with Python 00:07:16 – What has sped up Python for your use? 00:08:22 – How did idea for the book start? 00:11:30 – Shifting publisher and new release time frame 00:12:24 – Three potential audiences 00:13:20 – The ubiquitous need for programming skills in science 00:15:05 – Difficult workflows with chemistry equipment 00:16:06 – What is a chart recorder? 00:16:34 – Working with proprietary equipment and exporting data 00:23:37 – Explaining how programming will help chemists 00:27:31 – Finding the problems to solve 00:29:09 – The classic common chemistry workflow 00:30:48 – Teaching Python in a classroom and starting with functions 00:35:05 – Helping students cultivate inspiration 00:37:06 – LLM and AI use by students 00:41:19 – Video Course Spotlight 00:42:36 – Using Spyder IDE and Positron 00:45:29 – How does the book cover notebooks and managing packages? 00:48:08 – Using marimo for archiving and sharing projects 00:50:25 – What was difficult to put into the book?</li
What goes into crafting an effective Python script? How do you organize your code, manage dependencies with PEP 723, and handle command-line arguments for the best results? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We dig into a recent Real Python article about how to structure your Python scripts. It includes advice for adding inline script metadata as defined in PEP 723, which helps tools automatically create an environment and install dependencies when the script is run. The piece also covers choosing appropriate data structures, improving runtime feedback, and making your code more maintainable with constants and entry points. We discuss a collection of software trends happening behind the scenes of the constant LLM news. The piece starts with local-first software, prioritizing processing and storing private data on personal devices rather than relying on the cloud. The other trends include common themes and tools we’ve shared over the past few years, including WebAssembly, SQLite’s renaissance, and improvements to cross-platform mobile development. We also share several other articles and projects from the Python community, including a news roundup, the state of free-threaded Python, tips for improving Django management commands, advice for time management as a manager, a data science-focused IDE, and a project to check for multiple patterns in a single string. Course Spotlight: SQLite and SQLAlchemy in Python: Move Your Data Beyond Flat Files In this video course, you’ll learn how to store and retrieve data using Python, SQLite, SQLAlchemy, and flat files. Using SQLite with Python brings with it the additional benefit of accessing data with SQL. By adding SQLAlchemy, you can work with data in terms of objects and methods. Topics: 00:00:00 – Introduction 00:02:26 – Followup - marimo and LaTeX 00:03:26 – PEP 734: Multiple Interpreters in the Stdlib (Accepted) 00:03:52 – Python 3.13.4, 3.12.11, 3.11.13, 3.10.18 and 3.9.23 Security Releases 00:04:21 – Python Insider: Python 3.14.0 beta 3 is here! 00:04:30 – Django Bugfix Releases: 5.2.3, 5.1.11, and 4.2.23 00:04:52 – NumPy v2.3.0 Released 00:05:02 – scikit-learn 1.7 Released 00:05:12 – PyData Virginia 2025 Talks 00:05:52 – How Can You Structure Your Python Script? 00:12:08 – State of Free-Threaded Python 00:18:23 – 5 Non-LLM Software Trends to Be Excited About 00:29:50 – Video Course Spotlight 00:31:23 – Better Django Management Commands 00:33:56 – Advice for time management as a manager 00:46:49 – positron: Data Science IDE 00:50:05 – ahocorasick_rs: Check for Mul
What goes into scaling a web application today? What are resources for learning and practicing DevOps skills? This week on the show, Calvin Hendryx-Parker is back to discuss the tools and infrastructure for autoscaling web applications with Kubernetes and Karpenter. Calvin is the co-founder and CTO of Six Feet Up, a Python and AI consultancy. He shares how they recently helped a client scale a web application that employs video, audio, and chat sessions. We dig deep into the tooling behind modern Kubernetes systems management and performance monitoring. Calvin shares a project bootstrap tool for streamlining the development and deployment of a web application. The tool includes a complete blueprint for the infrastructure needed to get started. We also dig into a collection of coding tools Calvin has been experimenting with. We discuss his recent IndyPy presentation, “Battle of the Bots,” which put several AI code assistants through their paces. This episode is sponsored by AMD. Course Spotlight: First Steps With LangChain Large language models (LLMs) have taken the world by storm. In this step-by-step video course, you’ll learn to use the LangChain library to build LLM-assisted applications. Topics: 00:00:00 – Introduction 00:02:23 – Scaling a Django project using Kubernetes 00:05:35 – Elastic Kubernets Service (EKS) 00:09:10 – Kubernetes terminology and improvements in tooling 00:11:29 – The Control Plane and the API 00:14:06 – Video Course Spotlight 00:15:11 – scaf: providing DevOps engineers a blueprint for new projects 00:17:21 – What have been the benefits of scaf for internal teams? 00:20:18 – How do you identify and reproduce scaling issues? 00:22:44 – Dealing with IP address scaling 00:26:03 – Why use other observability tools beyond AWS internal ones? 00:29:22 – Other lessons learned and moving toward refactoring code 00:33:53 – Scaling a voice-based LLM application 00:35:35 – Sponsor: AMD 00:36:11 – Looking at limitations and bottlenecks 00:38:08 – Configuring a Kubernetes operator to act on itself 00:39:47 – What project components are within a pod of containers? 00:42:31 – Budgeting for scale using Karpenter 00:43:58 – Tools for running containers locally 00:46:01 – Are containers still a primary development tool for you? 00:50:58 – Resources for learning DevOps and Kubernetes 00:52:54 – Conferences and talks 00:53:56 – Battle of the Bots: comparing coding agents 00:55:15 – What are you excited about in the world of Python? 00:56:20 – What do you want to learn next? 01:02:42 – What’s the best way for people to fol
Looking for a guide on getting started with marimo notebooks? How do you build a reproducible notebook for sharing or create a dashboard with interactive UI elements? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We cover a recent Real Python article by Ian Eyre about using narimo notebooks. The tutorial covers installing Marimo, taking advantage of reactivity, building interactive dashboards, and managing a notebook’s environment through sandboxing. The piece ends by examining the limitations of traditional linear notebooks and how Marimo addresses them. Christopher discusses an article about how to store the configurations for your Python scripts and projects. Whether you’re managing resource handles to a database, deployment variables, or credentials to external services, you’ll need a way to save and load the details into your Python project. The piece compares saving configurations in several common file formats or through environment variables. We also share several other articles and projects from the Python community, including a news roundup, the discourse between generative AI coding proponents and detractors, catching memory leaks with your test suite, epigrams on programming, a command line tool to check packages on PyPI, and a collection of string, file, and object utilities. This episode is sponsored by Six Feet Up. Course Spotlight: Python Continuous Integration and Deployment Using GitHub Actions With most software following agile methodologies, it’s essential to have robust DevOps systems in place to manage, maintain, and automate common tasks with a continually changing codebase. By using GitHub Actions, you can automate your workflows efficiently, especially for Python projects. Topics: 00:00:00 – Introduction 00:02:44 – Python Release 3.14.0b2 00:03:09 – Django security releases issued: 5.2.2, 5.1.10, and 4.2.22 00:03:27 – PyBay 2025 00:03:43 – PyCon NL 2025 - Call for Proposals 00:04:05 – Django Forum: Supporting t-strings 00:04:44 – Ruff Users: What Rules Are You Using and What Are You Ignoring? 00:05:19 – My Shot at Real Python 00:06:03 – My AI Skeptic Friends Are All Nuts 00:10:06 – I Think I’m Done Thinking About genAI For Now 00:11:12 – AI Changes Everything 00:23:01 – Video Course Spotlight 00:24:14 – Configuration of Python Applications 00:29:15 – marimo: A Reactive, Reproducible Notebook 00:35:15 – Sponsor: Six Feet Up 00:36:02 – Catching memory leaks with your test suite 00:41:45 – Epigrams on Programming 00:46:54 – whatsonpypi: Check PyPI From the Command Line 00:48:18 – strif: String, Fi
Once you’ve learned the vocabulary and syntax of the Python language, how do you progress into learning the right combinations to put into your code? How can Python’s built-in itertools library enhance your skills? This week on the show, we speak with Rodrigo Girão Serrão about teaching Python through his blog and his passion for the itertools library. We discuss Rodrigo’s different approaches to writing on his blog. He likes to document smaller concepts about Python and building code in his “Today I Learned” series. He’s also been collecting advice about the best way to use core Python features in another series called “Pydon’ts.” We cover his recent PyCon US tutorial about the built-in itertools module. The functions contained in the module create iterators for efficient looping. We discuss the categories of tools inside the collection and ways to simplify your code. We also explore the concept of vocabulary versus idioms in writing. Idioms are a group of words that hold a symbolic meaning that goes beyond the literal meaning of the individual words. We dig into how that applies to learning Python and building a personal collection of programming idioms. This episode is sponsored by AMD. Course Spotlight: Working With Missing Data in Polars In this video course, you’ll learn how to deal with missing data in Polars to ensure it doesn’t interfere with your data analysis. You’ll discover how to check for missing values, update them, and remove them. Topics: 00:00:00 – Introduction 00:02:34 – Creating Polars video course 00:03:27 – How did you start programming and teaching Python? 00:04:59 – Where did mathspp come from? 00:05:38 – Exploring math and programming in university 00:07:48 – Learning APL 00:09:24 – What goes into building the blog? 00:15:05 – The Pydon’ts and writing books 00:18:37 – PyCon US 2025 00:20:46 – Sponsor: AMD 00:21:23 – Teaching a tutorial about itertools 00:28:58 – Categorizing itertools 00:40:39 – Video Course Spotlight 00:41:55 – The difference between me and Shakespeare 00:46:51 – Learning and practicing with idioms 00:51:01 – TIL and asking questions 00:53:54 – What are you excited about in the world of Python? 00:55:40 – What do you want to learn next? 00:57:35 – How can people follow your work online? 01:01:19 – Thanks and goodbye Show Links: mathspp blog TIL (Today I Learned) - mathspp Working With Missing Data in Polars <a href="https://www.oxfordrefe
What are the ways you can manage multithreaded code in Python? What synchronization techniques are available within Python’s threading module? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher discusses his recent Real Python video course about thread safety. The course provides a quick overview of race conditions and how to use locks in your code. It then goes on to share a collection of additional synchronization primitives to make your code thread-safe. We dig into a tutorial by Leodanis Pozo Ramos about managing Python projects with uv. The tutorial shows you how to quickly initialize a project, build the directory structure, add dependencies, and publish your package while practicing the commands inside uv. We also share several other articles and projects from the Python community, including a news roundup, unraveling t-strings, what’s new in pip 25.1, an SVG-first plotting library, and a data modeling tool built on top of Polars and Pydantic. Course Spotlight: Thread Safety in Python: Locks and Other Techniques In this video course, you’ll learn about the issues that can occur when your code is run in a multithreaded environment. Then you’ll explore the various synchronization primitives available in Python’s threading module, such as locks, which help you make your code safe. Topics: 00:00:00 – Introduction 00:02:23 – PEP 773: A Python Installation Manager for Windows 00:03:09 – PEP 784: Adding Zstandard to the Standard Library 00:03:28 – Python Insider: Python 3.14.0 Beta 1 Is Here! 00:03:48 – Django Security Releases Issued: 5.2.1, 5.1.9 and 4.2.2 00:04:09 – ty: New Type Checker and Language Server by Astral 00:05:01 – pyrefly: A Fast Type Checker and IDE for Python 00:06:03 – The Future of Textualize 00:07:08 – Managing Python Projects With uv 00:12:20 – pre-commit: Install With uv 00:13:03 – Python’s New t-strings 00:16:38 – Unraveling t-strings 00:18:33 – Video Course Spotlight 00:19:50 – What’s New in Pip 25.1 00:24:30 – Thread Safety in Python: Locks and Other Techniques 00:28:40 – glyphx: SVG-first Plotting Library 00:31:20 – patito: A data modeling layer built on top of Polars and Pydantic 00:34:02 – Thanks and goodbye News: PEP 773: A Python Installation Manager for Windows (Accepted) PEP 784: Adding Zstandard to the Standard Library (Accepted) Python Insider: Python 3.1
What goes into making video courses at Real Python? How should you build an installable Django application? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. This week, the Real Python Podcast is experiencing several firsts. We recorded a show in front of a live audience for the very first time, and it happened in Dublin, Ireland—a place neither of us had visited before. I also got to meet Christopher Trudeau in person for the first time. We’re sharing that live recording from the conference in this episode. We discuss how we create video courses at Real Python, and Christopher talks about his tutorial on how to write an installable Django application. We also share a few summaries of the talks from the conference and projects from the Django community, including a news roundup, how decisions are made inside the Django Foundation, ways you can help with reviews, using the Django ORM with Marimo notebooks, maintaining a data-oriented project, how to get foreign keys horribly wrong, a project for simple deployment, and a project for adding extra buttons inside the Django Admin. We would like to thank the audience members from Ireland who heard about DjangoCon by listening to the podcast. Thank you for attending the conference and for taking the time to say hello. We also appreciate those who asked us insightful questions at the end of the show. We enjoyed exploring Dublin and recording the show in front of such a welcoming audience. We learned a ton from all the great talks given at the conference and made some new connections for future interviews. This episode is sponsored by AMD. Course Spotlight: How to Set Up a Django Project In this course, you’ll learn the necessary steps that you’ll need to take to set up a new Django project. You’ll learn the basic setup for any new Django project, which needs to happen before programming the specific functionality of your project. Topics: 00:00:00 – Introduction 00:03:59 – PEP 770 – Improving measurability of Python packages with Software Bill-of-Materials 00:04:22 – PEP 736 – Shorthand syntax for keyword arguments at invocation 00:04:46 – PEP 661 – Sentinel Values 00:05:21 – Pydantic v2.11 Released 00:05:41 – How We Build Video Courses at Real Python 00:17:17 – Sponsor: AMD 00:17:56 – How to Write an Installable Django App 00:22:21 – Attendees from Ireland who heard about the conference from us 00:23:09 – Django needs you! (to do code review) 00:24:12 – How we make decisions in Django 00:26:07 – Marimo: Sharing the joys of the Django ORM with Python Notebooks 00:27:30 – Steering Council Introduction 00:
What is the best way to record the Python dependencies for the reproducibility of your projects? What advantages will lock files provide for those projects? This week on the show, we welcome back Python Core Developer Brett Cannon to discuss his journey to bring PEP 751 and the pylock.toml file format to the community. Brett has been working on a way to move beyond the requirements.txt file for over six years. He was on the show previously to discuss his work on PEP 665, which was rejected. He decided to continue to push forward, authoring PEP 751 last year, which was accepted at the end of March this year. The PEP calls for a new file format to record your project’s dependencies. The goal was to have a standardized immutable record for what should be installed to reproduce your project in a virtual environment. He discusses working with other packaging projects and the compromises involved in creating a standard. Course Spotlight: Using the Python subprocess Module In this video course, you’ll learn how to use Python’s subprocess module to run and control external programs from your scripts. You’ll start with launching basic processes and progress to interacting with them as they execute. Topics: 00:00:00 – Introduction 00:02:38 – Brett’s roles within the Python community 00:05:41 – How to move beyond requirement.txt? 00:10:58 – What does the community use as project artifacts? 00:15:28 – Building on the success of pyproject.toml 00:17:44 – Introducing PEP 665 00:19:49 – Software Bills of Materials and security 00:25:20 – Back to lock files and security 00:31:08 – Video Course Spotlight 00:32:27 – Not giving up on the idea 00:34:01 – Leading into PEP 751 00:38:54 – Working toward a single multi-platform file 00:43:02 – The final push 00:48:54 – Leaving room for flexibility 00:53:50 – And it’s done, PEP 751 accepted unconditionally 00:58:06 – Keynote speaker at EuroPython 2025 00:58:45 – What are uv workspaces? 01:01:02 – Considering the use of lock files in data science 01:05:23 – Updates about Python for WASI and Emscripten 01:13:51 – Clarification on WASI 01:20:28 – Future conversation about Python launcher 01:23:04 – What are you excited about in the world of Python? 01:24:25 – What do you want to learn next? 01:28:41 – What’s the best way to follow your work online? 01:31:00 – Thanks and goodbye Show Links: Tall, Snarky Canadian BREAKING: Guido van Rossum Returns as Python’s BDFL - YouTube <a
Are you looking for some projects where you can practice your Python skills? Would you like to experiment with building a generative AI app or an automated knowledge graph sentiment analysis tool? This week on the show, we speak with Raymond Camden about his journey into Python, his work in developer relations, and the Python projects featured on his blog. Raymond is a developer evangelist and advocate who works with APIs, AI, and the web. He’s been expanding his developer knowledge by learning Python and documenting his journey through his blog and with the live-streaming show Code Break. We discuss a couple of his recent Python projects. The first is building a resume review and revision system with generative AI and Flask. The other project uses Diffbot’s knowledge graph and Pipedream’s workflow tools to create an automated sentiment analysis tool. This episode is sponsored by AMD. Course Spotlight: What Can You Do With Python? In this video course, you’ll find a set of guidelines that will help you start applying your Python skills to solve real-world problems. By the end, you’ll be able to answer the question, “What can you do with Python?” Topics: 00:00:00 – Introduction 00:03:15 – Programming background and learning Python 00:07:59 – What’s been hard about learning a new language? 00:09:26 – Learning pip, managing packages, and suggesting uv 00:12:26 – Developer relations and sharing knowledge 00:14:40 – Sponsor: AMD - AIatAMD 00:15:17 – Moving things from Code Break to the blog 00:17:27 – Building a resume review and revise system with Gen AI 00:31:58 – Video Course Spotlight 00:33:16 – Adding the revision step 00:35:59 – Exploring code assistance 00:38:52 – Changing into the developer relations role 00:41:40 – Using Diffbot and Pipedream for sentiment analysis project 00:48:06 – Pipedream workflow with Python scripts 00:53:28 – What are you excited about in the world of Python? 00:55:45 – What do you want to learn next? 00:57:45 – How can people follow your work online? 00:58:03 – Thanks and goodbye Show Links: Raymond Camden Code Break - CFE.dev Exploring AI with Gemini and Transformers.js - CFE.dev Building a Resume Review and Revise System with Generative AI and Flask Flask Qu
Reviews
No reviews yet.
If you like this...

Talk Python To Me
Same topic · Same format · Same audience

Python Bytes
Same topic · Same audience · Same format

Django Chat
Same topic · Same audience · Same format

The Python Podcast.__init__
Same topic · Same audience · Same format

Test & Code
Same audience · Same topic · Same tone

Django Riffs
Same topic · Same audience · Same tone

The Changelog: Software Development, Open Source
Same format · Same audience · Same vibe

Software Engineering Daily
Same format · Same audience · Same topic

The a16z Show
Same topic · Same audience · Same format

Decrypt News
Same topic · Same audience
Explore more like this
Listening context
Discussion (0)
No comments yet. Be the first to start the discussion!