Writing

Practical writing on software engineering, security, AI, and the industry around them.

Latest · Software Engineering

From CakePHP to Laravel

Replacing a legacy CakePHP supply chain application with Laravel and React: separating business domains, rebuilding the schema history, and moving public routes to ULIDs.

2026-08-21 · 10 min

All posts

2026-07-27
DevOps

Resource requests are load-bearing

Fifteen pods used roughly 1.4 GB without declaring requests. How that distorts scheduling, increases eviction risk, and changes how I size workloads.

4 min read
2026-06-09
DevOps

Never set a Redis memory limit equal to its maxmemory

Twelve OOMKills in a row on an instance configured to evict. The eviction policy was fine. It just never got a turn.

3 min read
2026-04-14
DevOps

One public IPv4 for the whole cluster

Workers with no public address of their own, and a default route that reads correctly on a whiteboard and fails silently on the wire.

4 min read
2026-02-17
AI

Capability scoping for agent tools

Handing an agent one broad tool and a polite note about what not to do is a deny-list, and it inherits every problem deny-lists have.

4 min read
2025-11-18
AI

Who is the agent acting for?

An agent answering with the wrong customer’s data does not look like a failure. It looks like it worked.

4 min read
2025-10-14
Software Engineering

LLMs are good at code you can verify, and bad at code you cannot

Generated code arrives with no uncertainty attached, whether or not any of it was warranted. The reader supplies the confidence.

4 min read
2025-05-16
Security

When Letters Lie: Analyzing a Typical IDN Homograph Attack

A client forwarded a suspicious security update email. The domain looked right. Character by character, it was not.

7 min read
2025-04-08
Security

Owning your dependency supply chain

Auditing a dependency tells you about the version you read. It says nothing about the one being published tonight.

4 min read
2024-07-16
Notes

Migrating email from one server to another with ImapSync and Docker

A Docker command for copying mail between IMAP servers with ImapSync, including folder mapping.

1 min read