<?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://stevenpg.com/</loc></url><url><loc>https://stevenpg.com/about/</loc></url><url><loc>https://stevenpg.com/oss/</loc></url><url><loc>https://stevenpg.com/posts/</loc></url><url><loc>https://stevenpg.com/posts/1/</loc></url><url><loc>https://stevenpg.com/posts/2/</loc></url><url><loc>https://stevenpg.com/posts/3/</loc></url><url><loc>https://stevenpg.com/posts/4/</loc></url><url><loc>https://stevenpg.com/posts/5/</loc></url><url><loc>https://stevenpg.com/posts/6/</loc></url><url><loc>https://stevenpg.com/posts/7/</loc></url><url><loc>https://stevenpg.com/posts/8/</loc></url><url><loc>https://stevenpg.com/posts/9/</loc></url><url><loc>https://stevenpg.com/posts/all/</loc></url><url><loc>https://stevenpg.com/posts/always-set-up-auditor-aware-spring-jpa/</loc></url><url><loc>https://stevenpg.com/posts/building-webapp-with-vibes/</loc></url><url><loc>https://stevenpg.com/posts/buying-used-harddrives/</loc></url><url><loc>https://stevenpg.com/posts/casual-machine-perf-test/</loc></url><url><loc>https://stevenpg.com/posts/cesium-vol-1-rectangle/</loc></url><url><loc>https://stevenpg.com/posts/cesium-vol-2-circle/</loc></url><url><loc>https://stevenpg.com/posts/getting-camera-height-cesium-js/</loc></url><url><loc>https://stevenpg.com/posts/go-vs-spring-boot-native-benchmark/</loc></url><url><loc>https://stevenpg.com/posts/graalvm-native-metadata-from-tests/</loc></url><url><loc>https://stevenpg.com/posts/graalvm-reflect-config-demystified/</loc></url><url><loc>https://stevenpg.com/posts/guide-to-migrating-from-retired-ingress-nginx/</loc></url><url><loc>https://stevenpg.com/posts/hibernate-stale-object-state-exception-breaking-change/</loc></url><url><loc>https://stevenpg.com/posts/how-i-built-visual-finances/</loc></url><url><loc>https://stevenpg.com/posts/jdk23-streams-gather/</loc></url><url><loc>https://stevenpg.com/posts/jlink-java-runtime-optimization/</loc></url><url><loc>https://stevenpg.com/posts/latitude-longitude-distance-decrypted/</loc></url><url><loc>https://stevenpg.com/posts/my-first-post/</loc></url><url><loc>https://stevenpg.com/posts/partitioning-tables-postgres/</loc></url><url><loc>https://stevenpg.com/posts/postgres-on-less-than-150mb-of-memory/</loc></url><url><loc>https://stevenpg.com/posts/project-leyden-vs-graalvm-native-image/</loc></url><url><loc>https://stevenpg.com/posts/python-package-manager-uv/</loc></url><url><loc>https://stevenpg.com/posts/request-body-with-spring-webclient/</loc></url><url><loc>https://stevenpg.com/posts/running-claude-code-locally-on-apple-silicon/</loc></url><url><loc>https://stevenpg.com/posts/should-i-use-java-25-compact-object-headers/</loc></url><url><loc>https://stevenpg.com/posts/spring-boot-4-logbook-is-broken-for-now/</loc></url><url><loc>https://stevenpg.com/posts/spring-boot-4-logbook-now-works/</loc></url><url><loc>https://stevenpg.com/posts/spring-boot-4-page-deserialization-jackson3/</loc></url><url><loc>https://stevenpg.com/posts/spring-boot-4-what-is-jspecify/</loc></url><url><loc>https://stevenpg.com/posts/spring-boot-oauth2-multiple-resource-servers/</loc></url><url><loc>https://stevenpg.com/posts/spring-cloud-stream-record-recoverable-processor/</loc></url><url><loc>https://stevenpg.com/posts/spring-compat-cheatsheet/</loc></url><url><loc>https://stevenpg.com/posts/spring-data-page-impl-serialization-warning/</loc></url><url><loc>https://stevenpg.com/posts/spring-oauth2-client-dynamic-audience/</loc></url><url><loc>https://stevenpg.com/posts/spring-rest-client-oauth2/</loc></url><url><loc>https://stevenpg.com/posts/spring2-to-spring3-graalvm/</loc></url><url><loc>https://stevenpg.com/posts/stop-reinventing-cesium-timeline/</loc></url><url><loc>https://stevenpg.com/posts/tripod-travel-freedom/</loc></url><url><loc>https://stevenpg.com/posts/ultimate-guide-fuzzing-in-java/</loc></url><url><loc>https://stevenpg.com/posts/ultimate-guide-spring-batch-6/</loc></url><url><loc>https://stevenpg.com/posts/ultimate-guide-spring-boot-4-migration/</loc></url><url><loc>https://stevenpg.com/posts/ultimate-guide-spring-cloud-streams/</loc></url><url><loc>https://stevenpg.com/posts/ultimate-guide-spring-modulith/</loc></url><url><loc>https://stevenpg.com/posts/ultimate-guide-spring-web-clients-oauth2/</loc></url><url><loc>https://stevenpg.com/posts/uuid4-shouldnt-be-your-primary-key/</loc></url><url><loc>https://stevenpg.com/posts/vibe-coding-for-non-coders-part-1/</loc></url><url><loc>https://stevenpg.com/posts/vibe-coding-for-non-coders-part-2/</loc></url><url><loc>https://stevenpg.com/posts/vibe-coding-for-non-coders-part-3/</loc></url><url><loc>https://stevenpg.com/posts/vibe-coding-for-non-coders-part-4/</loc></url><url><loc>https://stevenpg.com/posts/vibe-coding-for-non-coders-part-5/</loc></url><url><loc>https://stevenpg.com/posts/vibe-coding-for-non-coders-part-6/</loc></url><url><loc>https://stevenpg.com/posts/why-you-should-use-instancio-2026/</loc></url><url><loc>https://stevenpg.com/posts/writing-instancio-extension/</loc></url><url><loc>https://stevenpg.com/projects/</loc></url><url><loc>https://stevenpg.com/search/</loc></url><url><loc>https://stevenpg.com/tags/</loc></url><url><loc>https://stevenpg.com/tags/ai/</loc></url><url><loc>https://stevenpg.com/tags/ai/1/</loc></url><url><loc>https://stevenpg.com/tags/angular/</loc></url><url><loc>https://stevenpg.com/tags/angular/1/</loc></url><url><loc>https://stevenpg.com/tags/architecture/</loc></url><url><loc>https://stevenpg.com/tags/architecture/1/</loc></url><url><loc>https://stevenpg.com/tags/batch-processing/</loc></url><url><loc>https://stevenpg.com/tags/batch-processing/1/</loc></url><url><loc>https://stevenpg.com/tags/cats/</loc></url><url><loc>https://stevenpg.com/tags/cats/1/</loc></url><url><loc>https://stevenpg.com/tags/cesium/</loc></url><url><loc>https://stevenpg.com/tags/cesium/1/</loc></url><url><loc>https://stevenpg.com/tags/claude/</loc></url><url><loc>https://stevenpg.com/tags/claude/1/</loc></url><url><loc>https://stevenpg.com/tags/database/</loc></url><url><loc>https://stevenpg.com/tags/database/1/</loc></url><url><loc>https://stevenpg.com/tags/devops/</loc></url><url><loc>https://stevenpg.com/tags/devops/1/</loc></url><url><loc>https://stevenpg.com/tags/docker/</loc></url><url><loc>https://stevenpg.com/tags/docker/1/</loc></url><url><loc>https://stevenpg.com/tags/domain-driven-design/</loc></url><url><loc>https://stevenpg.com/tags/domain-driven-design/1/</loc></url><url><loc>https://stevenpg.com/tags/finances/</loc></url><url><loc>https://stevenpg.com/tags/finances/1/</loc></url><url><loc>https://stevenpg.com/tags/fuzzing/</loc></url><url><loc>https://stevenpg.com/tags/fuzzing/1/</loc></url><url><loc>https://stevenpg.com/tags/gateway-api/</loc></url><url><loc>https://stevenpg.com/tags/gateway-api/1/</loc></url><url><loc>https://stevenpg.com/tags/gis/</loc></url><url><loc>https://stevenpg.com/tags/gis/1/</loc></url><url><loc>https://stevenpg.com/tags/golang/</loc></url><url><loc>https://stevenpg.com/tags/golang/1/</loc></url><url><loc>https://stevenpg.com/tags/graalvm/</loc></url><url><loc>https://stevenpg.com/tags/graalvm/1/</loc></url><url><loc>https://stevenpg.com/tags/gradle/</loc></url><url><loc>https://stevenpg.com/tags/gradle/1/</loc></url><url><loc>https://stevenpg.com/tags/hardware/</loc></url><url><loc>https://stevenpg.com/tags/hardware/1/</loc></url><url><loc>https://stevenpg.com/tags/infrastructure/</loc></url><url><loc>https://stevenpg.com/tags/infrastructure/1/</loc></url><url><loc>https://stevenpg.com/tags/java/</loc></url><url><loc>https://stevenpg.com/tags/java/1/</loc></url><url><loc>https://stevenpg.com/tags/java/2/</loc></url><url><loc>https://stevenpg.com/tags/java/3/</loc></url><url><loc>https://stevenpg.com/tags/java/4/</loc></url><url><loc>https://stevenpg.com/tags/java/5/</loc></url><url><loc>https://stevenpg.com/tags/javascript/</loc></url><url><loc>https://stevenpg.com/tags/javascript/1/</loc></url><url><loc>https://stevenpg.com/tags/jlink/</loc></url><url><loc>https://stevenpg.com/tags/jlink/1/</loc></url><url><loc>https://stevenpg.com/tags/jpa/</loc></url><url><loc>https://stevenpg.com/tags/jpa/1/</loc></url><url><loc>https://stevenpg.com/tags/kafka-streams/</loc></url><url><loc>https://stevenpg.com/tags/kafka-streams/1/</loc></url><url><loc>https://stevenpg.com/tags/kafka/</loc></url><url><loc>https://stevenpg.com/tags/kafka/1/</loc></url><url><loc>https://stevenpg.com/tags/kubernetes/</loc></url><url><loc>https://stevenpg.com/tags/kubernetes/1/</loc></url><url><loc>https://stevenpg.com/tags/llm/</loc></url><url><loc>https://stevenpg.com/tags/llm/1/</loc></url><url><loc>https://stevenpg.com/tags/logging/</loc></url><url><loc>https://stevenpg.com/tags/logging/1/</loc></url><url><loc>https://stevenpg.com/tags/oauth-2/</loc></url><url><loc>https://stevenpg.com/tags/oauth-2/1/</loc></url><url><loc>https://stevenpg.com/tags/oauth/</loc></url><url><loc>https://stevenpg.com/tags/oauth/1/</loc></url><url><loc>https://stevenpg.com/tags/performance/</loc></url><url><loc>https://stevenpg.com/tags/performance/1/</loc></url><url><loc>https://stevenpg.com/tags/postgres/</loc></url><url><loc>https://stevenpg.com/tags/postgres/1/</loc></url><url><loc>https://stevenpg.com/tags/python/</loc></url><url><loc>https://stevenpg.com/tags/python/1/</loc></url><url><loc>https://stevenpg.com/tags/react/</loc></url><url><loc>https://stevenpg.com/tags/react/1/</loc></url><url><loc>https://stevenpg.com/tags/security/</loc></url><url><loc>https://stevenpg.com/tags/security/1/</loc></url><url><loc>https://stevenpg.com/tags/software/</loc></url><url><loc>https://stevenpg.com/tags/software/1/</loc></url><url><loc>https://stevenpg.com/tags/software/2/</loc></url><url><loc>https://stevenpg.com/tags/software/3/</loc></url><url><loc>https://stevenpg.com/tags/software/4/</loc></url><url><loc>https://stevenpg.com/tags/software/5/</loc></url><url><loc>https://stevenpg.com/tags/spring-batch/</loc></url><url><loc>https://stevenpg.com/tags/spring-batch/1/</loc></url><url><loc>https://stevenpg.com/tags/spring-boot/</loc></url><url><loc>https://stevenpg.com/tags/spring-boot/1/</loc></url><url><loc>https://stevenpg.com/tags/spring-boot/2/</loc></url><url><loc>https://stevenpg.com/tags/spring-boot/3/</loc></url><url><loc>https://stevenpg.com/tags/spring-boot/4/</loc></url><url><loc>https://stevenpg.com/tags/spring-boot/5/</loc></url><url><loc>https://stevenpg.com/tags/spring-cloud/</loc></url><url><loc>https://stevenpg.com/tags/spring-cloud/1/</loc></url><url><loc>https://stevenpg.com/tags/spring-modulith/</loc></url><url><loc>https://stevenpg.com/tags/spring-modulith/1/</loc></url><url><loc>https://stevenpg.com/tags/spring-security/</loc></url><url><loc>https://stevenpg.com/tags/spring-security/1/</loc></url><url><loc>https://stevenpg.com/tags/spring/</loc></url><url><loc>https://stevenpg.com/tags/spring/1/</loc></url><url><loc>https://stevenpg.com/tags/story/</loc></url><url><loc>https://stevenpg.com/tags/story/1/</loc></url><url><loc>https://stevenpg.com/tags/substack/</loc></url><url><loc>https://stevenpg.com/tags/substack/1/</loc></url><url><loc>https://stevenpg.com/tags/tech/</loc></url><url><loc>https://stevenpg.com/tags/tech/1/</loc></url><url><loc>https://stevenpg.com/tags/testcontainers/</loc></url><url><loc>https://stevenpg.com/tags/testcontainers/1/</loc></url><url><loc>https://stevenpg.com/tags/testing/</loc></url><url><loc>https://stevenpg.com/tags/testing/1/</loc></url><url><loc>https://stevenpg.com/tags/tools/</loc></url><url><loc>https://stevenpg.com/tags/tools/1/</loc></url></urlset>