Blog
Never Setup A Development Environment From Scratch Again
In this post I will walk you through how I organize my dotfiles and mobilize my development environment with a one-command installation script.
Essential Vim Movements
In this post I cover a few essential Vim movements that I use on a daily basis to traverse files at the speed of thought.
Setup Zsh As Your Default Shell
Switching from Bash to Zsh? Getting your terminal on board can be tricky. In this post, I'll show you how to setup Zsh as your default shell.
Getting Started With Vim - A Practical Guide
Vim is a powerful tool once you understand it. This post will guide you through the challenge of setting Vim up so you can be productive quickly.
I'm Leaving VSCode for Vim
It's been a long road, but I've finally decided to leave VSCode for Vim full time.
Manage Your Dotfiles Like a Superhero
Your dotfiles say a lot about you. In this post I explain how I setup my dotfiles for easy version control and future reuse.
The Next Iteration of the Web
Web 3.0, decentralization and the future of the Internet.
Subscribing Ghost Members From Your JAMStack Site
This post will explain how JAMStack sites using Ghost as a headless CMS can subscribe readers to an email list using Ghost Memberships.
Build a JAMStack Blog with NextJS and Ghost
Learn the fundamentals of JAMStack by building a blazing-fast NextJS blog that uses the Ghost publishing platform as a headless CMS.
How I Delete Files in WSL 2
I started developing on Windows Subsystem for Linux 2, and I wanted a safe way to use `rm` to delete files. Here's a solution that works.
Turn Your Hugo Website Into A Theme
Many moons ago I built my personal site using Hugo. I've decided to turn it into an official theme that can be used easily. Here's how I did it.
Mid-Year Update: 2020
I am having a spark of creativity as of light, and I can't bottle these moments so I must write them down.
This Site Is Now A Hugo Theme
A few people have inquired about the design of my website, so I decided to port it over to an official Hugo theme.
Perfect Systems
Goals draw out the best in us, but if we require a perfect system to get started, our feet will never leave the ground.
There Is Only Movement
My physical training practice has evolved over the last few years. As I experiment with new modalities, I have learned that everything begins and ends with movement.
Simplifying
Simplifying has become a major focus of mine in 2020. I self-identify as someone who overcomplicates things, but lately I'm able to catch myself in these moments.
Macro Patience, Micro Speed
Gary Vee's message, Macro Patience - Micro Speed, has resonated with me every since I heard it. In this post I explain what it means to me.
Laying out Current Goals
In this post I want to lay out some of the things I'm working towards in the coming months. Exciting times ahead!
Expecting Progress
Progress is not linear. This is the biggest lesson I've learned in the last few years. In this post I explain how to focus on process instead.
Puzzle Pieces
Learning a new skill is a puzzle, and you don't have all the pieces. How can you finish this puzzle without them?
Training and COVID-19
We're currently dealing a global pandemic that is forcing us to self-isolate. This sucks, but from a training perspective it doesn't. Here's why.
Pursuits
Setting out to accomplish a goal can be a rewarding and valuable experience for all of us. No matter the goal, you must forge your own path.
On Contributing to Open Source
Contributing to open source projects can be an intimidating experience for developers of all levels, but it can also be a rewarding one.
My Commit Workflow
In this post I want to share a simple git commit workflow I use in most JavaScript projects to keep my commits clean and safe.
Resolve Merge Conflicts in yarn.lock
Merge conflicts in your yarn.lock file can be a pain. In this post I'll describe a simple trick to make the process a lot easier.
On Prioritizing
We all have obligations that we're bound to. Commitments to uphold. How do you stay focused on what really matters?
Add Tags to Your Hugo Blog Using Taxonomies
Hugo's taxonomies give you the ability to define relationships between your content. In this post we'll explore taxonomies using a blog example.
Using Husky with Your Global Git Hooks
Husky is an awesome JavaScript tool that gives you the power to easily run pre-defined scripts as a git hook.
The React State Hook
Hooks are functions that expose certain features to function components. This post will explain the State Hook in-depth.
On React Hooks
React Hooks give certain features previously unavailable to function components such as state and lifecycle. Here are my initial thoughts.
What's New in React v16.6.0
React v16.6.0 has been released, which includes some long anticipated features. Let's dive in and talk about these new additions.
Create Anchored Headings in Hugo Using Shortcodes
Anchored headings are a useful feature in a blog that allows readers to jump to specific sections of the article or share a section explicitly.
Compound Components in React: Using the Context API
In the first post of this series we discussed the basics of compound components in React. Now let's combine them with React's Context API.
Compound Components in React: The Basics
Compound components are a fairly new technique that has become popular in the React community. In this post I will explain how to use them.
React State Management With Unstated
Unstated is a react state management library from @jamiebuilds. It leverages the power of React's Context API to keep state management simple.
Introducing Flexomatic
After a few weeks of work I just released the first version of flexomatic, a React component library. Here's what it's all about.
New Job in 2018
I'm excited to share that I've started a new job as a front-end engineer. Let me tell you all about it!
Using styled-components Without Template Literals
An undocumented pattern has emerged when using the styled-components library. In this post I will explain how it works and why it's useful.
Lessons Learned From Publishing a React Component to npm
I've been working on my first open source project. It's a grid system built with React components based on flexbox. Here's what I've learned.
2017 In Review
Now that 2018 is upon us, it's a great time to reflect on 2017.
Messing with the Web Animations API
The Web Animations API is an experimental technology that allows developers to take advantage of the browser animation engine.
On The Importance of Blogging as a Developer
This post outlines why I feel junior developers should think about sharing more of their experiences through blogging.
Hugo's Directory Structure Explained
This article will introduce you to the core principles of Hugo's directory structure, and will help you get started building websites quickly.
Rebasing in Git
Using the rebase command in git can be a difficult concept to understand. This post aims to make it clearer for beginners.