<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Python on Wim Onderbeke</title><link>https://wimonder.dev/tags/python/</link><description>Recent content in Python on Wim Onderbeke</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 16 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://wimonder.dev/tags/python/index.xml" rel="self" type="application/rss+xml"/><item><title>Slow commits and row locks in Postgres</title><link>https://wimonder.dev/posts/slow-commits-and-row-locks-in-postgres/</link><pubDate>Sat, 16 May 2026 00:00:00 +0000</pubDate><guid>https://wimonder.dev/posts/slow-commits-and-row-locks-in-postgres/</guid><description>How an explicit row lock can block writes on completely different tables, and why it only shows up at commit time</description></item><item><title>Adding metadata to Pydantic fields</title><link>https://wimonder.dev/posts/adding-metadata-to-pydantic-fields/</link><pubDate>Tue, 21 Jan 2025 00:00:00 +0000</pubDate><guid>https://wimonder.dev/posts/adding-metadata-to-pydantic-fields/</guid><description>How to store application-specific metadata in Pydantic v2 fields</description></item><item><title>How asyncio works</title><link>https://wimonder.dev/posts/how-asyncio-works/</link><pubDate>Thu, 10 Oct 2024 00:00:00 +0000</pubDate><guid>https://wimonder.dev/posts/how-asyncio-works/</guid><description>An in-depth look at how asyncio works in Python</description></item><item><title>What's WSGI anyway</title><link>https://wimonder.dev/posts/what-is-wsgi-anyway/</link><pubDate>Mon, 06 Nov 2023 00:00:00 +0000</pubDate><guid>https://wimonder.dev/posts/what-is-wsgi-anyway/</guid><description>A brief overview of WSGI in Python</description></item></channel></rss>