The Case Against "Try This" Debugging

In many group debugging sessions I’ve joined, a major technique being deployed is something I call “Try This” debugging. In this post, I’d like to talk about this anti-pattern, and consider a better way. ...

June 26, 2023 · 4 min · Jake Worth

Absolute Imports in TypeScript and React: A Practical Guide

Absolute imports are an essential developer experience feature for me in any JavaScript application. In this post, I’ll explain what they are, how to use them, and why they matter. ...

May 2, 2023 · 3 min · Jake Worth

My Daily Programming Routine as a Senior Software Engineer

Over the past decade, I’ve settled into a daily programming routine that helps me stay productive. It centers on code review, moving tickets forward, finishing in-progress work, and documenting what I learn. Here’s the exact workflow I use. ...

April 10, 2023 · 5 min · Jake Worth

Variable Name Antipatterns Named and Explained

There are only two hard things in Computer Science: cache invalidation and naming things. – Phil Karlton Let’s talk about variable name antipatterns! ...

April 3, 2023 · 5 min · Jake Worth

Cold Water for Your Code Coverage

Code coverage, the percentage of your code covered by automated tests, is a metric associated with quality. In this post, I’d like to investigate this association. And pour some cold water on it. ...

March 28, 2023 · 4 min · Jake Worth

Does ChatGPT Mean Software Engineering Is Over?

Here’s an argument that’s gaining momentum in my field: AI will eliminate or greatly reduce the programming profession. ...

March 26, 2023 · 4 min · Jake Worth

One-Sentence Summaries of Popular Technology Books

Here are some one-sentence summaries of books that have helped me understand programming and technology. ...

March 21, 2023 · 3 min · Jake Worth

How to Run an Agile Retrospective for Leaders

Retrospectives are one of my favorite engineering team practices. In this post, I’ll explain why and how I run retros. ...

March 15, 2023 · 4 min · Jake Worth

Type Your TypeScript Library Functions

There’s been a lot of recent discussion in the TypeScript community about typing functions. These arguments tend to take binary positions: always type your functions, or never type them unless the compiler demands it. Which is the best option? ...

March 1, 2023 · 3 min · Jake Worth

The Power of CRUD Operations Explained with SQL

CRUD is an acronym that’s used a lot in web and mobile development. Frontend engineers in particular might wonder what it means and why we use it. In this post, I’ll explain CRUD using PostgreSQL, and talk about why it’s important. ...

January 12, 2023 · 2 min · Jake Worth