<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>47Network Blog</title>
    <link>https://the47network.com/blog.html</link>
    <description>Infrastructure insights, product deep-dives, and security engineering from the 47Network team.</description>
    <language>en</language>
    <copyright>© 2026 47Network</copyright>
    <managingEditor>hello@the47network.com (47Network)</managingEditor>
    <webMaster>hello@the47network.com (47Network)</webMaster>
    <lastBuildDate>Mon, 10 Feb 2026 09:00:00 +0200</lastBuildDate>
    <atom:link href="https://the47network.com/blog/feed.xml" rel="self" type="application/rss+xml"/>
    <image>
      <url>https://the47network.com/assets/logo.png</url>
      <title>47Network Blog</title>
      <link>https://the47network.com/blog.html</link>
    </image>

      <item>
    <title>The QA maturity model: where your team is and what to fix next</title>
    <link>https://the47network.com/blog/qa-maturity-model.html</link>
    <description>A practical five-level framework for diagnosing your QA maturity — from zero tests to full CI/CD integration. Where most teams actually sit, and the highest-impact change at each level.</description>
    <pubDate>Mon, 10 Feb 2026 09:00:00 +0000</pubDate>
    <author>TestGate Studio</author>
    <category>Testing</category>
    <guid>https://the47network.com/blog/qa-maturity-model.html</guid>
  </item>
  <item>
      <title>Zero-trust is not just for enterprises: a practical guide for SMEs</title>
      <link>https://the47network.com/blog/zero-trust-for-smes.html</link>
      <guid isPermaLink="true">https://the47network.com/blog/zero-trust-for-smes.html</guid>
      <pubDate>Mon, 10 Feb 2026 09:00:00 +0200</pubDate>
      <dc:creator>47Network Studio Team</dc:creator>
      <category>Security</category>
      <description><![CDATA[Most zero-trust literature assumes a 500-person security team and a six-figure tooling budget. It doesn't have to. Here's how we implement production-grade zero-trust for 20-person organizations using open-source tooling: Keycloak, Pomerium, HashiCorp Vault, and Kyverno.]]></description>
    </item>

    <item>
      <title>Self-hosting Matrix in 2026: what changed, what's easier, what's still hard</title>
      <link>https://the47network.com/blog/self-hosting-matrix-2026.html</link>
      <guid isPermaLink="true">https://the47network.com/blog/self-hosting-matrix-2026.html</guid>
      <pubDate>Tue, 28 Jan 2026 09:00:00 +0200</pubDate>
      <dc:creator>47Network Studio Team</dc:creator>
      <category>Infrastructure</category>
      <description><![CDATA[Matrix has matured significantly. Dendrite is production-ready for small deployments. Element X is genuinely good. Here's an honest assessment of the current self-hosting experience — what improved, what's still operationally complex, and our current recommended stack.]]></description>
    </item>

    <item>
      <title>How PassVault achieves zero-knowledge: architecture deep-dive</title>
      <link>https://the47network.com/blog/passvault-architecture.html</link>
      <guid isPermaLink="true">https://the47network.com/blog/passvault-architecture.html</guid>
      <pubDate>Tue, 14 Jan 2026 09:00:00 +0200</pubDate>
      <dc:creator>47Network Product Team</dc:creator>
      <category>Product</category>
      <description><![CDATA[PassVault stores nothing it could use to read your passwords. Here's the exact cryptographic construction: how keys are derived with Argon2id, how vault items are encrypted with AES-256-GCM, and why our servers are mathematically useless to an attacker.]]></description>
    </item>

    <item>
    <title>eBPF and XDP for perimeter security: how 47Sentry works</title>
    <link>https://the47network.com/blog/ebpf-perimeter-security.html</link>
    <description>Kernel-level network filtering with eBPF and XDP — no firewall appliance required. Architecture of 47Sentry's Traffic Sentinel, NetMapper, and DNS resilience components.</description>
    <pubDate>Mon, 03 Feb 2026 09:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/ebpf-perimeter-security.html</guid>
    <category>Security</category>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>Building a multi-tenant SMS platform: architecture of 47Comms</title>
    <link>https://the47network.com/blog/sms-infrastructure-47comms.html</link>
    <description>How 47Comms handles multi-tenant SMS routing, consent management, carrier failover, and PBX bridging without vendor lock-in.</description>
    <pubDate>Wed, 21 Jan 2026 09:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/sms-infrastructure-47comms.html</guid>
    <category>Infrastructure</category>
    <category>Product</category>
  </item>
  <item>
    <title>Designing Sven Agent: why auditability beats capability</title>
    <link>https://the47network.com/blog/sven-agent-design.html</link>
    <description>The design decisions behind Sven Agent — tamper-proof audit trails, deterministic skill orchestration via OpenClaw, self-hosting, and the mission control interface.</description>
    <pubDate>Mon, 17 Feb 2026 09:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/sven-agent-design.html</guid>
    <category>Product</category>
    <category>Architecture</category>
  </item>
  <item>
    <title>Setting up Keycloak SSO for a small team: a practical guide</title>
    <link>https://the47network.com/blog/keycloak-sso-small-teams.html</link>
    <description>Step-by-step Keycloak deployment for teams of 5-100. Realm setup, OIDC clients, MFA enforcement, production hardening — without enterprise complexity.</description>
    <pubDate>Sat, 21 Feb 2026 09:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/keycloak-sso-small-teams.html</guid>
    <category>Infrastructure</category>
    <category>Security</category>
  </item>
  <item>
    <title>Docker Compose vs Kubernetes for self-hosted infrastructure</title>
    <link>https://the47network.com/blog/docker-compose-vs-kubernetes.html</link>
    <description>When to use Docker Compose and when Kubernetes earns its complexity — practical guidance based on team size and operational capacity.</description>
    <pubDate>Mon, 23 Feb 2026 09:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/docker-compose-vs-kubernetes.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>HashiCorp Vault for application secrets: getting off environment variables</title>
    <link>https://the47network.com/blog/vault-secrets-management.html</link>
    <description>Why env vars are the wrong secrets model and how to migrate to Vault — dynamic credentials, leases, Agent Injector, AppRole auth, and what actually breaks.</description>
    <pubDate>Mon, 23 Feb 2026 14:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/vault-secrets-management.html</guid>
    <category>Infrastructure</category>
    <category>Security</category>
  </item>
  <item>
    <title>Building a Tamper-Proof Audit Trail: Append-Only Logs for Compliance</title>
    <link>https://the47network.com/blog/tamper-proof-audit-trail.html</link>
    <description>Cryptographic chaining, write-once storage, external anchoring, and append-only PostgreSQL enforcement. Audit logs that withstand forensic scrutiny.</description>
    <pubDate>Tue, 24 Feb 2026 10:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/tamper-proof-audit-trail.html</guid>
    <category>Security</category>
  </item>
  <item>
    <title>Argon2id vs bcrypt vs scrypt: Choosing a Password Hashing Algorithm</title>
    <link>https://the47network.com/blog/password-hashing-argon2.html</link>
    <description>Why Argon2id won the Password Hashing Competition. How to benchmark and tune its parameters. When bcrypt is still acceptable and why MD5/SHA are never acceptable.</description>
    <pubDate>Tue, 24 Feb 2026 10:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/password-hashing-argon2.html</guid>
    <category>Security</category>
  </item>
  <item>
    <title>Proxmox VE for Production: From Homelab to Real Infrastructure</title>
    <link>https://the47network.com/blog/proxmox-production.html</link>
    <description>The storage, network, backup, and HA cluster decisions that separate a homelab Proxmox setup from one you can stake production workloads on.</description>
    <pubDate>Tue, 24 Feb 2026 11:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/proxmox-production.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>Prometheus Alerting That Doesn't Cry Wolf</title>
    <link>https://the47network.com/blog/prometheus-alerting-that-works.html</link>
    <description>The most common failure mode in Prometheus alerting is false positives. How to write alerts that fire when something is actually wrong and stay silent otherwise.</description>
    <pubDate>Tue, 24 Feb 2026 12:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/prometheus-alerting-that-works.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>Writing a Makefile That Doesn't Make You Cry</title>
    <link>https://the47network.com/blog/makefile-that-works.html</link>
    <description>Make is 50 years old and still the best task runner for most projects. Phony targets, automatic variables, pattern rules, and a self-documenting help target.</description>
    <pubDate>Tue, 24 Feb 2026 13:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/makefile-that-works.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>Email Deliverability: SPF, DKIM, and DMARC Actually Explained</title>
    <link>https://the47network.com/blog/email-deliverability-spf-dkim-dmarc.html</link>
    <description>SPF stops spoofing but doesn't authenticate content. DKIM signs messages but doesn't block forged senders. DMARC ties them together and tells receivers what to do. Here's how all three work and how to deploy them correctly.</description>
    <pubDate>Tue, 24 Feb 2026 14:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/email-deliverability-spf-dkim-dmarc.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>WireGuard Site-to-Site VPN: Setup, Routing, and Key Management</title>
    <link>https://the47network.com/blog/wireguard-site-to-site.html</link>
    <description>WireGuard is simpler and faster than OpenVPN or IPsec. Here's how to set up a site-to-site VPN, configure routing between subnets, manage key rotation, and integrate it with a zero-trust architecture.</description>
    <pubDate>Tue, 24 Feb 2026 14:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/wireguard-site-to-site.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>PostgreSQL for Developers Who Just Want It to Work</title>
    <link>https://the47network.com/blog/postgresql-for-developers.html</link>
    <description>Connection pooling with PgBouncer, partial indexes, EXPLAIN ANALYZE, VACUUM tuning, and the postgresql.conf settings that actually matter in production.</description>
    <pubDate>Tue, 24 Feb 2026 14:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/postgresql-for-developers.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>SSH Hardening: From Defaults to Production-Ready</title>
    <link>https://the47network.com/blog/ssh-hardening-checklist.html</link>
    <description>The complete SSH hardening checklist: key-only auth, modern algorithm config, fail2ban, user restrictions, a full sshd_config example, and Teleport for team-scale access management.</description>
    <pubDate>Tue, 24 Feb 2026 15:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/ssh-hardening-checklist.html</guid>
    <category>Security</category>
  </item>
  <item>
    <title>Nginx as a Reverse Proxy: TLS, Rate Limiting, and Upstream Health</title>
    <link>https://the47network.com/blog/nginx-reverse-proxy.html</link>
    <description>TLS termination with OCSP stapling, three rate-limiting zones for auth and API endpoints, upstream health checks, JSON logging, and a complete production Nginx config.</description>
    <pubDate>Tue, 24 Feb 2026 16:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/nginx-reverse-proxy.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>Backup Strategy for Self-Hosted Infrastructure: Restic + Object Storage</title>
    <link>https://the47network.com/blog/restic-backup-strategy.html</link>
    <description>Encrypted deduplicated Restic backups to S3-compatible storage, retention policies, integrity verification, and automated restore testing with systemd timers.</description>
    <pubDate>Tue, 24 Feb 2026 17:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/restic-backup-strategy.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>Redis for Application Developers: Caching, Queues, and Pub/Sub</title>
    <link>https://the47network.com/blog/redis-for-developers.html</link>
    <description>Connection pooling, cache invalidation, BullMQ job queues, pub/sub for real-time events, sorted-set rate limiters, and Redis persistence configuration.</description>
    <pubDate>Tue, 24 Feb 2026 18:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/redis-for-developers.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>Self-Hosted Communication Platform for a Romanian Media Company</title>
    <link>https://the47network.com/case-studies/media-comms-platform.html</link>
    <description>Matrix homeserver, 47Comms SMS alerts, and editorial workflow integration for a 120-person national media organisation. Zero third-party message access.</description>
    <pubDate>Tue, 24 Feb 2026 19:00:00 +0000</pubDate>
    <guid>https://the47network.com/case-studies/media-comms-platform.html</guid>
    <category>Case Study</category>
  </item>
  <item>
    <title>GitHub Actions CI/CD for Self-Hosted Infrastructure</title>
    <link>https://the47network.com/blog/github-actions-cicd.html</link>
    <description>Self-hosted runners, Vault secrets injection, environment protection gates, reusable workflows, and artifact-based rollback for production CI/CD.</description>
    <pubDate>Tue, 24 Feb 2026 20:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/github-actions-cicd.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>Passkeys and WebAuthn in 2026: Implementation Guide</title>
    <link>https://the47network.com/blog/passkeys-webauthn-2026.html</link>
    <description>WebAuthn registration and authentication flows, resident keys, cross-device passkeys, attestation, and fallback strategy for production implementation.</description>
    <pubDate>Tue, 24 Feb 2026 21:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/passkeys-webauthn-2026.html</guid>
    <category>Security</category>
  </item>
  <item>
    <title>Grafana Dashboards That Don't Lie: From Prometheus to Panels</title>
    <link>https://the47network.com/blog/grafana-dashboards.html</link>
    <description>PromQL for the RED and USE methods, Loki log correlation, alert rules from panels, variable templating, and dashboard organisation for production observability.</description>
    <pubDate>Tue, 24 Feb 2026 22:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/grafana-dashboards.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>Playwright E2E Test Suite for a Romanian Fintech Mobile App</title>
    <link>https://the47network.com/case-studies/fintech-playwright-qa.html</link>
    <description>94 automated Playwright E2E and API contract tests, k6 load testing, and GitHub Actions CI gate — reducing a 5-day manual regression to under 2 hours.</description>
    <pubDate>Tue, 24 Feb 2026 23:00:00 +0000</pubDate>
    <guid>https://the47network.com/case-studies/fintech-playwright-qa.html</guid>
    <category>Case Study</category>
  </item>
  <item>
    <title>Playwright E2E Testing: A Practical Guide for Production Test Suites</title>
    <link>https://the47network.com/blog/playwright-e2e-testing.html</link>
    <description>Page Object Model, auth fixtures, parallel execution, network interception, and CI sharding — the Playwright patterns behind every 47Network Studio QA engagement.</description>
    <pubDate>Tue, 24 Feb 2026 20:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/playwright-e2e-testing.html</guid>
    <category>QA</category>
  </item>
  <item>
    <title>k6 Load Testing: From Zero to Production Benchmarks</title>
    <link>https://the47network.com/blog/k6-load-testing.html</link>
    <description>Virtual user ramps, thresholds, authenticated scenarios, InfluxDB output, and the five test types every production system needs — baseline through soak.</description>
    <pubDate>Tue, 24 Feb 2026 20:30:00 +0000</pubDate>
    <guid>https://the47network.com/blog/k6-load-testing.html</guid>
    <category>QA</category>
  </item>
  <item>
    <title>Ansible for Infrastructure Automation: Playbooks That Scale</title>
    <link>https://the47network.com/blog/ansible-infrastructure-automation.html</link>
    <description>Idempotent playbooks, roles, inventory management, Ansible Vault, and rolling update patterns for self-hosted server fleets.</description>
    <pubDate>Wed, 25 Feb 2026 09:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/ansible-infrastructure-automation.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>TLS Certificate Automation with Certbot and ACME</title>
    <link>https://the47network.com/blog/tls-certificates-certbot-acme.html</link>
    <description>HTTP-01 vs DNS-01 challenges, wildcard certificates, Nginx TLS hardening, auto-renewal, and Prometheus expiry alerting.</description>
    <pubDate>Wed, 25 Feb 2026 09:30:00 +0000</pubDate>
    <guid>https://the47network.com/blog/tls-certificates-certbot-acme.html</guid>
    <category>Security</category>
  </item>
  <item>
    <title>Tailscale and Headscale: Zero-Config Mesh VPN for Self-Hosted Infrastructure</title>
    <link>https://the47network.com/blog/tailscale-headscale-mesh-vpn.html</link>
    <description>How Tailscale works, when to self-host the control plane with Headscale, ACLs for zero-trust network policy, and subnet routing.</description>
    <pubDate>Wed, 25 Feb 2026 10:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/tailscale-headscale-mesh-vpn.html</guid>
    <category>Security</category>
  </item>
  <item>
    <title>GDPR Compliance Engineering: A Developer's Practical Guide</title>
    <link>https://the47network.com/blog/gdpr-compliance-engineering.html</link>
    <description>Data minimisation, consent mechanisms, right-to-erasure implementation, audit logging for GDPR, and the compliance engineering patterns used in 47Network's fintech and healthcare engagements.</description>
    <pubDate>Wed, 25 Feb 2026 11:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/gdpr-compliance-engineering.html</guid>
    <category>Security</category>
  </item>
  <item>
    <title>OpenTelemetry Distributed Tracing for Microservices</title>
    <link>https://the47network.com/blog/opentelemetry-distributed-tracing.html</link>
    <description>Auto-instrumentation, manual spans, context propagation, exporting to Jaeger and Grafana Tempo, and the tracing setup used alongside Prometheus in 47Network Studio engagements.</description>
    <pubDate>Wed, 25 Feb 2026 11:30:00 +0000</pubDate>
    <guid>https://the47network.com/blog/opentelemetry-distributed-tracing.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>Loki Log Aggregation with Promtail: The Grafana Stack's Missing Piece</title>
    <link>https://the47network.com/blog/loki-log-aggregation.html</link>
    <description>Label design, LogQL queries, Promtail pipeline stages, correlation with Prometheus metrics, and production deployment patterns for Grafana Loki.</description>
    <pubDate>Wed, 25 Feb 2026 12:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/loki-log-aggregation.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>ZFS for Self-Hosted Infrastructure: Pools, Datasets, and Data Integrity</title>
    <link>https://the47network.com/blog/zfs-storage-guide.html</link>
    <description>RAIDZ2 pool design, dataset hierarchy, compression, snapshots, send/receive replication, scrubs, and ECC RAM — the ZFS setup behind 47Network hardware deployments.</description>
    <pubDate>Wed, 25 Feb 2026 13:00:00 +0000</pubDate>
    <guid>https://the47network.com/blog/zfs-storage-guide.html</guid>
    <category>Infrastructure</category>
  </item>
  <item>
    <title>JWT and Token Authentication: A Practical Security Guide</title>
    <link>https://the47network.com/blog/jwt-token-authentication.html</link>
    <description>JWT structure, RS256 vs HS256, the alg:none vulnerability, refresh token rotation, token revocation strategies, and secure client-side storage patterns.</description>
    <pubDate>Wed, 25 Feb 2026 13:30:00 +0000</pubDate>
    <guid>https://the47network.com/blog/jwt-token-authentication.html</guid>
    <category>Security</category>
  </item>
</channel>
</rss>
