Newsletters

Invoking Async Power

December 15, 2024

This issue explores async capabilities in WinForms with .NET 9, compares AsyncLocal and ThreadLocal, delves into exception handling, introduces C# 12's Experimental attribute, and addresses ASP.NET Core globalization challenges.

Lesser known CLR GC Handles

December 08, 2024

In this issue, explore the intricacies of CLR GC handles, migrate Azure Functions to .NET 8, discover performance boosts in .NET 9, learn about the new Testing.Platform, and rethink the default use of MediatR in projects.

C# 12.0: inline arrays

December 01, 2024

In this issue, explore C# 12.0's inline arrays for performance, discover patterns with ReadLine, learn secure password hashing, and dive into new LINQ methods and diverse approaches to Object Calisthenics.

What's new in C# 13

November 24, 2024

In this issue, explore the latest in C# 13 with new features like params collections and improved thread synchronization. Plus, dive into observability terminology, dynamic Htmx Islands, URL encoding in .NET 9, and distributed caching with Redis in .NET Aspire.

Announcing .NET 9

November 17, 2024

In this issue, we celebrate the launch of .NET 9 with performance and AI enhancements, explore C# 13's params collections, learn to monitor HTTP requests, and dive deep into resolving the hostfxr library.

Lock keyword gets an upgrade in .NET9

November 10, 2024

In this issue, explore the evolution of locking in C# with Marek, learn about mutation testing with Dawid, and discover early return patterns and DTO auto translators. Plus, delve into the benefits of C# Records.

A comparison of Rust’s borrow checker to the one in C#

November 03, 2024

In this issue, explore Rust's borrow checker vs. C#'s memory safety, master Action and Func delegates, implement health checks in ASP.NET Web API, identify loop antipatterns, and learn about concurrent collections in C#.

A Brief Introduction to the .NET Muxer

October 27, 2024

In this issue, explore the .NET muxer, dive into abstraction in software design, discover new LINQ methods in C# 13, and compare Ruby on Rails patterns with .NET. Plus, learn about enhancing the Result pattern in your code.

FrozenDictionary under the hood

October 20, 2024

In this issue, explore the speed of FrozenDictionary vs. Dictionary, dive into CSV parsing performance in C#, simplify code with LINQ's result pattern, build a wc tool in C#, and uncover undocumented .NET events.

Using Windows Error Reporting in .NET

October 13, 2024

In this issue, explore Windows Error Reporting in .NET, memory profiling in unit tests, and implementing OpenTelemetry in ASP.NET Core. Plus, learn about partition methods for collections in C# and migrating from EF Core 6 to 8.

10 Lessons I Learned from Using Aspire in Production

October 06, 2024

In this issue, discover key insights from Oleksii on using .NET Aspire in production, enhance your IP address tracking with Steve's efficient dictionary, and learn about avoiding identity obsession with Peter's DDD tips in EF Core.

Implementing Blocked Floyd-Warshall algorithm

September 29, 2024

In this issue, explore the Blocked Floyd-Warshall algorithm for all-pairs shortest paths, learn about disabling Activity recording in OpenTelemetry, and discover async streaming in ASP.NET Core. Plus, implement geo-distance searches and master conditional compilation symbols in C#.

Anatomy of the .NET dictionary

September 22, 2024

In this issue, dive into the intricacies of .NET dictionaries, explore efficient data structures in C#, and uncover the power of behavior-switching in Akka.NET. Plus, learn about TDD for password validation and enforcing code quality gates.

On over-engineering

September 15, 2024

In this issue, we explore the balance between over-engineering and simplicity in code, dive into .NET 9 performance enhancements, and learn about interspersing collections, the Floyd-Warshall algorithm, and lazy loading in EF Core.

Effective Integration Testing with a Database in .NET

September 08, 2024

In this issue, explore effective .NET integration testing with databases, learn how to work with tar files, validate pull requests, optimize dictionary lookups, and implement OpenID Connect with ASP.NET Core.

Understanding .NET stack traces

September 01, 2024

In this issue, explore the importance of .NET stack traces for debugging, learn about avoiding overflow exceptions in arithmetic operations, discover the removal of BinaryFormatter in .NET 9, and understand DTO auto translators and custom equality rules in HashSets.

Building pipelines with IAsyncEnumerable

August 25, 2024

In this issue, we dive into building data pipelines with IAsyncEnumerable in .NET, implementing audit trails in ASP.NET Core, and exploring cloud development with .NET Aspire, including hosting Keycloak containers. Plus, learn about the Unit of Work design pattern.

Journey through the .NET World

August 18, 2024

This issue dives into the .NET world, covering topics from the evolution of the .NET Framework to unit testing, logging improvements with source generators, and implementing custom role permissions in ASP.NET Core.

Type Unions

August 11, 2024

In this issue, explore Type Unions in software development, simplify .NET apps with Aspire, read .env files in C#, analyze middleware for ASP.NET MVC 5, and enhance top-level statements in .NET.

Azure Functions Best Practices

August 04, 2024

This issue explores crucial best practices for Azure Functions, unit testing in .NET, transitioning to Minimal APIs, async-await nuances, and a deep dive into a decade-old .NET bug fix. Enhance your development skills today.