Blog Posts

MANY articles on a wide array of topics. You’ll find a lot of my newer content is going to my YouTube channel first, but I do still blog occasionally.

Working Effectively with GitHub Issues

Working Effectively with GitHub Issues

GitHub Issues offer a simpler approach to work item management than many other systems like Jira or Azure DevOps. Despite being lightweight, it can and is used to effectively track and prioritize work on thousands of …

Read More →
Quickly Trimming Video Files

Quickly Trimming Video Files

I do a fair bit of video editing as part of producing content for Pluralsight, clients, and YouTube. Recently I took on the task of editing 48 videos from the Stir Trek 2022 conference, each of which mostly just needed …

Read More →
Managing Up and Getting Ahead

Managing Up and Getting Ahead

If you're an employee, you probably have a boss, manager, supervisor, or similarly titled person to whom you report. Normally, you figure it's their job to " manage" you, and your job to do what they tell you. But it's …

Read More →
Domain Modeling - Encapsulation

Domain Modeling - Encapsulation

Domain models should encapsulate logic operations so that there is only one way to perform a given logical operation. That means avoiding exposing entity state and ensuring operations flow through specific methods. By …

Read More →
Domain Modeling - Anemic Models

Domain Modeling - Anemic Models

When building a domain model, proper object-oriented design and encapsulation should be applied as much as possible. Some teams choose to intentionally create anemic models with little encapsulation, which can lead to …

Read More →
Commands, Events, Versions, and Owners

Commands, Events, Versions, and Owners

Commands and events are two common types of messages used in distributed application architectures, including microservice designs. Sometimes message formats need to be updated. Which party in the communication is …

Read More →
Aggregate Responsibility Design

Aggregate Responsibility Design

In Domain-Driven Design, Aggregates are groups of objects that are persisted as a unit, with the root object being responsible for ensuring the validity of the entire aggregate. But how should this responsibility …

Read More →
Deploy More Often

Deploy More Often

If you're not already practicing continuous deployment, odds are your team and company would benefit from more frequent deployments.

Read More →
GitHub Diagrams with Mermaid

GitHub Diagrams with Mermaid

It's often useful to include diagrams in GitHub documentation and README files. GitHub now natively supports the Mermaid diagram syntax, and will render the diagrams inline when markdown files include the syntax are …

Read More →