Issue #617

uv, Conway's Game of Life, Polars Strings, and More

Feb. 20, 2024

uv, Conway's Game of Life, Polars Strings, and More
The PyCoder’s Weekly Logo
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.

Create Conway’s Game of Life With Python
In this video course, you’ll use Python to build Conway’s Game of Life. You’ll implement a user-friendly command-line interface (CLI) with several options that will allow you to run the game using different life patterns and configurations.

Merge Pull Request 10x Faster
CodeRabbit is an AI-first pull request reviewer with context-aware feedback, line-by-line code suggestions, and real-time chat. Its automated reviews elevate the code quality while significantly reducing the time and effort tied to extensive manual code reviews →

Polars: Why We Have Rewritten the String Data Type
A large refactor on the string data type is underway in Polars. This deep dive explains why and what is changing.

Python 3.13.0 Alpha 4 Is Now Available


Ideas: Include math.sign

Articles & Tutorials

PEP 742: Narrowing Types With TypeIs
This Python Enhancement Proposal (PEP) “proposes a new special form, TypeIs, to allow annotating functions that can be used to narrow the type of a value, similar to the builtin isinstance(). Unlike the existing typing.TypeGuard special form, TypeIs can narrow the type in both the if and else branches of a conditional.”

Focusing on Data Science
How do you manage the dependencies of a large-scale data science project? How do you migrate that project from a laptop to cloud infrastructure or utilize GPUs and multiple instances in parallel? This week on the show, Savin Goyal returns to discuss the updates to the open-source framework Metaflow.

The Morning Paper for Hacker News Readers
Want a byte-sized version of Hacker News? Try TLDR’s free daily newsletter. TLDR covers the most interesting tech, science, and coding news in just 5 minutes. No sports, politics, or weather. Subscribe for free!

Python Basics Exercises: Lists and Tuples
In this Python Basics Exercises video course, you’ll practice defining and manipulating Python lists and tuples in your code. By reinforcing your skills, you’ll gain confidence in using lists and tuples in your programming projects.

Smart CLIs With Typer
The go-to library for adding CLI functionality in Python is the built in argparse library. This works really well, but there is a relatively new 3rd party library called typer that boasts a number of improvements.
RAHUL PAI • Shared by Rahul Pai

Summary of Major Changes Between Python Versions
This article is a quick reference covering the major changes introduced with each new version of Python. Can’t remember when the walrus operator was introduced? This is the place to look that up.

How to Run Pytest in Parallel on GitHub Actions
Splitting tests across multiple workers may produce a +50% performance improvement, reducing test time. This approach is essential for efficient PR merges and overall development workflow.
GUILHERME LATROVA • Shared by Gui Latrova

typing.Protocol: Faster Error Detection
The typing.Protocol allows you to define and enforce interface contracts in your code. This article delves into the potential of typing.Protocol through the lens of refactoring.
BOB BELDERBOS • Shared by Bob Belderbos

Postgres as Queue
The main objection to using a database as your queue is the extra load on your database, but often it is good enough. Read this post to learn more about using Postrgres as a queue.

A Search Engine in 80 Lines of Python
In this post Alex explains how he built a micro-search engine from scratch using Python. The resulting search engine is used to search in the posts of the blogs he follows.

Introduction to Testing With Django
This detailed article introduces you to unit testing Django applications. It starts out with the built-in test command and then shows you how to use pytest as well.
ŠPELA GIACOMELLI • Shared by Ana Malinovic, AppSignal

Six Months With GitHub Copilot
Richard has been coding with GitHub Copilot over the past six months, and he’s steadily seen it improve his productivity. Learn how it has changed his coding process.

(Almost) Every Infrastructure Decision I Endorse or Regret
After four years running infrastructure at a startup, Jack has made a lot of choices. Some he thinks were right, and some he regrets. This is his list.

Deploy a Serverless FastAPI App on AWS
This guide shows you how to deploy a scalable API using FastAPI on AWS App Runner with Neon Postgres as the serverless database.
STEPHEN SIEGERT • Shared by Stephen

Creating a Modal Dialog for Your TUIs in Textual
Learn how to create a modal dialog for your text-based user interface using Python and the amazing Textual package.

Projects & Code

Brought to you by Real Python for Teamssponsor
Online Python training created by a community of experts. Give your team the real-world Python skills they need to succeed →

easygmail: Quickly Send Email via Gmail

DASO: CLI YouTube Music Player

NHL-Tracker: Tracks Your Choice of NHL Teams

ibis: The Flexibility of Python With the Scale of Modern SQL

📆🐍 Upcoming Python Events

Weekly Real Python Office Hours Q&A (Virtual)
February 21, 2024

Prague Python Pizza 2024
February 24 to February 25, 2024

Django Girls Ho
February 24 to February 25, 2024

PyDelhi User Group Meetup
February 24, 2024

PythOnRio Meetup
February 24, 2024

PyCon PH 2024
February 25 to February 27, 2024
Happy Pythoning!
Copyright © 2024 PyCoder’s Weekly, All rights reserved.