<?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://jamesrwilliams.ca</loc></url><url><loc>https://jamesrwilliams.ca/about</loc></url><url><loc>https://jamesrwilliams.ca/cycles</loc></url><url><loc>https://jamesrwilliams.ca/posts</loc></url><url><loc>https://jamesrwilliams.ca/posts/2025-diapers-citizenship-and-finally-learning-to-drive</loc></url><url><loc>https://jamesrwilliams.ca/posts/a-deep-dive-into-the-console-api</loc></url><url><loc>https://jamesrwilliams.ca/posts/a-netlify-notstalgia-trip</loc></url><url><loc>https://jamesrwilliams.ca/posts/a-start-to-my-general-transit-feed-specification-project-gtfs-to-sql</loc></url><url><loc>https://jamesrwilliams.ca/posts/a-wild-chrome-extension-appears</loc></url><url><loc>https://jamesrwilliams.ca/posts/alpinejs</loc></url><url><loc>https://jamesrwilliams.ca/posts/article-life-as-a-web-developer</loc></url><url><loc>https://jamesrwilliams.ca/posts/aside-from-work-what-do-you-do</loc></url><url><loc>https://jamesrwilliams.ca/posts/autocomplete-branch-names-on-the-command-line</loc></url><url><loc>https://jamesrwilliams.ca/posts/automating-daily-summary-with-toggl-track-api</loc></url><url><loc>https://jamesrwilliams.ca/posts/automating-git-activities-with-node</loc></url><url><loc>https://jamesrwilliams.ca/posts/being-right-is-not-enough</loc></url><url><loc>https://jamesrwilliams.ca/posts/big-plans-for-this-code</loc></url><url><loc>https://jamesrwilliams.ca/posts/building-a-custom-readme-badge-image-api</loc></url><url><loc>https://jamesrwilliams.ca/posts/building-a-gatsby-app-with-firebase-and-sanity</loc></url><url><loc>https://jamesrwilliams.ca/posts/building-an-interactive-component-editor-in-react</loc></url><url><loc>https://jamesrwilliams.ca/posts/camping-at-grundy-lake-provincial-park</loc></url><url><loc>https://jamesrwilliams.ca/posts/css-attribute-selectors</loc></url><url><loc>https://jamesrwilliams.ca/posts/css-wheel-of-fortune</loc></url><url><loc>https://jamesrwilliams.ca/posts/custom-list-styles-with-the-css-counter-styles-rule</loc></url><url><loc>https://jamesrwilliams.ca/posts/ditching-tailwind-and-embracing-mdx</loc></url><url><loc>https://jamesrwilliams.ca/posts/essay-technology-and-control</loc></url><url><loc>https://jamesrwilliams.ca/posts/feature-flags-in-a-react-app-with-gitlabs-feature-toggles</loc></url><url><loc>https://jamesrwilliams.ca/posts/feature-flags-wordpress-plugin</loc></url><url><loc>https://jamesrwilliams.ca/posts/fetch-domain-information-in-the-command-line</loc></url><url><loc>https://jamesrwilliams.ca/posts/finding-files-by-size-with-the-command-line</loc></url><url><loc>https://jamesrwilliams.ca/posts/first-project-with-open-api-spec</loc></url><url><loc>https://jamesrwilliams.ca/posts/fisticuffs-with-timezones-in-javascript</loc></url><url><loc>https://jamesrwilliams.ca/posts/fixing-the-phpstorm-command-line-launcher</loc></url><url><loc>https://jamesrwilliams.ca/posts/getting-started-with-ssh-config</loc></url><url><loc>https://jamesrwilliams.ca/posts/git-ssh-keys-personal-cheat-sheet</loc></url><url><loc>https://jamesrwilliams.ca/posts/google-app-script-formatting</loc></url><url><loc>https://jamesrwilliams.ca/posts/htaccess-redirects-scratchpad</loc></url><url><loc>https://jamesrwilliams.ca/posts/i-emigrated-to-canada</loc></url><url><loc>https://jamesrwilliams.ca/posts/i-think-ive-survived-my-first-winter-in-canada</loc></url><url><loc>https://jamesrwilliams.ca/posts/i-was-wrong-about-ai-again</loc></url><url><loc>https://jamesrwilliams.ca/posts/javascript-encryption-with-rsa-and-aes</loc></url><url><loc>https://jamesrwilliams.ca/posts/let-it-break</loc></url><url><loc>https://jamesrwilliams.ca/posts/long-live-the-wordpress-cli</loc></url><url><loc>https://jamesrwilliams.ca/posts/macos-creating-a-right-click-option-to-copy-a-file-path</loc></url><url><loc>https://jamesrwilliams.ca/posts/macos-make-textedit</loc></url><url><loc>https://jamesrwilliams.ca/posts/migration-to-gatsby</loc></url><url><loc>https://jamesrwilliams.ca/posts/mock-service-worker</loc></url><url><loc>https://jamesrwilliams.ca/posts/monitoring-subresource-integrity-issues</loc></url><url><loc>https://jamesrwilliams.ca/posts/moving-from-wordpress-to-hugo</loc></url><url><loc>https://jamesrwilliams.ca/posts/opacity-in-css-hex-color-notation</loc></url><url><loc>https://jamesrwilliams.ca/posts/pc-building-part-1</loc></url><url><loc>https://jamesrwilliams.ca/posts/personal-development-goals-for-2020</loc></url><url><loc>https://jamesrwilliams.ca/posts/postcardware</loc></url><url><loc>https://jamesrwilliams.ca/posts/programmatic-text-formatting-in-google-sheets</loc></url><url><loc>https://jamesrwilliams.ca/posts/promise-progress-bar</loc></url><url><loc>https://jamesrwilliams.ca/posts/quick-save-side-project</loc></url><url><loc>https://jamesrwilliams.ca/posts/recreating-the-field-set-legend-effect-just-without-the-field-set</loc></url><url><loc>https://jamesrwilliams.ca/posts/salesforce-commerce-cloud-adding-drag-and-drop-support-to-headless-page-designer</loc></url><url><loc>https://jamesrwilliams.ca/posts/salesforce-commerce-cloud-headless-cms-with-react</loc></url><url><loc>https://jamesrwilliams.ca/posts/salesforce-commerce-cloud-react-business-manager-page</loc></url><url><loc>https://jamesrwilliams.ca/posts/salesforce-commerce-cloud-react-custom-attribute-editors</loc></url><url><loc>https://jamesrwilliams.ca/posts/sending-a-variable-as-an-attachment-with-php-mailer</loc></url><url><loc>https://jamesrwilliams.ca/posts/sets-in-javascript</loc></url><url><loc>https://jamesrwilliams.ca/posts/site-updates-for-2021</loc></url><url><loc>https://jamesrwilliams.ca/posts/social-links</loc></url><url><loc>https://jamesrwilliams.ca/posts/stack-upgrade-ditching-google-chrome-for-firefox-quantum</loc></url><url><loc>https://jamesrwilliams.ca/posts/sucking-at-something-is-the-first-step</loc></url><url><loc>https://jamesrwilliams.ca/posts/terminal-aliases</loc></url><url><loc>https://jamesrwilliams.ca/posts/useful-git-commands</loc></url><url><loc>https://jamesrwilliams.ca/posts/using-github-issues-as-a-cms</loc></url><url><loc>https://jamesrwilliams.ca/posts/using-the-xcode-ios-simulator-cli</loc></url><url><loc>https://jamesrwilliams.ca/posts/what-ive-been-up-to</loc></url><url><loc>https://jamesrwilliams.ca/posts/where-was-i-when-2015-turned-into-2016</loc></url><url><loc>https://jamesrwilliams.ca/posts/your-website-has-a-carbon-footprint</loc></url><url><loc>https://jamesrwilliams.ca/posts/zipping-folder-contents</loc></url><url><loc>https://jamesrwilliams.ca/posts/zxcvbn-a-sensible-password-strength-estimator</loc></url><url><loc>https://jamesrwilliams.ca/reads</loc></url><url><loc>https://jamesrwilliams.ca/uses</loc></url></urlset>