Level up your PostgreSQL Skill with Lateral Joins

PostgreSQL’s lateral joins have a lot of uses. One of my favorites is the ability to reuse calculations in a query.

Before I discovered lateral joins, I would either copy calculations throughout the query or use subqueries. Neither of these approaches is ideal because they make the query much more difficult to read—and nearly impossible to update and maintain. Additionally, the query is inefficient, because it performs the calculations more than once. Read more on Level up your PostgreSQL Skill with Lateral Joins…

Avoid Careless Production Mistakes with Custom Scripts

In the wise words of @stahnma,

“Everybody has a testing environment. Some people are lucky enough to have a totally separate environment to run production in.”

Thankfully, the project I’m working on has multiple environments: production (the most recently-released version), staging (for pre-release testing), dev (for dev team use and testing), and multiple review apps (for feature validation). Read more on Avoid Careless Production Mistakes with Custom Scripts…

Building Your Own VS Code Extension for a Mac Touch Bar

Visual Studio Code is an excellent editor, with a ton of room for customization. As a recent convert from Emacs, I appreciate the ability to customize my editor through the form of extensions. Creating an extension is quite simple, if none that fit your needs are available in the marketplace. Read more on Building Your Own VS Code Extension for a Mac Touch Bar…

Improving Command Line Productivity with GNU Readline

I spend a lot of my day working on the command line, from file navigation to version control to remote work on servers over SSH, and anywhere in between. I’ve found that even small improvements to my workflow significantly add up over time to provide big productivity boosts.
Read more on Improving Command Line Productivity with GNU Readline…

My 5 Steps for Tackling Stress

Deadlines, miscommunication, conflict. Regardless of what our jobs, projects, or responsibilities may be, we all face these things during our careers. If not handled properly, the stress from these issues can expand to other areas of life, quickly becoming unmanageable.

That’s why it’s critical to learn how to manage stress. While I’m not an expert in the field, I have had some experience dealing with stress and have learned a few things along the way. I’d like to share some tips that I have found useful when dealing with stress in my life.
Read more on My 5 Steps for Tackling Stress…

A Brief Introduction to Audio and Video Encoding

Every day, I listen to music or watch videos on different platforms–the radio, phone, computer, and television. Until recently, I had never considered exactly how that media was delivered to me. I would venture to guess that many people have been, or are in, that situation themselves.

I’ve spent some time looking into exactly how these forms of media are created and distributed, and I wanted to share some of the things that I’ve learned. While the concepts themselves aren’t overly challenging, the terminology can be confusing and misused, so I’m going to review some of the common terms and expressions.
Read more on A Brief Introduction to Audio and Video Encoding…