Hit ERR_MODULE_NOT_FOUND in TypeScript ESM? Diagnose the root cause with this decision tree, covering file extensions, tsconfig, and runtime fixes.
How to Migrate from the OpenAI SDK to Vercel AI SDK
We shipped our migration from the OpenAI SDK to the Vercel AI SDK on a Thursday afternoon. By Friday morning, every LLM call in production was failing. The culprit was a Zod .url() schema that the AI SDK’s OpenAI provider silently rejected. We reverted the entire migration, spent a day fixing compatibility issues, and re-deployed […]
Angular vs React: An Honest Review After 6 Years With Both
The angular vs react debate is one of the most searched comparisons in frontend development, and in 2026 it’s more relevant than ever. I spent four years building production applications with Angular. Then I switched to React and NextJS for the last two years. Most developers expect that story to end with “and I never […]
How to Fix the “Nest Can’t Resolve Dependencies” Error in NestJS
If you’ve worked with NestJS for more than a few hours, you’ve seen this error. The “Nest can’t resolve dependencies” message is the framework’s way of telling you that its dependency injection system can’t find something it needs. The error is common, but the good news is that it’s almost always one of a handful […]
How I debugged Chaos in our CI pipeline
The story of how one seemingly innocent PR, caused all hell to break loose in our CI/CD flows. Just about a week ago, a colleague of mine had to pull me in to have a look at some weird issues he was seeing.Our CI pipeline, specifically a Github action, that spins up a Docker container […]
Upgrading Prisma to Rust-free client in NestJS
Updated January 15, 2026 to reflect Prisma 7.x stable releases and common issues encountered in production upgrades.If you want to skip ahead, there’s a minimal reproduction repo here, you can reference. Prisma 7 shipped with a significant architectural change: the query engine was rewritten from Rust to TypeScript. This sounds like a minor internal detail, […]
Dockerizing and hosting a NestJS application
Part 1: Exploring and setting up NestJS Part 2: Dockerizing and hosting a NestJS application This is the second installment in my series about NestJS and becoming familiar with it. In this part of the series, I’d like to dive further into how and why I dockerized the setup. As with any new application, we […]
Exploring and setting up NestJS
I recently decided to do some more exploration of NestJS, as its a framework I’ve been interested in for a few years, and even dabbled in a bit. I have used it for a small project and built some services with it back in 2021 to test out how well we could implement a microservice […]
How I Built and Published My First Angular Library
I’ve always been curious about how writing code for a library differs from writing code for regular application. How is it different from writing normal application code. Is the setup more complicated, because you need to transpile to different versions? Is it vastly different between a frontend (React, Angular, etc.) library versus a NodeJS library? […]
Speed vs robustness when coding in Typescript
At the risk of sounding like a cliché I thought I’d share some thoughts on striking a balance between “speed” and “robustness”, working as a Typescript developer. I’ve always been a firm believer in picking the right tool for the job, whether that is applying the appropriate programming language, framework, library or delivery vehicle (ie. […]