/blog

Working notes on software, systems, and security.

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

Latest · DevOps

Resource requests are load-bearing

A new node filled up with pods nobody moved. The scheduler thought they were free, and it was right, because they never said otherwise.

2026-07-27 · 4 min
Archive
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
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
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
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
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
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
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
2024-07-16
Notes
Migrating email from one server to another with ImapSync and Docker
IMAPSync is a command-line tool that efficiently synchronizes IMAP mailboxes between two servers. It is designed to copy emails from one mailbox to another without duplicating messages that already exist on the target server. This ensures a smooth and error-free migration process, making it a preferred choice for administrators. Docker is a platform that allows […]
1 min
2024-07-09
Notes
How to change the DNS servers within K3S CoreDNS
Recently, we set up a custom DNS server based on dnsmasq within our organization to handle internal DNS requests. However, i noticed that our K3S pods were not recognizing the internal hosts defined with the custom DNS server. Initially, i assumed that Kubernetes would use the operating system’s DNS configuration specified in /etc/resolv.conf, but i […]
1 min