Rock Your Code: Code & App Performance for Microsoft.NET – 3rd Edition

I am announcing the 3rd edition of my book titled Rock Your Code: Code & App Performance for Microsoft .NET, now available on Amazon. I worked on this book for a big chunk of 2022 so I hope that you and your team will find it useful.

Rockin’ the Code World: Special Guest Shay Rojansky

Join me on Saturday, December 10th, 2022 at 10:00 PST on C# Corner for show #70 where my special guest will be Shay Rojansky, Principal Software Engineer at Microsoft. Don't miss this episode, you will want to hear what he has to share.

Rockin’ the Code World: Special Guest Stephen Toub

Join me on Saturday, October 22h, 2022 at 10:00 PST on C# Corner for show #68 where my very special guest will be Stephen Toub, Partner Software Engineer @ Microsoft. I have been trying to get Stephen on the show since it started so I hope that you will enjoy our pre-recorded episode (since I will be recovering from my India trip).

Collection Performance: Processing Collections with Parallel.For() and Parallel.ForEach()

Since .NET 4.0, under the System.Threading.Tasks namespace, processing of collections can be sped up by using Parallel.For() and Parallel.ForEach(). These methods operate with thread-local data that runs in parallel. Both are easy to use and come with different options. This article shows you how to use these methods along with benchmark results.

Collection Performance: Creating Immutable Sorted Collections

ImmutableSortedDictionary and ImmutableSortedSet are available as immutable sorted collections. Performance benchmarks reveal that ImmutableSortedSet outperforms ImmutableSortedDictionary in both scenarios. Using CreateRange() is more efficient than CreateBuilder() with foreach(). However, employing a List with the Sort() method proves to be the most efficient option.

Collection Performance: Sorting With LINQ

There are several ways to sort a collection in .NET and one of them is by using LINQ. Two main extension methods are part of LINQ that can be used to easily sort collections.

Coding Faster with dotNetTips.com Spargine 6:  August 2022 Release

I am pleased to announce the new release (v2022.6.8.9) of Spargine on August 1st, 2022, my open-source projects, and NuGet packages for .NET 6. I have added new classes, methods, benchmarks, and unit tests! I use these in all the projects I work on including many that are in production! I hope you will check them out and let me know what you would like to see added.

Speed Up Logging in .NET 6

In a recent article, I wrote and demonstrated how to speed up logging using LoggerMessage in .NET. Not long after I wrote that article, I learned of an even faster way to log using .NET 6. This article will show you how you can use this new way of logging and show the results of benchmark tests.

Coding Faster with dotNetTips Spargine 6: Validating Arguments Made Easy

For my work moving Spargine to .NET 6, I have completely rewritten the Spargine methods to validate method parameters. In this release, these methods have been changed to allow fluent validation.

Everything That Every .NET Developer Needs to Know About Disposable Types: Part 3 – Using Tools to Find Issues

This article series emphasizes the importance of understanding memory management and proper usage of the IDisposable interface in .NET code. Part 3 focuses on using various tools and Visual Studio extensions to identify and resolve memory and disposable-related issues in the codebase. While these tools can be helpful, manual analysis and adoption of memory profiler tools are also necessary to uncover all potential problems and improve the overall performance of .NET applications.