<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://ethaneng.dev/</loc></url><url><loc>https://ethaneng.dev/about/</loc></url><url><loc>https://ethaneng.dev/blog/</loc></url><url><loc>https://ethaneng.dev/blog/ai-agents-the-next-abstraction/</loc></url><url><loc>https://ethaneng.dev/blog/ai-coding-fundamentals/</loc></url><url><loc>https://ethaneng.dev/blog/building-ai-agents-with-structured-outputs/</loc></url><url><loc>https://ethaneng.dev/blog/example-post-with-cover/</loc></url><url><loc>https://ethaneng.dev/blog/hello-world/</loc></url><url><loc>https://ethaneng.dev/blog/my-dev-setup/</loc></url><url><loc>https://ethaneng.dev/blog/real-time-architecture-lessons/</loc></url><url><loc>https://ethaneng.dev/blog/tag/agents/</loc></url><url><loc>https://ethaneng.dev/blog/tag/ai/</loc></url><url><loc>https://ethaneng.dev/blog/tag/astro/</loc></url><url><loc>https://ethaneng.dev/blog/tag/claude-code/</loc></url><url><loc>https://ethaneng.dev/blog/tag/developer-tools/</loc></url><url><loc>https://ethaneng.dev/blog/tag/meta/</loc></url><url><loc>https://ethaneng.dev/blog/tag/predictions/</loc></url><url><loc>https://ethaneng.dev/blog/tag/productivity/</loc></url><url><loc>https://ethaneng.dev/blog/tag/software-engineering/</loc></url><url><loc>https://ethaneng.dev/blog/tag/web-dev/</loc></url><url><loc>https://ethaneng.dev/blog/tag/workflow/</loc></url><url><loc>https://ethaneng.dev/blog/typescript-patterns-i-use-every-day/</loc></url><url><loc>https://ethaneng.dev/contact/</loc></url><url><loc>https://ethaneng.dev/portfolio/</loc></url><url><loc>https://ethaneng.dev/portfolio/cap-ezi-parts/</loc></url><url><loc>https://ethaneng.dev/uses/</loc></url></urlset>