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.

Web API DTO Considerations

Web API DTO Considerations

When designing web APIs, it's important to think about how the data being passed to and from the endpoint will be structured. How important is reuse in these considerations, and how much reuse can you get away with …

Read More →
Guard Clauses and Exceptions or Validation?

Guard Clauses and Exceptions or Validation?

Guard Clauses provide an elegant way to ensure code inputs are valid, typically by throwing exceptions. Validation provides a solution to a similar problem, typically without the use of exceptions. When does it make …

Read More →
Why Use DateTimeOffset

Why Use DateTimeOffset

Using DateTime for entity properties and database fields is ubiquitous, but if you really care about the time portion of the value, it's often ambiguous. What time zone is the date in? Is it stored as UTC? From …

Read More →
DateTime as a Value Object

DateTime as a Value Object

When teaching DDD, I often use DateTime as a good example of a value object. This article details some of the lessons one can learn from this common.NET data structure.

Read More →
Make the Implicit Explicit

Make the Implicit Explicit

When practicing software architecture and design, one important consideration is how the rules of the system are modeled. Are the rules ad hoc and a matter of tribal knowledge of the developers who came before, or are …

Read More →
Clean Architecture with ASP.NET Core

Clean Architecture with ASP.NET Core

Clean Architecture is a way of structuring a solution such that dependencies and infrastructure concerns are kept separate from business logic and the domain model. It's frequently used with Domain-Driven Design and can …

Read More →