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
We all understand that free services from a company that is spending billions on computing power won't remain free. It's inevitable. But the reality is we are all already using Codex. OpenAI recently announced that Codex was made available in ChatGPT for free, but access was limited. At the moment, developers can use code completions, refactorings, or generate entire functions without spending any
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
Picture this: it's 1:47 AM. Your phone buzzes. It's your team lead. The helpful little agent you spun up last quarter to "handle Tier 1 support tickets" has just confidently emailed 47 customers confirming refunds it has no authority to issue. None of the refunds are real. The numbers are hallucinated. Support Slack is on fire. You stare at the ceiling and ask the only question that matters: Who
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
When Google announced the Manifest V3 deadline, the developer community had a lot to say — most of it negative. The service worker model was rightly criticized as a regression for ad blockers and complex extensions. I've now migrated 18 extensions from MV2 to MV3, or built them MV3-native from the start. The commonly documented issues (no persistent background pages, limited webRequest) are real.