posts
gitops-nix
/
[-]
[+]
2026-05-27
two-servers-one-repo
2026-05-05
#
Self-hosting two small servers turned into a chore of SSH sessions and duplicated tweaks. Kubernetes felt like a spaceship for a grocery run, so I scoped GitOps down to a single machine with NixOS, sops, and comin.
all-your-vm-are-belong-to-nixos
2026-05-27
#
Cloud providers don't ship NixOS. Here's how nixos-anywhere takes a stock Ubuntu cloud VM and reinstalls it in place — kexec into an installer, partition the disk, write the new system — all from a flake on the laptop.
grug-open-computer
/
[-]
[+]
2026-05-16
why-grug-tells-tale
2026-04-30
#
grug want to know what computer is, all the way down. grug look for book that go all the way down, never find one, so grug write it.
tale-of-big-brain-dreams
2026-04-25
#
Schickard, Pascal, Leibniz, and Babbage dream of machines that crunch number, two hundred winter before any wire is tame. Lovelace see furthest: a machine that follow rule on symbol can do anything written as symbol and rule.
tale-of-logic-become-algebra
2026-05-01
#
In 1847 George Boole turn two thousand winter of Aristotle's logic into algebra: AND is times, OR is plus, NOT is one-minus. Leibniz's dream of *calculemus* now have rules, but still no machine.
tale-of-math-reach-its-border
2026-05-16
#
Russell paradox breaks Frege foundation. Russell and Whitehead rebuild with theory of types. Hilbert lay out plan to make mathematics safe forever. Gödel break the plan with two incompleteness theorems. One question survive: the Entscheidungsproblem.
abstraction-failure
/
[-]
[+]
2026-03-23
decomposing-abstraction-failure
2026-03-16
#
Abstractions fail in four distinct ways: dependency, leakage, inversion, and drift. Each has its own diagnosis and its own fix, and conflating them is why arguments about ORMs and microservices never resolve. A diagnostic for engineers, synthesised from fifty years of foundational theory and practitioner writing.
cognitive-price-of-abstraction
2026-03-23
#
Every boundary is a named concept the developer must learn and hold in memory. Working memory is small, comprehension dominates developer time, and overload produces characteristic errors that survive longer in layered code. What the cognitive science and the defect data actually say about the cost side of the abstraction trade-off.