Autofilling form fields has become an increasingly common and practical application of gen…
One of the powerful design patterns that can be employed within a GraphQL schema is the co…
Try as we might to design APIs that last, it is very difficult to completely avoid the nee…
I’m working on a side project with a friend, and we needed to quickly spin up a BI tool to…
tRPC has a fairly comprehensive set of built-in error codes, but because they’re baked in …
At Crimson one of the first projects undertaken by my AI team was to produce high-quality …
Software is becoming an increasingly large contributor to the world’s carbon emissions, an…
Most people know that it’s possible to use multi-stage Docker builds to minimize final ima…
If you’ve got an error which looks like the one below, this article will help you resolve …
At my last job we sold a quoting SaaS to tradespeople, and naturally a big component of ou…
At my job I’ve been working on identifying performance and stability issues with our main …
We had an issue the other month with our internal summarization microservice, which necess…
Imagine that you’re building out a web page that allows students to view a list of their a…
The upper limit for GPT-4 rate limits have significantly improved over the past few months…
Global object identification is a GraphQL specification which describes the Node interface…
Node
Last year Retool authored a post describing how they upgraded a 4 TB PostgreSQL database f…
I’m a huge fan of type-prefixed IDs because they make development so much more pleasant. O…
Partitioning your cloud infrastructure across different AWS accounts is a best-practice th…
I run into JSON file merge conflicts almost every day, and a shocking percentage of the ti…
AWS CloudTrail is an indispensable tool for improving your security posture, but it’s sadl…
On the surface AWS Secrets Manager is a straightforward service. You create secrets, store…
Using infrastructure-as-code solutions such as Terraform is a great way to keep your cloud…
At Crimson we use Elastic Beanstalk to run our Docker images, and we leverage an old inter…
AWS’ proprietary ARM-based Graviton chips have existed for many years now, but there are s…
The “Twelve-Factor App” methodology dictates that all app configuration is stored in envir…
Everyone knows what a memory leak is, and the prevalence of this bug is a testament to the…
Moving from purely client rendered React apps to using server rendering is great for perfo…
I previously wrote about my preferred ID format consisting of a small type prefix and a KS…
When you deploy a new frontend bundle it’s a good idea to purge your CDN to ensure you won…
As I’ve mentioned previously, I took a few shortcuts when I first built this website. Whil…
I’ve been in situations where I need to smoothly animate the height of an HTML element mor…
Enumerations are found in almost every programming language there is. They’re a language f…
For a while now I’ve been running a girls’ competitive programming group, and one of the m…
When I was about 10 years old, I was introduced to HTML and GameMaker (version 7!) while a…
Every piece of software takes user input in some capacity. Right now I’m typing this artic…
macOS has a bunch of great Emacs-derived keyboard shortcuts for editing text—⌃a, for insta…
⌃a
In order to help debug some email deliverability issues at work, we wanted to sign up for …