<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://qcrao.hashnode.dev</loc>
    <lastmod>2026-10-15T11:41:08.809Z</lastmod>
    <changefreq>always</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/git-worktree-vs-branch-why-i-switched-and-when-you-shouldn-t</loc>
    <lastmod>2026-05-23T13:41:23.474Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/character-consistency-in-ai-comics-3-tricks-that-beat-lora-training-for-me</loc>
    <lastmod>2026-05-14T15:11:15.601Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/how-i-picked-an-srs-algorithm-for-tubevocab-without-becoming-an-anki-nerd</loc>
    <lastmod>2026-05-14T15:01:30.766Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/how-i-cut-speech-bubble-retries-from-70-to-0-with-200-lines-of-pillow-code</loc>
    <lastmod>2026-05-10T06:52:51.760Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/the-4-nlp-stages-between-raw-youtube-subtitles-and-a-flashcard-you-d-actually-study</loc>
    <lastmod>2026-05-10T06:47:37.143Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/7-prompt-engineering-tricks-that-pulled-my-ai-comic-costs-from-0-20-to-0-038-panel</loc>
    <lastmod>2026-05-10T05:16:05.178Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/how-i-scraped-50k-youtube-subtitles-in-2-weeks-for-7-and-the-legal-gray-zones</loc>
    <lastmod>2026-05-10T05:08:17.663Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/why-i-split-ai-comic-generation-into-4-services-instead-of-1-monolith</loc>
    <lastmod>2026-05-07T09:39:45.872Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/designing-the-data-model-for-an-esl-vocab-corpus-on-top-of-youtube-subtitles</loc>
    <lastmod>2026-05-07T09:26:39.233Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/the-engineering-challenge-of-turning-youtube-into-an-esl-corpus</loc>
    <lastmod>2026-04-24T04:11:57.869Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/why-character-consistency-is-hard-in-ai-comic-generation</loc>
    <lastmod>2026-04-24T04:08:58.190Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/archive</loc>
    <lastmod>2026-10-15T11:41:08.809Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://qcrao.hashnode.dev/recommendations</loc>
    <lastmod>2026-10-15T11:41:08.809Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.4</priority>
  </url>
</urlset>