It seems like every web project inevitably has a development need to clone production data locally. In this post, I’ll walk through my latest shell scripts for backing up a remote Postgres database and loading it locally. I’ve written various scripts like this for various tech stacks over the years. This time around, it’s a […]
It’s a good idea to have exact version information accessible from within any app you’re building, and it’s easy to put it there with modern tools. Join me for a quick dive through the layers that exist between git and production in a conventional Dockerized React app. Why Show Version Information? There are a bunch […]
Storybook can be really useful for a team developing a web app. But like any software, it’s prone to rot when left untested. On my current project, I finally have a good way to test it. Here’s how!
So we’re all working remotely right now and participating in a lot of video chats. Unfortunately, laptop webcams are generally terrible.
Most of today’s popular CI services support running jobs in arbitrary Docker containers. In this post, I’ll describe why Docker is such a great fit for CI and how it can be made even better with custom images.
On my current project, we’re using LocalStack in lieu of AWS for development and test. In this post, I’ll walk through how we’ve set it up and what we can do with it.
The Android Emulator, unfortunately, doesn’t work in CircleCI’s conventional (Docker-based) Android build environment. With a little tinkering, though, we can make it work in another environment!
We’re building a hybrid mobile app out of an existing web app. The front end will run out of a webview, and we’re adapting the back end to run on-device in [React Native]. One of the challenges we encountered was how to share code between our existing [monorepo] built with [webpack] and our new React […]
Much of TypeScript’s flexibility comes from its support for generics. They’re great for building up reusable abstractions so that you can share the “how” across your codebase even as the “what” varies significantly. In this post, I’ll describe a limitation that recently got in my way, and how I worked around it.
The package.json file is the heart of any Node.js project, but it often goes entirely undocumented. In this post, I’ll review a few areas that are worth documenting, and how I like to do it.