Ciao! I’m Jason.

I'm a Cloud Solution Architect, Speaker, Teacher, Learner, Engineer, Craftsman, Whovian with his head in the Cloud.

's Picture
Test Driven Development (TDD) Simplified

Test Driven Development (TDD) Simplified

Test Driven Development (TDD) is a development/design approach in which we write our tests first, then implement the code to make these tests pass. These initial tests we write are not unit tests in the traditional sense. I'll repeat that... TDD tests are not unit tests.

Configuration Reload in .Net

Configuration Reload in .Net

The 12 Factor App guidelines suggest separating configuration from code as a best practice. More specifically, it should be deployed separately as well. We shouldn't have to redeploy the entire application in order to make a configuration change. Ideally, we don't want to have to restart our app either. This eliminates downtime when making configuration changes that don't otherwise require downtime such as timeout values, retry configuration, logging level, and distributed trace sampling rate.

Never use float for money

Never use float for money

The web is riddled with articles on this very topic, yet it bares repeating--never use float for money. I repeat--never never never never never use a floating point data type to represent monetary values or do financial math. So how do we handle money?

AES256 Encryption in C#

AES256 Encryption in C#

Every few years, I find myself having to write an AES256 encryption routine for a project. I always end up having to lookup the specifics, so I thought I would write it down this time.

Pragmatic Architecture. Pragmatic Microservices.

Pragmatic Architecture. Pragmatic Microservices.

It seems the big debate lately is monolith vs microservices. Academically, each at the opposite end of the spectrum--the massive, single deployable unit monolith on one end and the highly decomposed highly distributed microservices on the other. Each come with their pros and cons and serve teams better depending on team size, skill level, and goals.

My Experience with JetBrains Rider

My Experience with JetBrains Rider

I've been using JetBrains Rider for a bit. Here's my impressions on the popular IDE for dotnet.

A .Net Development Rig in Linux

A .Net Development Rig in Linux

After playing with Rider for a while, I decided to play around with Linux again to see what .Net development is like on Linux rig in 2020. So I fired up an Ubuntu 20.04 LTS VM and started installing.

Static Readonly instead of Const in C#

Static Readonly instead of Const in C#

Let's take a look at how constants work in C# and why using static readonly might be better some cases.

.Net Full Framework Tests with the New Project System

.Net Full Framework Tests with the New Project System

The new project system in the dotnet tooling can be used to build and test .Net Framework targets too.