Writing

Sometimes I write things. Not often enough to call it a blog. You can read them here.

Beginner Vim Tips

Here are some helpful tips for getting started with Vim.

Searching Git Commits

I recently had to find a commit SHA from a git repo and I didn't remember when I made the commit, but I knew a keyword. Here's a quick tip on how to find that.

Useful Automation Scripts

There are a number of useful automation scripts I have set up over the years in my dotfiles. I'll share some of the ones I use on a daily basis to boost my productivity.

Delightful UX

I have been super impressed with the attention to detail in some of GitHub's products lately and wanted to share a little on that.

Method Overloading

Method overloading is a concept used in many programming languages, but it doesn't really exist in JavaScript. Let's explore what it is, why we might use it, and what it looks like in JavaScript.

Comparing Vue Computed Properties, Methods, and Watchers

When I was learning Vue, one of the more confusing aspects was trying to wrap my head around when to use computed properties, methods, or watchers. They have a lot of overlapping functionality, so let's jump in and see what they're all about.

Clearing an Interval in JavaScript

Sometimes you need to set an interval in JavaScript... and sometimes you need to make it stop. We'll go over the basics of how to do this and also cover clearing an interval in a Vue component.

Modern Javascript

In this post I'll cover some of the features of modern Javascript that I didn't really understand at first but now that I do, I find them super useful. Hopefully you'll take something away from this as well.

Using Alfred as a macOS Emoji picker

Alfred is a powerful application with vast capabilities for automation. In this post we'll explore how to make it dead simple to use it as a system-wide emoji picker in macOS.

A quick update

TL;DR - 2019 was busy and hard. I didn't write a post. I want to change that.

Remembering Mom

On August 2, my mom passed away after a 29 month battle with brain cancer. I had the privilege of sharing some words of remembrance at her funeral.

Useful Flexbox Tricks and Tips

Flexbox is a CSS spec that has been around for a few years now, but it continues to be one that people seem to struggle with. There are a few things that I think trip people up, and hopefully I can provide some resources and examples that will make it easier to understand.

Why Use Build Tools?

One question I get a lot from people who are just starting out with web development is along the lines of "why is there all this extra overhead for a build process?", and I remember when I was starting out and wondered the exact same thing.

Better Console Logs

This is just a quick tip to improve your experience with console logging with some alternative methods.

Designing in the Browser

I want to spend some time talking about why I design in the browser, and the merits of doing that. I am not a designer, however, I spend a lot of time working on UI, both for my job and for personal or side projects.

Life Is Unexpected

I never would have imagined what the last three days have brought. This was the beginning of one of the most impactful series of events in my life.

Keyboard Shortcuts

Almost anyone I work with can tell you how much I love keyboard shortcuts. Anytime I find myself doing something frequently, I check the settings or search to see if there's a keyboard shortcut for it.

CSS Conventions

As I've worked on more web sites and applications, I've come across and developed a number of standards for writing and using cleaner, more useful CSS.

Cancer Sucks

My wife is a pediatric nurse and sees a wide range of patients on her floor, but a large percentage of those patients are cancer kids. Today she lost another patient to cancer. That makes 5 or 6 so far this year. How unfair is that?

Color Picker Input with Validation

I recently had the opportunity to work on a really fun feature in an app where we built a color picker input component that needed validation for HEX codes.