<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="//jdno.ghost.io/sitemap.xsl"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1"><url><loc>https://jdno.ghost.io/rethinking-code-review-for-the-ai-era/</loc><lastmod>2026-01-13T22:40:08.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2026/01/shift-left-whiteboard.svg</image:loc><image:caption>shift-left-whiteboard.svg</image:caption></image:image></url><url><loc>https://jdno.ghost.io/leaving-the-rust-foundation/</loc><lastmod>2025-09-26T16:45:21.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2025/09/Leaving-the-Rust-Foundation-3.png</image:loc><image:caption>Leaving-the-Rust-Foundation-3.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/dockerized-databases-with-sinatra/</loc><lastmod>2025-09-26T11:13:01.000Z</lastmod></url><url><loc>https://jdno.ghost.io/for-a-readership-of-one/</loc><lastmod>2025-09-26T11:12:56.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1502771150995-a933810953ce?ixlib=rb-1.2.1&amp;q=80&amp;fm=jpg&amp;crop=entropy&amp;cs=tinysrgb&amp;w=2000&amp;fit=max&amp;ixid=eyJhcHBfaWQiOjExNzczfQ</image:loc><image:caption>photo-1502771150995-a933810953ce?ixlib=rb-1.2.1&amp;q=80&amp;fm=jpg&amp;crop=entropy&amp;cs=tinysrgb&amp;w=2000&amp;fit=max&amp;ixid=eyJhcHBfaWQiOjExNzczfQ</image:caption></image:image></url><url><loc>https://jdno.ghost.io/turtles-all-the-way-down-2/</loc><lastmod>2025-09-26T11:12:41.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1463173904305-ba479d2123b7?ixlib=rb-1.2.1&amp;q=80&amp;fm=jpg&amp;crop=entropy&amp;cs=tinysrgb&amp;w=2000&amp;fit=max&amp;ixid=eyJhcHBfaWQiOjExNzczfQ</image:loc><image:caption>photo-1463173904305-ba479d2123b7?ixlib=rb-1.2.1&amp;q=80&amp;fm=jpg&amp;crop=entropy&amp;cs=tinysrgb&amp;w=2000&amp;fit=max&amp;ixid=eyJhcHBfaWQiOjExNzczfQ</image:caption></image:image></url><url><loc>https://jdno.ghost.io/announcing-lunaria/</loc><lastmod>2025-09-26T11:12:33.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2021/09/banner.png</image:loc><image:caption>banner.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/grpc/</loc><lastmod>2025-09-26T11:12:26.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1517953377824-516f2dca803b?ixlib=rb-1.2.1&amp;q=80&amp;fm=jpg&amp;crop=entropy&amp;cs=tinysrgb&amp;w=2000&amp;fit=max&amp;ixid=eyJhcHBfaWQiOjExNzczfQ</image:loc><image:caption>photo-1517953377824-516f2dca803b?ixlib=rb-1.2.1&amp;q=80&amp;fm=jpg&amp;crop=entropy&amp;cs=tinysrgb&amp;w=2000&amp;fit=max&amp;ixid=eyJhcHBfaWQiOjExNzczfQ</image:caption></image:image></url><url><loc>https://jdno.ghost.io/fully-automated-dependency-upgrades-with-dependabot-and-github-actions/</loc><lastmod>2025-09-26T11:12:19.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2021/09/dependabot.png</image:loc><image:caption>dependabot.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/this-month-in-lunaria-july-2021/</loc><lastmod>2025-09-26T11:12:08.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2021/09/banner-1.png</image:loc><image:caption>banner-1.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/hacktoberfest-21/</loc><lastmod>2025-09-26T11:11:58.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2021/10/Hacktoberfest_Wallpaper_desktop-02.png</image:loc><image:caption>Hacktoberfest_Wallpaper_desktop-02.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/godot-logger-for-rust-and-godot/</loc><lastmod>2025-09-26T11:11:51.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2021/10/godot-logger.png</image:loc><image:caption>godot-logger.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/day-1-a-blank-page/</loc><lastmod>2025-09-26T11:11:43.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1612367980327-7454a7276aa7?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDZ8fGJsYW5rJTIwcGFnZXxlbnwwfHx8fDE2NDEyMDUyOTA&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:loc><image:caption>photo-1612367980327-7454a7276aa7?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDZ8fGJsYW5rJTIwcGFnZXxlbnwwfHx8fDE2NDEyMDUyOTA&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:caption></image:image></url><url><loc>https://jdno.ghost.io/day-2-exploring-an-idea/</loc><lastmod>2025-09-26T11:11:36.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1542621334-a254cf47733d?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDF8fGJsdWVwcmludHxlbnwwfHx8fDE2NDEyOTQ5NTU&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:loc><image:caption>photo-1542621334-a254cf47733d?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDF8fGJsdWVwcmludHxlbnwwfHx8fDE2NDEyOTQ5NTU&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:caption></image:image></url><url><loc>https://jdno.ghost.io/day-3-productive-procrastination/</loc><lastmod>2025-09-26T11:11:28.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1587654780291-39c9404d746b?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDN8fGxlZ298ZW58MHx8fHwxNjQxNDEyOTQz&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:loc><image:caption>photo-1587654780291-39c9404d746b?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDN8fGxlZ298ZW58MHx8fHwxNjQxNDEyOTQz&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:caption></image:image></url><url><loc>https://jdno.ghost.io/day-4-adding-tech-debt/</loc><lastmod>2025-09-26T11:11:21.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1452960962994-acf4fd70b632?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDE4fHxxdWV1ZXxlbnwwfHx8fDE2NDE1MDI1MTA&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:loc><image:caption>photo-1452960962994-acf4fd70b632?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDE4fHxxdWV1ZXxlbnwwfHx8fDE2NDE1MDI1MTA&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:caption></image:image></url><url><loc>https://jdno.ghost.io/four-weeks-of-experiments/</loc><lastmod>2025-09-26T11:11:14.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1433840496881-cbd845929862?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDF8fHRlY2huaWNhbCUyMGRyYXdpbmd8ZW58MHx8fHwxNjQzMzU4MzIx&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:loc><image:caption>photo-1433840496881-cbd845929862?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDF8fHRlY2huaWNhbCUyMGRyYXdpbmd8ZW58MHx8fHwxNjQzMzU4MzIx&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:caption></image:image></url><url><loc>https://jdno.ghost.io/designing-an-api-for-a-video-game/</loc><lastmod>2025-09-26T11:11:00.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1599110906632-28d25094470f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDEwfHxibHVlcHJpbnR8ZW58MHx8fHwxNjQ3MTYwOTIy&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:loc><image:caption>photo-1599110906632-28d25094470f?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDEwfHxibHVlcHJpbnR8ZW58MHx8fHwxNjQ3MTYwOTIy&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:caption></image:image></url><url><loc>https://jdno.ghost.io/auto-traffic-control-v020/</loc><lastmod>2025-09-26T11:10:44.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2022/04/v0.2.0-copy.png</image:loc><image:caption>v0.2.0-copy.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/auto-traffic-control-version-0-3-0/</loc><lastmod>2025-09-26T11:10:34.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2022/05/v0.2.0-copy.png</image:loc><image:caption>v0.2.0-copy.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/devxbots/</loc><lastmod>2025-09-26T11:10:27.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2022/08/Banner-1.png</image:loc><image:caption>Banner-1.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/creating-a-cli-to-improve-my-focus/</loc><lastmod>2025-09-26T11:10:20.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1542123491-63f422a5f45e?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDV8fHByb2R1Y3Rpdml0eXxlbnwwfHx8fDE2NjQxMDUwMzA&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:loc><image:caption>photo-1542123491-63f422a5f45e?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDV8fHByb2R1Y3Rpdml0eXxlbnwwfHx8fDE2NjQxMDUwMzA&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:caption></image:image></url><url><loc>https://jdno.ghost.io/leaving-the-cloud/</loc><lastmod>2025-09-26T11:09:51.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1594760467013-64ac2b80b7d3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDEyfHxzdG9ybXxlbnwwfHx8fDE2NjkyMzQ3NjE&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000</image:loc><image:caption>photo-1594760467013-64ac2b80b7d3?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDEyfHxzdG9ybXxlbnwwfHx8fDE2NjkyMzQ3NjE&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000</image:caption></image:image></url><url><loc>https://jdno.ghost.io/designing-my-own-todo-app/</loc><lastmod>2025-09-26T11:09:40.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2023/03/Banner-1.png</image:loc><image:caption>Banner-1.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/pushing-earthly-to-the-limit/</loc><lastmod>2025-09-26T11:08:47.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2025/02/logo-banner-white-bg.png</image:loc><image:caption>logo-banner-white-bg.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/how-i-want-to-build-web-apps/</loc><lastmod>2025-09-26T11:08:36.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1503387762-592deb58ef4e?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDEzfHxjb25zdHJ1Y3Rpb258ZW58MHx8fHwxNjk5MzcwMDcwfDA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000</image:loc><image:caption>photo-1503387762-592deb58ef4e?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDEzfHxjb25zdHJ1Y3Rpb258ZW58MHx8fHwxNjk5MzcwMDcwfDA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000</image:caption></image:image></url><url><loc>https://jdno.ghost.io/automate-building-and-publishing-a-game-on-itch-io/</loc><lastmod>2025-09-26T11:08:12.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2022/04/github-to-itch.png</image:loc><image:caption>github-to-itch.png</image:caption></image:image></url><url><loc>https://jdno.ghost.io/auto-traffic-control/</loc><lastmod>2025-09-26T11:07:59.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1608444331927-05052bef8884?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDV8fGF0Y3xlbnwwfHx8fDE2NDY1NzM1MzM&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:loc><image:caption>photo-1608444331927-05052bef8884?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDV8fGF0Y3xlbnwwfHx8fDE2NDY1NzM1MzM&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000</image:caption></image:image></url><url><loc>https://jdno.ghost.io/designing-a-new-home-server/</loc><lastmod>2025-09-23T16:30:44.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1558494949-ef010cbdcc31?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDF8fHNlcnZlcnxlbnwwfHx8fDE2NzgzODQ2NTM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000</image:loc><image:caption>photo-1558494949-ef010cbdcc31?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDF8fHNlcnZlcnxlbnwwfHx8fDE2NzgzODQ2NTM&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000</image:caption></image:image></url><url><loc>https://jdno.ghost.io/rethinking-end-to-end-testing-for-web-applications/</loc><lastmod>2025-02-09T17:00:23.000Z</lastmod><image:image><image:loc>https://storage.ghost.io/c/6b/a9/6ba9b3d8-2022-4adb-bb55-70314fe3fcbf/content/images/2024/08/Firefly-A-colorful-illustration-of-a-wireframe-for-a-website-with-pen-and-paper-around-it-66014.jpg</image:loc><image:caption>Firefly-A-colorful-illustration-of-a-wireframe-for-a-website-with-pen-and-paper-around-it-66014.jpg</image:caption></image:image></url><url><loc>https://jdno.ghost.io/why-i-want-to-build-a-video-game-for-programmers/</loc><lastmod>2023-12-07T07:26:04.000Z</lastmod><image:image><image:loc>https://images.unsplash.com/photo-1538481199705-c710c4e965fc?ixlib=rb-1.2.1&amp;q=80&amp;fm=jpg&amp;crop=entropy&amp;cs=tinysrgb&amp;w=2000&amp;fit=max&amp;ixid=eyJhcHBfaWQiOjExNzczfQ</image:loc><image:caption>photo-1538481199705-c710c4e965fc?ixlib=rb-1.2.1&amp;q=80&amp;fm=jpg&amp;crop=entropy&amp;cs=tinysrgb&amp;w=2000&amp;fit=max&amp;ixid=eyJhcHBfaWQiOjExNzczfQ</image:caption></image:image></url><url><loc>https://jdno.ghost.io/how-to-set-up-sinatra-with-activerecord/</loc><lastmod>2021-11-11T20:09:38.000Z</lastmod></url><url><loc>https://jdno.ghost.io/making-docker-an-art-with-compose/</loc><lastmod>2021-11-11T20:07:29.000Z</lastmod></url><url><loc>https://jdno.ghost.io/dockerizing-sinatra/</loc><lastmod>2021-11-11T20:06:49.000Z</lastmod></url><url><loc>https://jdno.ghost.io/learning-docker/</loc><lastmod>2021-11-11T20:01:29.000Z</lastmod></url></urlset>