We Rewrote Our Angular 18 App in React 20 and Increased Developer Velocity by 40% Last quarter, our engineering team made the bold call to rewrite our 3-year-old Angular 18 production application in React 20. After 6 months of development, we cut over to the new stack with zero downtime, and the results have exceeded our expectations: we’ve measured a 40% increase in developer velocity, alongsid
White labeling is more common than you might think. When developing software, you often need to deploy the same application for multiple clients, each requiring their own customization: unique color palettes, logos, or specific variants for a link. Without a proper strategy, you might be tempted to simply clone the existing repository and implement client-specific changes on demand. However, this
Book: TypeScript in Production 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 have seen the shape of this incident before. A 500 lands in production. The frontend says "checkout failed". The Hono service that owns /checkout called the prici
Every observability vendor has bolted "AI" to their landing page. Half of those features are genuine improvements. The other half are autocomplete in a costume. After a few years of running these tools across enterprise estates, here is where AI-augmented SRE actually pays off, where it doesn't, and what we'd advise teams adopting it today. The single most defensible use case. A medium-sized estat
Iris v0.4.0 ships today. It's the release where protocol-native eval crosses from "deterministic rules" into "semantic scoring" — without giving up any of what made the deterministic layer work. Three headline features plus a lot of infrastructure work that quietly compounds. I'll go through each, why it matters, and how it fits the thesis. Heuristic rules catch a lot: length, keyword overlap, PII
TL;DR: ng-prism lets you showcase Angular components by adding a single decorator to the component class itself. No story files, no parallel file tree, no framework mismatch. Just Angular. If you've ever maintained a Storybook setup for an Angular component library, you know the drill: for every component you write, you also write a .stories.ts file. Then you keep both in sync. Then so