Week Notes 26#22 (3 mins read).
What happened in the week of 2026-05-25?
Week Notes 26#22 (3 mins read).
What happened in the week of 2026-05-25?
Is there space for 'craft' in the world of AI? (10 mins read).
Replying to a friend's pondering about whether being a 'craft engineer' is still possible in the world of AI.
Week Notes 26#21 (2 mins read).
What happened in the week of 2026-05-18?
Week Notes 26#20 (2 mins read).
What happened in the week of 2026-05-11?
I'm on Fallthrough: He Who Controls the Source (1 mins read).

Announcing my appearance as a co-host on Fallthrough, talking about a mix of current affairs, including SHai-Hulud, the Open Source Resistance and more.
Caveats around using Libyears (5 mins read).

Why taking the Libyear metric at face value can mislead you, and suggesting a new metric 'Tempered Libyears'.
I hate the recent open-source rise (3 mins read).

Why I'm worried about folks using the term open-source and some minimal research into why it's wrong.
Week Notes 26#19 (2 mins read).
What happened in the week of 2026-05-04?
Gotcha: Yarn may need an empty NPM_TOKEN set to run (1 mins read).
Why you may be seeing Failed to replace env in config: ${NPM_TOKEN} if you don't have an NPM_TOKEN set.
Week Notes 26#18 (2 mins read).
What happened in the week of 2026-04-27?
Configuring Renovate to only suggest updates that match your go directive (4 mins read).

How to make sure that Renovate's updates to Go modules keep you within the minor version of your go directive.
Week Notes 26#17 (3 mins read).
What happened in the week of 2026-04-20?
I'm on Fallthrough: No Country for Old Maintainers (1 mins read).

Announcing my appearance as a co-host on Fallthrough, talking about a mix of current affairs, including OAuth, maintainer burnout, of course some AI and more.
A deep dive into the wild world of GitHub Actions' tagging formats (7 mins read).

Inside the ways that GitHub Actions' versioning works, and how we improved Renovate's support.
Week Notes 26#16 (3 mins read).
What happened in the week of 2026-04-13?
I'm on Fallthrough: Supply Chain Reaction (1 mins read).

Announcing my appearance as a guest co-host on Fallthrough, talking about supply chain security, AI, Claude Mythos, and many more topics.
Setting up Neovim with the Debug Adapter Protocol for Javascript/Typescript (2 mins read).

How to use Neovim, nvim-dap, Mason and js-debug-adapter to add debugging capabilities for a Javascript/Typescript application.
Week Notes 26#15 (3 mins read).
What happened in the week of 2026-04-06?
How to build a git diff driver (3 mins read).

How to write an external tool for git diff to delegate complex diffs to.
Using oasdiff for rich Git diffs of OpenAPI spec changes (2 mins read).

How to configure git diff to use oasdiff's rich changelog on changes to OpenAPI specs.
Week Notes 26#14 (3 mins read).
What happened in the week of 2026-03-30?
Week Notes 26#13 (2 mins read).
What happened in the week of 2026-03-23?
Week Notes 26#12 (4 mins read).
What happened in the week of 2026-03-16?
Pointing lazy.nvim to a Pull Request (1 mins read).

How to configure lazy.nvim to reference a Pull Request for a given plugin.
Week Notes 26#11 (2 mins read).
What happened in the week of 2026-03-09?
Week Notes 26#10 (2 mins read).
What happened in the week of 2026-03-02?
My workflow for testing Renovate config changes (2026 edition) (11 mins read).

A runthrough of my process for testing more complex Renovate config changes where I want confidence up-front.
Does my site's analytics change how I write? (4 mins read).
Reflecting on whether how my blog is read impacts what I write.
Week Notes 26#09 (1 mins read).
What happened in the week of 2026-02-23?
Automagically updating oapi-codegen JSON Schema version bumps with Renovate (1 mins read).

How to use Renovate to update the version pin on oapi-codegen's JSON Schema URL.
How I'm using Local Large Language Models (7 mins read).
Insight into my (low) usage of local LLMs on my personal desktop and work Mac.
Automating the syncing of files between repos with Renovate and Vendir (4 mins read).

How to use Renovate and Vendir to periodically update vendored files which are out-of-sync between Git repos.
How and why I attribute LLM-derived code (9 mins read).
How I'm reducing risks of legal concerns now and in the future with AI-generated code.
Week Notes 26#08 (2 mins read).
What happened in the week of 2026-02-16?
Breaking free from GitHub Discussions' limitations (12 mins read).

How we built our own interface on top of GitHub Discussions to improve triage for Renovate's Open Source community.
GitHub Actions' required properties aren't always required (2 mins read).

A gotcha with how required: true allows an empty string as valid input.
Lessons learned from oapi-codegen's time in the GitHub Secure Open Source Fund (6 mins read).

Sharing some thoughts about the GitHub Secure Open Source Fund and how I spent the time with oapi-codegen.
Week Notes 26#07 (1 mins read).
What happened in the week of 2026-02-09?
Week Notes 26#06 (2 mins read).
What happened in the week of 2026-02-02?
Week Notes 26#05 (2 mins read).
What happened in the week of 2026-01-26?
Using Ledger, plain text accounting and a touch of AI to fill in my UK tax return (6 mins read).
How I'm using the Ledger plain text format for managing my finances for my UK tax return.
Week Notes 26#04 (3 mins read).
What happened in the week of 2026-01-19?
What I've learned building an agent for Renovate config (as a cautious skeptic of AI) (11 mins read).

As an opportunity to "kick the tyres" of what agents are and how they work, I set aside a couple of hours to see build one - and it blew me away.
The first 100 days as a Renovate maintainer: the shocking inside view of a popular Open Source project (18 mins read).

Lessons learned from the first 100 days as my role as a Renovate maintainer, and a sneak peek into how the project works behind the scenes.
Week Notes 26#03 (1 mins read).
What happened in the week of 2026-01-12?
Authoring Markdown externally and pasting the 'pretty' output into Slack (on Mac) (2 mins read).
How to use copy the rendered representation of Markdown into a rich-text form into Slack, on Mac.
Getting access to rich-text data from the clipboard (on Mac) (1 mins read).
How to retrieve rich-text output from the clipboard.
Creating a TUI for keeping an eye on GitHub Rate Limits (1 mins read).

Sharing ghrl, a Terminal User Interface (TUI) for monitoring rate limits for GitHub Apps.
2025's podcasts in review (3 mins read).
What podcasts did I listen to in 2025?
Week Notes 26#02 (5 mins read).
What happened in the week of 2026-01-05?
You're currently viewing page 1 of 25, of 1247 posts.