<?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:mobile="http://www.google.com/schemas/sitemap-mobile/1.0" 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://www.duncanleung.com/contact/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/me/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/newsletter/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/resume/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/fixing-react-warning-synthetic-events-in-setstate/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/webpack-build-react-production-windows/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/hacktoberfest-oc-meetup/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/testing-formik-form-onsubmit/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/fixing-netlify-build-fail/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/python-name-check-pattern-__name__==__main__/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/set-up-python-pyenv-virtualenv-poetry/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/learn/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/avoiding-react-setstate-pitfalls/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/react-pure-render-this-binding-patterns/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/storybook-decorators-react-intl-provider/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/git-sync-remote-upstream-fork/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/aws-amplify-aws-exports-js-typescript/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/typescript-module-declearation-svg-img-assets/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/emotion-css-prop-jsx-pragma-storybook/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/profile-measure-find-remove-slow-eslint-rules/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/storybook-decorators-emotion-theme-provider/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/why-slow-plugin-typescript-eslint-performance-issues/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/testing-react-helmet-document-head-meta-tag-react-testing-library/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/load-python-environment-variables-dotenv/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/typescript-array-map-over-union-array-type/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/typescript-type-guards/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/typescript-generics-conditional-types-emotion-as-prop/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/select-contentful-locale-gatsby-context-graphql-variable/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/serverless-reference-another-aws-lambda-pseudo-parameters-variables/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/visual-studio-code-yml-custom-serverless-tag/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/switch-multiple-aws-profile-aws-cli-serverless/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/import-svg-storybook-webpack-loader/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/serverless-set-breakpoint-locally-debug-aws-lambda/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/aws-set-up-email-billing-alert/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/husky-prettier-eslint-precise-commits-lint-staged-pre-commit-pre-push/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/eslint-mixed-javascript-typescript-files-codebase/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/accessing-material-ui-theme-object-emotion-styled-component-css-prop/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/find-kill-process-port-3000-mac/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/iterating-index-strings-runes-go-golang/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/recover-accidental-git-push-force/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/next-js-typescript-svg-any-module-declaration/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/nvm-commands-cheatsheet/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tailwind-css-unknown-at-rule/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/slices-in-go/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/allocating-memory-go/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/methods-in-go/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/missing-initial-state-firebase-auth-proxy-nextjs-vercel/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/go-idiom-accept-interfaces-return-types/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/testing-validation-schema-formik-form/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/go-basic-data-structures-types-pointers-structs-arrays-slices-int-float-string/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/understand-go-golang-interfaces/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/go-function-arguments-passed-by-value/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/go-json-encoding-and-decoding/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/how-to-setup-eslint-eslintrc-config-difference-eslint-config-plugin/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/how-to-teach-programming-the-importance-of-mental-models/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/serverless-securing-authenticate-aws-api-gateway-endpoints-cognito-iam-api-key/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/javascript/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/react/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/webpack/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/windows/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/hacktoberfest/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/open-source/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/formik/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/react-testing-library/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/jest/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/netlify/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/gatsby/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/python/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/storybook/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/react-intl/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/git/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/aws/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/amplify/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/typescript/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/emotion/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/css-in-js/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/eslint/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/theme/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/graphql/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/contentful/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/internationalization/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/serverless/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/aws-lambda/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/visual-studio-code/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/aws-cli/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/svg/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/prettier/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/emotion-js/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/material-ui/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/macos/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/process/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/backend/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/nodejs/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/tailwind/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/css/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/firebase/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/education/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/aws-api-gateway/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/aws-cognito/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/aws-iam/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/aws-api-key/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/react/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/popular/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/toolchain/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/open source/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/testing/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/netlify/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/python/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/storybook/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/git/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/aws/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/typescript/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/graphql/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/serverless/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/emotionjs/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/macos/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/go (golang)/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/nodejs/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/css/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/web/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/education/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/blog/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/categories/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
<url> <loc>https://www.duncanleung.com/tags/</loc> <changefreq>daily</changefreq> <priority>0.7</priority> </url>
</urlset>