Explain like I'm five, on tap
The "explain it simply" test, as a slash command
I'd just spent a session teaching myself Jinja2 from the engine up and writing it into a datasheet-style post. Good for an engineer audience. Useless for my non-technical friends who occasionally ask what I actually do all day. So I typed one thing into Claude Code — /eli5 for what we learned here — and got back a self-contained, illustrated web page that explains templating with almost no words. This is a note on that skill, because the interesting part isn't the picture; it's what producing the picture does to your own understanding.
What /eli5 actually is
/eli5 is a Claude Code skill: a packaged instruction set that fires on a slash command. Its brief is narrow and unusual — explain a topic "like I'm five", as an HTML artifact built around big pictures and few words. Not a wall of simplified prose; a designed page. You hand it a topic (/eli5 how DNS works) or, as I did, point it at the current session and let it infer what "we learned here" means.
{{ }} in sight yet.The metaphor it reached for — a "blank-filling machine" fed a form and some facts — is exactly how I'd explain Jinja to someone at a dinner table. That's the tell that the simplification is honest rather than lossy: it maps to the real mechanism (template + context → string), just without the vocabulary.
Why an engineer should care about a kids' explainer
Writing the five-year-old version is a diagnostic. If I can't reduce a concept to one picture, I don't understand it as well as I think — the fuzzy spots are exactly the ones the metaphor refuses to cover cleanly. Producing this page surfaced two of mine. The autoescaping idea, for instance, only clicks once you frame it as a decision the engine makes on your behalf:
<script> becomes inert letters; off, and it runs. The real trap — that plain Jinja ships with it off — survives the simplification intact.That's the same XSS point from the technical write-up, minus the jargon. Notice what the simplification keeps: the consequence and the gotcha. It drops the API name (select_autoescape()) from the picture but not the idea that a default is quietly dangerous. A good ELI5 cuts vocabulary, not truth.
The output is an artifact, not a chat reply
The reason this beats "just explain it simply in the chat" is the deliverable. It's a Claude Code artifact — one self-contained HTML file, no external assets, theme-aware, published to a private URL I can share with one click. It renders the same in someone's dark-mode browser as in mine. That makes it a thing I can actually send, not scrollback I'd have to copy-paste and reformat.
Where it fits in a workflow
For me it's the second half of a pattern: learn something properly, write the rigorous version for engineers, then run /eli5 over the same session for the version everyone else can read. Same material, two audiences, one extra command. It also works as a teaching aid — the picture-book page is a better opener for a brown-bag than a slide of bullet points, because it earns attention before it spends any.
The honest limits
Metaphors leak, and you should say so. A virtual environment is like a toy box per project, but it isn't one; the safety-helmet framing skips the detail that escaping is context-sensitive (on for HTML, off for a plain-text email). So /eli5 is a lens, not a reference — the thing you show someone to build intuition, before handing them the real docs. Used that way, it's genuinely useful: it forces me to find the one true picture, and it turns a private learning session into something I can hand to a person who'll never touch a terminal. Not bad for one slash command.