The Real Python Podcast - podcast cover

The Real Python Podcast

Real Pythonrealpython.com
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.
Last refreshed:
Follow this podcast in the Metacast mobile app to refresh it and see new episodes.
Download Metacast podcast app
Podcasts are better in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Episodes

Charlie Marsh: Accelerating Python Tooling With Ruff and uv

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? This week on the show, we speak with Charlie Marsh about his company, Astral, and their tools, uv and Ruff. Charlie started working on Ruff as a proof of concept, stating that Python tooling could be much faster. He had seen similar gains in JavaScript tools written in Rust. The project started as a speedy linter with a small ruleset. It’s grown to ...

Feb 07, 20251 hr 31 minEp. 238

Testing Your Python Code Base: Unit vs. Integration

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 runs? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We discuss a recent article from Semaphore about unit testing vs. integration testing. Christopher shares his experiences setting up automated tests for his own smaller projects. He also answers questions about building tests in a...

Jan 31, 202554 minEp. 237

Simon Willison: Using LLMs for Python Development

What are the current large language model (LLM) tools you can use to develop Python? What prompting techniques and strategies produce better results? This week on the show, we speak with Simon Willison about his LLM research and his exploration of writing Python code with these rapidly evolving tools. Simon has been researching LLMs over the past two and a half years and documenting the results on his blog. He shares which models work best for writing Python versus JavaScript and compares coding...

Jan 24, 20251 hr 22 minEp. 236

Principles for Considering Your Python Tooling

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 right choices for your team? 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 effective Python developer tooling. Instead of digging into a list of current libraries, we talk about the principles you must consider before making decisions for your team...

Jan 17, 202547 minEp. 235

Building New Structures for Learning Python

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 educational resources for our audience of Python learners? This week on the show, Real Python core team members Stephen Gruppetta and Martin Breuss join us to discuss enhancements to the site and new ways to learn Python. Stephen has recently joined the team, bringing years of online training expertise. He discusses our new offering of cohort-based cour...

Jan 10, 202552 minEp. 234

PyCoder's Weekly 2024 Top Articles & Missing Gems

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 to help wrap it all up by sharing some highlights and uncovering a few missing gems from the pile. We share the top links that PyCoder’s readers explored this year and uncover trends across all the articles and stories. We also 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 y...

Jan 03, 202541 minEp. 233

Exploring Modern Sentiment Analysis Approaches in Python

What are the current approaches for analyzing emotions within a piece of text? Which tools and Python packages should you use for sentiment analysis? This week, Jodie Burchell, developer advocate for data science at JetBrains, returns to the show to discuss modern sentiment analysis in Python. Jodie holds a PhD in clinical psychology. We discuss how her interest in studying emotions has continued throughout her career. In this episode, Jodie covers three ways to approach sentiment analysis. We s...

Dec 20, 20241 hr 13 minEp. 232

Good Python Programming Practices When New to the Language

What advice would you give to someone moving from another language to Python? What good programming practices are inherent to the language? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We discuss an older forum post from a new Python user who came from Perl. We suggest checking out PEP 8, or as it’s commonly known, “The Style Guide for Python Code.” We provide advice about installing Python, avoiding common pitfalls, learnin...

Dec 06, 202451 minEp. 231

marimo: Reactive Notebooks and Deployable Web Apps in Python

What are common issues with using notebooks for Python development? How do you know the current state, share reproducible results, or create interactive applications? This week on the show, we speak with Akshay Agrawal about the open-source reactive marimo notebook for Python. Before writing any code, Akshay wrote a 2,500-word design document. He wanted to create a maintainable and reproducible tool that avoided the hidden state of traditional notebooks. We discuss solving the hidden state probl...

Nov 29, 20241 hr 1 minEp. 230

The Joy of Tinkering & Python Free-Threading Performance

What keeps your spark alive for developing software and learning Python? Do you like to try new frameworks, build toy projects, or collaborate with other developers? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We discuss the joy of tinkering with Python as a way to keep your developer skills sharp. We dig into our techniques for continuing to learn and build projects. Christopher shares an article that examines the performa...

Nov 22, 202446 minEp. 229

Maintaining the Foundations of Python & Cautionary Tales

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 WordPress community is going through? This week on the show, we speak with Paul Everitt from JetBrains about navigating open-source funding and the start of the Python Software Foundation. Paul has been an organizer in the Python community almost from the beginning. He shares how the project has navigated through multiple sponsors. We talk about the ea...

Nov 15, 20241 hr 9 minEp. 228

New PEPs: Template Strings & External Wheel Hosting

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 injection attacks? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We discuss a set of recent Python Enhancement Proposals (PEPs). The idea of template strings has been under consideration for a while, and PEP 750 describes a new way forward. PEP 759 proposes a way for projects on PyPI...

Nov 08, 202448 minEp. 227

PySheets: Spreadsheets in the Browser Using PyScript

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 cells of data? This week on the show, we speak with Chris Laffra about his project, PySheets, and his book “Communication for Engineers.” As a software engineer, Chris has worked at IBM, Google, Uber, and several financial institutions. He speaks about developer productivity and communication skills as an engineer. We begin our conversation by diggin...

Nov 01, 20241 hr 20 minEp. 226

Python Getting Faster and Leaner & Ideas for Django Projects

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 coming years? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher shares an article about Python’s recent performance improvements. The piece covers the specialized adaptive interpreter and explains what those terms mean. It also includes details about the experimental featur...

Oct 25, 202443 minEp. 225

Narwhals: Expanding DataFrame Compatibility Between Libraries

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 formats like Polars or PyArrow? This week on the show, we speak with Marco Gorelli about his project, Narwhals. Narwhals is a project aimed at library maintainers rather than end users. We discuss how the added compatibility benefits users by supporting modern features like lazy evaluation. We cover several projects Marco has been working with to i...

Oct 18, 20241 hr 1 minEp. 224

Exploring the New Features of Python 3.13

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 a series of preview articles with members of the Real Python team and a showcase tutorial, “Python 3.13: Cool New Features for You to Try.” Christopher’s video course “What’s New in Python 3.13” covers the topics from the article and shows the new features in action. Geir Arne and Christopher dug into the release to create code examples of the new...

Oct 11, 202455 minEp. 223

Using Virtual Environments in Docker & Comparing Python Dev Tools

Should you use a Python virtual environment in a Docker container? What are the advantages of using the same development practices locally and inside a container? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We share a recent post by Hynek Schlawack about building Python projects using Docker containers. Hynek argues for using virtual environments for these projects, like developing a local one. He’s found that keeping your ...

Sep 27, 202456 minEp. 222

Thriving as a Developer With ADHD

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 week on the show, we speak with Chris Ferdinandi about his website and podcast “ADHD For the Win!” Chris struggled with productivity early in his career as a developer. He shares systems and strategies he’s discovered to harness the focusing power of ADHD. We discuss time management, meetings, and maintaining productivity in a hectic world. Chris als...

Sep 20, 20241 hr 7 minEp. 221

Configuring Git Pre-Commit Hooks & Estimating Software Projects

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? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We share a trio of articles by previous guest Stefanie Molin about Git pre-commit hooks. Across the series, she provides step-by-step instructions for building your own hooks, managing them, and learning how they operate. We discuss the pro...

Sep 13, 202454 minEp. 220

Astrophysics and Astronomy With Python & PyCon Africa 2024

Are you interested in practicing your Python skills while learning how to solve astrophysics and astronomy problems? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher shares a pair of his recent Real Python video courses about exploring astronomy and astrophysics with Python. Throughout the courses, you’ll get to practice using a variety of data science libraries, such as NumPy, Matplotlib, pandas, pint, and Astropy. ...

Sep 06, 20241 hr 6 minEp. 219

Exploring Robotics and Python Through Electronic Projects

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, we speak with author Marwan Alsabbagh about his book “Build Your Own Robot - Using Python, CRICKIT, and Raspberry Pi.” Marwan discusses his two conferences talks about building electronics projects with his children. He provides advice on equipment and techniques to make learning Python engaging. We explore his robotics project and the literal bal...

Aug 23, 20241 hr 6 minEp. 218

Packaging Data Analyses & Using pandas GroupBy

What are the best practices for organizing data analysis projects in Python? What are the advantages of a more package-centric approach to data science? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. We discuss Joshua Cook’s recent article “How I Use Python to Organize My Data Analyses.” The article covers how his process for building data analysis projects has evolved and now incorporates modern Python packaging techniques. C...

Aug 16, 202455 minEp. 217

Learning Through Building the Black Python Devs Community

What hurdles must be cleared when starting an international organization? How do you empower others in a community by sharing responsibilities? This week on the show, we speak with Jay Miller about Black Python Devs. Jay shares how the idea of forming a community began through attending conferences. They wanted to welcome more black developers into the Python community. We discuss the introduction of Black Python Devs as part of their PyCon 2024 keynote presentation. Jay explains working with a ...

Aug 09, 20241 hr 12 minEp. 216

Using GraphQL in Django With Strawberry & Prototype Purgatory

How do you integrate GraphQL into your Python web development? How about quickly building graph-based APIs inside Django’s battery-included framework? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher shares a recent tutorial for building GraphQL APIs in Django using the Python library Strawberry. The tutorial digs into creating a project, defining models, and creating GraphQL queries and mutations using Strawberry. W...

Aug 02, 202449 minEp. 215

Build Captivating Display Tables in Python With Great Tables

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 and graphs in Python? This week on the show, we speak with Richard Iannone and Michael Chow from Posit about the Great Tables Python library. Michael and Richard discuss the design philosophy and history behind creating display tables. We dig into the grammar of tables, the background of the project, and an ingenious way to build a collection of exa...

Jul 26, 20241 hr 11 minEp. 214

Constraint Programming & Exploring Python's Built-in Functions

What are discrete optimization problems? How do you solve them with constraint programming in Python? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects Christopher discusses an article about constraint programming using Python. He describes the fundamentals and how the problems resemble logic problems you may have experienced in school. The article shows how to solve a weekly work scheduling problem using the open-source CP-SAT pa...

Jul 19, 202448 minEp. 213

Digging Into Graph Theory in Python With David Amos

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 more? This week on the show, former co-host David Amos returns to talk about what he’s been up to and share his knowledge about graph theory in Python. David started a Ph.D. program studying mathematics, with a focus on graph theory. Though life interrupted his pursuit after three years, he is still passionate about the subject. He’s been using the...

Jul 12, 20241 hr 4 minEp. 212

Python Doesn't Round Numbers the Way You Might Think

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 ways to round numbers in Python. Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher discusses his recent video course, “Rounding Numbers in Python.” He covers rounding bias and how to avoid introducing it into your dataset. We dig into the various rounding strategies and how...

Jul 05, 202449 minEp. 211

Creating a Guitar Synthesizer & Generating WAV Files With Python

What techniques go into synthesizing a guitar sound in Python? What higher-level programming and Python concepts can you practice while building advanced projects? This week on the show, we talk with Real Python author and core team member Bartosz Zaczyński about his recent step-by-step project, Build a Guitar Synthesizer: Play Musical Tablature in Python. Bartosz shares how he had built an early prototype of the guitar synth using a different language. He describes recreating the Karplus-Strong...

Jun 28, 202456 minEp. 210

Python's Command-Line Utilities & Music Information Retrieval Tools

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? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects. Christopher shares an article by Trey Hunner about Python’s extensive collection of command-line utilities? The piece digs into general-purpose tools that format JSON data or start a simple web server and additional utilities for working ...

Jun 21, 202451 minEp. 209
For the best experience, listen in Metacast app for iOS or Android