Articles
Writing about developer products.
I write about DevRel, documentation, technical content, and the work behind making developer products easier to understand.
The Developer Trust Hierarchy: Why Practitioner Writing Outranks Marketing Content
I analyze the structural reasons why engineers filter for technical depth and verify-ability, creating a 5-tier hierarchy of developer trust.
How Stripe's Technical Blog Became a Competitive Moat
I think Stripe’s technical blog compounds into a moat because it teaches, documents, and shapes developer trust long before a sales conversation starts.
Why Devtools Startups Lose Deals Over Bad Docs
DevTools startups lose deals long before sales hears the objection. I explain how weak docs break evaluation, trials, and rollout confidence.
From Engineer to Technical Writer: What I Kept and What I Left Behind
I explain which engineering habits still make me better at technical writing, which ones I had to drop, and how the day-to-day work changed.
The Case for Shorter Technical Documentation
I think technical docs are often too long for the wrong reasons. Here’s why shorter docs usually work better, and where longer docs still earn their keep.
Writing Release Notes That Developers Trust
Write release notes that let developers assess upgrade risk, understand product impact, and migrate without surprises.
How to Write a Technical Tutorial That Actually Teaches
Write a technical tutorial that takes one reader from a clear starting point to a tested, useful result.
Developer Onboarding Docs: What Works, What Doesn't
Write developer onboarding docs that help a new engineer set up the product, understand the workflow, and ship a safe first change.
Technical Writing for AI Products: The New Rules
AI product docs now need prompts, schemas, evals, and version boundaries. I explain the rules I would use to judge a technical writer for an AI company.
How to Write a Changelog That Developers Actually Read
Write a changelog that helps developers assess an upgrade, find breaking changes, and understand what each release means for their code.
Hybrid Search: Combining Bm25 and Vector Search for Better Retrieval
Hybrid search combines BM25 sparse retrieval with dense vector search. Here's how reciprocal rank fusion works, what it costs, and when the combination actually beats either method alone.
Semantic Caching: The RAG Optimization Nobody Talks About
Semantic caching returns cached LLM responses for semantically similar queries, cutting API costs by 40-70% on the right workloads. Here's how the mechanism works and where it fails.
Structured Outputs with LLMs: JSON Mode, Function Calling, and When to Use Each
JSON mode, function calling, and structured outputs solve different problems. Here's when each one actually makes sense and what they cost you.
How Anthropic's Contextual Retrieval Changes RAG Architecture
The mechanism changes what gets indexed before the RAG pipeline runs a query.
Token Counting Isn't Optional: a Practical Guide to Llm Cost Control
I explain the mechanics of LLM tokenization, why JSON burns your API budget, and how to architect systems for strict token efficiency.
Reranking in RAG: Why Your Top-K Results Are Probably Wrong
Vector databases return results based on semantic similarity. I explain why that is rarely enough for production RAG and how a cross-encoder reranker fixes the problem.
Vector Embeddings: a Guide to the Geometry of Meaning in Ai
Everything in AI starts with a vector. Here is how embedding models turn human language into high-dimensional geometry, why dimensionality reduction matters, and how to choose between OpenAI, Cohere, and self-hosted models.
Llm Context Windows Explained: Why More Is Not Always Better
Context windows are expanding to millions of tokens. Here is why the middle of your context still gets ignored, what long context actually costs, and how to build production systems that use these massive windows effectively.
Prompt Caching: What It Is and When the Math Works
Prompt caching can reduce LLM costs by up to 90% and cut latency by half. Here is the engineering guide to how it works, why prefix matching matters, and how to calculate your ROI.
Mixture of Experts: How Moe Models Are Cheap to Run but Expensive to Host
DeepSeek V3 has 671B parameters but only activates 37B per token. Here's how mixture of experts works, why it cuts inference costs, and the catch nobody puts in the headline.