Operations | Monitoring | ITSM | DevOps | Cloud

Latest Posts

What's new in .NET 9: System.Text.Json improvements

.NET 9 is releasing in mid-November 2024. Like every.NET version, this introduces several important features and enhancements aligning developers with an ever-changing development ecosystem. In this blog series, I will explore critical updates in different areas of.NET. For this post, I will look through advancements in System.Text.Json.

What's new in .NET 9: Two new LINQ methods

.NET 9 is releasing in mid-November 2024. Like every.NET version, this introduces several important features and enhancements aligning developers with an ever-changing development ecosystem. In this blog series, I will explore critical updates in different areas of.NET. In this post, I'll look at two new LINQ methods: CountBy and AggregateBy.

Exploring C# 11 Features: What's New and How to Use It

C# has been a popular programming language for many years now. It continuously evolves to include new features and adopt recent trends. Its flexibility makes it a language ideal for many different domains and platforms like desktop applications, enterprise systems, web development, games, cross-platform, and native mobile applications. Back when Microsoft launched.NET 7, this also included a new version of C# with version number 11.

What's new in .NET 9: Cryptography improvements

.NET 9 is releasing in mid-November 2024. Like every.NET version, this introduces several important features and enhancements aligning developers with an ever-changing development ecosystem. In this blog series, I will explore critical updates in different areas of.NET. For today's post, I'll present some improvements to Cryptography.

Revisiting improved HTTP logging in ASP.NET Core 8

A few years ago, I had a play with HTTP logging added in ASP.NET Core 6. ASP.NET Core 8 introduced a set of additional configuration options that I believe are essential to make this feature usable. I will recap the details from the previous post below, but for more context, the first part of this series is here. In this post, I'll go through some of the changes introduced in HTTP logging since last. Before I jump into the improvements, let's recap how to set up HTTP logging.

Boosting Code Readability and Manageability in ASP.NET Core

In Software development, code readability transforms complexity into clarity. Martin Fowler said: Code should be readable and manageable so other developers can understand and work without additional fatigue. .NET has many ways to enhance readability and manageability. This post will explore C#'s extension methods by listing five use cases that I use on all of the ASP.NET Core projects I'm working on.

Caching Strategies in ASP.NET Core

Decreasing response time is one of the key measures towards improving the user experience of an application. Caching techniques and other practices can help your.NET application perform well with low effort. With caching, you can keep frequently accessed delay-prone data in a fast, accessible location. This can improve your application's performance remarkably without making a big effort. In this post, I'll introduce a few different ways of implementing caching in ASP.NET Core.

Understanding .NET stack traces - A guide for developers

Stack traces are important for debugging and understanding exceptions in.NET applications. They provide detailed information about the error and the call stack when an exception occurs, allowing us as developers to investigate why an error happened. In this post, I'll walk you through the basics of reading.NET stack traces and explore more advanced scenarios, including how multiple types of stack traces can be combined.

Lessons learned after migrating Azure Functions to Isolated Functions on .NET 8

The In-process model of running Azure Functions is being retired in favor of the Isolated model in two years. A lot of components on elmah.io are running on Azure Functions. To ensure we are running on the most modern and supported platform (also in two years), we have spent quite some time migrating from In-process to Isolated functions. In this post, I'll share both a checklist to help you do the same as well as some of the lessons learned we had during the migration.