Maths for LLMs
LayerNorm from Four Numbers: Mean, Variance and a Token Row
I refused to let LayerNorm remain a formula. Starting with four integers, I work through mean, variance, standard deviation, normalization and the exact PyTorch operation used for each GPT token.
11 Sep 2026
·
5 min read
From Java to Python
A Gentle Introduction to PyTorch: Tensors Before Attention
Before I could make sense of attention code, I needed PyTorch's tiny tensor vocabulary to stop feeling mysterious. This first session covers shapes, axes, batching, and the important difference between stack, cat, multiplication, and dot products.
11 Sep 2026
·
4 min read
Working with Codex / ChatGPT
The hoodie stays: turning my mascot into a reusable Codex skill
A generated character only becomes an identity when it survives the next prompt. I turned one navy-hoodie mascot, two successful references and a --manga switch into a small reusable Codex skill.
11 Sep 2026
·
5 min read
Working with Codex / ChatGPT
After Daybreak: enabling Codex Security on code I own
I applied for verified Daybreak access, completed the identity check, and mapped the next step: connecting my own GitHub repositories to Codex Security without giving up human review or scope control.
10 Sep 2026
·
5 min read
LLMs, the whole thing
·
Part 9
Multi-head attention, one shape at a time
Part 9 of LLMs, the whole thing: two heads, one token, and the difference between computing attention and organizing its tensors. A concrete PyTorch walkthrough of view, transpose, concatenation and the output projection.
10 Sep 2026
·
5 min read
Building this site in public
Systems in Motion: a visual identity of my own
A new identity for my portfolio, writing, and independent products: graphite, electric blue, and a moving Z inspired by event-driven systems. The design choices, reusable article templates, and engineering constraints behind it.
9 Sep 2026
·
5 min read
Running the box: Docker, Linux, the JVM
Cleaning up your systemd service
Retiring a service is more than killing the process. Here's the four-beat teardown I ran to remove a honeypot from my box — and why 'disable' isn't 'stop'.
8 Sep 2026
·
5 min read
LLMs, the whole thing
·
Part 8
Causal attention and the two masks: one hides the future, one cuts links on purpose
Section 3.5 of Raschka's book on seven real GPT-2 tokens: why masking after softmax breaks the row sums, why -inf on the scores fixes it in one pass, and how dropout is a second, random mask that doubles its survivors.
7 Sep 2026
·
6 min read
Working with Claude Code
I audited my prompts for a model that reads literally
Running Anthropic's prompt-audit over 2,700 lines of Claude Code steering before moving to Fable 5.1. The grep for pressure language hit once. The cruft was drift and changelog phrasing, and seven of the eight recommended prompt snippets were already in the harness.
7 Sep 2026
·
8 min read
Working with Claude Code
The Claude Code security-guidance plugin, pushed to its limits
I had Anthropic's always-on security plugin installed for a month and assumed it was reviewing every turn. Its own log said otherwise. What each layer actually does, how far its configuration goes, and the one hook that says no.
6 Sep 2026
·
8 min read