Blog Posts
-
Mocking Interfaces in Go
August 18, 2024 Uber's gomock tool lets you easily mock out functionality from external libraries
-
Contract-First API Design
August 15, 2024 Comparing different approaches to modeling state and enforcing schemas across API boundaries
-
Building Neovim's first Gitlab Client
August 23, 2023 I've recently begun building the first open-source Gitlab client for Neovim. The plugin lets you review and manage merge requests directly within the editor. Here's how it works, what's next for the plugin, and what I've learned along the way
-
Migrating From Gastby to Astro
January 30, 2023 I recently migrated a simple blog site from Gatsby to Astro, and was glad I did. Here are my takeaways.
-
Debugging in Neovim
December 21, 2022 Debug your applications directly within Neovim using the Debug Adapter Protocol, or DAP.
-
Building A Powerful Neovim Configuration
December 7, 2022 Neovim is an unbelievably powerful tool, if you know how to use it. Here are some of my personal takeaways from using it as my primary editor for the past few years.
-
Real-Time Web Scraping with Firebase and Twilio
January 19, 2022 Firebase has a FAAS and database infrastructure that makes scraping websites a breeze.
-
Designing asynchronous microservices with RabbitMQ
September 29, 2021 RabbitMQ is an open-source message broker that can help you decouple your microservices and keep your application fault-tolerant and fast.
-
Optimizing Your Webpack Bundle
September 10, 2021 Here are some simple steps you can take to optimize your webpack bundle for a production environment.
-
Optimizing Docker images for production
August 22, 2021 Docker containers can get bloated very quickly. Put yours on a diet and keep your production build fast and secure.
-
Building a chat application with SocketIO
August 7, 2021 Websockets are a great way to breathe life into an otherwise stale application. Implement them easily with SocketIO, the defacto standard for NodeJS applications.
-
Protecting your production branch with CircleCI
July 19, 2021 Avoid merging unclean commits into your main branch by setting up a basic CI pipeline to test and lint your code.
-
Deploying a NodeJS API with Docker and Kubernetes
July 15, 2021 Ever wanted to deploy an application to production using Amazon's hosted Kubernetes services, EKS? This is for you!
-
Publishing your first Javascript CLI
July 13, 2021 Command line tools can dramatically speed up redundant tasks, letting you focus on the project at hand. Here's how to build one using Javascript.
-
Scraping data with Puppeteer and Docker
July 6, 2021 Configuring a web scraper with puppeteer can be tricky to run in production. This guide will show you how to bundle your scraper inside a Docker container.
-
Using Terraform with EC2 Servers and Docker
June 25, 2021 How to get an EC2 container up and running with Docker using Terraform.
-
Speeding up CircleCI Builds with Caching
June 23, 2021 Redownloading dependencies for every step in your CI/CD pipeline can be time consuming. You can dramatically speed up the build time of your application with caching, making your team more responsive to breaking changes and ultimately more productive. Here's how to do it.