<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://alanhc.github.io/blog/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20250626-paste-image-vsocde/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/markdown_syntax_guide/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/authors/alan-tseng/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/authors/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/hello-world/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/%E8%87%AA%E6%9E%B6harbor/</loc><lastmod>2024-10-13T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/ubuntu-wifi%E7%B6%B2%E5%8D%A1%E6%8A%93%E4%B8%8D%E5%88%B0/</loc><lastmod>2024-10-11T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/%E8%A9%9E%E5%BD%99%E8%A7%A3%E9%87%8B/</loc><lastmod>2024-10-11T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/%E5%AE%89%E8%A3%9D%E5%BE%8C%E7%9B%B4%E6%8E%A5%E9%80%B2%E5%88%B0-windows%E5%95%8F%E9%A1%8C/</loc><lastmod>2024-10-10T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/%E8%B6%85%E7%B0%A1%E5%96%AE%E4%B8%80%E6%96%87%E7%90%86%E8%A7%A3%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E7%A7%81%E6%9C%89%E5%A4%A7%E5%9E%8B%E8%AA%9E%E8%A8%80%E6%A8%A1%E5%9E%8Bllm-ollamaopenwebui%E7%AF%87/</loc><lastmod>2024-10-03T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/windows%E4%B8%8B%E7%9A%84%E5%A5%97%E4%BB%B6%E7%AE%A1%E7%90%86-chocolatey/</loc><lastmod>2024-09-04T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/%E6%9B%B4%E5%BF%AB%E7%9A%84%E5%BD%B1%E7%89%87%E5%AD%B8%E7%BF%92%E6%96%B9%E6%B3%95/</loc><lastmod>2024-08-14T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/fastapi-k8s/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/llm-k8s/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240716-buildingyourowndatabaseagent/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/huggingfacellm/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240704-inferencing-llm/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/python%E4%BD%BF%E7%94%A8pyinstaller%E8%A3%BD%E4%BD%9C%E6%A1%8C%E9%9D%A2%E6%87%89%E7%94%A8%E7%A8%8B%E5%BC%8F/</loc><lastmod>2024-06-26T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240621-%E5%85%AC%E9%9B%B2%E5%AD%B8%E7%BF%92%E7%AD%86%E8%A8%98/</loc><lastmod>2024-06-21T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240409-%E4%BD%A0%E8%A6%81%E5%A6%82%E4%BD%95%E8%A1%A1%E9%87%8F%E4%BD%A0%E7%9A%84%E4%BA%BA%E7%94%9F/</loc><lastmod>2024-06-16T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/%E9%96%B1%E8%AE%80%E7%AD%86%E8%A8%98-%E7%AB%B6%E6%8A%80%E7%A8%8B%E5%BC%8F%E8%B7%AF%E7%B7%9A%E5%9C%96/</loc><lastmod>2024-04-06T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/%E9%96%B1%E8%AE%80%E7%AD%86%E8%A8%98-%E5%BB%BA%E4%B8%AD2021%E6%A0%A1%E5%85%A7%E5%9F%B9%E8%A8%93%E7%B0%A1%E5%A0%B1/</loc><lastmod>2024-04-06T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/%E9%96%B1%E8%AE%80%E7%AD%86%E8%A8%98-%E5%BB%BA%E4%B8%AD2021%E6%9A%91%E5%81%87%E8%B3%87%E8%AE%80%E6%8A%95%E5%BD%B1%E7%89%87-%E8%AC%9D%E4%B8%80/</loc><lastmod>2024-04-06T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240324-learn-go/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240321-interview-warmup/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240303-save-password-python/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240227-file-systems-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240227-hash-table-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240227-huggingface-nlp/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240227-warp-terminal/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/%E5%9C%8B%E5%A4%96%E5%B7%A5%E4%BD%9C/</loc><lastmod>2024-02-27T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240226-circular-array-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240226-minesweeper-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240222-text-network-analysis/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240221-othello-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240219-chat-server-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240216-levelsfyi-crawler/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240217-call-center-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240217-jigsaw-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240217-jukebox-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240217-online-book-reader-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240217-parking-lot-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240215-deck-of-cards-ood/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240212-linkedin-private-api/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240211-pastebin-design/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240211-taiwan-job-insights/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240209-job-insights/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240207-dcard-crawler/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240205-salesrank-design/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240203-trading-bot/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/quotes/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240125-cache-design/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240125-duplicate-url-design/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240125-web-crawler-design/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240124-break-cloudflare-bot-prevention/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240124-social-network-design/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240123-scalper/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240122-ntu-cool-video-download/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240122-stock-data-design/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240122-english-speaking/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240121-web-scraping-instagram-with-selenium/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240119-osint/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240113-data-engineer-salary/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240108-attention/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20240107-notion-website/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231222-chat/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231217-google-gemini/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231217-ntu-matches/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231213-pyspark/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231210-convert-post-markdown/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231209-ai-music-example/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231209-docker-machine-learning/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231202-twitter-bot/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231130-building-and-evaluating-advanced-rag/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231129-shouldyouuseopensourcelargelanguagemodels/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231125-cloudflare-tunnel/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231124-terraform-vercel/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231117-large-language-models-with-semantic-search/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231116-vector-databases-from-embeddings-to-applications/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231115-building-multi-modal-search-with-vector-databases/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231115-how-to-build-an-mvp-startup-school/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20210922-fintech-fall/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231112-nextjs-upload-large-file/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/learn-filebase/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231110-%E7%94%9F%E6%88%90%E5%BC%8Fai%E6%B7%BA%E8%AB%87%E5%9C%96%E5%83%8F%E7%94%9F%E6%88%90%E6%A8%A1%E5%9E%8B-diffusion-model-%E5%8E%9F%E7%90%86/</loc><lastmod>2023-11-10T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231110-80%E5%88%86%E9%90%98%E5%BF%AB%E9%80%9F%E4%BA%86%E8%A7%A3%E5%A4%A7%E5%9E%8B%E8%AA%9E%E8%A8%80%E6%A8%A1%E5%9E%8B-5-30%E6%9C%89%E5%92%92%E8%A1%93%E8%BF%B4%E6%88%B0%E9%9B%B7/</loc><lastmod>2023-11-10T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231108-how-diffusion-models-work/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231107-imgbb/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231107-mui-toolpad/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231104-learn-cosmos/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231103-finetuning-large-language-models/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231103-linklist/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231101-generative-ai-for-everyone/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231031-andrew-ng-opportunities-in-ai-2023/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231029-building-systems-with-the-chatgpt-api/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231028-mozilla-ai/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231026-chatgpt-prompt-engineering-for-developers/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231023-learning-from-lin/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231023-pair-programming-with-a-large-language-model/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231010-webauthn/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20231006-fastapi-streaming/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230929-rn-qrcode/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230926-21-things-before-21/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230924-qr-code/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230924-wagami/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230924-cmd-copy/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230920-nx/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230919-hardhat/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230907-react-native/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230831-mdx/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230831-kbar/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230831-mongodb-aggregate-multiple-group/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230830-nextjs-google-analytics/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230829-chakra-ui/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230829-orbit-chat/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230829-peerjs/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230828-ipfs/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230828-libp2p/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230827-chat-app/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230827-notion-alternative/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230827-orbitdb/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230827-next-pwa/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230827-vscode-animate-extension/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230826-imgur/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/nextjs/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230826-import-alias/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230826-next-seo/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/nextjs-markdown/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230825-rss/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230824-bigchain/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230824-chakra-darkmode/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230820-nexjs13/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230819-mermaid-js/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230818-markdown-section-link/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230817-next-sitemap/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230816-nprogress/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230813-back-up-crawler/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230812-react-syntax-clipboard/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230109-ipfs-upload/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20230108-solidity-nft/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20221231-k8s-notes/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20221230-tezos-nft-tutorial/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20221228-solana-nft-tutorial/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/first-day/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20220811-line-blockchain-developer-intern/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20220811-monorepo-development/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20220721-upgrade-nx-repo-to-react-18/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20220531-decentral-showroom-ntu-dapp-term-project/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20220518-web3-%E4%B8%96%E7%95%8C%E8%A3%A1%E7%9A%84%E9%A9%97%E8%AD%89%E6%A9%9F%E5%88%B6-%E4%BB%A5tezos%E7%82%BA%E4%BE%8B/</loc><lastmod>2022-05-18T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20220406-%E4%BD%BF%E7%94%A8bloom-filter%E5%8F%8Aweb3-py%E4%BE%86%E5%81%9A%E7%96%AB%E8%8B%97%E8%AA%8D%E8%AD%89-ntu-dapp-%E6%9C%9F%E4%B8%ADprototype/</loc><lastmod>2022-04-06T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20211028-%E8%99%9B%E6%93%AC%E4%BA%BA%E8%AA%B2%E5%A0%82%E7%AD%86%E8%A8%984-vroid/</loc><lastmod>2021-10-28T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20211027-%E8%99%9B%E6%93%AC%E4%BA%BA%E8%AA%B2%E5%A0%82%E7%AD%86%E8%A8%983-unity-facecapture/</loc><lastmod>2021-10-27T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20211018-%E8%99%9B%E6%93%AC%E4%BA%BA%E8%AA%B2%E5%A0%82%E7%AD%86%E8%A8%982/</loc><lastmod>2021-10-18T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20211011-%E8%99%9B%E6%93%AC%E4%BA%BA%E8%AA%B2%E5%A0%82%E7%AD%86%E8%A8%98-spark-ar/</loc><lastmod>2021-10-11T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20210820-%E9%96%8B%E7%99%BCmcu-up-%E9%8A%98%E5%82%B3%E9%87%91%E6%89%8B%E6%8C%873-0-%E7%9A%84%E9%82%A3%E4%BA%9B%E4%BA%8B%E5%85%92/</loc><lastmod>2021-08-20T00:00:00+00:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20200116-week17/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20200116-week16/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20200116-week15/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20191212-week14/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20191205-week13/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20191121-week11/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20191114-week9/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20191031-week8/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20191024-week7/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20191017-week6/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20191003-week4/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190926-week3/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190925-week1/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190919-week2/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190614-week17/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190614-cgfinal/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190531-week15/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190524-week14/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190517-week13/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190510-week12/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190503-week11/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190503-week10/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190412-week7/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190329-week6/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190322-week5/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190315-week4/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190308-week3/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190223-week2/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190222-week1/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20190409-uva409/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180405-uva630/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180317-uva10409/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180314-uva105/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180312-uva10190/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180309-uva141/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180228-hash-table/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180222-uva401/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180212-uva10611/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180210-nctu-pcca-winter-notes/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180209-linked-list/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180209-uva406/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180206-uva10162/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180205-uva10405/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180131-uva11917/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180128-uva10931/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180124-gets-puts/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180123-int2str/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20180119-hackmd/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20171230-recursion/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20171221-uva10190/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20171219-recursion/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20171217-dp/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20171210-vector/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20171202-styleguide/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20171106-gcd/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20171105-makerfair/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20171102-computer-virus/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20171027-bnf/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/20171027-refactor/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/test-render/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/blog/drawing-2025-05-29-16.01.03.excalidraw/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/about/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/</loc><lastmod>2025-10-15T22:32:21+08:00</lastmod></url><url><loc>https://alanhc.github.io/docs/first-page/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/docs/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/docs/folder/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/docs/folder/leaf/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/projects/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url><url><loc>https://alanhc.github.io/showcase/</loc><lastmod>2025-06-28T13:47:20+08:00</lastmod></url></urlset>