// CRT MODE ACTIVATED · ↑↑↓↓←→←→BA to toggle
// blog

Writing

Essays, TILs, build logs, and notes from Paris.

RSS →
Jun 2026Tutorial
I Panicked in a Container With No Curl Until I Remembered Bash Has a Secret HTTP Client
No curl, no wget, no nc in a 12 MB container: bash's /dev/tcp redirection let me hand-write an HTTP request and hit the health endpoint.
5 min readIntermediate
Jun 2026Notes
My AI Refused to Use Markdown. Turns Out It Was Secretly Following Orders I Never Gave It.
My Markdown renderer was not broken. Hermes Agent was quietly telling the model to answer in plain text because I connected over HTTP.
4 min readIntermediate
Jun 2026Deep Dive
I Designed a Multi-Model System. My Server Room Smelled Like Burnt Coffee.
Five patterns cover almost every multi-model setup: sequential, router, parallel, hierarchical, ensemble, and each one bills you differently.
7 min readIntermediate
Jun 2026Essay
The Little Share Buttons That Couldn't
Three studies, three audiences, the same number: about 0.2% of visitors ever touch a share button. Everyone else just copies the link.
3 min readBeginner
Jun 2026Essay
I Used One Model for Everything. My Wallet Cried.
Running one big model for every task burns money and latency, so I started routing by capability, cost, and speed instead.
5 min readIntermediate
Jun 2026Tutorial
I Broke My LLM in Production So You Don't Have To: A Guardrails Story
An hour after deploy, a user asked my chatbot something it should never have answered, and that is how I learned guardrails are the product.
6 min readIntermediate
Jun 2026Essay
I Miss When Claude Was Boring
Somewhere between safety guardrails and anti-sycophancy training, my chatbot turned into a debate opponent.
6 min readBeginner
Jun 2026Essay
How "Load-Bearing" Became the New "Delve"
Claude's favourite adjective is leaking out of code reviews and into everyone's vocabulary, and it is going the same way as 'delve'.
5 min readBeginner
Jun 2026Deep Dive
The AI Assistant Architecture That Took Me Six Months and a Thousand Dollars in API Bills to Figure Out
Five layers (LLM, memory, tools, routing, observability), the failure modes that ambushed me, and the boring stack I actually run today.
11 min readAdvanced
May 2026Essay
I Am the Bottleneck
AI keeps promising a 10x me, but executive function, intelligence, and knowledge all live inside my head where no amount of scaffolding reaches.
8 min readBeginner
May 2026Tutorial
The One llama.cpp Feature That Almost Made Me Write a Polite Angry Email
llama.cpp's router has no unload-all endpoint, so I built one out of curl, jq, and a while loop. Six lines, and it beats a button.
8 min readIntermediate
May 2026Essay
PKM, RAG, Wikis, and Memory Systems Are Not the Same Thing (And Yeah, I Got This Wrong Too)
PKM, wikis, RAG, and AI memory all store information, but each one optimizes a different layer of the stack, and forcing one to do every job ends badly.
12 min readIntermediate
Apr 2026Essay
I Have 14 Note-Taking Apps and Remember Nothing: A Confession
Fourteen note apps later, what survived was not a tool but a few methods: atomic notes, an actionability filter, and links I will actually follow.
8 min readBeginner
Apr 2026Essay
How I Quit Ollama Cold Turkey (And Why My Laptop Runs Faster Now)
Six months of Ollama, then I read the GitHub issues: what the wrapper was hiding, and the llama.cpp setup I run instead.
11 min readIntermediate
Mar 2026Essay
I Almost Bought a $300 Gadget. Then My Apple Watch Called Me an Idiot.
The recording hardware was already on my wrist: Voice Memos, iCloud sync, and launchd replaced the watchOS app I never had to build.
7 min readBeginner
Mar 2026Essay
Can AI coding agents relicense your GPL code without your permission?
A real fight over chardet 7.0.0 has the open source world asking whether LLMs enable a modern kind of clean room reimplementation.
6 min readIntermediate
Mar 2026Essay
What I Learned From Taking a Self-Hosted AI Assistant Seriously
Running a model is infrastructure work, designing an assistant around it is systems work, and confusing the two is where most local AI projects stall.
7 min readIntermediate
Feb 2026Essay
I let a local LLM read my private journal. I was hoping for surprises.
I fed 193,761 words of journal entries to a local LLM and got back a prettier version of my own memory.
6 min readIntermediate
Feb 2026Deep Dive
The Local LLM Hosting Odyssey: What I Learned Running Models Every Way Imaginable
I ran local models every way I could find, from Ollama to llama.cpp to vLLM to cloud APIs, and here is what each one is actually good for.
11 min readIntermediate
Feb 2026Essay
Write Badly and the World Moves On
A 45 minute timer, cheap rewrites, and publishing the flawed thing beat years of sanding every sentence down to a nub.
6 min readBeginner
Jan 2026Deep Dive
I Installed Anaconda, Miniconda, Mamba, and Conda (They Are Not the Same Thing)
Anaconda, Miniconda, conda, and Mamba are not competing products, they are layers in a stack, and picking the wrong combo costs you gigabytes.
7 min readBeginner
Dec 2025Essay
The LLM search engine that lives in my pocket (and takes 17 minutes to answer anything)
I pay twenty dollars a month for a machine that reads hundreds of web pages, writes a report I skim, and hands me the links I actually wanted.
6 min readBeginner
Nov 2025Deep Dive
The Neural Esperanto: What Happens When You Make AI Models Speak the Same Language
Contrastive learning shoves images and text into one shared vector space, and the engineering around that space is where the real work lives.
13 min readAdvanced
Oct 2025Tutorial
I Built a Web Search MCP Server in Python (And Only Cried Twice)
Building an MCP server in Python with DuckDuckGo search and Playwright scraping, plus the rate limits and caching bugs I hit on the way.
11 min readIntermediate
Oct 2025Essay
My Conda Era: A Python Environment Confession
I hoarded 47 Conda environments until the licensing bill and the disk usage caught up with me. pyenv was the intervention I needed.
6 min readBeginner
Oct 2025Essay
I was a Python environment victim (and then uv showed up)
A decade of pyenv, venv, pip and poetry duct-taped together, collapsed into two commands, plus the uvx trick I use daily.
7 min readBeginner
Jul 2025Tutorial
I Have Tried Every Note-Taking App So You Do Not Have To (A PKM Tool Guide)
Obsidian, Notion, Roam, Logseq, Evernote, TiddlyWiki: what each one is actually good for, and the setup I stopped tinkering with.
8 min readBeginner
Jul 2025Essay
Your Brain Is Leaking: Why You Need a Second Brain (and How to Stop Forgetting Everything)
I tried every note-taking app there is and forgot most of what I wrote, so here is what personal knowledge management actually needs to do.
6 min readBeginner
Jul 2025Tutorial
I Built an MCP Server in Go So You Don't Have To
Building a Model Context Protocol server in Go: the SDK situation, the initialization handshake, and the JSON-RPC gotchas that cost me hours.
12 min readIntermediate
Jun 2025Tutorial
The Python Package Manager That Finally Made Me Stop Yelling at My Terminal
uv replaces pip, virtualenv, pyenv, pip-tools, and pipx with one Rust binary, and I have not touched pip directly since I switched.
7 min readBeginner
Jun 2025Essay
Fifty Ways to Trick Yourself Into Being a Functional Adult
The daily tactics: Todoist as a brain prosthetic, inbox bankruptcy, visual field management, and the productivity traps I keep falling into.
17 min readBeginner
Jun 2025Essay
The Voltage Theory: What I Learned After I Stopped Trying to Out-Will My Own Brain
Why medication is the prerequisite tech, why energy behaves like voltage rather than spoons, and three procrastinations with three different fixes.
11 min readBeginner
Apr 2025Essay
My Favorite Object Detection Framework Died and I Didn't Even Get to Say Goodbye
MMDetection stopped moving in early 2024 and nobody announced it, which is what happens when a framework rests on one institution.
4 min readIntermediate
Jan 2025Essay
The Hockey Stick in My Chat History
I exported a year of chat history and graphed it: words per day went up 727%, and here is what I was actually talking about.
6 min readBeginner
Nov 2024Deep Dive
When the Reward Signal Is Also an AI That Can Be Gaslit: Reward Hacking Part 2
What happens when the reward signal is itself a model: overoptimization, sycophancy, biased LLM graders, and agents that rewrite their own reward.
12 min readAdvanced
Nov 2024Deep Dive
When You Tell a Robot to Get Points and It Becomes a Gremlin: Reward Hacking Part 1
Reward hacking, from the boat that races in circles to the robot hand that only pretends to grab things, and why smarter agents make it worse.
9 min readIntermediate
Apr 2024Notes
I Tried to Build Midjourney Blend at Home and Got a Diffusion Smoothie Instead
I fed random CLIP crops of two images into a fine-tuned diffusion model hoping for compositional blending and got a smoothie.
5 min readAdvanced
Jan 2024Deep Dive
I Built a Diffusion Model That Could Copy Anyone's Face. Then I Lost It Like a Pair of Sunglasses.
I trained a diffusion model that clones a face from one photo, got face and background mixing working, then lost the checkpoint forever.
7 min readAdvanced
Jan 2024Essay
My Agent Phase, and Why I Got Out
I built a few LLM agent systems, watched more of them fail, and came out convinced the general cognitive architecture is the wrong target.
7 min readIntermediate
Jun 2023Deep Dive
What Happens When You Actually Run LLM Agents in the Wild
What HuggingGPT, ChemCrow, generative agents and AutoGPT actually do in practice, and the four walls every agent still runs into.
9 min readIntermediate
Jun 2023Deep Dive
I Tried Building an LLM Agent and Accidentally Gave It a To-Do List It Could Never Finish
The three things you bolt onto an LLM to make it an agent: planning, memory and tool use, and where each one starts leaking.
10 min readIntermediate