1 Posts

.net

Return to top
C# DateTime, DateTimeOffset and the Cloud

C# DateTime, DateTimeOffset and the Cloud

In this article, we'll take a look at the challenges that arise when deploying applications that use System.DateTime to cloud providers like Azure and AWS.

1 Posts

12factor

Return to top
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.

1 Posts

ASMX

Return to top
Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.

2 Posts

ASP.Net

Return to top
Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

In this installment, we'll look at exception handling and error responses.

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

We've been building microservices here for a while, so I thought I'd share how we do it.

1 Posts

AWS

Return to top
C# DateTime, DateTimeOffset and the Cloud

C# DateTime, DateTimeOffset and the Cloud

In this article, we'll take a look at the challenges that arise when deploying applications that use System.DateTime to cloud providers like Azure and AWS.

1 Posts

AspNetCore

Return to top
Using NHibernate in Asp.Net Core

Using NHibernate in Asp.Net Core

In this article, I'll set up a basic Asp.Net Core microservice with NHibernate.

1 Posts

Authentication

Return to top
Tortis IAM - Making it work

Tortis IAM - Making it work

Earlier this year, I set out to build an IAM solution. In this article, I discuss my experience and findings in making it work.

1 Posts

Authorization

Return to top
Tortis IAM - Making it work

Tortis IAM - Making it work

Earlier this year, I set out to build an IAM solution. In this article, I discuss my experience and findings in making it work.

3 Posts

Azure

Return to top
Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

In this installment, we'll look at exception handling and error responses.

C# DateTime, DateTimeOffset and the Cloud

C# DateTime, DateTimeOffset and the Cloud

In this article, we'll take a look at the challenges that arise when deploying applications that use System.DateTime to cloud providers like Azure and AWS.

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

We've been building microservices here for a while, so I thought I'd share how we do it.

3 Posts

Azure DevOps

Return to top
Code Coverage for Multiple Projects in a Single Build using Dotnet Test and Coverlet

Code Coverage for Multiple Projects in a Single Build using Dotnet Test and Coverlet

Let's talk a look at aggregating code coverage results from multiple test projects into a single report for upload to Azure DevOps.

Incorporating Snyk into Continuous Integration with Azure Yaml Pipelines

Incorporating Snyk into Continuous Integration with Azure Yaml Pipelines

Let's take a look at how we can incorporate Snyk into our Azure Pipelines as part of Continuous Security during Continuous Integration.

Continuous Delivery of NuGet Packages with Azure Yaml Pipelines

Continuous Delivery of NuGet Packages with Azure Yaml Pipelines

Let's take a look at an approach to building, versioning, and delivering Nuget packages with Azure Pipelines.

2 Posts

Azure Pipelines

Return to top
Incorporating Snyk into Continuous Integration with Azure Yaml Pipelines

Incorporating Snyk into Continuous Integration with Azure Yaml Pipelines

Let's take a look at how we can incorporate Snyk into our Azure Pipelines as part of Continuous Security during Continuous Integration.

Continuous Delivery of NuGet Packages with Azure Yaml Pipelines

Continuous Delivery of NuGet Packages with Azure Yaml Pipelines

Let's take a look at an approach to building, versioning, and delivering Nuget packages with Azure Pipelines.

17 Posts

C#

Return to top
Using C#/Roslyn LSP with Kiro-CLI

Using C#/Roslyn LSP with Kiro-CLI

Kiro CLI doens't support C#/Roslyn LSP out of the box, but we can add ourselves.

JSON vs Protobuf Performance and Cost Comparison

JSON vs Protobuf Performance and Cost Comparison

Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.

Deploying Your Monolith as a Container

Deploying Your Monolith as a Container

Containers are a handy way to package your application. Let's take a look at using them for monoliths.

Using MongoDB in AspNetCore

Using MongoDB in AspNetCore

Let's take a look at using MongoDB in AspNet Core applications.

Rule of Modularity

Rule of Modularity

Rule of Modularity: Write simple parts connected by clean interfaces.

Preparing a Devcontainer for JetBrains Rider

Preparing a Devcontainer for JetBrains Rider

The dev containers for dotnet published by Microsoft do not have all the prerequisites for Rider or any other JetBrains IDE.

Tortis IAM - Making it work

Tortis IAM - Making it work

Earlier this year, I set out to build an IAM solution. In this article, I discuss my experience and findings in making it work.

Identity Performance in Microsoft SQL Server

Identity Performance in Microsoft SQL Server

Out of curiosity, I wanted to see what offered the best performance when inserting records: database generated or application generated ids.

Lazy Singletons in C# - Double Check and Lock Misconceptions

Lazy Singletons in C# - Double Check and Lock Misconceptions

In this article, I want to take a look at two misconceptions relating to the implementation of a lazy singleton in C#.

Yield in C#

Yield in C#

The yield keyword is used when the method or accessor is an enumerator. Using yield return returns one element at a time.

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.

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.

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.

C# DateTime, DateTimeOffset and the Cloud

C# DateTime, DateTimeOffset and the Cloud

In this article, we'll take a look at the challenges that arise when deploying applications that use System.DateTime to cloud providers like Azure and AWS.

1 Posts

CI/CD

Return to top
Continuous Delivery of NuGet Packages with Azure Yaml Pipelines

Continuous Delivery of NuGet Packages with Azure Yaml Pipelines

Let's take a look at an approach to building, versioning, and delivering Nuget packages with Azure Pipelines.

1 Posts

CI/CD/CS

Return to top
Incorporating Snyk into Continuous Integration with Azure Yaml Pipelines

Incorporating Snyk into Continuous Integration with Azure Yaml Pipelines

Let's take a look at how we can incorporate Snyk into our Azure Pipelines as part of Continuous Security during Continuous Integration.

1 Posts

Caching

Return to top
Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.

1 Posts

Cloud

Return to top
C# DateTime, DateTimeOffset and the Cloud

C# DateTime, DateTimeOffset and the Cloud

In this article, we'll take a look at the challenges that arise when deploying applications that use System.DateTime to cloud providers like Azure and AWS.

1 Posts

Configuration

Return to top
Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.

2 Posts

DDD

Return to top
Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

In this installment, we'll look at exception handling and error responses.

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

We've been building microservices here for a while, so I thought I'd share how we do it.

1 Posts

DI

Return to top
Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.

1 Posts

DateTime

Return to top
C# DateTime, DateTimeOffset and the Cloud

C# DateTime, DateTimeOffset and the Cloud

In this article, we'll take a look at the challenges that arise when deploying applications that use System.DateTime to cloud providers like Azure and AWS.

1 Posts

DateTimeOffset

Return to top
C# DateTime, DateTimeOffset and the Cloud

C# DateTime, DateTimeOffset and the Cloud

In this article, we'll take a look at the challenges that arise when deploying applications that use System.DateTime to cloud providers like Azure and AWS.

1 Posts

Event Driven Architecture

Return to top
Broadcasting Messages with Kafka

Broadcasting Messages with Kafka

Domain events are being published to Kafka. The UI needs to subscribe to those events. How do we get every instance of the BFF to receive the message?

1 Posts

IAM

Return to top
Tortis IAM - Making it work

Tortis IAM - Making it work

Earlier this year, I set out to build an IAM solution. In this article, I discuss my experience and findings in making it work.

1 Posts

IoC

Return to top
Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.

1 Posts

Jekyll

Return to top
Installing Jekyll on Windows Subsystem for Linux - Ubuntu 16.04

Installing Jekyll on Windows Subsystem for Linux - Ubuntu 16.04

A quick guide on installing Jekyll on Windows Subsystem for Linux (formally Bash on Windows) Ubuntu 16.04 on Windows 10.

1 Posts

Kafka

Return to top
Broadcasting Messages with Kafka

Broadcasting Messages with Kafka

Domain events are being published to Kafka. The UI needs to subscribe to those events. How do we get every instance of the BFF to receive the message?

1 Posts

Logging

Return to top
Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.

2 Posts

Microservices

Return to top
Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

In this installment, we'll look at exception handling and error responses.

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

We've been building microservices here for a while, so I thought I'd share how we do it.

1 Posts

MongoDB

Return to top
Using MongoDB in AspNetCore

Using MongoDB in AspNetCore

Let's take a look at using MongoDB in AspNet Core applications.

4 Posts

NHibernate

Return to top
Using NHibernate in Asp.Net Core

Using NHibernate in Asp.Net Core

In this article, I'll set up a basic Asp.Net Core microservice with NHibernate.

NHibernate Releases 5.1 with support for .Net Core and .NetStandard 2.0

NHibernate Releases 5.1 with support for .Net Core and .NetStandard 2.0

The NHibernate Team has released 5.1 with support for .Net Core 2.0, ASP.Net Core 2.0 and .NetStandard 2.0.

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

In this installment, we'll look at exception handling and error responses.

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

We've been building microservices here for a while, so I thought I'd share how we do it.

3 Posts

Ninject

Return to top
Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

In this installment, we'll look at exception handling and error responses.

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

We've been building microservices here for a while, so I thought I'd share how we do it.

1 Posts

Nuget

Return to top
Continuous Delivery of NuGet Packages with Azure Yaml Pipelines

Continuous Delivery of NuGet Packages with Azure Yaml Pipelines

Let's take a look at an approach to building, versioning, and delivering Nuget packages with Azure Pipelines.

1 Posts

OpenId Connect

Return to top
Tortis IAM - Making it work

Tortis IAM - Making it work

Earlier this year, I set out to build an IAM solution. In this article, I discuss my experience and findings in making it work.

2 Posts

Owin

Return to top
Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

In this installment, we'll look at exception handling and error responses.

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

We've been building microservices here for a while, so I thought I'd share how we do it.

1 Posts

Protobuf-Net

Return to top
JSON vs Protobuf Performance and Cost Comparison

JSON vs Protobuf Performance and Cost Comparison

Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.

2 Posts

Rider

Return to top
Preparing a Devcontainer for JetBrains Rider

Preparing a Devcontainer for JetBrains Rider

The dev containers for dotnet published by Microsoft do not have all the prerequisites for Rider or any other JetBrains IDE.

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.

2 Posts

SQL Server

Return to top
Identity Performance in Microsoft SQL Server

Identity Performance in Microsoft SQL Server

Out of curiosity, I wanted to see what offered the best performance when inserting records: database generated or application generated ids.

Unsigned Integers in SQL Server, Oracle, MySQL, Postgres, and DB2

Unsigned Integers in SQL Server, Oracle, MySQL, Postgres, and DB2

A recent project required the need to store an unsigned 64-bit integer in a SQL Server database table. BIGINT won't cut it because BIGINT has a max value of 9,223,372,036,854,775,807 (signed 64-bit integer), and the unsigned 64-bit integer's max value is 18,446,744,073,709,551,615. The solution...

1 Posts

Snyk

Return to top
Incorporating Snyk into Continuous Integration with Azure Yaml Pipelines

Incorporating Snyk into Continuous Integration with Azure Yaml Pipelines

Let's take a look at how we can incorporate Snyk into our Azure Pipelines as part of Continuous Security during Continuous Integration.

1 Posts

TDD

Return to top
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.

1 Posts

TestContainers

Return to top
Using TestContainers inside a Dev Container

Using TestContainers inside a Dev Container

I was getting a `NullReferenceException` when trying to use TestContainers inside a devcontainer.

1 Posts

Ubuntu

Return to top
Installing Jekyll on Windows Subsystem for Linux - Ubuntu 16.04

Installing Jekyll on Windows Subsystem for Linux - Ubuntu 16.04

A quick guide on installing Jekyll on Windows Subsystem for Linux (formally Bash on Windows) Ubuntu 16.04 on Windows 10.

1 Posts

WCF

Return to top
Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.

1 Posts

WSL

Return to top
Installing Jekyll on Windows Subsystem for Linux - Ubuntu 16.04

Installing Jekyll on Windows Subsystem for Linux - Ubuntu 16.04

A quick guide on installing Jekyll on Windows Subsystem for Linux (formally Bash on Windows) Ubuntu 16.04 on Windows 10.

2 Posts

WebAPI

Return to top
Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure -- Part 2: Error Responses and Exception

In this installment, we'll look at exception handling and error responses.

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

Building Microservices with Asp.Net WebAPI, Owin, Ninject, NHibernate, and Azure

We've been building microservices here for a while, so I thought I'd share how we do it.

1 Posts

Windows 10

Return to top
Installing Jekyll on Windows Subsystem for Linux - Ubuntu 16.04

Installing Jekyll on Windows Subsystem for Linux - Ubuntu 16.04

A quick guide on installing Jekyll on Windows Subsystem for Linux (formally Bash on Windows) Ubuntu 16.04 on Windows 10.

1 Posts

architecture

Return to top
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.

1 Posts

aspnet-core

Return to top
NHibernate Releases 5.1 with support for .Net Core and .NetStandard 2.0

NHibernate Releases 5.1 with support for .Net Core and .NetStandard 2.0

The NHibernate Team has released 5.1 with support for .Net Core 2.0, ASP.Net Core 2.0 and .NetStandard 2.0.

1 Posts

certificates

Return to top
Creating TLS Certificates for Local Development

Creating TLS Certificates for Local Development

Dealing with TLS certificates for local development can be a pain. I recently discovered mkcert and .localhost TLD.

1 Posts

component-based design

Return to top
Rule of Modularity

Rule of Modularity

Rule of Modularity: Write simple parts connected by clean interfaces.

1 Posts

configuration

Return to top
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.

1 Posts

containers

Return to top
Deploying Your Monolith as a Container

Deploying Your Monolith as a Container

Containers are a handy way to package your application. Let's take a look at using them for monoliths.

1 Posts

core

Return to top
Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.

1 Posts

cryptography

Return to top
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.

1 Posts

currency

Return to top
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?

1 Posts

deployment

Return to top
Deploying Your Monolith as a Container

Deploying Your Monolith as a Container

Containers are a handy way to package your application. Let's take a look at using them for monoliths.

1 Posts

design patterns

Return to top
Lazy Singletons in C# - Double Check and Lock Misconceptions

Lazy Singletons in C# - Double Check and Lock Misconceptions

In this article, I want to take a look at two misconceptions relating to the implementation of a lazy singleton in C#.

1 Posts

devcontainer

Return to top
Using TestContainers inside a Dev Container

Using TestContainers inside a Dev Container

I was getting a `NullReferenceException` when trying to use TestContainers inside a devcontainer.

1 Posts

devcontainers

Return to top
Preparing a Devcontainer for JetBrains Rider

Preparing a Devcontainer for JetBrains Rider

The dev containers for dotnet published by Microsoft do not have all the prerequisites for Rider or any other JetBrains IDE.

1 Posts

docker

Return to top
Deploying Your Monolith as a Container

Deploying Your Monolith as a Container

Containers are a handy way to package your application. Let's take a look at using them for monoliths.

21 Posts

dotnet

Return to top
Using C#/Roslyn LSP with Kiro-CLI

Using C#/Roslyn LSP with Kiro-CLI

Kiro CLI doens't support C#/Roslyn LSP out of the box, but we can add ourselves.

JSON vs Protobuf Performance and Cost Comparison

JSON vs Protobuf Performance and Cost Comparison

Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.

Deploying Your Monolith as a Container

Deploying Your Monolith as a Container

Containers are a handy way to package your application. Let's take a look at using them for monoliths.

Using MongoDB in AspNetCore

Using MongoDB in AspNetCore

Let's take a look at using MongoDB in AspNet Core applications.

Rule of Modularity

Rule of Modularity

Rule of Modularity: Write simple parts connected by clean interfaces.

Preparing a Devcontainer for JetBrains Rider

Preparing a Devcontainer for JetBrains Rider

The dev containers for dotnet published by Microsoft do not have all the prerequisites for Rider or any other JetBrains IDE.

Tortis IAM - Making it work

Tortis IAM - Making it work

Earlier this year, I set out to build an IAM solution. In this article, I discuss my experience and findings in making it work.

Identity Performance in Microsoft SQL Server

Identity Performance in Microsoft SQL Server

Out of curiosity, I wanted to see what offered the best performance when inserting records: database generated or application generated ids.

Lazy Singletons in C# - Double Check and Lock Misconceptions

Lazy Singletons in C# - Double Check and Lock Misconceptions

In this article, I want to take a look at two misconceptions relating to the implementation of a lazy singleton in C#.

Yield in C#

Yield in C#

The yield keyword is used when the method or accessor is an enumerator. Using yield return returns one element at a time.

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.

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.

Code Coverage for Multiple Projects in a Single Build using Dotnet Test and Coverlet

Code Coverage for Multiple Projects in a Single Build using Dotnet Test and Coverlet

Let's talk a look at aggregating code coverage results from multiple test projects into a single report for upload to Azure DevOps.

C# DateTime, DateTimeOffset and the Cloud

C# DateTime, DateTimeOffset and the Cloud

In this article, we'll take a look at the challenges that arise when deploying applications that use System.DateTime to cloud providers like Azure and AWS.

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

Adding New Microsoft Extensions to Legacy WCF and ASMX Web Services

In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.

1 Posts

dotnet-core

Return to top
NHibernate Releases 5.1 with support for .Net Core and .NetStandard 2.0

NHibernate Releases 5.1 with support for .Net Core and .NetStandard 2.0

The NHibernate Team has released 5.1 with support for .Net Core 2.0, ASP.Net Core 2.0 and .NetStandard 2.0.

1 Posts

drawio

Return to top
Permission Denied error saving in Draw.io on Linux

Permission Denied error saving in Draw.io on Linux

I installed the desktop version of Draw.io on my Ubuntu system using the Ubuntu Store (snap). When trying to save files to my Windows partition (or mounted device other than / (root), a received the following error... "Error opening directory. Permission denied."

1 Posts

encryption

Return to top
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.

1 Posts

gRPC

Return to top
JSON vs Protobuf Performance and Cost Comparison

JSON vs Protobuf Performance and Cost Comparison

Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.

1 Posts

json

Return to top
JSON vs Protobuf Performance and Cost Comparison

JSON vs Protobuf Performance and Cost Comparison

Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.

1 Posts

kiro

Return to top
Using C#/Roslyn LSP with Kiro-CLI

Using C#/Roslyn LSP with Kiro-CLI

Kiro CLI doens't support C#/Roslyn LSP out of the box, but we can add ourselves.

3 Posts

linux

Return to top
Permission Denied error saving in Draw.io on Linux

Permission Denied error saving in Draw.io on Linux

I installed the desktop version of Draw.io on my Ubuntu system using the Ubuntu Store (snap). When trying to save files to my Windows partition (or mounted device other than / (root), a received the following error... "Error opening directory. Permission denied."

Using Linux Fulltime on my Surface Book

Using Linux Fulltime on my Surface Book

As much as I do like Windows 11, I don't like how Windows and Office are now filled with ads and privacy really isn't front and center. Yes, you can turn a lot of data sharing off, but not all of it. A couple years ago I test-drove Linux as a development rig and was very impressed with the experience. So, I decided to take another look at Linux for daily use.

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.

1 Posts

microservices

Return to top
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.

1 Posts

money

Return to top
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?

2 Posts

monolith

Return to top
Deploying Your Monolith as a Container

Deploying Your Monolith as a Container

Containers are a handy way to package your application. Let's take a look at using them for monoliths.

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.

1 Posts

netstandard

Return to top
NHibernate Releases 5.1 with support for .Net Core and .NetStandard 2.0

NHibernate Releases 5.1 with support for .Net Core and .NetStandard 2.0

The NHibernate Team has released 5.1 with support for .Net Core 2.0, ASP.Net Core 2.0 and .NetStandard 2.0.

1 Posts

protobuf

Return to top
JSON vs Protobuf Performance and Cost Comparison

JSON vs Protobuf Performance and Cost Comparison

Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.

1 Posts

security

Return to top
Creating TLS Certificates for Local Development

Creating TLS Certificates for Local Development

Dealing with TLS certificates for local development can be a pain. I recently discovered mkcert and .localhost TLD.

1 Posts

singleton

Return to top
Lazy Singletons in C# - Double Check and Lock Misconceptions

Lazy Singletons in C# - Double Check and Lock Misconceptions

In this article, I want to take a look at two misconceptions relating to the implementation of a lazy singleton in C#.

1 Posts

snap

Return to top
Permission Denied error saving in Draw.io on Linux

Permission Denied error saving in Draw.io on Linux

I installed the desktop version of Draw.io on my Ubuntu system using the Ubuntu Store (snap). When trying to save files to my Windows partition (or mounted device other than / (root), a received the following error... "Error opening directory. Permission denied."

1 Posts

software design

Return to top
Rule of Modularity

Rule of Modularity

Rule of Modularity: Write simple parts connected by clean interfaces.

2 Posts

software engineering

Return to top
Rule of Simplicity

Rule of Simplicity

Rule of Simplicity: Design for simplicity; add complexity only where you must.

The Rule of Clarity

The Rule of Clarity

The Rule of Clarity: Clarity Is Better Than Cleverness

1 Posts

surface

Return to top
Using Linux Fulltime on my Surface Book

Using Linux Fulltime on my Surface Book

As much as I do like Windows 11, I don't like how Windows and Office are now filled with ads and privacy really isn't front and center. Yes, you can turn a lot of data sharing off, but not all of it. A couple years ago I test-drove Linux as a development rig and was very impressed with the experience. So, I decided to take another look at Linux for daily use.

1 Posts

tls

Return to top
Creating TLS Certificates for Local Development

Creating TLS Certificates for Local Development

Dealing with TLS certificates for local development can be a pain. I recently discovered mkcert and .localhost TLD.

2 Posts

ubuntu

Return to top
Using Linux Fulltime on my Surface Book

Using Linux Fulltime on my Surface Book

As much as I do like Windows 11, I don't like how Windows and Office are now filled with ads and privacy really isn't front and center. Yes, you can turn a lot of data sharing off, but not all of it. A couple years ago I test-drove Linux as a development rig and was very impressed with the experience. So, I decided to take another look at Linux for daily use.

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.

2 Posts

unit test

Return to top
.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.

Code Coverage for Multiple Projects in a Single Build using Dotnet Test and Coverlet

Code Coverage for Multiple Projects in a Single Build using Dotnet Test and Coverlet

Let's talk a look at aggregating code coverage results from multiple test projects into a single report for upload to Azure DevOps.

3 Posts

unix philosophy

Return to top
Rule of Simplicity

Rule of Simplicity

Rule of Simplicity: Design for simplicity; add complexity only where you must.

The Rule of Clarity

The Rule of Clarity

The Rule of Clarity: Clarity Is Better Than Cleverness

Rule of Modularity

Rule of Modularity

Rule of Modularity: Write simple parts connected by clean interfaces.

1 Posts

volatile

Return to top
Lazy Singletons in C# - Double Check and Lock Misconceptions

Lazy Singletons in C# - Double Check and Lock Misconceptions

In this article, I want to take a look at two misconceptions relating to the implementation of a lazy singleton in C#.

1 Posts

x509

Return to top
Creating TLS Certificates for Local Development

Creating TLS Certificates for Local Development

Dealing with TLS certificates for local development can be a pain. I recently discovered mkcert and .localhost TLD.