<?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://blog.marvinhsu.dev/about</loc><lastmod>2026-09-04T15:06:56.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/about"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/about"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/about</loc><lastmod>2026-09-04T15:06:56.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/about"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/about"/></url><url><loc>https://blog.marvinhsu.dev/</loc><lastmod>2026-09-04T15:06:56.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/</loc><lastmod>2026-09-04T15:06:56.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/"/></url><url><loc>https://blog.marvinhsu.dev/posts/2022/hello-world</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2022/hello-world"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2022/hello-world"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2022/hello-world</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2022/hello-world"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2022/hello-world"/></url><url><loc>https://blog.marvinhsu.dev/posts/2022/rust-zero2prod-00</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2022/rust-zero2prod-00"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2022/rust-zero2prod-00"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2022/rust-zero2prod-00</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2022/rust-zero2prod-00"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2022/rust-zero2prod-00"/></url><url><loc>https://blog.marvinhsu.dev/posts/2022/zola-getting-started</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2022/zola-getting-started"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2022/zola-getting-started"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2022/zola-getting-started</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2022/zola-getting-started"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2022/zola-getting-started"/></url><url><loc>https://blog.marvinhsu.dev/posts/2022/zola-github-action-ci</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2022/zola-github-action-ci"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2022/zola-github-action-ci"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2022/zola-github-action-ci</loc><lastmod>2026-09-04T15:06:56.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2022/zola-github-action-ci"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2022/zola-github-action-ci"/></url><url><loc>https://blog.marvinhsu.dev/posts/2023/ddd-book-club-ch14</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/ddd-book-club-ch14"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/ddd-book-club-ch14"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2023/ddd-book-club-ch14</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/ddd-book-club-ch14"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/ddd-book-club-ch14"/></url><url><loc>https://blog.marvinhsu.dev/posts/2023/ddd-book-club-ch15</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/ddd-book-club-ch15"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/ddd-book-club-ch15"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2023/ddd-book-club-ch15</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/ddd-book-club-ch15"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/ddd-book-club-ch15"/></url><url><loc>https://blog.marvinhsu.dev/posts/2023/dotnet-martendb-intro-01</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/dotnet-martendb-intro-01"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/dotnet-martendb-intro-01"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2023/dotnet-martendb-intro-01</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/dotnet-martendb-intro-01"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/dotnet-martendb-intro-01"/></url><url><loc>https://blog.marvinhsu.dev/posts/2023/efcore-postgres-jsonb-1</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/efcore-postgres-jsonb-1"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/efcore-postgres-jsonb-1"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2023/efcore-postgres-jsonb-1</loc><lastmod>2026-09-04T15:06:56.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/efcore-postgres-jsonb-1"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/efcore-postgres-jsonb-1"/></url><url><loc>https://blog.marvinhsu.dev/posts/2023/efcore-postgres-jsonb-2</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/efcore-postgres-jsonb-2"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/efcore-postgres-jsonb-2"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2023/efcore-postgres-jsonb-2</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/efcore-postgres-jsonb-2"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/efcore-postgres-jsonb-2"/></url><url><loc>https://blog.marvinhsu.dev/posts/2023/rust-clap-cli-tool</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/rust-clap-cli-tool"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-clap-cli-tool"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-clap-cli-tool</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/rust-clap-cli-tool"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-clap-cli-tool"/></url><url><loc>https://blog.marvinhsu.dev/posts/2023/rust-zero2prod-01-gitpod</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/rust-zero2prod-01-gitpod"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-zero2prod-01-gitpod"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-zero2prod-01-gitpod</loc><lastmod>2026-09-04T15:06:56.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/rust-zero2prod-01-gitpod"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-zero2prod-01-gitpod"/></url><url><loc>https://blog.marvinhsu.dev/posts/2023/rust-zero2prod-02-user-story</loc><lastmod>2026-09-04T15:06:56.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/rust-zero2prod-02-user-story"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-zero2prod-02-user-story"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-zero2prod-02-user-story</loc><lastmod>2026-09-04T15:06:56.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/rust-zero2prod-02-user-story"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-zero2prod-02-user-story"/></url><url><loc>https://blog.marvinhsu.dev/posts/2023/rust-zero2prod-03-health-check</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/rust-zero2prod-03-health-check"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-zero2prod-03-health-check"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-zero2prod-03-health-check</loc><lastmod>2026-09-04T15:06:56.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2023/rust-zero2prod-03-health-check"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2023/rust-zero2prod-03-health-check"/></url><url><loc>https://blog.marvinhsu.dev/posts/2024/how-to-migrate-to-a-monorepo</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2024/how-to-migrate-to-a-monorepo"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2024/how-to-migrate-to-a-monorepo"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2024/how-to-migrate-to-a-monorepo</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2024/how-to-migrate-to-a-monorepo"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2024/how-to-migrate-to-a-monorepo"/></url><url><loc>https://blog.marvinhsu.dev/posts/2024/large-jsonb-value-performance-in-postgres</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2024/large-jsonb-value-performance-in-postgres"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2024/large-jsonb-value-performance-in-postgres"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2024/large-jsonb-value-performance-in-postgres</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2024/large-jsonb-value-performance-in-postgres"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2024/large-jsonb-value-performance-in-postgres"/></url><url><loc>https://blog.marvinhsu.dev/posts/2024/rust-just-command-runner</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2024/rust-just-command-runner"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2024/rust-just-command-runner"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2024/rust-just-command-runner</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2024/rust-just-command-runner"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2024/rust-just-command-runner"/></url><url><loc>https://blog.marvinhsu.dev/posts/2024/sql-optimistic-lock-in-dotnet</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2024/sql-optimistic-lock-in-dotnet"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2024/sql-optimistic-lock-in-dotnet"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2024/sql-optimistic-lock-in-dotnet</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2024/sql-optimistic-lock-in-dotnet"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2024/sql-optimistic-lock-in-dotnet"/></url><url><loc>https://blog.marvinhsu.dev/posts/2024/sql-optimistic-lock-in-rust</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2024/sql-optimistic-lock-in-rust"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2024/sql-optimistic-lock-in-rust"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/2024/sql-optimistic-lock-in-rust</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/2024/sql-optimistic-lock-in-rust"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/2024/sql-optimistic-lock-in-rust"/></url><url><loc>https://blog.marvinhsu.dev/posts/</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/posts/</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/posts/"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/posts/"/></url><url><loc>https://blog.marvinhsu.dev/tags</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/tags"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/tags"/></url><url><loc>https://blog.marvinhsu.dev/zh-TW/tags</loc><lastmod>2026-09-04T14:13:53.000Z</lastmod><xhtml:link rel="alternate" hreflang="en" href="https://blog.marvinhsu.dev/tags"/><xhtml:link rel="alternate" hreflang="zh-TW" href="https://blog.marvinhsu.dev/zh-TW/tags"/></url></urlset>