-
Guardrails with a small model: filtering output on your own machine
A 12-weight classifier plus 4 rules blocked 2 injection attempts and 2 secret leaks, and let 2 legitimate questions through. Runs in pure Python, no large model, no cloud. Granite Guardian 2B is Apache 2.0; llm-guard is MIT.
-
How to spin up an app, database and reverse proxy with docker compose from scratch
A compose.yaml with a healthcheck, conditional depends_on and a named volume brings up an app, Postgres and Nginx. Tested from scratch: database healthy in 27 s, app answering db=ok, proxy returning 200.
-
How to tell if the model got worse after an upgrade
A single score proves nothing: the same model gets different questions right each round. With 20 checkable-answer questions and 3 rounds per version, you see the range instead of just the last number.
-
A backup only counts once you test the restore
I ran a backup with rsync --link-dest, deleted a file, and pulled it back with a matching sha256. Three snapshots of 4.1 MB took 4.1 MB, not 12.3 MB.
-
The free certificate that became web infrastructure shrinks to 64 days
A nonprofit founded in 2014 serves more than 700 million sites. I measured ten large certificates: free loses nothing technical, and in 2027 the window drops to 64 days.
-
123456 opened 8.8 million Danish records
Three accounts at a Danish company used the password 123456 to query the national register. I measured the cost of testing 10 thousand passwords under MD5, SHA-256, PBKDF2 and scrypt.
-
Serving a static site with no open ports
How a folder of files gets published through an outbound tunnel and a reverse proxy, with no open ports on the server.
-
RAM is 500% more expensive: what the memory audit of this VM shows
With DDR5 up to 500% pricier in 12 months, I measured where the 5.8 GB of this VM go. zram holds 3.4 GB in 779 MB of RAM, and swap has moved more than 100 GB since boot.
-
Swap is not free RAM: Go GC pauses under memory pressure
I reran the 40 ms Go GC pause case on a VM whose only swap is zram: stop-the-world pauses stayed at 196 µs, while allocation latency tripled at p99. Method, numbers and limits.
-
Cloudflare bought Deno: the runtime has one year left
The Deno team joined Cloudflare. The runtime gets one more year, Deno Deploy shuts down in six months. I measured Node 22 and Deno 2.9 on this VM for boot time, memory and binary size.
You reached the end. Every post is here.