The Real Python Podcast

Considering Fast and Slow in Python Programming


Listen Later

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.
    • 2025 Python Year in Review – Talk Python interviews Barry Warsaw, Brett Cannon, Gregory Kapfhammer, Jodie Burchell, Reuven Lerner, and Thomas Wouters, and the panel discusses what mattered for Python in 2025.
    • PyPI in 2025: A Year in Review – Dustin summarizes all the happenings with the Python Packaging Index in 2025, including 130,000 new projects and over 2.5 trillion requests served.
    • Join in the PSF Year-End Fundraiser & Membership Drive!
    • Topics:

      • How uv Got So Fast – uv’s speed comes from engineering decisions, not just Rust. Static metadata, dropping legacy formats, and standards that didn’t exist five years ago.
      • Why Python’s deepcopy Can Be So Slow – “Python’s copy.deepcopy() creates a fully independent clone of an object, traversing every nested element of the object graph.” That can be expensive. Learn what it’s doing and how you can sometimes avoid the cost.
      • Serve a Website With FastAPI Using HTML and Jinja2 – Use FastAPI to render Jinja2 templates and serve dynamic sites with HTML, CSS, and JavaScript, then add a color picker that copies hex codes.
      • The Uselessness of “Fast” and “Slow” in Programming – “One of the unique aspects of software is how it spans such a large number of orders of magnitude.” The huge difference makes the terms “fast” and “slow” arbitrary. Read on to discover how this affects our thinking as programmers and what mistakes it can cause.
      • Python Numbers Every Programmer Should Know – Ever wonder how much memory an empty list takes? How about how long it takes to add two integers in Python? This post contains loads of performance data for common Python operations.
      • Discussion:

        • Spec-Driven Development: The Waterfall Strikes Back
        • Coding has never been the bottleneck - Rob Bowley
        • Projects:

          • x-ray: A Tool to Detect Whether a PDF Has a Bad Redaction
          • httptap: CLI Measuring HTTP Request Phases
          • Additional Links:

            • Episode #238: Charlie Marsh: Accelerating Python Tooling With Ruff and uv – The Real Python Podcast
            • Primer on Jinja Templating – Real Python
            • Get Started With FastAPI – Real Python
            • Teach Yourself Programming in Ten Years
            • Level up your Python skills with our expert-led courses:

              • Python REST APIs With FastAPI
              • Creating a Scalable Flask Web Application From Scratch
              • Jinja Templating
              • Support the podcast & join our community of Pythonistas

                ...more
                View all episodesView all episodes
                Download on the App Store

                The Real Python PodcastBy Real Python

                • 4.7
                • 4.7
                • 4.7
                • 4.7
                • 4.7

                4.7

                139 ratings


                More shows like The Real Python Podcast

                View all
                The Changelog: Software Development, Open Source by Changelog Media

                The Changelog: Software Development, Open Source

                288 Listeners

                Software Engineering Daily by Software Engineering Daily

                Software Engineering Daily

                624 Listeners

                Talk Python To Me by Michael Kennedy

                Talk Python To Me

                580 Listeners

                Soft Skills Engineering by Jamison Dance and Dave Smith

                Soft Skills Engineering

                289 Listeners

                Super Data Science: ML & AI Podcast with Jon Krohn by Jon Krohn

                Super Data Science: ML & AI Podcast with Jon Krohn

                303 Listeners

                Python Bytes by Michael Kennedy and Brian Okken

                Python Bytes

                213 Listeners

                Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

                Syntax - Tasty Web Development Treats

                989 Listeners

                Darknet Diaries by Jack Rhysider

                Darknet Diaries

                8,086 Listeners

                Tech Brew Ride Home by Morning Brew

                Tech Brew Ride Home

                968 Listeners

                Practical AI by Practical AI LLC

                Practical AI

                198 Listeners

                AWS Podcast by Amazon Web Services

                AWS Podcast

                207 Listeners

                Django Chat by William Vincent and Carlton Gibson

                Django Chat

                75 Listeners

                Last Week in AI by Skynet Today

                Last Week in AI

                311 Listeners

                Machine Learning Street Talk (MLST) by Machine Learning Street Talk (MLST)

                Machine Learning Street Talk (MLST)

                95 Listeners

                The Pragmatic Engineer by Gergely Orosz

                The Pragmatic Engineer

                70 Listeners