<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url><loc>https://mikepreston.org/</loc></url>
  <url><loc>https://mikepreston.org/writing</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets</loc></url>
  <url><loc>https://mikepreston.org/field-notes</loc></url>
  <url><loc>https://mikepreston.org/projects</loc></url>
  <url><loc>https://mikepreston.org/about</loc></url>
  <url><loc>https://mikepreston.org/uses</loc></url>
  <url><loc>https://mikepreston.org/writing/cloud-bill-is-a-design-document</loc><lastmod>2026-10-09</lastmod></url>
  <url><loc>https://mikepreston.org/writing/ci-runner-privileged-false-still-root</loc><lastmod>2026-10-05</lastmod></url>
  <url><loc>https://mikepreston.org/writing/fewer-agents-more-bureaucracy</loc><lastmod>2026-10-02</lastmod></url>
  <url><loc>https://mikepreston.org/writing/same-byte-billed-three-times</loc><lastmod>2026-09-29</lastmod></url>
  <url><loc>https://mikepreston.org/writing/idempotency-keys</loc><lastmod>2026-09-25</lastmod></url>
  <url><loc>https://mikepreston.org/writing/publishing-a-hash-of-someones-email</loc><lastmod>2026-09-22</lastmod></url>
  <url><loc>https://mikepreston.org/writing/from-the-filing-cabinet</loc><lastmod>2026-09-19</lastmod></url>
  <url><loc>https://mikepreston.org/writing/context-is-a-budget-agents-md</loc><lastmod>2026-09-04</lastmod></url>
  <url><loc>https://mikepreston.org/writing/you-probably-dont-need-jwt</loc><lastmod>2026-08-28</lastmod></url>
  <url><loc>https://mikepreston.org/writing/rabbitmq-without-celery</loc><lastmod>2026-08-21</lastmod></url>
  <url><loc>https://mikepreston.org/writing/your-monitoring-stack-knows-too-much</loc><lastmod>2026-08-18</lastmod></url>
  <url><loc>https://mikepreston.org/writing/pager-is-a-smoke-detector</loc><lastmod>2026-08-14</lastmod></url>
  <url><loc>https://mikepreston.org/writing/ebpf-networking-is-fast-but-at-what-cost</loc><lastmod>2026-08-11</lastmod></url>
  <url><loc>https://mikepreston.org/writing/zero-downtime-schema-migrations</loc><lastmod>2026-08-07</lastmod></url>
  <url><loc>https://mikepreston.org/writing/encryption-is-not-free-especially-at-scale</loc><lastmod>2026-08-04</lastmod></url>
  <url><loc>https://mikepreston.org/writing/stop-putting-secrets-in-env-vars</loc><lastmod>2026-07-31</lastmod></url>
  <url><loc>https://mikepreston.org/writing/its-always-dns</loc><lastmod>2026-07-24</lastmod></url>
  <url><loc>https://mikepreston.org/writing/retries-should-have-a-budget-not-just-a-backoff</loc><lastmod>2026-07-21</lastmod></url>
  <url><loc>https://mikepreston.org/writing/uv-python-packaging</loc><lastmod>2026-07-17</lastmod></url>
  <url><loc>https://mikepreston.org/writing/git-is-the-source-of-truth-until-it-isnt</loc><lastmod>2026-07-14</lastmod></url>
  <url><loc>https://mikepreston.org/writing/prompt-injection-new-sql-injection</loc><lastmod>2026-07-10</lastmod></url>
  <url><loc>https://mikepreston.org/writing/just-use-postgres</loc><lastmod>2026-07-03</lastmod></url>
  <url><loc>https://mikepreston.org/writing/your-system-is-fast-in-the-lab</loc><lastmod>2026-06-30</lastmod></url>
  <url><loc>https://mikepreston.org/writing/letting-ai-debug-production</loc><lastmod>2026-06-26</lastmod></url>
  <url><loc>https://mikepreston.org/writing/good-enough-databases-v2</loc><lastmod>2026-06-19</lastmod></url>
  <url><loc>https://mikepreston.org/writing/4-supervision-trees</loc><lastmod>2026-06-18</lastmod></url>
  <url><loc>https://mikepreston.org/writing/systemd-is-the-orchestrator-you-already-have</loc><lastmod>2026-06-18</lastmod></url>
  <url><loc>https://mikepreston.org/writing/3-inside-the-gate</loc><lastmod>2026-06-17</lastmod></url>
  <url><loc>https://mikepreston.org/writing/slos-without-the-theatre</loc><lastmod>2026-06-17</lastmod></url>
  <url><loc>https://mikepreston.org/writing/2-policy-not-permission</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/api-design-patterns</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/chaos-engineering</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/cicd-patterns</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/database-patterns</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/event-driven-architecture</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/homelab-doesnt-need-kubernetes</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/incident-management</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/logs-aggregation-patterns</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/message-queue-patterns</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/microservices-patterns</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/observability-patterns</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/serverless-patterns</loc><lastmod>2026-06-16</lastmod></url>
  <url><loc>https://mikepreston.org/writing/1-nine-seconds-pocketos-incident-v2</loc><lastmod>2026-06-15</lastmod></url>
  <url><loc>https://mikepreston.org/writing/terraform-state-is-a-database</loc><lastmod>2026-06-15</lastmod></url>
  <url><loc>https://mikepreston.org/writing/anthropic-vs-the-clown-show</loc><lastmod>2026-06-13</lastmod></url>
  <url><loc>https://mikepreston.org/writing/stop-treating-the-llm-like-a-junior-dev</loc><lastmod>2026-06-12</lastmod></url>
  <url><loc>https://mikepreston.org/writing/the-assumption-nobody-wrote-down</loc><lastmod>2026-06-05</lastmod></url>
  <url><loc>https://mikepreston.org/writing/metrics-vs-understanding</loc><lastmod>2026-05-29</lastmod></url>
  <url><loc>https://mikepreston.org/writing/api-gateway-shield-and-spof</loc><lastmod>2026-05-15</lastmod></url>
  <url><loc>https://mikepreston.org/writing/you-rate-limited-the-internet-but-not-yourself</loc><lastmod>2026-05-08</lastmod></url>
  <url><loc>https://mikepreston.org/writing/not-everything-needs-to-be-realtime</loc><lastmod>2026-04-24</lastmod></url>
  <url><loc>https://mikepreston.org/writing/bus-factor-ai</loc><lastmod>2026-04-17</lastmod></url>
  <url><loc>https://mikepreston.org/writing/yes-engineer-typing-vs-judgement</loc><lastmod>2026-04-10</lastmod></url>
  <url><loc>https://mikepreston.org/writing/keep-the-tools-out-of-the-loop</loc><lastmod>2026-04-03</lastmod></url>
  <url><loc>https://mikepreston.org/writing/the-real-bottleneck-in-engineering-isn-t-compute-it-s-attention</loc><lastmod>2026-04-01</lastmod></url>
  <url><loc>https://mikepreston.org/writing/the-litellm-attack-in-hindsight</loc><lastmod>2026-03-31</lastmod></url>
  <url><loc>https://mikepreston.org/writing/what-time-is-it-really</loc><lastmod>2026-03-30</lastmod></url>
  <url><loc>https://mikepreston.org/writing/passwords-authentication-and-why</loc><lastmod>2026-03-27</lastmod></url>
  <url><loc>https://mikepreston.org/writing/key-management-the-bit-that-actually</loc><lastmod>2026-03-21</lastmod></url>
  <url><loc>https://mikepreston.org/writing/why-spies-still-use-shortwave-radio</loc><lastmod>2026-03-20</lastmod></url>
  <url><loc>https://mikepreston.org/writing/microservices-payload-design</loc><lastmod>2015-03-30</lastmod></url>
  <url><loc>https://mikepreston.org/writing/ten-things-i-wish-id-known</loc><lastmod>2014-10-07</lastmod></url>
  <url><loc>https://mikepreston.org/writing/scaling-feature-switches</loc><lastmod>2013-11-17</lastmod></url>
  <url><loc>https://mikepreston.org/writing/burnout-is-a-security-issue-too</loc><lastmod>2013-11-14</lastmod></url>
  <url><loc>https://mikepreston.org/writing/burnout-the-elephant-in-the-room</loc><lastmod>2013-11-13</lastmod></url>
  <url><loc>https://mikepreston.org/writing/case-study-optimising-a-cloud-application</loc><lastmod>2011-11-24</lastmod></url>
  <url><loc>https://mikepreston.org/writing/why-a-sysadmin</loc><lastmod>2011-05-14</lastmod></url>
  <url><loc>https://mikepreston.org/series/cloud-bill</loc></url>
  <url><loc>https://mikepreston.org/series/guides</loc></url>
  <url><loc>https://mikepreston.org/series/packetos</loc></url>
  <url><loc>https://mikepreston.org/series/playbooks</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/ollama</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/vllm</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/argo-rollouts</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/argo-workflows</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/argocd</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/fluxcd</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/git</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/github-actions</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/gitlab-cicd</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/jenkins</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/aws</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/azure</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/gcp</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/buildpacks</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/container-image-building</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/container-image-optimisation</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/container-registries</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/container-runtimes</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/csi-basics</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/docker</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/docker-networking</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/k3s</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/kubernetes</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/kubernetes-advanced</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/kubernetes-operators</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/kubernetes-rbac-multi-tenancy</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/kubernetes-troubleshooting</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/minikube</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/podman</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/podman-quadlets-systemd</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/velero</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/zot-registry</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/etcd</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/kafka</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/ansible</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/helm</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/kustomize</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/packer</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/pulumi</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/terraform</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/bash</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/go</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/javascript</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/jinja2</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/grpc</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/mqtt</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/nats</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/rabbitmq-administration</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/websockets</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/datadog</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/fluentd</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/grafana</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/jaeger</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/load-testing</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/loki</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/opentelemetry</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/prometheus</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/slos-slis-error-budgets</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/bsd-network-tools</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/consul</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/dns</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/envoy-proxy</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/haproxy</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/iptables-nftables</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/istio</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/linux-network-tools</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/macos-network-tools</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/nginx</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/ssh</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/tcpdump-wireshark</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-apscheduler</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-asyncio</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-beautifulsoup</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-bleach</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-cli-apps</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-copier</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-datetime</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-debugging</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-fastapi</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-flask</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-logging</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-magic</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-markdown</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-mkdocs</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-os</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-packaging</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-paramiko</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-patterns</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-pendulum</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-pgvector</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-pika</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-pillow</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-pydantic</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-pymupdf</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-pytesseract</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-pytest</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-redis</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-requests</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-sentry</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-sphinx</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-sqlalchemy</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-sqlite-vectors</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-type-hints</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-uv</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-watchdog</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-yaml</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/python-zeroconf</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/cert-manager</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/clair</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/container-security</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/grype-syft</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/policy-as-code-opa</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/security-patterns</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/sops</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/tls-openssl</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/trivy</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/vault</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/launchctl</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/linux-cli</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/linux-performance-analysis</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/linux-storage</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/makefiles</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/rclone</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/rsync</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/systemd</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/systemd-hardening</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/tmux</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/vim</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/zsh</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/bootstrap5</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/css-flexbox</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/css-grid</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/html5</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/scss</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/tailwind-css</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/tailwind-css-v4</loc></url>
  <url><loc>https://mikepreston.org/cheatsheets/web-performance-optimization</loc></url>
  <url><loc>https://mikepreston.org/field-notes/retry-with-tenacity</loc></url>
</urlset>
