Blog
Claude AI for Developers: A Practical Guide to the Anthropic API
A hands-on guide to building with Claude — from API basics to advanced techniques like tool use, prompt caching, and multi-turn agents.
AI Skills Every Developer Needs in 2026
The practical AI skills that actually matter for software engineers today — prompt engineering, RAG, agents, evals, and how to build systems that hold up in production.
Building AI Agents That Actually Work in Production
A practical guide to building reliable AI agents — architecture patterns, tool design, orchestration, error handling, and the mistakes that kill agents in production.
Azure AI Services for Developers: What's Actually Useful in 2026
A practical breakdown of Azure AI Services — Azure OpenAI, AI Search, Document Intelligence, and Foundry — with code examples and honest notes on what works well and what doesn't.
AWS AI Services for Developers: Bedrock, SageMaker, and Beyond
A practical guide to AWS AI services — Amazon Bedrock for LLM access, SageMaker for model deployment, Textract for document processing, and patterns for building AI applications on AWS.
Building Voyage: An AI-Powered Interview Preparation Assistant
How I built Voyage — an AI interview prep assistant with real-time web search, MCP integration, and adaptive mock interviews — as part of the Tailify platform.
Next.js 16 vs Next.js 15: What Changed and Should You Upgrade?
A practical comparison of Next.js 16 and Next.js 15 — new features, breaking changes, performance improvements, and whether you should upgrade today.

2023 State of Databases for Serverless & Edge
An overview of databases that pair well with modern application and compute providers.
Why You Should Use a React Framework
And spend more time writing React code.
2022 Year in Review
Celebrating the work of my teams at Vercel.
Behind the scenes: Next.js Conf 2022
My recap of the 2022 Next.js Conf, which had 110,000+ registrants and 55,000+ developers joining live.
From Firebase/Redis to MySQL with PlanetScale
Learn how I migrated my Next.js website to use MySQL with PlanetScale, resulting in 10x faster response times for my APIs.
Switching to Tailwind CSS
Learn why I switched my Next.js blog to use Tailwind CSS and how it impacted performance.
How Should I Style My React Application?
Learn how CSS has evolved and explore pros and cons of different styling solutions for React.
Improving My Next.js MDX Blog
I revamped my personal site, adding a variety of improvements for the ideal Next.js + MDX blogging experience.
Create a Dynamic Sitemap with Next.js
Learn how to add a dynamic sitemap to your Next.js project, along with a robots.txt file for optimal SEO.
Using Firebase with Next.js
Learn how to use Firebase with Next.js and deploy it to Vercel.