The Real Python Podcast
Episodes
Limitations in Human and Automated Code Review
27 Mar 2026
Contributed by Lukas
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 wher...
Automate Exploratory Data Analysis & Invent Python Comprehensions
20 Mar 2026
Contributed by Lukas
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...
Crafting and Editing In-Depth Tutorials at Real Python
13 Mar 2026
Contributed by Lukas
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? ...
Overcoming Testing Obstacles With Python's Mock Object Library
27 Feb 2026
Contributed by Lukas
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 im...
Exploring MCP Apps & Adding Interactive UIs to Clients
20 Feb 2026
Contributed by Lukas
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,...
Running Local LLMs With Ollama and Connecting With Python
13 Feb 2026
Contributed by Lukas
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 ...
Improving Your GitHub Developer Experience
06 Feb 2026
Contributed by Lukas
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, ...
Testing Python Code for Scalability & What's New in pandas 3.0
30 Jan 2026
Contributed by Lukas
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? Christo...
Continuing to Improve the Learning Experience at Real Python
23 Jan 2026
Contributed by Lukas
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 th...
Considering Fast and Slow in Python Programming
16 Jan 2026
Contributed by Lukas
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 whi...
Coding Python With Confidence: Beginners Live Course Participants
09 Jan 2026
Contributed by Lukas
Are you looking for that solid foundation to begin your Python journey? Would the accountability of scheduled group classes help you get through the b...
PyCoder's Weekly 2025 Top Articles & Hidden Gems
02 Jan 2026
Contributed by Lukas
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...
Moving Towards Spec-Driven Development
19 Dec 2025
Contributed by Lukas
What are the advantages of spec-driven development compared to vibe coding with an LLM? Are these recent trends a move toward declarative programming?...
Exploring Quantum Computing & Python Frameworks
05 Dec 2025
Contributed by Lukas
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 t...
Building a FastAPI Application & Exploring Python Concurrency
21 Nov 2025
Contributed by Lukas
What are the steps to get started building a FastAPI application? What are the different types of concurrency available in Python? Christopher Trudeau...
Preparing Data Science Projects for Production
14 Nov 2025
Contributed by Lukas
How do you prepare your Python data science projects for production? What are the essential tools and techniques to make your code reproducible, organ...
Advice for Writing Maintainable Python Code
07 Nov 2025
Contributed by Lukas
What are techniques for writing maintainable Python code? How do you make your Python more readable and easier to refactor? Christopher Trudeau is bac...
Michael Kennedy: Managing Your Own Python Infrastructure
31 Oct 2025
Contributed by Lukas
How do you deploy your Python application without getting locked into an expensive cloud-based service? This week on the show, Michael Kennedy from th...
Benchmarking Python 3.14 & Enabling Asyncio to Scale
24 Oct 2025
Contributed by Lukas
How does Python 3.14 perform under a few hand-crafted benchmarks? Does the performance of asyncio scale on the free-threaded build? Christopher Trudea...
Evolving Teaching Python in the Classroom
17 Oct 2025
Contributed by Lukas
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...
Python 3.14: Exploring the New Features
10 Oct 2025
Contributed by Lukas
Python 3.14 is here! Christopher Trudeau returns to discuss the new version with Real Python team member Bartosz Zaczyński. This year, Bartosz coordi...
Advice on Beginning to Learn Python
03 Oct 2025
Contributed by Lukas
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...
Managing Feature Flags & Comparing Python Visualization Libraries
26 Sep 2025
Contributed by Lukas
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...
Dangers of Automatically Converting a REST API to MCP
19 Sep 2025
Contributed by Lukas
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’...
Python App Hosting Choices & Documenting Python's History
12 Sep 2025
Contributed by Lukas
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 se...
Large Language Models on the Edge of the Scaling Laws
05 Sep 2025
Contributed by Lukas
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 benchmark...
Exploring Mixin Classes in Python
29 Aug 2025
Contributed by Lukas
What is a good way to add isolated, reusable functionality to Python classes? Christopher Trudeau is back on the show this week, bringing another batc...
Travis Oliphant: SciPy, NumPy, and Fostering Scientific Python
22 Aug 2025
Contributed by Lukas
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 wo...
Selecting Inheritance or Composition in Python
15 Aug 2025
Contributed by Lukas
When considering an object-oriented programming problem, should you prefer inheritance or composition? Why wouldn't it just be simpler to use function...
Harnessing the Power of Python Polars
08 Aug 2025
Contributed by Lukas
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? ...
Design Patterns That Don't Translate to Python
01 Aug 2025
Contributed by Lukas
Do the design patterns learned in other programming languages translate to coding in Python? Christopher Trudeau is back on the show this week, bringi...
Supporting the Python Package Index
25 Jul 2025
Contributed by Lukas
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 Mari...
Comparing Real-World Python Performance Against Big O
11 Jul 2025
Contributed by Lukas
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 wh...
Solving Problems and Saving Time in Chemistry With Python
04 Jul 2025
Contributed by Lukas
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 t...
Structuring Python Scripts & Exciting Non-LLM Software Trends
27 Jun 2025
Contributed by Lukas
What goes into crafting an effective Python script? How do you organize your code, manage dependencies with PEP 723, and handle command-line arguments...
Scaling Python Web Applications With Kubernetes and Karpenter
20 Jun 2025
Contributed by Lukas
What goes into scaling a web application today? What are resources for learning and practicing DevOps skills? This week on the show, Calvin Hendryx-Pa...
Starting With marimo Notebooks & Python App Config Management
13 Jun 2025
Contributed by Lukas
Looking for a guide on getting started with marimo notebooks? How do you build a reproducible notebook for sharing or create a dashboard with interact...
Rodrigo Girão Serrão: Python Training, itertools, and Idioms
06 Jun 2025
Contributed by Lukas
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? ...
Python Thread Safety & Managing Projects With uv
30 May 2025
Contributed by Lukas
What are the ways you can manage multithreaded code in Python? What synchronization techniques are available within Python's threading module? Christo...
DjangoCon Europe 2025: Live Recording From Dublin
23 May 2025
Contributed by Lukas
What goes into making video courses at Real Python? How should you build an installable Django application? Christopher Trudeau is back on the show th...
Going Beyond requirements.txt With pylock.toml and PEP 751
16 May 2025
Contributed by Lukas
What is the best way to record the Python dependencies for the reproducibility of your projects? What advantages will lock files provide for those pro...
Experiments With Gen AI, Knowledge Graphs, Workflows, and Python
09 May 2025
Contributed by Lukas
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 auto...
Exploring DuckDB & Comparing Python Expressions vs Statements
18 Apr 2025
Contributed by Lukas
Are you looking for a fast database that can handle large datasets in Python? What's the difference between a Python expression and a statement? Chris...
Learning Intermediate Python With a Deep Dive Course
11 Apr 2025
Contributed by Lukas
Do you want to learn deeper concepts in Python? Would the accountability of scheduled group classes help you get past the basics? This week, five Real...
GUIs & TUIs: Choosing a User Interface for Your Python Project
04 Apr 2025
Contributed by Lukas
What are the current Python graphical user interface libraries? Should you build everything in the terminal and create a text-based user interface ins...
A Decade of Automating the Boring Stuff With Python
21 Mar 2025
Contributed by Lukas
What goes into updating one of the most popular books about working with Python? After a decade of changes in the Python landscape, what projects, lib...
Manage Projects With pyproject.toml & Explore Polars LazyFrames
14 Mar 2025
Contributed by Lukas
How can you simplify the management of your Python projects with one file? What are the advantages of using LazyFrames in Polars? Christopher Trudeau ...
Eric Matthes: Maybe Don't Start With Unit Tests
07 Mar 2025
Contributed by Lukas
Should you always start testing your code with unit tests? When does it make sense to look at integration or end-to-end testing as a first step instea...
Deciphering Python Jargon & Compiling Python 1.0
28 Feb 2025
Contributed by Lukas
How do you learn the terms commonly used when speaking about Python? How is the jargon similar to other programming languages? Christopher Trudeau is ...
Telling Effective Stories With Your Python Visualizations
21 Feb 2025
Contributed by Lukas
How do you make compelling visualizations that best convey the story of your data? What methods can you employ within popular Python tools to improve ...
Behavior-Driven vs Test-Driven Development & Using Regex in Python
14 Feb 2025
Contributed by Lukas
What is behavior-driven development, and how does it work alongside test-driven development? How do you communicate requirements between teams in an o...
Charlie Marsh: Accelerating Python Tooling With Ruff and uv
07 Feb 2025
Contributed by Lukas
Are you looking for fast tools to lint your code and manage your projects? How is the Rust programming language being used to speed up Python tools? T...
Testing Your Python Code Base: Unit vs. Integration
31 Jan 2025
Contributed by Lukas
What goes into creating automated tests for your Python code? Should you focus on testing the individual code sections or on how the entire system run...
Simon Willison: Using LLMs for Python Development
24 Jan 2025
Contributed by Lukas
What are the current large language model (LLM) tools you can use to develop Python? What prompting techniques and strategies produce better results? ...
Principles for Considering Your Python Tooling
17 Jan 2025
Contributed by Lukas
What are the principles you should consider when making decisions about which Python tools to use? What anti-patterns get in the way of making the rig...
Building New Structures for Learning Python
10 Jan 2025
Contributed by Lukas
What are the new ways we can teach and share our knowledge about Python? How can we improve the structure of our current offerings and build new educa...
PyCoder's Weekly 2024 Top Articles & Missing Gems
03 Jan 2025
Contributed by Lukas
PyCoder's Weekly included over 1,500 links to articles, blog posts, tutorials, and projects in 2024. Christopher Trudeau is back on the show this week...
Exploring Modern Sentiment Analysis Approaches in Python
20 Dec 2024
Contributed by Lukas
What are the current approaches for analyzing emotions within a piece of text? Which tools and Python packages should you use for sentiment analysis? ...
Good Python Programming Practices When New to the Language
06 Dec 2024
Contributed by Lukas
What advice would you give to someone moving from another language to Python? What good programming practices are inherent to the language? Christophe...
marimo: Reactive Notebooks and Deployable Web Apps in Python
29 Nov 2024
Contributed by Lukas
What are common issues with using notebooks for Python development? How do you know the current state, share reproducible results, or create interacti...
The Joy of Tinkering & Python Free-Threading Performance
22 Nov 2024
Contributed by Lukas
What keeps your spark alive for developing software and learning Python? Do you like to try new frameworks, build toy projects, or collaborate with ot...
Maintaining the Foundations of Python & Cautionary Tales
15 Nov 2024
Contributed by Lukas
How do you build a sustainable open-source project and community? What lessons can be learned from Python's history and the current mess that the Word...
New PEPs: Template Strings & External Wheel Hosting
08 Nov 2024
Contributed by Lukas
Have you wanted the flexibility of f-strings but need safety checks in place? What if you could have deferred evaluation for logging or avoiding injec...
PySheets: Spreadsheets in the Browser Using PyScript
01 Nov 2024
Contributed by Lukas
What goes into building a spreadsheet application in Python that runs in the browser? How do you make it launch quickly, and where do you store the ce...
Python Getting Faster and Leaner & Ideas for Django Projects
25 Oct 2024
Contributed by Lukas
What changes are happening under the hood in the latest versions of Python? How are these updates laying the groundwork for a faster Python in the com...
Narwhals: Expanding DataFrame Compatibility Between Libraries
18 Oct 2024
Contributed by Lukas
How does a Python tool support all types of DataFrames and their various features? Could a lightweight library be used to add compatibility for newer ...
Exploring the New Features of Python 3.13
11 Oct 2024
Contributed by Lukas
Python 3.13 is here! Our regular guests, Geir Arne Hjelle and Christopher Trudeau, return to discuss the new version. This year, Geir Arne coordinated...
Using Virtual Environments in Docker & Comparing Python Dev Tools
27 Sep 2024
Contributed by Lukas
Should you use a Python virtual environment in a Docker container? What are the advantages of using the same development practices locally and inside ...
Thriving as a Developer With ADHD
20 Sep 2024
Contributed by Lukas
What are strategies for being a productive developer with ADHD? How can you help your team members with ADHD to succeed and complete projects? This we...
Configuring Git Pre-Commit Hooks & Estimating Software Projects
13 Sep 2024
Contributed by Lukas
How do you take advantage of Git pre-commit hooks? How do you build custom software checks and rules that run every time you commit your code? Christo...
Astrophysics and Astronomy With Python & PyCon Africa 2024
06 Sep 2024
Contributed by Lukas
Are you interested in practicing your Python skills while learning how to solve astrophysics and astronomy problems? Christopher Trudeau is back on th...
Exploring Robotics and Python Through Electronic Projects
23 Aug 2024
Contributed by Lukas
Are you interested in learning robotics with Python? Can physical electronics-based projects grow a child's interest in coding? This week on the show,...
Packaging Data Analyses & Using pandas GroupBy
16 Aug 2024
Contributed by Lukas
What are the best practices for organizing data analysis projects in Python? What are the advantages of a more package-centric approach to data scienc...
Learning Through Building the Black Python Devs Community
09 Aug 2024
Contributed by Lukas
What hurdles must be cleared when starting an international organization? How do you empower others in a community by sharing responsibilities? This w...
Using GraphQL in Django With Strawberry & Prototype Purgatory
02 Aug 2024
Contributed by Lukas
How do you integrate GraphQL into your Python web development? How about quickly building graph-based APIs inside Django's battery-included framework?...
Build Captivating Display Tables in Python With Great Tables
26 Jul 2024
Contributed by Lukas
Do you need help making data tables in Python look interesting and attractive? How can you create beautiful display-ready tables as easily as charts a...
Constraint Programming & Exploring Python's Built-in Functions
19 Jul 2024
Contributed by Lukas
What are discrete optimization problems? How do you solve them with constraint programming in Python? Christopher Trudeau is back on the show this wee...
Digging Into Graph Theory in Python With David Amos
12 Jul 2024
Contributed by Lukas
Have you wondered about graph theory and how to start exploring it in Python? What resources and Python libraries can you use to experiment and learn ...
Python Doesn't Round Numbers the Way You Might Think
05 Jul 2024
Contributed by Lukas
Does Python round numbers the same way you learned back in math class? You might be surprised by the default method Python uses and the variety of way...
Creating a Guitar Synthesizer & Generating WAV Files With Python
28 Jun 2024
Contributed by Lukas
What techniques go into synthesizing a guitar sound in Python? What higher-level programming and Python concepts can you practice while building advan...
Python's Command-Line Utilities & Music Information Retrieval Tools
21 Jun 2024
Contributed by Lukas
What are the built-in Python modules that can work as useful command-line tools? How can these tools add more functionality to Windows machines? Chris...
Detecting Outliers in Your Data With Python
14 Jun 2024
Contributed by Lukas
How do you find the most interesting or suspicious points within your data? What libraries and techniques can you use to detect these anomalies with P...
Decomposing Software Problems & Avoiding the Trap of Clever Code
07 Jun 2024
Contributed by Lukas
How do you effectively break a software problem into individual steps? What are signs you're writing overly clever code? Christopher Trudeau is back o...
Building Python Unit Tests & Exploring a Data Visualization Gallery
31 May 2024
Contributed by Lukas
How do you start adding unit tests to your Python code? Can the built-in unittest framework cover most or all of your needs? Christopher Trudeau is ba...
Considering Accessibility & Assistive Tech as a Python Developer
17 May 2024
Contributed by Lukas
What's it like to learn Python as a visually impaired or blind developer? How can you improve the accessibility of your Python web applications and le...
Querying OpenStreetMaps via API & Lazy Evaluation in Python
10 May 2024
Contributed by Lukas
Would you like to get more practice working with APIs in Python? How about exploring the globe using the data from OpenStreetMap? Christopher Trudeau ...
Embarking on a Relaxed and Friendly Python Coding Journey
03 May 2024
Contributed by Lukas
Do you get stressed while trying to learn Python? Do you prefer to build small programs or projects as you continue your coding journey? This week on ...
Pydantic Data Validation & Python Web Security Practices
26 Apr 2024
Contributed by Lukas
How do you verify and validate the data coming into your Python web application? What tools and security best practices should you consider as a devel...
Decoupling Systems to Get Closer to the Data
19 Apr 2024
Contributed by Lukas
What are the benefits of using a decoupled data processing system? How do you write reusable queries for a variety of backend data platforms? This wee...
Avoiding Error Culture and Getting Help Inside Python
12 Apr 2024
Contributed by Lukas
What is error culture, and how do you avoid it within your organization? How do you navigate alert and notification fatigue? Hey, it's episode #200! R...
Leveraging Documents and Data to Create a Custom LLM Chatbot
05 Apr 2024
Contributed by Lukas
How do you customize a LLM chatbot to address a collection of documents and data? What tools and techniques can you use to build embeddings into a vec...
Build a Video Game With Python Turtle & Visualize Data in Seaborn
29 Mar 2024
Contributed by Lukas
Can you build a Space Invaders clone using Python's built-in turtle module? What advantages does the Seaborn data visualization library provide compar...
Using Python in Bioinformatics and the Laboratory
22 Mar 2024
Contributed by Lukas
How is Python being used to automate processes in the laboratory? How can it speed up scientific work with DNA sequencing? This week on the show, Chem...
Exploring Duck Typing in Python & Dynamics of Monkey Patching
15 Mar 2024
Contributed by Lukas
What are the advantages of determining the type of an object by how it behaves? What coding circumstances are not a good fit for duck typing? Christop...
Building a Healthy Developer Mindset While Learning Python
08 Mar 2024
Contributed by Lukas
How do you get yourself unstuck when facing a programming problem? How do you develop a positive developer mindset while learning Python? This week on...
Automate Tasks With Python & Building a Small Search Engine
01 Mar 2024
Contributed by Lukas
What are the typical computer tasks you do manually every week? Could you automate those tasks with a Python script? Christopher Trudeau is back on th...
Wes McKinney on Improving the Data Stack & Composable Systems
23 Feb 2024
Contributed by Lukas
How do you avoid the bottlenecks of data processing systems? Is it possible to build tools that decouple storage and computation? This week on the sho...
Practical Python Decorator Uses & Avoiding datetime Pitfalls
16 Feb 2024
Contributed by Lukas
What are real-life examples of using Python decorators? How can you harness their power in your code? Christopher Trudeau is back on the show this wee...
Focusing on Data Science & Less on Engineering and Dependencies
09 Feb 2024
Contributed by Lukas
How do you manage the dependencies of a large-scale data science project? How do you migrate that project from a laptop to cloud infrastructure or uti...
Great Starting Points for Contributing to Open Source
02 Feb 2024
Contributed by Lukas
What's it like to sit down for your first developer sprint at a conference? How do you find an appropriate issue to work on as a new open-source contr...