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.
00:00:00 – Introduction00:01:52 – Django 6.0 released00:02:58 – The Inner Workings of Python Dataclasses Explained00:03:40 – Going Beyond requirements.txt With pylock.toml and PEP 75100:04:58 – Django vs. FastAPI, An Honest Comparison00:05:46 – How to Use Loguru for Simpler Python Logging00:06:47 – Narwhals: Unified DataFrame Functions00:08:32 – Observations and statistics for the year of articles00:13:23 – Data Validation Libraries for Polars (2025 Edition)00:18:53 – Video Course Spotlight00:20:25 – Create Temporary Files and Directories in Unittest00:22:27 – Capture Stdout and Stderr in Unittest00:24:59 – I don’t like NumPy00:26:34 – Python performance myths and fairy tales 00:31:05 – Congratulations on making through 2025!Django 6.0 released - Django WeblogThe Inner Workings of Python Dataclasses Explained – Discover how Python dataclasses work internally! Learn how to use __annotations__ and exec() 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.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.Episode #224: Narwhals: Expanding DataFrame Compatibility Between LibrariesEpisode #272: Michael Kennedy: Managing Your Own Python InfrastructureEpisode #510 - 10 Polars Tools and Techniques To Level Up Your Data Sciencetywaelstow: Python unittest utilities. Includes output capture, test discovery, and directory relocation.PyPyspylang · GitHubLevel up your Python skills with our expert-led courses:
Filtering Iterables With PythonUsing Functional Programming in PythonNumPy Techniques and Practical Examples Support the podcast & join our community of Pythonistas