Episode 292: Becoming a Better Python Developer Through Learning Rust

The Real Python Podcast

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.

Episode Sponsor:

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.

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:

Show Links:

  • NumPy as Synth Engine – Kenneth has “recorded” a song in a Python script. The catch? No sampling, no recording, no pre-recorded sound. Everything was done through generating wave functions in NumPy. Learn how to become a mathematical musician.
  • Fire and Forget at Textual – In this follow up to a previous article (Fire and forget (or never) with Python’s asyncio, Michael discusses a similar article by Will McGugan as it relates to Textual. He found the problematic pattern in over 500K GitHub files.
  • Learning Rust Made Me a Better Python Developer – Bob thinks that learning Rust made him a better Python developer. Not because Rust is better, but because it made him think differently about how he has been writing Python. The compiler forced him to confront things he’d been ignoring.
  • Signals: State Management for Python Developers – If you’ve ever debugged why your cache didn’t invalidate or notifications stopped firing after a “simple” state change, this guide is for you. Signals are becoming a JavaScript standard, but Python developers can use the same patterns to eliminate “forgot to update that thing” bugs.

Projects:

Additional Links: