Christopher Trudeau, a Python expert, dives into the fascinating world of 2024's PyCoder's Weekly highlights. He discusses the year's top articles and trends, revealing lesser-known gems that deserve attention. Listeners will learn about networking using Python's socket module, explore the simplicity of polar syntax versus pandas for data filtering, and discover engaging analogies to better understand hashable objects. Additionally, he touches on exciting innovations in Python tools, including the UV package installer, cementing its ongoing evolution.
The podcast emphasized the importance of well-presented data in programming, focusing on creating captivating display tables using the Great Tables package.
Key trends in Python development included increasing interest in asynchronous programming and the rise of modern tools like the UV package installer.
Deep dives
PyCoders Weekly Highlights
In 2024, PyCoders Weekly featured over 1,500 links to articles, tutorials, and projects, providing an extensive resource for Python enthusiasts. The discussion highlighted the top articles of the year, including a piece on creating captivating display tables using the Great Tables package, which emphasizes the importance of well-presented data in programming. Another standout article focused on the Iter Tools module, offering insights into its 19 iterators and practical usage examples, making it a valuable resource for developers. Additionally, the popularity of a video course on customizing VS Code settings showcased the community's ongoing interest in practical programming tools and personalized coding environments.
Trends in Python Development
The podcast drew attention to key trends in Python development, such as the ongoing focus on improving coding practices and the increasing popularity of asynchronous programming. For example, an article on speeding up Python recommended running the asyncIO event loop in a separate thread, which illustrated a sophisticated understanding of Python's concurrency capabilities. Furthermore, the significance of community resources, such as guides on Python protocols and modern development practices, was underscored, highlighting the diverse needs of both new and experienced developers. This trend reflects a broader shift towards embracing best practices in the evolving Python landscape.
Emerging Gems and Notable Articles
The podcast identified several lesser-known but impactful articles that emerged throughout the year, including a piece by Ari Lemstein on switching to the Polars library for data manipulation. This article compared Polars with Pandas, emphasizing Polars' intuitive syntax that eases data filtering and manipulation, appealing to those in data science. Another highlight was a thoughtful exploration by Akshay Agrawal on reinventing Python notebooks, focusing on design principles that promote reproducibility and maintainability, which resonated with developers looking to enhance their workflows. The emphasis on teaching through relatable analogies, such as Stephen Gruppetta's article on hashable objects, made complex topics more accessible, facilitating better understanding among readers of varying expertise.
The State of Python Frameworks and Tools
The episode also explored the growing interest in modern Python frameworks and tools, particularly the rise of UV, a fast package installer written in Rust that aims to improve the Python package management experience. UV was positioned as a drop-in replacement for PIP, streamlining dependency management for developers. Additionally, discussions surrounding the continuous integration and deployment (CI/CD) workflows with GitHub Actions highlighted the importance of automating testing and package publishing, which is crucial for maintaining code quality in collaborative projects. The mention of tools such as RUFF, a code formatter that combines features from various tools, indicated a strong trend towards enhancing the efficiency and effectiveness of Python development processes.
PyCoder’s Weekly included over 1,500 links to articles, blog posts, tutorials, and projects in 2024. Christopher Trudeau is back on the show this week to help wrap it all up by sharing some highlights and uncovering a few missing gems from the pile.
We share the top links that PyCoder’s readers explored this year and uncover trends across all the articles and stories. We also 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 another year filled with great Python news, articles, topics, and projects.
In this in-depth video course, you’ll learn how to build a socket server and client with Python. By the end, you’ll understand how to use the main functions and methods in Python’s socket module to write your own networked client-server applications.
Topics:
00:00:00 – Introduction
00:01:47 – New releases and updates
00:03:07 – PyCon US 2025 Registration Open
00:03:18 – PyCon Austria 2025 Call for Papers
00:03:36 – PSF Year End Fundraiser - Membership Drive
00:04:31 – Mr. Trudeau on Flying High with Flutter
00:05:29 – We’re on Bluesky - follow us!
00:07:44 – Build Captivating Display Tables in Python With Great Tables
00:08:45 – Overview of the Module itertools
00:09:23 – Customize VS Code Settings
00:10:34 – Modern Good Practices for Python Development
Build Captivating Display Tables in Python With Great Tables – Do you need help making data tables in Python look interesting and attractive? How can you create beautiful display-ready tables as easily as charts and graphs in Python? This week on the show, we speak with Richard Iannone and Michael Chow from Posit about the Great Tables Python library.
Overview of the Module itertools – This article proposes the top three iterators that are most useful from the module itertools, classifies all of the 19 iterators into five categories, and then provides brief usage examples for all the iterators in the module itertools.
Customize VS Code Settings – In this course, Philipp helps you customize your Visual Studio Code settings to switch from a basic cluttered look to a clean presentable look. This is not just pleasant on the eyes, but also gives you a nice user interface if you want to share on a Zoom call or screen recording.
Modern Good Practices for Python Development – This is a very detailed list of best practices for developing in Python. It includes tools, language features, application design, which libraries to use and more.
Asyncio Event Loop in Separate Thread – Typically, the asyncio event loop runs in the main thread, but as that is the one used by the interpreter, sometimes you want the event loop to run in a separate thread. This article talks about why and how to do just that.
Python Protocols: Leveraging Structural Subtyping – In this tutorial, you’ll learn about Python’s protocols and how they can help you get the most out of using Python’s type hint system and static type checkers.
Featured Links:
Why I’m Switching From pandas to Polars – Ari is switching from pandas to Polars and surprisingly (even to himself) it isn’t because of the better performance. Read on for the reasons why.
Lessons Learned Reinventing the Python Notebook – Marimo is an open source alternative to Jupyter notebooks. This article is by one of marimo’s creators, talking about the design decisions made when creating it.
What’s a Python Hashable Object? – You can ignore reading about hashable objects for quite a bit. But eventually, it’s worth having an idea of what they are. This post follows Winston on his first day at work to understand hashable objects
uv: Python Packaging in Rust – uv is an extremely fast Python package installer and resolver, designed as a drop-in alternative to pip and pip-tools. This post introduces you to uv and shows some of its performance numbers. Associated HN discussion.
CI/CD for Python With GitHub Actions – With most software following agile methodologies, it’s essential to have robust DevOps systems in place to manage, maintain, and automate common tasks with a continually changing codebase. By using GitHub Actions, you can automate your workflows efficiently, especially for Python projects.
The State of Python 2024 – This is a guest post on the PyCharm blog by Talk Python host Michael Kennedy who talks about the current state of Python in 2024. Topics include language usage, web frameworks, uv, and more.
Django 2024 Year in Review – Carlton is a core contributor to Django and this post talks about what happened in 2024 with your favorite web framework.