When you automate backups, you eventually discover the backup was not the hard part. The hard part was everything around it. This week I got a nice little reminder from my self-hosted agent setup: the backup job can be logically correct, authenticated, scheduled, and still fail because of two very boring constraints: Docker-owned files are not always readable by the user running cron. GitHub Relea
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
Book: The Complete Guide to Go Programming Also by me: Thinking in Go (2-book series) — Complete Guide to Go Programming + Hexagonal Architecture in Go My project: Hermes IDE | GitHub — an IDE for developers who ship with Claude Code and other AI coding tools Me: xgabriel.com | GitHub You open a PR review on a Go service. The diff adds three new methods on Counter. Two have value receive
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
Originally published at https://allcoderthings.com/en/article/csharp-collections-list-dictionary-queue-stack In C#, collections are used to store multiple values dynamically and process them efficiently. Arrays have fixed size, but collections can grow and shrink as needed. This article covers List<T>, Dictionary<TKey,TValue> (and KeyValuePair<,>), SortedList<TKey,TValue>, Queue<T>, Stack<T>, Hash
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.
Something shifted in the last ninety days. While the headlines talk about 1.9% tech growth, those of us in the trenches are seeing a different reality: The floor has been hit. We are no longer in the "automation at all costs" era. We have entered the era of Human-Led Resilience. The Reality of 27-Second Breakouts In my day job in public safety communications, "uptime" isn't a KPI; it's a lif