All Posts
All blog posts published here. I've also published on This Dot Labs, Medium, and Cloudinary.
How not to communicate a production incident
AWS had a production issue on Friday and gave a good example of how not to talk to your customers.
Owning technical decisions in the age of AI
Using an LLM to shape a technical proposal is fine, but the accountability for that proposal and the code behind it is still yours.
The Next.js bloom filter and how it can break App Router migrations
During an incremental App Router migration, a probabilistic data structure buried in your client bundle can randomly turn working links into 404s.
Your SaaS works perfectly, until real users show up
Your SaaS works great until real humans (and their ad-blockers, auto-translators, and bot friends) prove you wrong.
Why you should consider Zed as your next editor
Zed is a fantastic editor that is becoming the go-to choice for many developers.
When to use redirect() vs. router.push() in Next.js
Explaining the two methods for programmatically redirecting a user in Next.js components, server functions, or route handlers.
Using callbacks to achieve better component decoupling in React
Decouple React components effectively by passing functions the right way, creating more testable and maintainable code.
Do not pass DTOs to UI components
UI components should consume simplified data models tailored for the UI instead of raw back-end DTOs, with a data access layer providing the necessary mapping and abstraction.
Why doesn't autofill work on my form?
You've implemented a beautiful login form, but the browser will not autofill username and password on it. What could be the reason?
Sentry integration woes with Next.js/Fly.io
Integrating Sentry is usually a simple process, but when you need to pass the Sentry authentication token several layers down in your CI pipeline, it gets a bit complicated.
Adding Cognito user via AWS API
A step-by-step guide on adding a Cognito user through the AWS API.