<?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"><url><loc>https://jeffbutler.dev/</loc><changefreq>weekly</changefreq><priority>1.0</priority></url><url><loc>https://jeffbutler.dev/projects</loc><changefreq>monthly</changefreq><priority>0.8</priority></url><url><loc>https://jeffbutler.dev/blog</loc><changefreq>daily</changefreq><priority>0.9</priority></url><url><loc>https://jeffbutler.dev/contact</loc><changefreq>yearly</changefreq><priority>0.5</priority></url><url><loc>https://jeffbutler.dev/services/data-quality-assessment</loc><changefreq>monthly</changefreq><priority>0.8</priority></url><url><loc>https://jeffbutler.dev/blog/common-item-mdm-mistakes-that-break-analytics-and-how-to-avoid-them</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-23</lastmod></url><url><loc>https://jeffbutler.dev/blog/enterprise-ai-security-is-not-a-prompt-problem-its-a-data-identity-problem</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-20</lastmod></url><url><loc>https://jeffbutler.dev/blog/ai-agents-promise-automation-identity-determines-whether-it-works</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-20</lastmod></url><url><loc>https://jeffbutler.dev/blog/agentic-ai-in-the-enterprise-automation-without-identity-is-just-accelerated-chaos</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-18</lastmod></url><url><loc>https://jeffbutler.dev/blog/what-is-customer-mdm-a-practical-guide-to-customer-master-data-management</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-15</lastmod></url><url><loc>https://jeffbutler.dev/blog/ai-ready-data-the-entity-resolution-checklist-every-organization-needs</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-14</lastmod></url><url><loc>https://jeffbutler.dev/blog/ai-hallucinations-explained-why-poor-data-quality-is-the-real-culprit</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-15</lastmod></url><url><loc>https://jeffbutler.dev/blog/devops-and-deployment-running-a-satellite-to-phone-weather-platform-on-one-ec2-instance</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-14</lastmod></url><url><loc>https://jeffbutler.dev/blog/how-i-built-the-weatheragentio-notification-system-using-aws-ses-and-sns-to-deliver-ai-weather-forecasts-to-subscribers-via-email-and-sms-with-dedup-tracking</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-14</lastmod></url><url><loc>https://jeffbutler.dev/blog/the-ai-pipeline-turning-raw-nws-forecasts-into-avatar-weather-videos</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-15</lastmod></url><url><loc>https://jeffbutler.dev/blog/the-ground-station-running-a-raspberry-pi-goes-satellite-receiver-247</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-10</lastmod></url><url><loc>https://jeffbutler.dev/blog/i-pointed-a-dish-at-a-satellite-and-built-an-ai-weather-forecaster</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-10</lastmod></url><url><loc>https://jeffbutler.dev/blog/automating-mysql-backups-to-amazon-s3-using-docker-on-ec2</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-15</lastmod></url><url><loc>https://jeffbutler.dev/blog/streamlining-your-cicd-workflow-with-gitlab-and-docker</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-14</lastmod></url><url><loc>https://jeffbutler.dev/blog/build-a-lightweight-fail2ban-dashboard-in-php-with-traceroute</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-14</lastmod></url><url><loc>https://jeffbutler.dev/blog/what-is-item-mdm-a-practical-guide-for-2026</loc><changefreq>monthly</changefreq><priority>0.7</priority><lastmod>2026-02-23</lastmod></url><url><loc>https://jeffbutler.dev/projects/goes-16-satellite</loc><changefreq>monthly</changefreq><priority>0.6</priority></url><url><loc>https://jeffbutler.dev/projects/ai-agent</loc><changefreq>monthly</changefreq><priority>0.6</priority></url></urlset>