Blog

Carrying the Fire

A short reflection on The Road by Cormac McCarthy, written right before becoming a father.

LLM Temperature, Explained Simply

A concise explanation of LLM temperature, how it changes next-token probabilities, and when to use low, medium, or high values.

Timshel

A short reflection on East of Eden, Caleb, Cathy, and the idea that our past does not get the final word.

Why LiteLLM Matters for AI Engineering Teams

Why LiteLLM is useful for Codex and Claude Code, how to get it running quickly, and why this kind of tooling will matter more as AI agents spread.

Portugal at the 2026 World Cup: Talent, but No Team

A reflection on Portugal's 2026 World Cup exit, and why a gifted squad still failed to look like a coherent team.

The Most Productive Looking Procrastination I've Ever Done

Building with AI agents is so easy it's become my new form of procrastination, one that feels like productivity even when it isn't.

How I Use Tailscale to Access My Home ServerAI

How I use Tailscale to securely access my Beelink S12 home server apps from my phone and laptop without opening extra ports.

Stitch might be a UI tool worth watching

A short note on why Google's Stitch stands out as an AI-native UI prototyping tool with real potential.

Gemma 4 makes local models exciting again

A short reflection on why trying Gemma 4 made local AI feel practical and exciting again.

Nine Days in Mexico

A quick recap of our trip to the Riviera Maya — resort days, Xcaret Park, and a full-day tour to Chichén Itzá, Valladolid, and a cenote.

March 31 Was a Wake-Up Call for the Dev Ecosystem

March 31 exposed how fragile the modern dev ecosystem is. From the Axios npm attack to the Claude code leak, here's what it means for developers and dependency trust.

Frankenstein: A Few Thoughts

Short notes from reading Mary Shelley's Frankenstein — ambition, responsibility, and a monster more self-aware than its creator.

How to Reduce Token Consumption with Claude Code and Codex

Practical habits and patterns that keep your token usage lean when working with AI coding agents, whether you use Claude Code or GitHub Copilot with Codex.

Claude's New Telegram Plugin: Talking to Your AI Agent on the Go

Anthropic just released an official Telegram plugin for Claude Code. Here's how it works and why it changes how I interact with my AI agent.

Performance Tracing with Chrome DevTools MCP and The AI Agent

How I used the Chrome DevTools MCP to trace, diagnose, and fix real performance issues on my photo gallery page — without touching Lighthouse manually.

Spec-Driven Development in Practice: A Walkthrough with Spec Kit

A practical walkthrough of using Spec Kit to apply Spec-Driven Development inside an existing Next.js project

The Shift from Vibe Coding to Spec-Driven Development

A look at how the industry is moving from rapid, conversational AI coding to structured, specification-first development and the tools driving that shift.

Improving Lighthouse Performance with Image Optimization

How I improved Lighthouse performance on image-heavy blog posts using staged optimizations: lazy loading, WebP conversion, and LCP/CLS tuning.