Tinkering with Unix domain sockets
March 11, 2023 · article
Signal handling in a multithreaded socket server
February 26, 2023 · article
Switching between multiple data streams in a single thread
February 19, 2023 · article
Skipping the first part of an iterable in Python
February 12, 2023 · article
Pausing and resuming a socket server in Python
February 5, 2023 · article
Debugging a containerized Django application in Jupyter Notebook
January 14, 2023 · article
Manipulating text with query expressions in Django
January 7, 2023 · article
Using tqdm with concurrent.fututes in Python
January 6, 2023 · article
Colon command in shell scripts
December 23, 2022 · article
Faster bulk_update in Django
November 30, 2022 · article
Installing Python on macOS with asdf
November 13, 2022 · article
Save models with update_fields for better performance in Django
November 9, 2022 · article
Python logging quirks in AWS Lambda environment
October 20, 2022 · article
Dissecting an outage caused by eager-loading file content
October 14, 2022 · article
Auditing commit messages on GitHub
October 6, 2022 · article
To quote or not to quote
October 5, 2022 · article
Returning values from a shell function
September 25, 2022 · article
Verifying webhook origin via payload hash signing
September 18, 2022 · article
Recipes from Python SQLite docs
September 11, 2022 · article
Prefer urlsplit over urlparse to destructure URLs
September 10, 2022 · article
Pick random values from an array in SQL(ite)
September 2, 2022 · article
ExitStack in Python
August 27, 2022 · article
Compose multiple levels of fixtures in pytest
July 21, 2022 · article
Patch where the object is used
July 18, 2022 · article
Partially assert callable arguments with 'unittest.mock.ANY'
July 17, 2022 · article
When to use 'git pull --rebase'
July 14, 2022 · article
Apply constraints with 'assert' in Python
July 10, 2022 · article
Automerge Dependabot PRs on GitHub
July 7, 2022 · article