Featured
AI & Product Development.
Hand-written essays on the tools, decisions, and trade-offs behind building real products. Each one started as a real moment in the work.
All blogs
- MarkItDown: one call that turns any file into clean MarkdownJun 2026PDFs, slide decks, spreadsheets, scanned images, audio, even a YouTube URL — Microsoft's MarkItDown collapses all of them into the one format an LLM actually reads well. Here's what it does, how it's built, the security footnote most people skip, and where it slotted into my own stack.
- My chatbot moonlights as Rajinikanth (I did not authorize this)Jun 2026The bot on this site got used more than I expected — and usage is just a stress test you didn't schedule. One visitor talked it into dropping the assistant role and performing a celebrity-style monologue. The next tried to make it read its own instructions out loud. This is the whole arc: how I caught the first one, why a careful model fell for it, the layered fix, the prompt-extraction hole I found next, and the moment I got tired of patching by hand and taught the thing to heal itself.
- Seeing inside my chatbot: observability with LangfuseJun 2026My site's chatbot makes two AI calls for every message — one to answer, one to grade the answer. For weeks I ran that pipeline half-blind. Langfuse is the open-source tool that let me finally see inside it.
- I built and deployed a product in two months without writing code the traditional wayMay 2026105 commits across April and May. Every file written through conversation with an AI. Here is what two months of building with Claude Code actually looked like.
- Claude Code is my IDE nowApr 2026I stopped using a traditional code editor and started building everything through a conversation with an AI agent. Here's what changed.
- Why the chatbot on this site uses two different AIsApr 2026One AI answers your questions fast. A different AI grades every answer for quality. Here's why that split exists and how it works.
- Framer Motion: making pages feel alive without overdoing itMar 2026Subtle scroll animations and smooth transitions that make your site feel polished and intentional, not flashy.
- shadcn/ui: components you actually ownFeb 2026Pre-built building blocks that live inside your project instead of in someone else's package. Customize freely, no waiting on someone else to fix things.
- Vercel is the only infrastructure I haven't second-guessedFeb 2026Hosting, analytics, speed monitoring, custom domain, security certificates. All of it just runs. Here's what I trust it for and what I don't.
- v0: AI builds the first draft, you make it yoursJan 2026An AI tool that generates working UI components from plain English descriptions. Great for getting started fast — but never ship it as-is.
- Next.js is the framework I picked because of the chatbotJan 2026For a static portfolio I could have used something simpler. But the moment you add a chatbot that talks to an AI, you need a framework that handles both static pages and live server calls.