<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>https://juanchi.dev/es</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en" />
<lastmod>2026-05-05T00:11:31.398Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog" />
<lastmod>2026-05-05T00:11:31.398Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/series</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/series" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/series" />
<lastmod>2026-05-05T00:11:31.398Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://juanchi.dev/es/uses</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/uses" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/uses" />
<lastmod>2026-05-05T00:11:31.398Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://juanchi.dev/es/now</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/now" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/now" />
<lastmod>2026-05-05T00:11:31.398Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/pnpm-vs-npm-vs-yarn-vs-bun-comparativa-2025</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/pnpm-vs-npm-vs-yarn-vs-bun-comparativa-2025" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/pnpm-vs-npm-vs-yarn-vs-bun-definitive-comparison-2025" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1593720218365-b2076cfdefee?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:48:50.452Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/tar-macos-linux-error-extraccion-produccion-railway-pipeline</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/tar-macos-linux-error-extraccion-produccion-railway-pipeline" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/macos-tar-linux-extraction-error-railway-pipeline-3-real-cases" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1717632237054-5e0988e85d9a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxtYWNvcyUyMGRlc3Ryb3phJTIwYXJjaGl2b3N8ZW58MXwwfHx8MTc3Nzg5NjAzMHww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:09:58.288Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/agentic-coding-productividad-real-produccion-logs-hacker-news-respuesta</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/agentic-coding-productividad-real-produccion-logs-hacker-news-respuesta" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/agentic-coding-not-a-trap-production-logs-vs-viral-hn-post" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1629058546243-4269cf2a29cd?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxjbG91ZCUyMGluZnJhc3RydWN0dXJlfGVufDF8MHx8fDE3Nzc4OTYwMzJ8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:09:31.659Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/deepclaude-claude-code-deepseek-agente-coding-benchmark-produccion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/deepclaude-claude-code-deepseek-agente-coding-benchmark-produccion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/deepclaude-claude-code-deepseek-v4-pro-agent-loop-real-numbers" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1775994121052-7e653711f72c?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxUeXBlU2NyaXB0JTIwY2xhdWRlJTIwY29kZSUyMExMTXxlbnwxfDB8fHwxNzc3ODk2MDM0fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:10:12.378Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/specsmaxxing-specs-yaml-agentes-ia-desarrollo-claude-code</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/specsmaxxing-specs-yaml-agentes-ia-desarrollo-claude-code" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/specsmaxxing-yaml-specs-ai-agents-what-changed" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1568716353609-12ddc5c67f04?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxOZXh0LmpzJTIwVHlwZVNjcmlwdCUyMGNsYXVkZSUyMGNvZGV8ZW58MXwwfHx8MTc3NzgwOTg2M3ww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-05T00:05:27.088Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/barman-postgresql-backup-produccion-migracion-pgbackrest-railway</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/barman-postgresql-backup-produccion-migracion-pgbackrest-railway" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/barman-replacing-pgbackrest-postgres-backup-production-migration" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1761923034231-13b1c6115fe2?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxkZXZvcHMlMjBwcm9kdWNjaW9uJTIwcmFpbHdheXxlbnwxfDB8fHwxNzc3ODA5ODY0fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:35:39.741Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/kimi-k2-6-benchmark-coding-claude-gpt-comparacion-codebase-real</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/kimi-k2-6-benchmark-coding-claude-gpt-comparacion-codebase-real" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/kimi-k2-6-vs-claude-vs-gpt-5-5-real-coding-benchmark" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1776521796613-564c9f7d02e7?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxUeXBlU2NyaXB0JTIwcHJvZHVjY2lvbiUyMGFycXVpdGVjdHVyYS1zb2Z0d2FyZXxlbnwxfDB8fHwxNzc3ODA5ODY2fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-05T00:07:07.561Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/ubuntu-ddos-2025-impacto-produccion-railway-logs-indie</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/ubuntu-ddos-2025-impacto-produccion-railway-logs-indie" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/canonical-ddos-railway-logs-real-exposure-ubuntu-2025" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1678166014697-00ab32710243?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxjYW5vbmljYWwlMjBiYWpvJTIwZGRvc3xlbnwxfDB8fHwxNzc3NzIzMzA0fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:17:18.176Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/spotify-verified-human-artist-ai-codigo-contenido-blog</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/spotify-verified-human-artist-ai-codigo-contenido-blog" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/spotify-verified-human-artist-signal-for-code-content-blogs" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1669023414171-56f0740e34cd?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxucG0lMjBjbGF1ZGUlMjBjb2RlJTIwZGV2ZWxvcGVyJTIwdG9vbHN8ZW58MXwwfHx8MTc3NzcyMzMwNnww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:26:43.607Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/llm-jailbreak-tecnica-viral-prompts-produccion-auditoria-2025</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/llm-jailbreak-tecnica-viral-prompts-produccion-auditoria-2025" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/llm-jailbreak-audited-production-prompts-2025" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1704881986189-b8196f897ae4?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxUeXBlU2NyaXB0JTIwTExNJTIwc2VndXJpZGFkfGVufDF8MHx8fDE3Nzc3MjMzMDh8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:58:19.216Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/linux-kernel-vulnerabilidades-distribuciones-produccion-ubuntu-railway</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/linux-kernel-vulnerabilidades-distribuciones-produccion-ubuntu-railway" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/linux-kernel-vulnerabilities-ubuntu-railway-stack-disclosure" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1514070706115-47c142769603?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxsaW51eCUyMGtlcm5lbCUyMHZ1bG5lcmFiaWxpZGFkZXN8ZW58MXwwfHx8MTc3NzYzNjkzOXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:13:14.142Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/supply-chain-attack-pytorch-lightning-dependencias-ml-produccion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/supply-chain-attack-pytorch-lightning-dependencias-ml-produccion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/pytorch-lightning-supply-chain-attack-ml-dependencies-audit" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1564931768730-7e4d8e240044?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxkZXZvcHMlMjBwcm9kdWNjaW9uJTIwc2VndXJpZGFkfGVufDF8MHx8fDE3Nzc2MzY5NDF8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:11:18.490Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/claude-code-censura-commits-keywords-openclaw-reproduccion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/claude-code-censura-commits-keywords-openclaw-reproduccion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/claude-code-blocks-commits-openclaw-alignment-agent-mode" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1690696441210-16f14e970c59?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxjbGF1ZGUlMjBjb2RlJTIwcmVjaGF6YXxlbnwxfDB8fHwxNzc3NjM2OTQzfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:09:09.393Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/bugs-rust-no-previene-errores-logicos-produccion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/bugs-rust-no-previene-errores-logicos-produccion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/bugs-rust-wont-catch-real-codebase-logic-errors" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1699885960867-56d5f5262d38?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxUeXBlU2NyaXB0JTIwcHJvZHVjY2lvbiUyMHNlZ3VyaWRhZHxlbnwxfDB8fHwxNzc3NTUwNTA3fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:59:39.042Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/copy-fail-clipboard-bug-reproduccion-nextjs-seguridad</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/copy-fail-clipboard-bug-reproduccion-nextjs-seguridad" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/copy-fail-clipboard-api-silent-bug-credentials-nextjs" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1610986603166-f78428624e76?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxUeXBlU2NyaXB0JTIwamF2YXNjcmlwdCUyMGZyb250ZW5kfGVufDF8MHx8fDE3Nzc1NTA1MDl8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:43:38.136Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/ghostty-deja-github-dependencia-devs-plataformas-microsoft-logs</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/ghostty-deja-github-dependencia-devs-plataformas-microsoft-logs" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/ghostty-leaves-github-developer-dependency-microsoft-platforms" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1556792189-55769c8dfbac?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxkZXZvcHMlMjBnaXRodWIlMjBkZXZlbG9wZXIlMjB0b29sc3xlbnwxfDB8fHwxNzc3NTUwNTExfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:00:53.635Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/typescript-7-beta-benchmark-tsgo-vs-tsc6</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/typescript-7-beta-benchmark-tsgo-vs-tsc6" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/typescript-7-beta-benchmark-tsgo-vs-tsc6" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1556792189-55769c8dfbac?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxUeXBlU2NyaXB0JTIwUGVyZm9ybWFuY2UlMjBqYXZhc2NyaXB0fGVufDF8MHx8fDE3Nzc1MDAyOTh8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:30:43.894Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/openai-amazon-bedrock-migracion-costos-simulacion-stack</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/openai-amazon-bedrock-migracion-costos-simulacion-stack" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/openai-amazon-bedrock-migration-simulation-costs-latency-numbers" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1763568258235-f40425a94af9?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxhcnRpZmljaWFsJTIwaW50ZWxsaWdlbmNlJTIwY29kZXxlbnwxfDB8fHwxNzc3NDY0MjM5fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:53:26.027Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/localsend-alternativa-airdrop-open-source-tradeoff-redes-corporativas</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/localsend-alternativa-airdrop-open-source-tradeoff-redes-corporativas" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/localsend-airdrop-open-source-alternative-real-tradeoff" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1577648188599-291bb8b831c3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxsaW51eCUyMGhlcnJhbWllbnRhcyUyMGRlJTIwZGVzYXJyb2xsbyUyMG9wZW4lMjBzb3VyY2V8ZW58MXwwfHx8MTc3NzQ2NDI0MXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:33:47.557Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/propiedad-intelectual-codigo-generado-ia-git-blame-claude-code</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/propiedad-intelectual-codigo-generado-ia-git-blame-claude-code" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/who-owns-claude-code-output-git-blame-real-project" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1714146999555-506421c63472?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxxdWllbiUyMGR1ZW5vJTIwY29kaWdvfGVufDF8MHx8fDE3Nzc0NjQyNDJ8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T21:13:06.268Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/mercor-robo-datos-voz-contratistas-ia-simulacion-stack</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/mercor-robo-datos-voz-contratistas-ia-simulacion-stack" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/mercor-4tb-voice-breach-simulated-attack-ai-data-stack" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1678984240786-a086030dbcd6?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxyYWlsd2F5JTIwcHJpdmFjaWRhZCUyMGFycXVpdGVjdHVyYSUyMGRlJTIwc29mdHdhcmV8ZW58MXwwfHx8MTc3NzM3NzczOHww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T21:04:20.509Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/pgbackrest-alternativa-postgres-backup-produccion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/pgbackrest-alternativa-postgres-backup-produccion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/pgbackrest-unmaintained-postgres-backup-alternatives-production" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1728033189058-87be546c1daf?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxkZXZvcHMlMjBwcm9kdWNjaW9uJTIwcmFpbHdheXxlbnwxfDB8fHwxNzc3Mzc3NzM5fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T21:53:04.901Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/microsoft-openai-deal-exclusividad-logs-uso-costos-api</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/microsoft-openai-deal-exclusividad-logs-uso-costos-api" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/microsoft-openai-exclusive-deal-api-logs-who-benefits" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1676272682018-b1435bad1cf0?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxpYSUyMGFycXVpdGVjdHVyYSUyMGRlJTIwc29mdHdhcmUlMjBPcGVuQUl8ZW58MXwwfHx8MTc3NzM3Nzc0MXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:56:16.275Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/godaddy-domain-hijacking-security-simulacion-ataque-infra-propia</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/godaddy-domain-hijacking-security-simulacion-ataque-infra-propia" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/godaddy-domain-hijacking-simulated-attack-own-infra" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1560727119-dd8c459dcfe7?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxkZXZvcHMlMjByYWlsd2F5JTIwYXJxdWl0ZWN0dXJhfGVufDF8MHx8fDE3NzcyOTE0MDB8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:24:02.367Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/asahi-linux-70-apple-silicon-instalacion-kernel-arm</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/asahi-linux-70-apple-silicon-instalacion-kernel-arm" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/asahi-linux-70-apple-silicon-installed-measured-real-workflow" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1728667797688-7fab9401d0f2?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxkb2NrZXIlMjBsaW51eCUyMGRlc2Fycm9sbG98ZW58MXwwfHx8MTc3NzI5MTQwMXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-05T00:05:55.251Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/agente-ia-borro-base-datos-produccion-logs-guardrails</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/agente-ia-borro-base-datos-produccion-logs-guardrails" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/ai-agent-deleted-production-database-logs-guardrails-real-analysis" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1597846989287-ac3cc8dd9137?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxhZ2VudGUlMjBib3JybyUyMGJhc2V8ZW58MXwwfHx8MTc3NzI5MTQwM3ww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:00:55.893Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/typescript-70-beta-novedades-prueba-codebase-real</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/typescript-70-beta-novedades-prueba-codebase-real" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/typescript-7-beta-real-codebase-results-what-changed" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1719253481072-5579e62d0a3f?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxOZXh0LmpzJTIwVHlwZVNjcmlwdCUyMGRlc2Fycm9sbG8lMjB3ZWJ8ZW58MXwwfHx8MTc3NzIwNDk1NXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:18:29.321Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/migrar-notion-markdown-plain-text-lo-que-perdi</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/migrar-notion-markdown-plain-text-lo-que-perdi" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/plain-text-won-migrating-notion-to-markdown-what-i-lost" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1743385779347-1549dabf1320?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxwcm9kdWN0aXZpZGFkJTIwd29ya2Zsb3clMjBnaXR8ZW58MXwwfHx8MTc3NzE3NDQzNHww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:01:43.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/gpt-55-api-benchmark-comparacion-casos-reales-produccion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/gpt-55-api-benchmark-comparacion-casos-reales-produccion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/gpt-5-5-api-benchmark-real-production-cases-vs-gpt-4o" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1691085487417-5df405ba59d0?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxUeXBlU2NyaXB0JTIwcmFpbHdheSUyMGFnZW50ZXMtaWF8ZW58MXwwfHx8MTc3NzE3NDQzN3ww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:06:15.773Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/claude-calidad-deterioro-2025-benchmarks-propios-cancelacion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/claude-calidad-deterioro-2025-benchmarks-propios-cancelacion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/cancelled-claude-quality-degradation-benchmarks-real-logs" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1558717738-0b9fbb9b0b21?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxUeXBlU2NyaXB0JTIwY2xhdWRlJTIwY29kZSUyMExMTXxlbnwxfDB8fHwxNzc3MTc0NDM5fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-05T00:08:08.760Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/bitwarden-cli-supply-chain-attack-checkmarx-superficie-confianza</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/bitwarden-cli-supply-chain-attack-checkmarx-superficie-confianza" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/bitwarden-cli-supply-chain-attack-trust-surface-audit" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1768839720936-87ce3adf2d08?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxwYXNzd29yZCUyMG1hbmFnZXIlMjBzZWN1cml0eXxlbnwxfDB8fHwxNzc3MTgyMzA0fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-05T00:08:59.555Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/agent-vault-proxy-credenciales-open-source-agentes-ia</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/agent-vault-proxy-credenciales-open-source-agentes-ia" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/agent-vault-open-source-credential-proxy-agents-review" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1775728601533-703ac74c68cd?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxwcm9kdWNjaW9uJTIwcmFpbHdheSUyMGFycXVpdGVjdHVyYXxlbnwxfDB8fHwxNzc3MTc0NDQyfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:44:04.033Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/claude-code-quality-issues-2025-logs-propios-validacion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/claude-code-quality-issues-2025-logs-propios-validacion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/claude-code-quality-reports-logs-analysis-hn-thread" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1774901128215-3549cc686921?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxjbGF1ZGUlMjBjb2RlJTIwcXVhbGl0eXxlbnwxfDB8fHwxNzc3MTgyMzA2fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:28:30.132Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/llm-security-reports-code-analysis-kernel-produccion-falsos-negativos</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/llm-security-reports-code-analysis-kernel-produccion-falsos-negativos" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/llms-generating-security-reports-ran-prompt-on-my-own-code" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1764346871635-5a8bddb7f7d1?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxUeXBlU2NyaXB0JTIwcHJvZHVjY2lvbiUyMHJhaWx3YXl8ZW58MXwwfHx8MTc3NzE3NDQ0Nnww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-03T11:34:52.775Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/agentes-async-debugging-observabilidad-silencio-produccion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/agentes-async-debugging-observabilidad-silencio-produccion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/async-ai-agents-debugging-silence-production-observability" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1727157540259-51c72b9ac315?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxhZ2VudGVzJTIwYXN5bmMlMjB5b3VyfGVufDF8MHx8fDE3NzcxODIzMDh8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T18:34:02.051Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/agentes-paralelos-zed-editor-flujo-real-comparacion-claude-code</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/agentes-paralelos-zed-editor-flujo-real-comparacion-claude-code" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/zed-parallel-agents-real-workflow-comparison-claude-code" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1775994121052-7e653711f72c?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxUeXBlU2NyaXB0JTIwY2xhdWRlJTIwY29kZSUyMHByb2R1Y3RpdmlkYWR8ZW58MXwwfHx8MTc3NzE3NDQ0OXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T08:58:13.093Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/crabtrap-llm-judge-proxy-agente-produccion-seguridad</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/crabtrap-llm-judge-proxy-agente-produccion-seguridad" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/crabtrap-llm-judge-proxy-production-agent-results" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1681583484651-281ae2defb17?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxhcnRpZmljaWFsJTIwaW50ZWxsaWdlbmNlJTIwY29kZXxlbnwxfDB8fHwxNzc3MTgyMzEwfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T18:21:10.340Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/google-tpu-v8-agentic-era-benchmark-developers-independientes</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/google-tpu-v8-agentic-era-benchmark-developers-independientes" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/google-tpu-v8-agentic-era-benchmark-production-workload" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1650594117259-c7de8db862d4?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxwcm9kdWNjaW9uJTIwaW5mcmFlc3RydWN0dXJhJTIwYWdlbnRlcy1pYXxlbnwxfDB8fHwxNzc3MTc0NDUzfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:52:40.559Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/windows-9x-subsystem-for-linux-instalacion-compatibilidad-deuda-tecnica</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/windows-9x-subsystem-for-linux-instalacion-compatibilidad-deuda-tecnica" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/windows-9x-subsystem-for-linux-installed-broke-understood" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1608742213509-815b97c30b36?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxsaW51eCUyMGluZnJhZXN0cnVjdHVyYSUyMGhhY2tlciUyMG5ld3N8ZW58MXwwfHx8MTc3NzE3NDQ1NXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:46:23.246Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/reddit-programming-ban-llm-contenido-criterio-moderacion-posts</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/reddit-programming-ban-llm-contenido-criterio-moderacion-posts" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/r-programming-llm-ban-tested-own-posts-original-thought-criterion" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1593720219128-218edc93bdc0?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxMTE0lMjBjb250ZW50JTIwYmFuJTIwcHJvZ3JhbWFjaSVDMyVCM24lMjBjb211bmlkYWQlMjByZWRkaXQlMjBwcm9ncmFtbWluZyUyMG1vZGVyYWNpb24lMjBjb250ZW5pZG8lMjBnZW5lcmFkbyUyMGlhfGVufDF8MHx8fDE3NzcxNzQ0NTd8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:05:29.541Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/claude-code-pro-plan-anthropic-cambio-pricing-developers</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/claude-code-pro-plan-anthropic-cambio-pricing-developers" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/claude-code-pro-plan-anthropic-who-it-serves" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1610466896927-699424f3c86d?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxjbGF1ZGUlMjBjb2RlJTIwcGxhbnxlbnwxfDB8fHwxNzc3MTgyMzEyfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-03T11:36:35.336Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/mcp-protocol-gaps-agentes-contexto-estacionario-mutante</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/mcp-protocol-gaps-agentes-contexto-estacionario-mutante" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/building-with-mcp-stationary-context-gap-production-bugs" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1763142843470-9a9e9db7f68f?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxNQ1AlMjBwcm90b2NvbCUyMGdhcHMlMjBhZ2VudGVzfGVufDF8MHx8fDE3NzY3NjYyNzZ8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:23:10.944Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/publicidad-llms-prompt-relevance-openai-ads-chatgpt</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/publicidad-llms-prompt-relevance-openai-ads-chatgpt" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/openai-prompt-relevance-ads-analyzed-my-own-logs" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1554098415-788601c80aef?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxMTE1zJTIwcHJpdmFjaWRhZCUyMGFycXVpdGVjdHVyYSUyMGRlJTIwc29mdHdhcmV8ZW58MXwwfHx8MTc3NzE3NDQ2MXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T15:55:05.704Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/contenido-generado-ia-plataformas-git-blame-autoria-codigo</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/contenido-generado-ia-plataformas-git-blame-autoria-codigo" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/deezer-44-percent-ai-git-blame-commits-authorship" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1718241905916-1f9786324de9?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxjb250ZW5pZG8lMjBnZW5lcmFkbyUyMHBvciUyMElBJTIwZW4lMjBwbGF0YWZvcm1hc3xlbnwxfDB8fHwxNzc2NzY2MDk2fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:31:54.889Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/claude-cli-usage-policy-reversal-anthropic-cambio-posicion-developers</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/claude-cli-usage-policy-reversal-anthropic-cambio-posicion-developers" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/anthropic-claude-cli-usage-policy-reversal-workflow-unchanged" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1775994121020-86426451f8bf?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxDbGF1ZGUlMjBDTEklMjB1c2FnZSUyMHBvbGljeSUyMHJldmVyc2FsfGVufDF8MHx8fDE3NzY3NjYwMTd8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:06:31.333Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/notion-privacidad-datos-filtrados-emails-editores-paginas-publicas</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/notion-privacidad-datos-filtrados-emails-editores-paginas-publicas" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/notion-leaks-emails-editors-public-pages-privacy" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1762330465065-af76f23809db?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxub3Rpb24lMjBwcml2YWNpZGFkJTIwZGF0b3MlMjBmaWx0cmFkb3N8ZW58MXwwfHx8MTc3NjY3OTY0MHww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T17:16:39.780Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/captcha-agentes-ia-identidad-inverso-autenticacion-bots</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/captcha-agentes-ia-identidad-inverso-autenticacion-bots" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/reversed-captchas-ai-agent-identity-web-overhead" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1636247498719-a8a04ed961a4?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxjYXB0Y2hhJTIwYWdlbnRlcyUyMElBJTIwaWRlbnRpZGFkfGVufDF8MHx8fDE3NzY2Nzk1NjF8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:21:37.703Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/claude-system-prompt-diff-opus-46-47-cambios-comportamiento-agentes</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/claude-system-prompt-diff-opus-46-47-cambios-comportamiento-agentes" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/claude-system-prompt-diff-opus-46-47-behavior-changes" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1775994121020-86426451f8bf?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxjbGF1ZGUlMjBzeXN0ZW0lMjBwcm9tcHQlMjBkaWZmfGVufDF8MHx8fDE3NzY2Nzk0NjV8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:41:18.811Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/vercel-breach-supply-chain-modelo-amenazas-tercerizado</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/vercel-breach-supply-chain-modelo-amenazas-tercerizado" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/vercel-april-2026-breach-supply-chain-threat-model" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1643116774075-acc00caa9a7b?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxkZXZvcHMlMjBuZXh0anMlMjBzZWd1cmlkYWR8ZW58MXwwfHx8MTc3NzE3NDQ2M3ww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T11:57:53.659Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/confianza-herramientas-configuracion-entorno-propio-mcp-emacs-agentes</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/confianza-herramientas-configuracion-entorno-propio-mcp-emacs-agentes" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/emacs-trust-model-ai-agents-mcp-security" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1503789188050-804ee34b3d32?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxjb25maWFuemElMjBoZXJyYW1pZW50YXMlMjBjb25maWd1cmFjaSVDMyVCM24lMjBlbnRvcm5vJTIwcHJvcGlvfGVufDF8MHx8fDE3NzY1OTMzMTh8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:34:27.389Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/defluffer-compresion-prompts-tokens-overhead-semantico-benchmark</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/defluffer-compresion-prompts-tokens-overhead-semantico-benchmark" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/defluffer-semantic-cost-token-compression-benchmark" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1498435999018-6803de1f1c1f?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxjb21wcmVzaSVDMyVCM24lMjBkZSUyMHByb21wdHMlMjB0b2tlbnMlMjBvdmVyaGVhZCUyMHNlbSVDMyVBMW50aWNvfGVufDF8MHx8fDE3NzY1OTMyMjR8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:39:37.776Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/sistemas-confiables-diseno-institucional-infraestructura-japon-software</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/sistemas-confiables-diseno-institucional-infraestructura-japon-software" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/japanese-trains-reliable-software-infrastructure-institutional-design" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1580271313600-0f852f7082b0?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxzaXN0ZW1hcyUyMGNvbmZpYWJsZXMlMjBkaXNlJUMzJUIxbyUyMGluc3RpdHVjaW9uYWwlMjBpbmZyYWVzdHJ1Y3R1cmF8ZW58MXwwfHx8MTc3NjU5MzEyOXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:14:54.496Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/agentes-ia-tests-falsos-positivos-assertions-vacios</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/agentes-ia-tests-falsos-positivos-assertions-vacios" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/ai-agents-false-positive-tests-real-problem" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1609863528735-f1b9b7398fbc?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxhZ2VudGVzJTIwSUElMjB0ZXN0cyUyMGZhbHNvcyUyMHBvc2l0aXZvc3xlbnwxfDB8fHwxNzc2NTkyOTUwfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:01:33.910Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/brunost-lenguaje-programacion-nynorsk-legibilidad-codigo-idioma</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/brunost-lenguaje-programacion-nynorsk-legibilidad-codigo-idioma" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/brunost-nynorsk-programming-language-english-code-default" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1653387137517-fbc54d488ed8?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxsZW5ndWFqZXMlMjBkZSUyMHByb2dyYW1hY2klQzMlQjNuJTIwYWx0ZXJuYXRpdm9zfGVufDF8MHx8fDE3NzY1MDcxNTN8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:44:03.140Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/interprete-python-python-aprendizaje-compiladores-llm</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/interprete-python-python-aprendizaje-compiladores-llm" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/python-interpreter-in-python-what-i-learned-about-ai-llms" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1605049988676-5668cc118f72?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxpbnRlcnByZXRlJTIwcHl0aG9uJTIwcHl0aG9ufGVufDF8MHx8fDE3NzY1MDcwNTd8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:22:08.898Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/costos-agentes-ia-2025-logs-reales-analisis</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/costos-agentes-ia-2025-logs-reales-analisis" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/do-ai-agent-costs-grow-exponentially-real-logs-analysis" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1730385349435-130ba6141e72?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxjb3N0b3MlMjBhZ2VudGVzJTIwSUElMjAyMDI1fGVufDF8MHx8fDE3NzY1MDY5NzB8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:01:08.262Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/tokenizer-costs-agentes-decisiones-arquitectonicas</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/tokenizer-costs-agentes-decisiones-arquitectonicas" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/measuring-token-costs-agent-design-decisions-real-numbers" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1605606809441-21def3d63361?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxUeXBlU2NyaXB0JTIwb3B0aW1pemFjaW9uJTIwTExNfGVufDF8MHx8fDE3NzY1MzIzNDJ8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:59:09.938Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/claude-design-anthropic-developer-experience-tension</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/claude-design-anthropic-developer-experience-tension" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/claude-design-anthropic-developer-experience-political-reading" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1775566532829-b85c7c21c0ae?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxjbGF1ZGUlMjBkZXNpZ258ZW58MXwwfHx8MTc3NjUwNjc5M3ww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:37:33.719Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/m2cgen-exportar-modelos-ml-sin-dependencias-python</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/m2cgen-exportar-modelos-ml-sin-dependencias-python" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/m2cgen-export-ml-model-to-java-go-csharp-without-python" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1652111865960-15f4a46a7688?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxtYWNoaW5lJTIwbGVhcm5pbmclMjBvcGVuJTIwc291cmNlJTIwY29kZSUyMGdlbmVyYXRpb258ZW58MXwwfHx8MTc3NjUzMjM0NHww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T14:56:19.111Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/escasez-ia-modelos-frontier-costo-opus-47</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/escasez-ia-modelos-frontier-costo-opus-47" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/claude-opus-47-end-of-ai-abundance-frontier-model-costs" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1670782559267-d4c1ef138060?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxlc2Nhc2V6JTIwZW4lMjBJQSUyMG1vZGVsb3MlMjBmcm9udGllciUyMGNvc3RvfGVufDF8MHx8fDE3NzY0MjA3MDF8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:28:06.983Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/cloudflare-ai-platform-agentes-inferencia-edge</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/cloudflare-ai-platform-agentes-inferencia-edge" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/cloudflare-ai-platform-inference-layer-agents-promises-risks" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1762330910399-95caa55acf04?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxDbG91ZGZsYXJlJTIwQUklMjBQbGF0Zm9ybSUyMGFnZW50ZXMlMjBpbmZlcmVuY2lhfGVufDF8MHx8fDE3NzY0MjA2MTR8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T15:37:35.423Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/spice-claude-code-osciloscopio-simulacion-verificacion-automatizada</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/spice-claude-code-osciloscopio-simulacion-verificacion-automatizada" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/spice-claude-code-oscilloscope-agent-physical-world-verification" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1775994121053-35fd6d91703b?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxjbGF1ZGUlMjBjb2RlJTIwYWdlbnRlcy1pYSUyMGF1dG9tYXRpemFjaSVDMyVCM258ZW58MXwwfHx8MTc3NjUzMjM0Nnww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T14:15:39.435Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/codeburn-claude-code-token-usage-analisis-costo-real-por-tarea</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/codeburn-claude-code-token-usage-analisis-costo-real-por-tarea" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/codeburn-claude-code-token-usage-per-task-analysis" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1774901128215-3549cc686921?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxDbGF1ZGUlMjBDb2RlJTIwdG9rZW4lMjB1c2FnZSUyMGFuJUMzJUExbGlzaXN8ZW58MXwwfHx8MTc3NjQyMDQxNXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:48:11.735Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/awesome-curated-01-el-problema</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/awesome-curated-01-el-problema" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/stale-awesome-lists-self-regulating-curation-system" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1631376030983-6d387244ce95?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxhd2Vzb21lJTIwZGVzYWN0dWFsaXphZGFzJTIwYyVDMyVCM21vfGVufDF8MHx8fDE3NzY1MzIzNDh8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T21:36:16.704Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/qwen3-6-local-vs-claude-opus-4-7-dibujo-ascii-benchmark-real</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/qwen3-6-local-vs-claude-opus-4-7-dibujo-ascii-benchmark-real" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/qwen3-35b-local-vs-claude-opus-4-7-ascii-art-benchmark" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1640765237053-101171cd9cef?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxRd2VuMy42JTIwbG9jYWwlMjB2cyUyMENsYXVkZSUyME9wdXMlMjA0Ljd8ZW58MXwwfHx8MTc3NjQyMDMyNnww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:11:28.039Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/llm-on-device-iphone-gemma4-inferencia-local-mobile</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/llm-on-device-iphone-gemma4-inferencia-local-mobile" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/google-gemma-4-runs-natively-on-iphone-on-device-llm-gap" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1634624278630-e83c2a84797e?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxMTE0lMjBvbi1kZXZpY2UlMjBpUGhvbmV8ZW58MXwwfHx8MTc3NjMzNDM0OXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:00:06.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/privilegio-legal-chats-ia-us-v-heppner-privacidad-conversaciones</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/privilegio-legal-chats-ia-us-v-heppner-privacidad-conversaciones" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/us-v-heppner-ai-chat-no-legal-privilege-attorney-client" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1677442135703-1787eea5ce01?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxMTE0lMjBzZWd1cmlkYWQlMjBpbnRlbGlnZW5jaWEtYXJ0aWZpY2lhbHxlbnwxfDB8fHwxNzc2NTMyMzUwfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T13:23:09.685Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/herramientas-ia-que-usan-tus-creditos-opacidad-token-usage</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/herramientas-ia-que-usan-tus-creditos-opacidad-token-usage" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/ai-tools-spending-your-credits-without-transparency-audit" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1588516302917-1c32036c04d4?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxoZXJyYW1pZW50YXMlMjBJQSUyMHF1ZSUyMHVzYW4lMjB0dXMlMjBjciVDMyVBOWRpdG9zfGVufDF8MHx8fDE3NzYzMzQxNjN8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:03:03.259Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/seguridad-proof-of-work-compliance-señalizacion-secret-hardcodeado</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/seguridad-proof-of-work-compliance-señalizacion-secret-hardcodeado" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/security-proof-of-work-compliance-vs-real-effectiveness" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1626732139872-3ab9186c6207?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxzZWd1cmlkYWQlMjBjb21vJTIwcHJvb2YlMjBvZiUyMHdvcmt8ZW58MXwwfHx8MTc3NjMzNDA3OXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:29:51.088Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/local-llm-sin-ollama-llamacpp-wrapper-minimo-pipelines</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/local-llm-sin-ollama-llamacpp-wrapper-minimo-pipelines" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/local-llm-without-ollama-llama-cpp-direct-production-pipelines" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1759751587616-bfe656d3dc2e?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxsb2NhbCUyMExMTSUyMHNpbiUyME9sbGFtYXxlbnwxfDB8fHwxNzc2MzMzOTk2fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:47:47.030Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/themis-criptografia-alto-nivel-sin-openssl</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/themis-criptografia-alto-nivel-sin-openssl" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/themis-serious-cryptography-without-losing-your-mind" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1614064746579-4918e0ef6e9c?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxvcGVuJTIwc291cmNlJTIwY3J5cHRvZ3JhcGh5JTIwc2VjdXJpdHl8ZW58MXwwfHx8MTc3NjUzMjM1MXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:22:40.074Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/mcp-server-local-herramientas-ia-tutorial-caso-uso</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/mcp-server-local-herramientas-ia-tutorial-caso-uso" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/local-mcp-server-15-minutes-use-cases-tutorial" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1667984390553-7f439e6ae401?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxNQ1AlMjBzZXJ2ZXIlMjBsb2NhbCUyMGhlcnJhbWllbnRhcyUyMElBfGVufDF8MHx8fDE3NzYyNDc4ODN8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:11:33.390Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/optimizar-imagen-docker-tamano-multistage-build-errores</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/optimizar-imagen-docker-tamano-multistage-build-errores" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/docker-image-optimization-1-58gb-to-186mb-broke-hot-reload" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1589486249225-00828a60322b?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxvcHRpbWl6YXIlMjBpbWFnZW4lMjBkb2NrZXIlMjB0YW1hJUMzJUIxb3xlbnwxfDB8fHwxNzc2MjQ3NzE3fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:11:43.306Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/overengineering-agentes-ia-llm-reimplementar-lo-que-ya-existe</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/overengineering-agentes-ia-llm-reimplementar-lo-que-ya-existe" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/over-engineering-ai-agents-what-the-llm-already-does" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1745274811233-813473fc5505?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxvdmVyZW5naW5lZXJpbmclMjBhZ2VudGVzJTIwSUElMjBMTE18ZW58MXwwfHx8MTc3NjI0NzYzOHww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:10:46.047Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/claude-code-rutinas-workflow-automatizacion-tareas-repetitivas</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/claude-code-rutinas-workflow-automatizacion-tareas-repetitivas" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/claude-code-routines-workflow-what-i-ignored-for-weeks" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1775994121052-7e653711f72c?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxjbGF1ZGUlMjBjb2RlJTIwcnV0aW5hcyUyMHdvcmtmbG93fGVufDF8MHx8fDE3NzYyNDc1NDl8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:16:44.199Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/display-neumatico-hardware-artistico-aire-comprimido-segmentos</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/display-neumatico-hardware-artistico-aire-comprimido-segmentos" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/air-powered-segment-display-compressed-air-artistic-hardware" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1694471916664-fd635ed45ab3?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxkaXNwbGF5JTIwbmV1bSVDMyVBMXRpY28lMjBoYXJkd2FyZSUyMGFydCVDMyVBRHN0aWNvfGVufDF8MHx8fDE3NzYxNjE0MzJ8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:30:12.776Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/n-day-bench-llms-vulnerabilidades-seguridad-benchmark</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/n-day-bench-llms-vulnerabilidades-seguridad-benchmark" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/n-day-bench-can-llms-find-real-vulnerabilities-in-real-code" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1762340916350-ad5a3d620c16?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxMTE1zJTIwdnVsbmVyYWJpbGlkYWRlcyUyMHNlZ3VyaWRhZCUyMGJlbmNobWFya3xlbnwxfDB8fHwxNzc2MTYxMzUxfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:00:52.704Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/colectivos-buenos-aires-tiempo-real-sonificacion-gtfs-rt</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/colectivos-buenos-aires-tiempo-real-sonificacion-gtfs-rt" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/bondi-sonoro-build-log-real-data-generative-music-mta-mechanic" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1605379399642-870262d3d051?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxzb2Z0d2FyZSUyMGRldmVsb3BtZW50fGVufDF8MHx8fDE3NzcxODIzMTV8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:13:11.927Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/rust-runtime-typescript-rendimiento-decisiones-diseno</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/rust-runtime-typescript-rendimiento-decisiones-diseno" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/rust-runtime-typescript-performance-design-decisions-review" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1524666643752-b381eb00effb?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxSdXN0JTIwcnVudGltZSUyMFR5cGVTY3JpcHQlMjByZW5kaW1pZW50b3xlbnwxfDB8fHwxNzc2MTYxMjc0fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:42:32.653Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/multi-agente-sistemas-distribuidos-desarrollo-condiciones-carrera</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/multi-agente-sistemas-distribuidos-desarrollo-condiciones-carrera" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/multi-agent-software-development-distributed-systems-problem" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1769149068959-b11392164add?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxtdWx0aS1hZ2VudGUlMjBzaXN0ZW1hcyUyMGRpc3RyaWJ1aWRvcyUyMGRlc2Fycm9sbG98ZW58MXwwfHx8MTc3NjE2MTE4N3ww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:40:54.565Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/datos-abiertos-transporte-creatividad-datos-publicos-trenes-buenos-aires</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/datos-abiertos-transporte-creatividad-datos-publicos-trenes-buenos-aires" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/open-data-creativity-buenos-aires-trains-play-music" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1774579893666-b0215aee2993?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxkYXRvcyUyMGFiaWVydG9zJTIwdHJhbnNwb3J0ZSUyMGNyZWF0aXZpZGFkJTIwZGF0b3MlMjBwJUMzJUJBYmxpY29zfGVufDF8MHx8fDE3NzYwNzQ5NDV8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:43:22.100Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/diseno-lenguajes-programacion-evolucion-sintaxis-fracaso-adopcion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/diseno-lenguajes-programacion-evolucion-sintaxis-fracaso-adopcion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/perfectible-programming-language-beautiful-idea-doomed-to-fail" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1742072593996-ebdc5d605a54?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxkaXNlJUMzJUIxbyUyMGxlbmd1YWplcyUyMHByb2dyYW1hY2klQzMlQjNuJTIwZXZvbHVjaSVDMyVCM24lMjBzaW50YXhpc3xlbnwxfDB8fHwxNzc2MDc0ODQzfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T12:59:58.105Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/apple-ia-privacidad-on-device-modelos-locales</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/apple-ia-privacidad-on-device-modelos-locales" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/apple-ai-privacy-on-device-local-models-m3-pro-ollama" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1621768216002-5ac171876625?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxhcHBsZSUyMGlhJTIwcHJpdmFjaWRhZCUyMG9uLWRldmljZSUyMG1vZGVsb3MlMjBsb2NhbGVzfGVufDF8MHx8fDE3NzYwNzQ3Mzd8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:10:33.253Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/docker-for-novices-recurso-curado-16-awesome-lists</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/docker-for-novices-recurso-curado-16-awesome-lists" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/docker-for-novices-resource-16-awesome-lists-recommend" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1558613812-da76d80cca11?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxkb2NrZXIlMjBub3ZpY2VzJTIwcmVjdXJzb3xlbnwxfDB8fHwxNzc3MTgyMzE2fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:46:41.309Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/gmail-reputacion-email-deliverability-spf-dkim-dmarc</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/gmail-reputacion-email-deliverability-spf-dkim-dmarc" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/gmail-spf-dkim-dmarc-deliverability-99-percent-reputation-not-enough" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1620287341401-e2945a4b9daa?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxpbmZyYWVzdHJ1Y3R1cmElMjBlbWFpbCUyMGRlbGl2ZXJhYmlsaXR5fGVufDF8MHx8fDE3NzY1MzIzNTd8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T21:21:34.570Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/cloudflare-dns-bloqueo-infraestructura-docker-espana</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/cloudflare-dns-bloqueo-infraestructura-docker-espana" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/docker-pull-fails-spain-cloudflare-soccer-match-infrastructure-pattern" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1646627927863-19874c27316b?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxkb2NrZXIlMjBkZXZvcHMlMjBpbmZyYWVzdHJ1Y3R1cmF8ZW58MXwwfHx8MTc3NjUzMjM1OXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T21:21:08.989Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/bci-als-brainwaves-interfaz-cerebro-computadora-arte</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/bci-als-brainwaves-interfaz-cerebro-computadora-arte" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/dancer-with-als-bci-brainwave-performance-open-source-stack" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1750365919878-2735d30fa3d8?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxiY2klMjBhbHMlMjBicmFpbndhdmVzJTIwaW50ZXJmYXolMjBjZXJlYnJvJTIwY29tcHV0YWRvcmF8ZW58MXwwfHx8MTc3NTk4ODY4NHww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:39:52.816Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/surelock-rust-deadlock-mutex-deadlock-free</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/surelock-rust-deadlock-mutex-deadlock-free" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/surelock-rust-deadlock-mutex-burned-production-2am" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1730503843459-8dcd580767c0?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxwcm9kdWNjaW9uJTIwc2lzdGVtYXMlMjBydXN0fGVufDF8MHx8fDE3NzY1MzIzNjF8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:47:50.669Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/ai-agent-benchmarks-rotos-patrones-stack</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/ai-agent-benchmarks-rotos-patrones-stack" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/how-they-broke-top-ai-agent-benchmarks-what-it-says-about-my-stack" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1684369585080-11700ba4a9e9?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxhaSUyMGFnZW50JTIwYmVuY2htYXJrc3xlbnwxfDB8fHwxNzc1OTg4MzQ0fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:07:13.044Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/vibe-coding-security-code-review-keys-hardcodeadas</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/vibe-coding-security-code-review-keys-hardcodeadas" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/vibe-coded-prs-hardcoded-api-keys-security-code-review" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1774901128215-3549cc686921?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHx2aWJlJTIwY29kaW5nJTIwc2VjdXJpdHklMjBjb2RlJTIwcmV2aWV3fGVufDF8MHx8fDE3NzU5MDIyMzJ8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:53:22.905Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/contribuir-kernel-linux-con-ia-opinion-hacker-news</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/contribuir-kernel-linux-con-ia-opinion-hacker-news" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/ai-linux-kernel-contributions-unpopular-opinion-hn-debate" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1646583288948-24548aedffd8?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxBSSUyMExpbnV4JTIwa2VybmVsJTIwY29udHJpYnV0aW9uc3xlbnwxfDB8fHwxNzc1OTAyMTQ2fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:52:53.136Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/twill-ai-agents-prs-automation-responsabilidad-epistemica</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/twill-ai-agents-prs-automation-responsabilidad-epistemica" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/twill-ai-agent-generated-prs-epistemic-responsibility-real-experience" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1526378722484-bd91ca387e72?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxwcm9kdWN0aXZpZGFkJTIwY29kZSUyMHJldmlldyUyMEFJJTIwYWdlbnRzfGVufDF8MHx8fDE3NzY1MzIzNjN8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:08:50.447Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/france-linux-migration-argentina-infraestructura-publica</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/france-linux-migration-argentina-infraestructura-publica" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/france-windows-linux-migration-what-nobody-tells-you" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1642181215502-ed1bb366ba35?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxGcmFuY2UlMjBMaW51eCUyMG1pZ3JhdGlvbnxlbnwxfDB8fHwxNzc1OTAxODYzfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T21:20:26.966Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/sucesor-git-control-versiones-agentes-ia-17m</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/sucesor-git-control-versiones-agentes-ia-17m" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/will-ai-agents-kill-git-17-million-version-control-successor" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1686710278078-26f028c6dad8?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxzdWNlc29yJTIwZGUlMjBnaXQlMjBjb250cm9sJTIwZGUlMjB2ZXJzaW9uZXN8ZW58MXwwfHx8MTc3NTgxNTcyMnww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:23:57.377Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/tigerfs-filesystem-sobre-postgres-experimento</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/tigerfs-filesystem-sobre-postgres-experimento" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/tigerfs-filesystem-inside-postgresql-fuse-experiment" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1599507593354-2b6d036eab4f?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxmaWxlc3lzdGVtJTIwc29icmUlMjBwb3N0Z3JlcyUyMGV4cGVyaW1lbnRvfGVufDF8MHx8fDE3NzU4MTU2Mjl8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:35:20.632Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/synthid-watermark-deteccion-ia-gemini-local-edge-reverse-engineering</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/synthid-watermark-deteccion-ia-gemini-local-edge-reverse-engineering" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/reverse-engineering-synthid-gemini-watermark-browser-edge-detection" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1720962158852-e7039d31c3c1?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxTeW50aElEJTIwd2F0ZXJtYXJrJTIwZGV0ZWNjaSVDMyVCM24lMjBJQXxlbnwxfDB8fHwxNzc1ODE1NTM2fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T17:53:51.614Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/agentes-ia-investigacion-antes-de-codear</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/agentes-ia-investigacion-antes-de-codear" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/research-driven-agents-read-before-coding-ai-workflow" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1743090661053-3d1feb2beab7?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxhZ2VudGVzJTIwSUElMjBpbnZlc3RpZ2FjaSVDMyVCM24lMjBhbnRlcyUyMGRlJTIwY29kZWFyfGVufDF8MHx8fDE3NzU4MTU0NDR8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T18:59:31.534Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/nist-post-quantum-firma-digital-hsm-migracion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/nist-post-quantum-firma-digital-hsm-migracion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/nist-post-quantum-digital-signing-hsm-migration-ml-dsa-fips-204" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1555066931-78c471f0d4ea?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxUeXBlU2NyaXB0JTIwZGV2b3BzJTIwc2VndXJpZGFkfGVufDF8MHx8fDE3NzU4NDI1NDh8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:54:33.513Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/5-patrones-typescript-eliminan-bugs-compile-time</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/5-patrones-typescript-eliminan-bugs-compile-time" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/typescript-patterns-that-eliminate-bugs-at-compile-time" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1517134062979-e1234be8a085?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxXZWJEZXYlMjBUeXBlU2NyaXB0JTIwamF2YXNjcmlwdHxlbnwxfDB8fHwxNzc1ODQyNTUwfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:10:29.421Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/claude-code-alternativas-costo-zed-openrouter</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/claude-code-alternativas-costo-zed-openrouter" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/reallocated-claude-code-budget-zed-openrouter-what-nobody-tells-you" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1610466896927-699424f3c86d?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxjbGF1ZGUlMjBjb2RlJTIwYWx0ZXJuYXRpdmFzJTIwY29zdG98ZW58MXwwfHx8MTc3NTgxNTM1MXww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:47:46.007Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/linux-kernel-git-history-base-de-datos-analisis-pgit</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/linux-kernel-git-history-base-de-datos-analisis-pgit" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/linux-git-history-postgresql-database-archaeology-commit-analysis" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1588690154757-badf4644190f?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxMaW51eCUyMGtlcm5lbCUyMGdpdCUyMGhpc3RvcnklMjBwZ2l0JTIwYW4lQzMlQTFsaXNpc3xlbnwxfDB8fHwxNzc1NzI5MzU0fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:34:14.334Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/anthropic-billing-support-vendor-lock-in-apis-ia</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/anthropic-billing-support-vendor-lock-in-apis-ia" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/anthropic-billing-vendor-lock-in-hidden-cost-ai-apis" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1760952851538-17a59f691efe?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxhcnRpZmljaWFsJTIwaW50ZWxsaWdlbmNlJTIwQVBJJTIwdGVjaG5vbG9neXxlbnwxfDB8fHwxNzc1NzU2MzMwfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:38:35.035Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/project-glasswing-software-supply-chain-security-ai</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/project-glasswing-software-supply-chain-security-ai" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/project-glasswing-ai-supply-chain-security-what-ai-doesnt-tell-you" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1718806748183-edb0c438a006?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxzb2Z0d2FyZSUyMHNlY3VyaXR5JTIwY29kZSUyMHN1cHBseSUyMGNoYWlufGVufDF8MHx8fDE3NzU3NTYzMjh8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:05:14.015Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/littlesnitch-linux-firewall-outbound-monitoring</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/littlesnitch-linux-firewall-outbound-monitoring" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/littlesnitch-for-linux-outbound-firewall-monitoring-2024" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1751448555253-f39c06e29d82?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxsaW51eCUyMGZpcmV3YWxsJTIwbmV0d29yayUyMHNlY3VyaXR5fGVufDF8MHx8fDE3NzU3NTYzMjV8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:31:39.324Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/megatrain-full-precision-training-single-gpu-llms-100b</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/megatrain-full-precision-training-single-gpu-llms-100b" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/megatrain-full-precision-training-100b-llm-single-gpu" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1677442135136-760c813028c0?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxtYWNoaW5lJTIwbGVhcm5pbmclMjBHUFUlMjBkZWVwJTIwbGVhcm5pbmd8ZW58MXwwfHx8MTc3NTc1NjMzMnww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:57:02.706Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/scion-google-orquestacion-agentes-ia-testbed</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/scion-google-orquestacion-agentes-ia-testbed" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/scion-google-agent-orchestration-testbed-open-source" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1624364481054-bf3fc8b8a69d?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxhZ2VudGVzLWlhLW9ycXVlc3RhY2lvbi0yMDI1fGVufDF8MHx8fDE3NzU2NDI5NTB8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:11:24.243Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/accesibilidad-web-real-score-lighthouse-vs-experiencia-usuario</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/accesibilidad-web-real-score-lighthouse-vs-experiencia-usuario" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/your-accessibility-score-is-lying-lighthouse-real-world" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1585244129648-5dc1f9cd9d7a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxhY2Nlc2liaWxpZGFkLXdlYi1yZWFsfGVufDF8MHx8fDE3NzU2NDI4NTV8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:13:36.927Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/x509-certificate-viewer-vscode-extension</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/x509-certificate-viewer-vscode-extension" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/never-type-openssl-x509-again-vs-code-certificate-extension" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1774649704786-298b96807db5?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHx4NTA5JTIwY2VydGlmaWNhdGUlMjB2aWV3ZXIlMjB2c2NvZGV8ZW58MXwwfHx8MTc3NTY0ODEzOHww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:12:10.545Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/haproxy-vscode-extension-gmm-haproxy</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/haproxy-vscode-extension-gmm-haproxy" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/haproxy-vscode-extension-lsp-autocomplete-validation" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1774901128215-3549cc686921?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxoYXByb3h5JTIwdnNjb2RlJTIwZXh0ZW5zaW9ufGVufDF8MHx8fDE3NzU2MjU0NzR8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:12:09.362Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/vibe-coding-vs-stress-coding-ia-proyectos-reales</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/vibe-coding-vs-stress-coding-ia-proyectos-reales" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/vibe-coding-vs-stress-coding-how-i-use-ai-on-real-projects" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1674483699209-25fb6d962119?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxBSSUyMHByb2R1Y3Rpdml0eSUyMGRldmVsb3BlciUyMHdvcmtmbG93fGVufDF8MHx8fDE3NzU1ODE0NzN8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:13:15.242Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/linux-elf-dynamic-linking-como-funciona</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/linux-elf-dynamic-linking-como-funciona" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/how-linux-executes-a-binary-elf-dynamic-linking-explained" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1649442279007-74fb5a05194f?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxsaW51eCUyMHRlcm1pbmFsJTIwc3lzdGVtJTIwcHJvZ3JhbW1pbmd8ZW58MXwwfHx8MTc3NTU4MTQ3Nnww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:13:10.408Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/codebase-visualization-github-ai-analisis</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/codebase-visualization-github-ai-analisis" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/google-maps-for-codebases-analyzed-my-own-repo-with-ai" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1504639725590-34d0984388bd?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxjb2RlJTIwdmlzdWFsaXphdGlvbiUyMHNvZnR3YXJlJTIwYXJjaGl0ZWN0dXJlfGVufDF8MHx8fDE3NzU1ODE0Nzd8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:12:28.070Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/quantum-computing-timeline-desarrolladores-web</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/quantum-computing-timeline-desarrolladores-web" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/quantum-computing-timeline-for-web-developers-when-to-worry" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1759159347827-de3a54002de7?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxxdWFudHVtJTIwY29tcHV0aW5nJTIwdGVjaG5vbG9neSUyMGZ1dHVyZXxlbnwxfDB8fHwxNzc1NTgxNDc3fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T18:59:15.962Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/gemma-llm-browser-sin-api-keys-local</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/gemma-llm-browser-sin-api-keys-local" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/running-gemma-llm-in-the-browser-no-api-keys-local-inference" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1762329381993-c6834c7ff010?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxhcnRpZmljaWFsJTIwaW50ZWxsaWdlbmNlJTIwYnJvd3NlciUyMHRlY2hub2xvZ3l8ZW58MXwwfHx8MTc3NTU4MTQ3OHww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T21:18:44.968Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/sandboxes-coding-agents-freestyle</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/sandboxes-coding-agents-freestyle" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/sandboxes-for-coding-agents-freestyle-secure-execution" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1666875758381-9e627d24133e?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxzYW5kYm94JTIwc2VjdXJpdHklMjBjb2RpbmclMjBhZ2VudHxlbnwxfDB8fHwxNzc1NTgxNDc5fDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:53:16.651Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/llm-pequeno-browser-edge-inferencia-nextjs</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/llm-pequeno-browser-edge-inferencia-nextjs" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/tiny-llm-in-browser-nextjs-what-i-learned" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1763568258177-4ea94966595a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxtYWNoaW5lJTIwbGVhcm5pbmclMjB3ZWIlMjBkZXZlbG9wbWVudHxlbnwxfDB8fHwxNzc1NTgxNDgwfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:53:04.784Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/claude-code-updates-febrero-2025</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/claude-code-updates-febrero-2025" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/claude-code-february-2025-updates-what-broke-and-what-it-revealed" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1746286720965-cccf57e56c68?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwzfHxBSSUyMGRldmVsb3BlciUyMHRvb2xzJTIwY29kZSUyMGFzc2lzdGFudHxlbnwxfDB8fHwxNzc1NTgxNDgxfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T18:55:24.824Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/de-dos-a-cloud-mi-viaje-33-anos-1775496952619</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/de-dos-a-cloud-mi-viaje-33-anos-1775496952619" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/from-dos-to-cloud-30-year-tech-journey-amiga-1994-to-nextjs-railway" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1536108845120-d563881c8ed7?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxjbG91ZCUyMHZpYWplJTIwYSVDMyVCMW9zfGVufDF8MHx8fDE3NzU1MTUxODZ8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T21:12:41.557Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/optimizacion-performance-nextjs-3s-a-300ms</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/optimizacion-performance-nextjs-3s-a-300ms" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/from-3-seconds-to-300ms-nextjs-performance-optimization-production" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1687575635656-3f2cb9ae8ed2?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwyfHxzZWd1bmRvcyUyMGMlQzMlQjNtbyUyMG9wdGltaWMlQzMlQTl8ZW58MXwwfHx8MTc3NTUxNTE4OHww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:53:10.676Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/stack-tecnologico-perfecto-2025</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/stack-tecnologico-perfecto-2025" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/perfect-tech-stack-2025-what-i-would-choose-for-a-new-project" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1572949645843-4395e309f43a?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxzdGFjayUyMHRlY25vbCVDMyVCM2dpY28lMjBwZXJmZWN0b3xlbnwxfDB8fHwxNzc1NTE1MTkwfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T19:53:18.534Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/typescript-patrones-avanzados-que-uso</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/typescript-patrones-avanzados-que-uso" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/typescript-patterns-i-actually-use-every-day" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1699885960867-56d5f5262d38?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHx0eXBlc2NyaXB0JTIwcGF0cm9uZXMlMjByZWFsbWVudGV8ZW58MXwwfHx8MTc3NTUxNTE5Mnww&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T23:47:15.360Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/como-construi-juanchi-dev</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/como-construi-juanchi-dev" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/building-juanchi-dev-nextjs-16-react-19-tailwind-v4-railway" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1763075466907-544cd90a8b2f?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHwxfHxjJUMzJUIzbW8lMjBjb25zdHJ1JUMzJUFEJTIwanVhbmNoaXxlbnwxfDB8fHwxNzc1NTE1MTkzfDA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:15:45.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/nextjs-app-router-guia-completa</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/nextjs-app-router-guia-completa" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/nextjs-app-router-migration-guide-from-pages-router" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1750711158632-5273ec9b9b86?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw0fHxuZXh0JTIwcm91dGVyJTIwZ3UlQzMlQURhfGVufDF8MHx8fDE3NzU1MTUxOTV8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T22:48:20.792Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/de-dos-a-cloud-mi-viaje-33-anos</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/de-dos-a-cloud-mi-viaje-33-anos" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/from-dos-to-cloud-33-year-tech-journey-amiga-1994-nextjs-railway" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1705077354123-a7f9b7d77674?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxjbG91ZCUyMHZpYWplJTIwYSVDMyVCMW9zfGVufDF8MHx8fDE3NzU1MTUxODZ8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T21:20:33.199Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/docker-nodejs-de-cero-a-produccion</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/docker-nodejs-de-cero-a-produccion" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/docker-for-nodejs-developers-zero-to-production" />
<image:image>
<image:loc>https://images.unsplash.com/photo-1666576005530-7f99559bbd79?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w5MTc1Mjd8MHwxfHNlYXJjaHw1fHxkb2NrZXIlMjBkZXNhcnJvbGxhZG9yZXMlMjBub2RlfGVufDF8MHx8fDE3NzU1MTUxOTl8MA&ixlib=rb-4.1.0&q=80&w=1080</image:loc>
</image:image>
<lastmod>2026-05-04T20:57:48.753Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/series/java-champion-journey</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/series/java-champion-journey" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/series/java-champion-journey" />
<lastmod>2026-04-17T01:31:08.084Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/series/datos-abiertos-creatividad</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/series/datos-abiertos-creatividad" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/series/open-data-and-creativity" />
<lastmod>2026-04-14T03:00:05.313Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/series/awesome-curated-tools</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/series/awesome-curated-tools" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/series/awesome-curated-tools" />
<lastmod>2026-04-13T13:28:32.870Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://juanchi.dev/es/blog/series/awesome-curated</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://juanchi.dev/es/blog/series/awesome-curated" />
<xhtml:link rel="alternate" hreflang="en" href="https://juanchi.dev/en/blog/series/awesome-curated" />
<lastmod>2026-04-13T04:20:38.138Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
</urlset>
