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.
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.
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.
In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.
In this installment, we'll look at exception handling and error responses.
We've been building microservices here for a while, so I thought I'd share how we do it.
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.
In this article, I'll set up a basic Asp.Net Core microservice with NHibernate.
Earlier this year, I set out to build an IAM solution. In this article, I discuss my experience and findings in 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.
In this installment, we'll look at exception handling and error responses.
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.
We've been building microservices here for a while, so I thought I'd share how we do it.
Let's talk a look at aggregating code coverage results from multiple test projects into a single report for upload to Azure DevOps.
Let's take a look at how we can incorporate Snyk into our Azure Pipelines as part of Continuous Security during Continuous Integration.
Let's take a look at an approach to building, versioning, and delivering Nuget packages with Azure Pipelines.
Let's take a look at how we can incorporate Snyk into our Azure Pipelines as part of Continuous Security during Continuous Integration.
Let's take a look at an approach to building, versioning, and delivering Nuget packages with Azure Pipelines.
Kiro CLI doens't support C#/Roslyn LSP out of the box, but we can add ourselves.
Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.
Containers are a handy way to package your application. Let's take a look at using them for monoliths.
Let's take a look at using MongoDB in AspNet Core applications.
Rule of Modularity: Write simple parts connected by clean interfaces.
The dev containers for dotnet published by Microsoft do not have all the prerequisites for Rider or any other JetBrains IDE.
Earlier this year, I set out to build an IAM solution. In this article, I discuss my experience and findings in making it work.
Out of curiosity, I wanted to see what offered the best performance when inserting records: database generated or application generated ids.
In this article, I want to take a look at two misconceptions relating to the implementation of a lazy singleton 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) 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.
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.
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?
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.
I've been using JetBrains Rider for a bit. Here's my impressions on the popular IDE for dotnet.
Let's take a look at how constants work in C# and why using static readonly might be better some cases.
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.
Let's take a look at an approach to building, versioning, and delivering Nuget packages with Azure Pipelines.
Let's take a look at how we can incorporate Snyk into our Azure Pipelines as part of Continuous Security during Continuous Integration.
In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.
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.
In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.
In this installment, we'll look at exception handling and error responses.
We've been building microservices here for a while, so I thought I'd share how we do it.
In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.
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.
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.
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?
Earlier this year, I set out to build an IAM solution. In this article, I discuss my experience and findings in making it work.
In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.
A quick guide on installing Jekyll on Windows Subsystem for Linux (formally Bash on Windows) Ubuntu 16.04 on Windows 10.
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?
In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.
In this installment, we'll look at exception handling and error responses.
We've been building microservices here for a while, so I thought I'd share how we do it.
Let's take a look at using MongoDB in AspNet Core applications.
In this article, I'll set up a basic Asp.Net Core microservice with NHibernate.
The NHibernate Team has released 5.1 with support for .Net Core 2.0, ASP.Net Core 2.0 and .NetStandard 2.0.
In this installment, we'll look at exception handling and error responses.
We've been building microservices here for a while, so I thought I'd share how we do it.
In this installment, we'll look at exception handling and error responses.
In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.
We've been building microservices here for a while, so I thought I'd share how we do it.
Let's take a look at an approach to building, versioning, and delivering Nuget packages with Azure Pipelines.
Earlier this year, I set out to build an IAM solution. In this article, I discuss my experience and findings in making it work.
In this installment, we'll look at exception handling and error responses.
We've been building microservices here for a while, so I thought I'd share how we do it.
Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.
The dev containers for dotnet published by Microsoft do not have all the prerequisites for Rider or any other JetBrains IDE.
I've been using JetBrains Rider for a bit. Here's my impressions on the popular IDE for dotnet.
Out of curiosity, I wanted to see what offered the best performance when inserting records: database generated or application generated ids.
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...
Let's take a look at how we can incorporate Snyk into our Azure Pipelines as part of Continuous Security during Continuous Integration.
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.
I was getting a `NullReferenceException` when trying to use TestContainers inside a devcontainer.
A quick guide on installing Jekyll on Windows Subsystem for Linux (formally Bash on Windows) Ubuntu 16.04 on Windows 10.
In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.
A quick guide on installing Jekyll on Windows Subsystem for Linux (formally Bash on Windows) Ubuntu 16.04 on Windows 10.
In this installment, we'll look at exception handling and error responses.
We've been building microservices here for a while, so I thought I'd share how we do it.
A quick guide on installing Jekyll on Windows Subsystem for Linux (formally Bash on Windows) Ubuntu 16.04 on Windows 10.
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.
The NHibernate Team has released 5.1 with support for .Net Core 2.0, ASP.Net Core 2.0 and .NetStandard 2.0.
Dealing with TLS certificates for local development can be a pain. I recently discovered mkcert and .localhost TLD.
Rule of Modularity: Write simple parts connected by clean interfaces.
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.
Containers are a handy way to package your application. Let's take a look at using them for monoliths.
In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.
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.
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?
Containers are a handy way to package your application. Let's take a look at using them for monoliths.
In this article, I want to take a look at two misconceptions relating to the implementation of a lazy singleton in C#.
I was getting a `NullReferenceException` when trying to use TestContainers inside a devcontainer.
The dev containers for dotnet published by Microsoft do not have all the prerequisites for Rider or any other JetBrains IDE.
Containers are a handy way to package your application. Let's take a look at using them for monoliths.
Kiro CLI doens't support C#/Roslyn LSP out of the box, but we can add ourselves.
Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.
Containers are a handy way to package your application. Let's take a look at using them for monoliths.
Let's take a look at using MongoDB in AspNet Core applications.
Rule of Modularity: Write simple parts connected by clean interfaces.
The dev containers for dotnet published by Microsoft do not have all the prerequisites for Rider or any other JetBrains IDE.
Earlier this year, I set out to build an IAM solution. In this article, I discuss my experience and findings in making it work.
Out of curiosity, I wanted to see what offered the best performance when inserting records: database generated or application generated ids.
In this article, I want to take a look at two misconceptions relating to the implementation of a lazy singleton 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) 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.
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.
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?
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.
I've been using JetBrains Rider for a bit. Here's my impressions on the popular IDE for dotnet.
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.
Let's take a look at how constants work in C# and why using static readonly might be better some cases.
The new project system in the dotnet tooling can be used to build and test .Net Framework targets too.
Let's talk a look at aggregating code coverage results from multiple test projects into a single report for upload to Azure DevOps.
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.
In this article, We'll look at how to use new Microsoft.Extensions.* in a legacy WCF and ASP.Net Web Services (ASMX) applications.
The NHibernate Team has released 5.1 with support for .Net Core 2.0, ASP.Net Core 2.0 and .NetStandard 2.0.
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."
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.
Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.
Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.
Kiro CLI doens't support C#/Roslyn LSP out of the box, but we can add ourselves.
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."
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.
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.
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.
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?
Containers are a handy way to package your application. Let's take a look at using them for monoliths.
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.
The NHibernate Team has released 5.1 with support for .Net Core 2.0, ASP.Net Core 2.0 and .NetStandard 2.0.
Communication between services can be costly in more ways than one. Let's compare Rest/JSON and gRPC/Protobuf.
Dealing with TLS certificates for local development can be a pain. I recently discovered mkcert and .localhost TLD.
In this article, I want to take a look at two misconceptions relating to the implementation of a lazy singleton in C#.
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."
Rule of Modularity: Write simple parts connected by clean interfaces.
Rule of Simplicity: Design for simplicity; add complexity only where you must.
The Rule of Clarity: Clarity Is Better Than Cleverness
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.
Dealing with TLS certificates for local development can be a pain. I recently discovered mkcert and .localhost TLD.
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.
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.
The new project system in the dotnet tooling can be used to build and test .Net Framework targets too.
Let's talk a look at aggregating code coverage results from multiple test projects into a single report for upload to Azure DevOps.
Rule of Simplicity: Design for simplicity; add complexity only where you must.
The Rule of Clarity: Clarity Is Better Than Cleverness
Rule of Modularity: Write simple parts connected by clean interfaces.
In this article, I want to take a look at two misconceptions relating to the implementation of a lazy singleton in C#.
Dealing with TLS certificates for local development can be a pain. I recently discovered mkcert and .localhost TLD.