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
LLMs, the whole thing
·
Part 7
Trainable self-attention: query, key, value, and a thermostat on the softmax
Section 3.4 of Raschka's book on six tokens with real PyTorch output: three shared learned matrices, eighteen private q/k/v vectors, why d_in is forced, why scores are divided by the square root of d_k, and why 'weights' now means two different things.
3 Sep 2026
·
12 min read
From Java to Python
FastAPI for Spring developers: the boilerplate that isn't there
I opened a FastAPI file as a Spring engineer and kept noticing what wasn't there: no MapStruct mapper, no @Valid, no springdoc. The type signature had already done the work.
1 Sep 2026
·
5 min read
Spring and Java mechanics
The Online Part of RAG
The second half of RAG: retrieve the right chunks, ground the prompt in them, and let DeepSeek answer - or honestly say 'I don't know' when the context is silent.
31 Aug 2026
·
5 min read
Spring and Java mechanics
The Offline Half of RAG
RAG has two halves, and only one uses a language model. A walkthrough of the other one - read, chunk, embed, index - built with Spring AI, pgvector and Ollama.
31 Aug 2026
·
6 min read
Security and privacy, in practice
A honeypot that only listens (and fail2ban that bites)
A logging-only honeypot on my Hetzner box: an unprivileged user, a systemd sandbox with one non-obvious trap that silences it, and fail2ban to turn every knock into a self-expiring firewall ban.
30 Aug 2026
·
5 min read
Working with Claude Code
OpenKB: knowledge that compiles
Most 'chat with your docs' tools retrieve fragments at query time. OpenKB compiles the synthesis once, at ingest - into a Markdown wiki you can read, diff, and ship as an installable Claude Code skill.
30 Aug 2026
·
5 min read
Traces, Tempo and the LGTM stack
Auto-instrumenting Spring Batch 6 with OpenTelemetry — four silent failures
Wiring Spring Boot 4 + Spring Batch 6 to emit job/step traces into Tempo and spring_batch_* metrics into Prometheus — and the four config traps that each failed the same way: green build, zero errors, nothing exported.
26 Aug 2026
·
5 min read
Maths for LLMs
Broadcasting: how a [4,256] table adds to a whole batch
The positional-embedding sum quietly relies on broadcasting. Here is the whole rule — align from the right, stretch the 1s — and why PyTorch never copies a byte.
23 Aug 2026
·
4 min read
Working with Claude Code
Explain like I'm five, on tap
I ran the /eli5 skill over a Jinja2 learning session and got back a self-contained, illustrated artifact. Here is what the skill is, why writing the five-year-old version sharpens your own understanding, and where it fits a learn-then-teach workflow.
23 Aug 2026
·
4 min read