Episode 278: PyCoder's Weekly 2025 Top Articles & Hidden Gems
The Real Python Podcast
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 to help wrap up everything by sharing some highlights and uncovering a few hidden gems from the pile.
We share the top links explored by PyCoder’s readers. We also dig into trends across all the articles and stories this year. We 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 you enjoy this review! We look forward to bringing you an upcoming year full of great Python news, articles, topics, and projects.
Course Spotlight: Using Functional Programming in Python
Boost your Python skills with a quick dive into functional programming: what it is, how Python supports it, and why it matters.
Topics:
- 00:00:00 – Introduction
- 00:01:52 – Django 6.0 released
- 00:02:58 – The Inner Workings of Python Dataclasses Explained
- 00:03:40 – Going Beyond requirements.txt With pylock.toml and PEP 751
- 00:04:58 – Django vs. FastAPI, An Honest Comparison
- 00:05:46 – How to Use Loguru for Simpler Python Logging
- 00:06:47 – Narwhals: Unified DataFrame Functions
- 00:08:32 – Observations and statistics for the year of articles
- 00:13:23 – Data Validation Libraries for Polars (2025 Edition)
- 00:18:53 – Video Course Spotlight
- 00:20:25 – Create Temporary Files and Directories in Unittest
- 00:22:27 – Capture Stdout and Stderr in Unittest
- 00:24:59 – I don’t like NumPy
- 00:26:34 – Python performance myths and fairy tales
- 00:31:05 – Congratulations on making through 2025!
News:
Top PyCoders Links 2025:
- The Inner Workings of Python Dataclasses Explained – Discover how Python dataclasses work internally! Learn how to use
__annotations__andexec()to make our own dataclass decorator! - Episode #249: Going Beyond requirements.txt With pylock.toml and PEP 751 – What is the best way to record the Python dependencies for the reproducibility of your projects? What advantages will lock files provide for those projects? This week on the show, we welcome back Python Core Developer Brett Cannon to discuss his journey to bring PEP 751 and the pylock.toml file format to the community.
- Django vs. FastAPI, An Honest Comparison – David has worked with Django for a long time, but recently has done some deeper coding with FastAPI. As a result, he’s able to provide a good contrast between the libraries and why/when you might choose one over the other.
- How to Use Loguru for Simpler Python Logging – Real Python – In this tutorial, you’ll learn how to use Loguru to quickly implement better logging in your Python applications. You’ll spend less time wrestling with logging configuration and more time using logs effectively to debug issues.
- Narwhals: Unified DataFrame Functions for pandas, Polars, and PySpark – Narwhals is a lightweight compatibility layer between DataFrame libraries. You can use it as a common interface to write reproducible and maintainable data science code which supports pandas, Polars, DuckDB, PySpark, PyArrow, and more.
Featured Links:
- Data Validation Libraries for Polars (2025 Edition) – Pointblank - Given that Polars is so hot right now and that data validation is an important part of a data pipeline, this post explores five Python data validation libraries that support Polars DataFrames. Through contrasting and comparison, the post puts forward which of them are best for specific use cases.
- Python: Create Temporary Files and Directories in Unittest – Sometimes, tests need temporary files or directories. You can do this in Python’s unittest with the standard library tempfile module. This post looks at some recipes to do so within individual tests and
setUp(). - Python: Capture Stdout and Stderr in Unittest – When testing code that outputs to the terminal through either standard out (stdout) or standard error (stderr), you might want to capture that output and make assertions on it.
- I don’t like NumPy – This opinion piece talks about why NumPy gets difficult fast. Two dimensions to your array? No problem, the calc is mostly self evident. Add a couple more dimensions and it gets messy fast. See also the associated HN discussion, which also includes possible solutions.
- Python performance myths and fairy tales – This post summarizes a talk by Antonio Cuni who is a long time contributor to PyPy, the alternate Python interpreter. The talk spoke about the challenges and limits of performance in Python and how the flexibility of dynamic languages comes at a cost. See also the associated HN discussion.
Additional Links:
- Episode #224: Narwhals: Expanding DataFrame Compatibility Between Libraries
- Episode #272: Michael Kennedy: Managing Your Own Python Infrastructure
- Episode #510 - 10 Polars Tools and Techniques To Level Up Your Data Science
- ty
- waelstow: Python unittest utilities. Includes output capture, test discovery, and directory relocation.
- PyPy
- spylang · GitHub




