Justin Hewlett
A Spectrum of Code Reuse
By: Justin Hewlett
When deciding how and when to reuse code, there are many tradeoffs to consider, each with varying degrees of consistency and indirection.
Data Boundaries
By: Justin Hewlett
Modern applications increasingly interface with lots of external systems — third-party APIs, databases, message queues, etc. In some cases, we may have control over the shape of the data being transmitted, but in other cases we may be at the mercy of something else. If we're not careful, implementation details like the shape of the data and the naming of the fields can permeate throughout our code.
Taming Dynamic Data in TypeScript
By: Justin Hewlett
Fully utilizing static types, with all the safety they provide, can be a bit tricky when dealing with dynamic data — like JSON from an API call. Let's look at how to do this in TypeScript.
Immutable Objects in C#
By: Justin Hewlett
You may have heard about the benefits of immutable objects, especially from the functional programming crowd. But creating and working with immutable objects in a language like C# can be tricky.