Quantcast
Channel: Steve Gordon
Browsing all 170 articles
Browse latest View live

Additional HTTP, Sockets, DNS and TLS Telemetry in .NET 5

.NET has been steadily adding support for improved cross-platform diagnostics tracing for applications. In .NET Core 3.0, we saw the introduction of EventCounters, used for observing metric...

View Article


Playing with C#9 Top-level Programs, Records and Elasticsearch.NET

This post is for C# Advent Calendar 2020 organized by Matthew Groves. I recommend that you check out some of the other posts being published throughout December! In this post, I thought it was long...

View Article


How to Become a Better Developer by Asking Questions

It’s the beginning of a new year, so I wanted to open with a post that I’ve been planning to write for some time but never quite gotten around to creating. I recently started a new job, joining...

View Article

Dream Big: Three Months in at Elastic

I recently passed my probation period at Elastic which, of course, I’m remarkably pleased about! In this post, I wanted to attempt three things. Firstly, to encourage every developer out there to...

View Article

Image may be NSFW.
Clik here to view.

ASP.NET Core Dependency Injection: What is the IServiceCollection?

If you’ve built applications using ASP.NET Core then you’ve most likely used the built-in dependency injection container from Microsoft.Extensions.DependencyInjection. This package provides an...

View Article


Image may be NSFW.
Clik here to view.

ASP.NET Core Dependency Injection: What is the IServiceProvider and how is it...

If you’ve built applications using ASP.NET Core then you’ve most likely used the built-in dependency injection container from Microsoft.Extensions.DependencyInjection. This package provides an...

View Article

Getting Started with the Roslyn APIs: Writing Code with Code

For the last few weeks, I’ve been working on designing and developing a C# code generator. In this post, I want to explain some of the core concepts that I’ve learned so far and describe how you too,...

View Article

Image may be NSFW.
Clik here to view.

String Manipulation in C#: Best Practices

Last week my sixth Pluralsight course, “String Manipulation in C#: Best Practices” was released. This new course dives into creating, modifying, searching and parsing strings in .NET. Strings are one...

View Article


Image may be NSFW.
Clik here to view.

Getting Started with GitHub Actions for .NET Developers

In this post, I wanted to share the steps required to get started with GitHub Actions to automate your workflows directly inside GitHub. I’ve fairly recently been learning about using GitHub actions...

View Article


Using DateOnly and TimeOnly in .NET 6

In .NET 6 (preview 4), two long-awaited types have been introduced as part of the core library. DateOnly and TimeOnly allow developers to represent either the date or time portion of a DateTime. These...

View Article

Image may be NSFW.
Clik here to view.

How Does the StringBuilder Work in .NET? (Part 1)

Part 1: Why do we need a StringBuilder and when should we use one? After becoming proficient in .NET and C#, developers are likely to learn that they should use a StringBuilder to optimise string...

View Article

Image may be NSFW.
Clik here to view.

How Does the StringBuilder Work in .NET? (Part 2)

Part Two: Understanding the Overhead of a StringBuilder To continue exploring how the StringBuilder works, we’ll shift focus and study its logical design. Today, we’ll start by looking at how the type...

View Article

Image may be NSFW.
Clik here to view.

How Does the StringBuilder Work in .NET? (Part 3)

Part Three:  How Appending Works and the StringBuilder Expands So far in this series, we’ve learned when we should consider using StringBuilder in our code and learned about the memory overhead of...

View Article


Image may be NSFW.
Clik here to view.

Playing with System.Text.Json Source Generators

In my daily work, I’m becoming quite familiar with the ins and outs of using System.Text.Json. For those unfamiliar with this library, it was released along with .NET Core 3.0 as an in-the-box JSON...

View Article

Custom JSON Serialisation with System.Text.Json Converters

This post is my contribution to the .NET Advent calendar. Make sure you check out the other amazing posts on the lead up to Christmas! At the time of writing, I am deep into work on some significant...

View Article


Image may be NSFW.
Clik here to view.

Using the Roslyn APIs to Analyse a .NET Solution

In a previous post “Getting Started with the Roslyn APIs: Writing Code with Code“, I demonstrated a relatively simple way to generate code using the Roslyn APIs. In this post, I want to revisit the...

View Article

Image may be NSFW.
Clik here to view.

Creating, Inspecting and Decompiling the World’s (Nearly) Smallest C# Program

In this post, I thought it might be fun to create the world’s (nearly) shortest C# program and then deep dive into some of the fine details of what happens behind the scenes. This post is not intended...

View Article


Accessing State in System.Text.Json Custom Converters

In this post, I describe several techniques that can provide additional state to custom JsonConverters when using System.Text.Json. While building the new .NET client for Elasticsearch, one of the key...

View Article

Concurrent Hosted Service Start and Stop in .NET 8

In this post, I will describe a new feature of the Microsoft.Extensions.Hosting library coming in .NET 8 (available since preview 4) affecting hosted services. Let’s first begin with a brief recap of...

View Article

Introducing the new IHostedLifecycleService Interface in .NET 8

As regular readers will be aware, an area of .NET which I follow closely is Microsoft.Extensions.Hosting. I’ve already blogged about a change in .NET 8, where new concurrency options have been...

View Article
Browsing all 170 articles
Browse latest View live