The Challenge: Beyond the "Lift and Shift" Fatigue The real fear isn’t migration itself—it’s operational fragmentation: different tools, different processes, and different failure modes between the data center and the cloud. After deep-diving into the Nutanix ecosystem, I realized that the goal shouldn't be just moving VMs, but achieving operational symmetry. This is where Nutanix Cloud Clusters
Introducing Reachble — open-source VEX generation for npm projects, backed by I got tired of triaging the same CVE three times. The scanner flags it, someone That's what I built Reachble to fix. Run npm audit or drop your package-lock.json into Snyk. You get a list. Most of them cannot be exploited in your code. Research consistently shows 60–80% of CVEs flagged by dependency scanners live . T
TL;DR macsh is a tiny menu-bar app that mounts SFTP, S3-compatible, and FTP/FTPS servers as native macOS volumes. Open them in Finder, drag files in, edit in place. No macFUSE, no kernel extension, no Recovery-mode reboot. Apache-2.0, free. Heads up: macsh is built with Claude Code. I'm the designer, tester, and maintainer; the implementation is AI-written under my direction. Bugs and decisions
Book: PHP to TypeScript — A Bridge for Modern PHP 8+ Developers Also by me: The TypeScript Library — the 5-book collection My project: Hermes IDE | GitHub — an IDE for developers who ship with Claude Code and other AI coding tools Me: xgabriel.com | GitHub A PHP developer opens a TypeScript codebase, scrolls to the ORM layer, and gets stuck on a familiar question: how does $user->name wo
Book: TypeScript Essentials — From Working Developer to Confident TS, Across Node, Bun, Deno, and the Browser Also by me: The TypeScript Library — the 5-book collection My project: Hermes IDE | GitHub — an IDE for developers who ship with Claude Code and other AI coding tools Me: xgabriel.com | GitHub A team I talked to had a service that crashed roughly twice Cannot read properties of u
Book: TypeScript Essentials — From Working Developer to Confident TS, Across Node, Bun, Deno, and the Browser Also by me: The TypeScript Library — the 5-book collection My project: Hermes IDE | GitHub — an IDE for developers who ship with Claude Code and other AI coding tools Me: xgabriel.com | GitHub You add a new status to your app. The string "archived" goes Two days later a teammate
Most dev teams I've worked with communicate updates through a Slack message or a Notion doc that clients never open. Stack: Next.js 14 App Router Supabase (auth + DB + RLS) Tiptap (rich text editor) Tailwind CSS + shadcn/ui The cherry on top was the bug that kept me up at night. Tiptap's getHTML() was saving content to Supabase as escaped HTML entities, so <strong> became <strong> and render
Cuando una aplicación necesita leer un archivo, escribir en una conexión TCP o esperar datos de un disco, el kernel de Linux ofrece tradicionalmente dos caminos: bloquear el proceso hasta que la operación termine, o usar interfaces como epoll y Linux AIO para manejar múltiples operaciones concurrentes. Durante casi tres décadas, esas fueron las opciones dominantes. Pero desde la versión 5.1 del ke