Free-Threaded Pythons History & uv in Production | Real Python Podcast #303 @realpython
Free-Threaded Pythons History & uv in Production | Real Python Podcast #303  @realpython
Uploaded July 2026 | Updated September 2026, 2 weeks ago
How many attempts have been made to remove Python's Global Interpreter Lock (GIL)? How do they compare to the current approach? Christopher Trudeau is back on the show this week with another batch of PyCoder's Weekly articles and projects.

πŸ‘‰ Links from the show: realpython.com/podcasts/rpp/303

Christopher shares a recent article about Thomas Wouters' talk at PyCon US 2026. The talk, titled "Free-threaded Python: past, present, and future," covers the efforts to remove the GIL starting in 1996. He explains that threads are complex, but they allow multiple tasks to run concurrently within a single process and its address space.

The GIL is how CPython implements threading. The GIL protects Python objects and their reference counts, which determine the current objects in use. The talk also looks forward and shares the current work to remove the GIL, now named free-threaded Python, and the goals for the near future.

We also share other articles and projects from the Python community, including community announcements, a roundup of recent Real Python tutorials and video courses, using `uv` in Production, employing Wagtail as Django admin on steroids, managing and measuring Python code quality, a pure-Python implementation of `jq`, and a project to bring interactivity to plotnine.

Topics:

- 00:00:00 -- Introduction
- 00:03:08 -- PEP 836: JIT Go Brrr: The Path to a Supported JIT Compiler for CPython
- 00:04:34 -- PyCon US 2026 Videos Are Up
- 00:04:53 -- Thinking About Running for the PSF Board? Let's Talk!
- 00:05:30 -- How to Get Started With the GitHub Copilot CLI
- 00:06:27 -- Python 3.15 Preview: Upgraded JIT Compiler
- 00:07:23 -- Testing MCP Servers With a Python MCP Client
- 00:08:10 -- How to Use GitHub
- 00:08:50 -- Why I Wrote PEP 832: Virtual Environment Discovery
- 00:09:46 -- Free-Threaded Python: Past, Present, and Future
- 00:16:51 -- Sponsor: AURI by EndorLabs
- 00:17:38 -- `uv` in Production: The Speed Is Real, the Integration Isn't Free
- 00:26:18 -- Wagtail as Django Admin on Steroids
- 00:29:52 -- Video Course Spotlight
- 00:31:11 -- Managing and Measuring Python Code Quality
- 00:43:10 -- purejq: A Pure-Python Implementation of `jq`
- 00:46:41 -- ninejs: Bringing ✨interactivity✨ to plotnine
- 00:49:15 -- Thanks and goodbye

πŸ‘‰ Links from the show: realpython.com/podcasts/rpp/303

This episode is sponsored by [AURI by Endor Labs](endorlabs.com/platform/developer?utm_source=Real-python-podcast&utm_medium=video&utm_campaign=auri-for-developers)

Download your free Python Cheat Sheet here: realpython.com/cheatsheet
Free Python Skill Test with instant level + learning plan: realpython.com/skill-test
Want to learn faster? Become a Python Expert with unlimited access to 5,000+ tutorials, videos, and exercises: realpython.com/start

🐍 Become a Python expert with real-world tutorials, on-demand courses, interactive quizzes, and 24/7 access to a community of experts at realpython.com

β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°
🐍 Start Here β†’ realpython.com/start
πŸ—ΊοΈ Guided Learning Paths β†’ realpython.com/learning-paths
🎧 Real Python Podcast β†’ realpython.com/podcast

πŸ“š Python Books β†’ realpython.com/books
πŸ“– Python Reference β†’ realpython.com/ref
πŸ§‘β€πŸ’» Quizzes & Exercises β†’ realpython.com/quizzes

πŸŽ“ Live Courses: realpython.com/live
⭐️ Reviews & Learner Stories: realpython.com/learner-stories
β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°β–°
Free-Threaded Pythons History & uv in Production | Real Python Podcast #303Python for Beginners Information SessionWhat Are AI Skills and How Do They Actually Work?AI Agents Are Like Dogs: Trained but Unpredictableurllib vs Requests: Best Way to Download FilesBlock Ads and Take Control of Your Network!Model Context Protocol: Give AI the Context It NeedsCrisis Management PlaybookWhen to Push Back, When to Let GoAgile vs. Waterfall: Why Iteration Beats PlanningProgrammatically Developing LLM Prompts With DSPy | Real Python Podcast #306Stop AI From Missing Edge Cases
Real Python |

Free-Threaded Python's History & uv in Production | Real Python Podcast #303

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER