Issue #729

NumPy Music, Ollama, Iterables, and More

April 7, 2026

NumPy Music, Ollama, Iterables, and More
#729 – APRIL 7, 2026 VIEW IN BROWSER
The PyCoder’s Weekly Logo
NumPy as Synth Engine
Kenneth has “recorded” a song in a Python script. The catch? No sampling, no recording, no pre-recorded sound. Everything was done through generating wave functions in NumPy. Learn how to become a mathematical musician.
KENNETH REITZ

How to Use Ollama to Run Large Language Models Locally
Learn how to use Ollama to run large language models locally. Install it, pull models, and start chatting from your terminal without needing API keys.
REAL PYTHON

Ship AI Agents With Accurate, Fresh Web Search Data
Stop building scrapers just to feed your AI app web search data. SerpApi returns structured JSON from Google and 100+ search engines via a simple GET request. No proxy management, no CAPTCHAs. Power product research, price tracking, or agentic search in minutes. Used by Shopify, NVIDIA, and Uber →
SERPAPIsponsor

Indexable Iterables
Learn how objects are automatically iterable if you implement integer indexing.
RODRIGO GIRÃO SERRÃO

Claude Code for Python Developers (Live Course)
“This is one of the best training sessions I’ve joined in the last year across multiple platforms.” Two-day course where you build a complete Python project with an AI agent in your terminal. Next session April 11–12.
REAL PYTHON

PEP 803: "abi3t": Stable ABI for Free-Threaded Builds (Accepted)
PYTHON.ORG

PEP 829: Structured Startup Configuration via .site.toml Files (Added)
PYTHON.ORG


Articles & Tutorials


Fire and Forget at Textual
In this follow up to a previous article (Fire and forget (or never) with Python’s asyncio, Michael discusses a similar article by Will McGugan as it relates to Textual. He found the problematic pattern in over 500K GitHub files.
MICHAEL KENNEDY'

pixi: One Package Manager for Python Libraries
uv is great for pure Python projects, but it can’t install compiled system libraries like GDAL or CUDA. pixi fills that gap by managing both PyPI and conda-forge packages in one tool, with fast resolution, automatic lockfiles, and project-level environments.
CODECUT.AI • Shared by Khuyen Tran

Dignified Python: Pytest for Agent-Generated Code
Learn how to define clear pytest patterns for agent-generated tests: separate fast unit vs integration, use fakes, constrain generation, and avoid brittle patterns to keep tests reliable and maintainable →
DAGSTER LABSsponsor

Learning Rust Made Me a Better Python Developer
Bob thinks that learning Rust made him a better Python developer. Not because Rust is better, but because it made him think differently about how he has been writing Python. The compiler forced him to confront things he’d been ignoring.
BOB BELDERBOS • Shared by Bob Belderbos

Django bulk_update Memory Issue
Recently, Anže had to write a Django migration to update hundreds of thousands of database objects. With some paper-napkin math he calculated it could fit in memory, but that turned out not to be the case. Read on to find out why.
ANŽE'S BLOG

Catching Up With the Python Typing Council
Talk Python interviews Carl Meyer, Jelle Zijstra, and Rebecca Chen, three members of the Python Typing Council. They talk about how the typing system is governed and just how much is the right amount of type hinting in your code.
TALK PYTHON podcast

Python 3.3: The Version That Quietly Rewired Everything
yield from, venv, and namespace packages are three features from Python 3.3 that looked minor when they came out in 2012, but turned out to be the scaffolding modern Python is built on.
TUREK SENTURK

Incident Report: LiteLLM/Telnyx Supply-Chain Attacks
This post from the PyPI blog outlines two recent supply chain attacks, how they were different, and how you can protect yourself from future incidents.
PYPI.ORG

Python Classes: The Power of Object-Oriented Programming
Learn how to define and use Python classes to implement object-oriented programming. Dive into attributes, methods, inheritance, and more.
REAL PYTHON

Timesliced Reservoir Sampling for Profilers
Reservoir sampling lets you pick a sample from an unlimited stream of events; learn how it works, and a new variant useful for profilers.
ITAMAR TURNER-TRAURING

Adding Python to PATH
Learn how to add Python to your PATH environment variable on Windows, macOS, and Linux so you can run Python from the command line.
REAL PYTHON course


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 →

OracleTrace: Visualize Function Flows
GITHUB.COM/KAYKCAPUTO • Shared by Kayk Aparecido de Paula Caputo

pywho: Explain Your Python Environment and Detect Shadows
GITHUB.COM/AHSANSHERAZ • Shared by Ahsan Sheraz

asyncstdlib: The Missing Toolbox for an Async World
GITHUB.COM/MAXFISCHER2781

nitro-pandas: pandas-Compatible Polars Wrapper
GITHUB.COM/WASSIM17LABDI

django-mail-auth: Django Auth via Login URLs
GITHUB.COM/CODINGJOE

📆🐍 Upcoming Python Events


Weekly Real Python Office Hours Q&A (Virtual)
April 8, 2026

PyCon Lithuania 2026
April 8 to April 11, 2026

Python Atlanta
April 9 to April 10, 2026

DFW Pythoneers 2nd Saturday Teaching Meeting
April 11, 2026

PyCon DE & PyData 2026
April 14 to April 18, 2026

DjangoCon Europe 2026
April 15 to April 20, 2026

PyTexas 2026
April 17 to April 20, 2026
Happy Pythoning!
Copyright © 2026 PyCoder’s Weekly, All rights reserved.