
Episode 252
Rodrigo Girão Serrão: Python Training, itertools, and Idioms
The Real Python Podcast · Real Python
June 6, 20251h 2m
Audio is streamed directly from the publisher (dts.podtrac.com) as published in their RSS feed. Play Podcasts does not host this file. Rights-holders can request removal through the copyright & takedown page.
Show Notes
<p>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? How can Python’s built-in itertools library enhance your skills? This week on the show, we speak with Rodrigo Girão Serrão about teaching Python through his blog and his passion for the itertools library.</p>
<p>We discuss Rodrigo’s different approaches to writing on his blog. He likes to document smaller concepts about Python and building code in his “Today I Learned” series. He’s also been collecting advice about the best way to use core Python features in another series called “Pydon’ts.”</p>
<p>We cover his recent PyCon US tutorial about the built-in itertools module. The functions contained in the module create iterators for efficient looping. We discuss the categories of tools inside the collection and ways to simplify your code.</p>
<p>We also explore the concept of vocabulary versus idioms in writing. Idioms are a group of words that hold a symbolic meaning that goes beyond the literal meaning of the individual words. We dig into how that applies to learning Python and building a personal collection of programming idioms.</p>
<p>This episode is sponsored by AMD.</p>
<div class="alert alert-primary" role="alert">
<p><strong>Course Spotlight:</strong> <a href="https://realpython.com/courses/missing-data-polars/">Working With Missing Data in Polars</a></p>
<p>In this video course, you’ll learn how to deal with missing data in Polars to ensure it doesn’t interfere with your data analysis. You’ll discover how to check for missing values, update them, and remove them.</p>
</div>
<p>Topics:</p>
<ul>
<li>00:00:00 – Introduction</li>
<li>00:02:34 – Creating Polars video course</li>
<li>00:03:27 – How did you start programming and teaching Python?</li>
<li>00:04:59 – Where did mathspp come from?</li>
<li>00:05:38 – Exploring math and programming in university</li>
<li>00:07:48 – Learning APL</li>
<li>00:09:24 – What goes into building the blog?</li>
<li>00:15:05 – The Pydon’ts and writing books</li>
<li>00:18:37 – PyCon US 2025</li>
<li>00:20:46 – Sponsor: AMD</li>
<li>00:21:23 – Teaching a tutorial about itertools</li>
<li>00:28:58 – Categorizing itertools</li>
<li>00:40:39 – Video Course Spotlight</li>
<li>00:41:55 – The difference between me and Shakespeare</li>
<li>00:46:51 – Learning and practicing with idioms</li>
<li>00:51:01 – TIL and asking questions</li>
<li>00:53:54 – What are you excited about in the world of Python?</li>
<li>00:55:40 – What do you want to learn next?</li>
<li>00:57:35 – How can people follow your work online?</li>
<li>01:01:19 – Thanks and goodbye</li>
</ul>
<p>Show Links:</p>
<ul>
<li><a href="https://mathspp.com/blog">mathspp blog</a></li>
<li><a href="https://mathspp.com/blog/til">TIL (Today I Learned) - mathspp</a></li>
<li><a href="https://realpython.com/courses/missing-data-polars/">Working With Missing Data in Polars</a></li>
<li><a href="https://www.oxfordreference.com/display/10.1093/acref/9780191843730.001.0001/q-oro-ed5-00011125">Paul Valéry - “A poem is never finished” - Oxford Reference</a></li>
<li><a href="https://mathspp.com/blog/personal-highlights-of-pycon-us-2025">Personal highlights of PyCon US 2025 - mathspp</a></li>
<li><a href="https://www.youtube.com/watch?v=Uuhu-F05A7k">PyCon US 2025 Lightning Talks - Friday, May 16th, 2025 PM - YouTube</a></li>
<li><a href="https://www.youtube.com/watch?v=xumSsPlhB2o">PyCon US 2025 Tutorial Sneak Peek: “Reimplement <code>itertools</code> for fun & profit” Rodrigo Girão Serrão - YouTube</a></li>
<li><a href="https://en.wikipedia.org/wiki/Alan_Perlis">Alan Perlis - Wikipedia</a></li>
<li><a href="https://web.archive.org/web/19990117034445/http://www-pu.informatik.uni-tuebingen.de/users/klaeren/epigrams.html">Epigrams on Programming</a></li>
<li><a href="https://mathspp.com/blog/what-learning-apl-taught-me-about-python">What learning APL taught me about Python - mathspp</a></li>
<li><a href="https://www.youtube.com/watch?v=vCMoWPTPdXo">What APL taught me about Python ⚡️ – lightning talk by Rodrigo Girão Serrão at EuroPython 2023 - YouTube</a></li>
<li><a href="https://docs.python.org/3/library/itertools.html">itertools — Functions creating iterators for efficient looping — Python 3.13.4 documentation</a></li>
<li><a href="https://mathspp.com/blog/module-itertools-overview">Module itertools overview - mathspp</a></li>
<li><a href="https://mathspp.com/books/the-little-book-of-itertools">The little book of itertools - mathspp</a></li>
<li><a href="https://realpython.com/python-itertools/">Python itertools By Example – Real Python</a></li>
<li><a href="https://docs.python.org/3.15/whatsnew/3.14.html">What’s new in Python 3.14 — Python 3.15.0a0 documentation</a></li>
<li><a href="https://www.beehiiv.com/">beehiiv — The newsletter platform built for growth</a></li>
<li><a href="https://mathspp.com/drops">Python drops 🐍💧 newsletter - mathspp</a></li>
<li><a href="https://mathspp.com/books">Books - mathspp</a></li>
<li><a href="https://bsky.app/profile/mathspp.com">Rodrigo Girão Serrão 🐍🚀 (@mathspp.com) — Bluesky</a></li>
<li><a href="https://www.linkedin.com/in/rodrigo-gir%C3%A3o-serr%C3%A3o/">Rodrigo Girão Serrão - LinkedIn</a></li>
<li><a href="https://fosstodon.org/@mathsppblog">Rodrigo 🐍🚀 (@[email protected]) - Fosstodon</a></li>
<li><a href="https://x.com/mathsppblog">Rodrigo 🐍🚀 (@mathsppblog) / X</a></li>
</ul>
<p>Level up your Python skills with our expert-led courses:</p>
<ul>
<li><a href="https://realpython.com/courses/efficient-iterations-iterators-iterables/">Efficient Iterations With Python Iterators and Iterables</a></li>
<li><a href="https://realpython.com/courses/working-with-python-polars/">Working With Python Polars</a></li>
<li><a href="https://realpython.com/courses/missing-data-polars/">Working With Missing Data in Polars</a></li>
</ul> <p><a rel="payment" href="https://realpython.com/join">Support the podcast & join our community of Pythonistas</a></p>