<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Technical blog about programming, self-hosting and digital sovereignty</title><description>Technical blog about software development and digital sovereignty.</description><link>https://escribano.dev/</link><item><title>Ctrl+J: the newline shortcut agent TUIs don&apos;t tell you about</title><link>https://escribano.dev/en/blog/016-ctrl-j-terminal-newline/</link><guid isPermaLink="true">https://escribano.dev/en/blog/016-ctrl-j-terminal-newline/</guid><description>Enter submits the prompt. Ctrl+J inserts a newline in kiro-cli and Cursor Agent; in the VS Code terminal the same shortcut hides the panel.</description><pubDate>Sat, 05 Sep 2026 00:00:00 GMT</pubDate></item><item><title>SDD in the IAG era: Kiro, OpenSpec, and how much structure you need</title><link>https://escribano.dev/en/blog/015-spec-driven-development-iag/</link><guid isPermaLink="true">https://escribano.dev/en/blog/015-spec-driven-development-iag/</guid><description>Spec-Driven Development versus vibe-coding: why versioned specs matter when the agent writes code, and how OpenSpec, Kiro, and AGENTS.md fit the RPS framework.</description><pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Sovereign identity in the homelab: Zitadel and the RPS spectrum</title><link>https://escribano.dev/en/blog/009-homelab-identity/</link><guid isPermaLink="true">https://escribano.dev/en/blog/009-homelab-identity/</guid><description>Homelab identity with Authelia, Keycloak, Authentik, and Zitadel: forward auth, central IdP, social login, and when each one fits.</description><pubDate>Sat, 22 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Reverse proxy in the homelab: Caddy, TLS, and when Pi-hole gets in the way</title><link>https://escribano.dev/en/blog/008-caddy-reverse-proxy-pihole/</link><guid isPermaLink="true">https://escribano.dev/en/blog/008-caddy-reverse-proxy-pihole/</guid><description>Caddy as a homelab reverse proxy: TLS, split DNS, rebind protection, and ACME renewals with Pi-hole, after VPN and sslip.io.</description><pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Names without buying a domain: sslip.io in the homelab</title><link>https://escribano.dev/en/blog/007-sslip-io-homelab-dns/</link><guid isPermaLink="true">https://escribano.dev/en/blog/007-sslip-io-homelab-dns/</guid><description>sslip.io and nip.io in the homelab: DNS embedded in the hostname, TLS with Let&apos;s Encrypt, and the RPS fit versus Pi-hole or your own domain.</description><pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Homelab access: Tailscale, WireGuard, and OpenVPN</title><link>https://escribano.dev/en/blog/006-homelab-vpn-access/</link><guid isPermaLink="true">https://escribano.dev/en/blog/006-homelab-vpn-access/</guid><description>OpenVPN, WireGuard, and Tailscale in the homelab: what simplicity you gain and which anchors you accept when someone else coordinates access.</description><pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate></item><item><title>What is digital sovereignty</title><link>https://escribano.dev/en/blog/005-digital-sovereignty/</link><guid isPermaLink="true">https://escribano.dev/en/blog/005-digital-sovereignty/</guid><description>Digital sovereignty: deciding over data, infrastructure, and AI models. Open source, self-hosting, and open weights against cloud-first anchors.</description><pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Tales Vault System: random first, memorable second</title><link>https://escribano.dev/en/blog/011-tales-vault-system/</link><guid isPermaLink="true">https://escribano.dev/en/blog/011-tales-vault-system/</guid><description>Tales Vault System: CSPRNG passwords, mnemonic phrases from a fixed template, and recovery without picking letters or words. Local-first.</description><pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Passwords: why length beats complexity</title><link>https://escribano.dev/en/blog/010-password-entropy-length/</link><guid isPermaLink="true">https://escribano.dev/en/blog/010-password-entropy-length/</guid><description>Real vs nominal entropy, the NIST legacy, the famous passphrase comic, and why picking your own words destroys the uniform distribution the panel assumes.</description><pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate></item><item><title>The cloud-first problem: when fear masquerades as prudence</title><link>https://escribano.dev/en/blog/004-cloud-first-problem/</link><guid isPermaLink="true">https://escribano.dev/en/blog/004-cloud-first-problem/</guid><description>Cloud was built for uncertain spikes; today it is used by inertia even when a VPS would do. An invitation to choose infrastructure on purpose.</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate></item><item><title>The feeling of touching something fragile: snowflake, IaC and the RPS principle</title><link>https://escribano.dev/en/blog/003-snowflake-iac-rps/</link><guid isPermaLink="true">https://escribano.dev/en/blog/003-snowflake-iac-rps/</guid><description>AWS console, Firebase, or an artisanal VPS: why snowflake infrastructure is fragile, and how IaC fits the RPS principle.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Rock, paper, scissors: a framework for technical decisions</title><link>https://escribano.dev/en/blog/002-rps-principle/</link><guid isPermaLink="true">https://escribano.dev/en/blog/002-rps-principle/</guid><description>The RPS principle: classify every technical decision as pragmatism (rock), risk control (paper), or maximum potential (scissors).</description><pubDate>Sat, 17 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Introduction</title><link>https://escribano.dev/en/blog/001-introduction/</link><guid isPermaLink="true">https://escribano.dev/en/blog/001-introduction/</guid><description>First post on escribano.dev: a technical blog about programming, self-hosting, and digital sovereignty, written to document and think in public.</description><pubDate>Sat, 10 Jan 2026 00:00:00 GMT</pubDate></item></channel></rss>