Issue #617 (Feb. 20, 2024)

#617 – FEBRUARY 20, 2024

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.
CHARLIE MARSH

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.
REAL PYTHON course

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 →
CODERABBIT sponsor

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.
POLARS

Python 3.13.0 Alpha 4 Is Now Available

CPYTHON DEV BLOG

Discussions

Ideas: Include math.sign

PYTHON DISCUSS

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.”
PYTHON

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.
REAL PYTHON podcast

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!
TLDR sponsor

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.
REAL PYTHON course

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.
NICHOLAS HAIRS

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.
OLIVER RUSSELL

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.
ALEX MOLAS

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.
RICHARD LI

(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.
JACK LINDAMOOD

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.
MIKE DRISCOLL

Projects & Code

easygmail: Quickly Send Email via Gmail

GITHUB.COM/AYUSHGUN

DASO: CLI YouTube Music Player

GITHUB.COM/JOSHUAKASA

NHL-Tracker: Tracks Your Choice of NHL Teams

GITHUB.COM/TRSTN2

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

GITHUB.COM/IBIS-PROJECT

Events

Weekly Real Python Office Hours Q&A (Virtual)

February 21, 2024
REALPYTHON.COM

Prague Python Pizza 2024

February 24 to February 25, 2024
PYTHON.PIZZA

Django Girls Ho

February 24 to February 25, 2024
DJANGOGIRLS.ORG

PyDelhi User Group Meetup

February 24, 2024
MEETUP.COM

PythOnRio Meetup

February 24, 2024
PYTHON.ORG.BR

PyCon PH 2024

February 25 to February 27, 2024
PYTHON.PH

Happy Pythoning!
This was PyCoder’s Weekly Issue #617.
View in Browser »

[ Subscribe to 🐍 PyCoder’s Weekly 💌 – Get the best Python news, articles, and tutorials delivered to your inbox once a week >> Click here to learn more ]

Source:: PyCoder’s