41554 blogs · [ { "id": "01a08785-0957-7035-b1d0-c47c7dbf3cf5", "title": "The monorepo: my personal software infrastructure in 2026", "url": "https://iafisher.com/blog/2026/01/monorepo-2026", "published_at": null }, { "id": "01a08785-0957-7035-b1d0-c47c7dc06806", "title": "My 67 bugs in 2025", "url": "https://iafisher.com/blog/2025/12/my-67-bugs-in-2025", "published_at": null }, { "id": "01a08785-0957-7035-b1d0-c47c7dfe6fe6", "title": "Woes of writing your own jobserver", "url": "https://iafisher.com/blog/2025/09/jobserver-woes", "published_at": null }, { "id": "01a08785-0957-7035-b1d0-c47c7ea0b73d", "title": "Notes on Wikipedia after 10,000 edits", "url": "https://iafisher.com/blog/2025/09/wikipedia-10000-edits", "published_at": null }, { "id": "01a08785-0957-7035-b1d0-c47c7f01bd0c", "title": "Robustly parsing flags in Bash scripts", "url": "https://iafisher.com/blog/2025/08/robustly-parsing-flags-in-bash-scripts", "published_at": null }, { "id": "01a08785-0957-7035-b1d0-c47c7f49e3c9", "title": "Python `siginterrupt` is confusing", "url": "https://iafisher.com/2026/08/siginterrupt", "published_at": null }, { "id": "01a08785-0957-7035-b1d0-c47c7f50dff8", "title": "`time.sleep` and signal interrupts", "url": "https://iafisher.com/2026/08/nanosleep", "published_at": null }, { "id": "01a08785-0957-7035-b1d0-c47c7f6851a9", "title": "Is it safe to call `print` in a Python signal handler?", "url": "https://iafisher.com/2026/08/sigprint", "published_at": null }, { "id": "01a08785-0957-7035-b1d0-c47c7fd3fd41", "title": "Python signal handlers are unexpectedly reentrant", "url": "https://iafisher.com/2026/08/reentrant", "published_at": null }, { "id": "01a08785-0957-7035-b1d0-c47c80747006", "title": "Safe signal idioms", "url": "https://iafisher.com/2026/08/safe-signals", "published_at": null } ] posts Claim your blog
Back to iafisher.com
Blog · corpus.blog/blogs/iafisher.com/posts

iafisher.com

iafisher.com

Undated