Thursday, June 2, 2022

Calling Thread.Abort and Thread.ResetAbort several times

In this short article I want to analyze a situation when we want to call Thread.Abort several times for a thread which uses Thread.ResetAbort to control cancellation process.

Monday, March 28, 2022

About trust in software systems

I recently heard about the following situation. The Ukrainian side has created some kind of video message. They claimed that the message was created on a certain date. But the Russian side stated that it was recorded in advance. So I started thinking if it was possible for ordinary people to check when the video was created.

Monday, February 28, 2022

How to use Telepresence in Windows

Recently I came across Telepresence. It allow you to quickly replace a deployment in your Kubernetes cluster with some application running on your machine. It means that all requests inside the cluster to the pods of this deployment will actually go to your developer machine. It allows you, for example, to debug your application in real environment. For other use cases please consult with the documentation.

Here I want to show how you can install and use it on your Windows machine.

Tuesday, November 16, 2021

How to use BenchmarkDotNet

If you want to measure the performance of your .NET code, you can use the BenchmarkDotNet NuGet package. Let's see what you can do with it.

Friday, November 12, 2021

Why do we need MediatR?

Recently I came across using the MediatR package in our source code. This interested me. Why should I use MediatR? What advantages can it give me? Here we'll discuss these topics.

Friday, October 1, 2021

How to use certificates in ASP.NET Core

Recently, the use of the HTTPS protocol for your Web resources is a mandatory requirement for all relatively large Web projects. This technology is based on so called certificates. Previously, you had to pay to get a certificate for your Web server. But now we have services like Let's Encrypt where you can get your certificate for free. This is why the price is no longer a reason not to use HTTPS.

In the simplest case, a certificate allows you to establish protected connection between client and server. But this is not all it is capable of. For example, I saw an online course on Pluralsight called Microservices Security. And there was one thing mentioned there, which is called Mutual Transport Layer Security. It not only allows client to make sure that it is interacting with the correct server, but also allows the server to authenticate the client.

This is why developers must know how to work with certificates. And it is for this reason that I decided to write this article. I want it to be a place where one can find basic knowledge about certificates. I don't think that experts can find something interesting here, but I hope that it will be useful for beginners and those who want to refresh their knowledge.

How to use dependency injection in any .NET application

 If you work with ASP.NET applications, you know that it uses dependency injection mechanism. It is very convenient in many cases. But you may want to use the same mechanism in other types of applications: console, desktop, ... Here I'll show you how you can do it.