You're Media Illiterate, And It's Hurting The Codebase
Software leadership keeps falling hook, line, and sinker for media hype around AI. Will basic media literacy help?
Welcome to my website! This is my personal software engineering blog. I write about Go, Typescript, React, Vue, Javascript, Docker, Kubernetes, and lots of other interesting technologies.
Software leadership keeps falling hook, line, and sinker for media hype around AI. Will basic media literacy help?
Some of my favorite tidbits from the past year of working with Go.
Don't believe what you've heard about repetition. Why repeating yourself in code is often better than the alternative.
Technical interviews require soft skills too! Here are a few things that I'll do in a technical round to give myself the best shot at succcess
Charm's BubbleTea library integrates seamlessly with Cobra and Viper to build powerful command line tooling for developers.
Uber's gomock tool lets you easily mock out functionality from external libraries
Comparing different approaches to modeling state and enforcing schemas across API boundaries
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
I recently migrated a simple blog site from Gatsby to Astro, and was glad I did. Here are my takeaways.
Debug your applications directly within Neovim using the Debug Adapter Protocol, or DAP.
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.
Firebase has a FAAS and database infrastructure that makes scraping websites a breeze.
RabbitMQ is an open-source message broker that can help you decouple your microservices and keep your application fault-tolerant and fast.
Here are some simple steps you can take to optimize your webpack bundle for a production environment.
Docker containers can get bloated very quickly. Put yours on a diet and keep your production build fast and secure.
Websockets are a great way to breathe life into an otherwise stale application. Implement them easily with SocketIO, the defacto standard for NodeJS applications.
Avoid merging unclean commits into your main branch by setting up a basic CI pipeline to test and lint your code.
Ever wanted to deploy an application to production using Amazon's hosted Kubernetes services, EKS? This is for you!
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.
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.
How to get an EC2 container up and running with Docker using Terraform.
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.