Skip to content

Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.

Learn more about Software Architecture & Design.
Join thousands of developers getting weekly updates to increase your understanding of software architecture and design concepts.


Follow @CodeOpinion

Roundup #71: C# Source Generators, MsQuic, CoreBoy, Channels

Introducing C# Source Generators We’re pleased to introduce the first preview of Source Generators, a new C# compiler feature that lets C# developers inspect user code and generate new C# source files that can be added to a compilation. This is done via a new kind of component that we’re calling a Source Generator. Link: https://devblogs.microsoft.com/dotnet/introducing-c-source-generators/ MsQuic is Open Source Microsoft is open sourcing our QUIC library, MsQuic, on GitHub under an MIT license. MsQuic is a cross-platform, general-purpose library that implements the QUIC transport protocol. QUIC is being standardized by the Internet Engineering Task Force (IETF). MsQuic is a client and server solution optimized for… Read More »Roundup #71: C# Source Generators, MsQuic, CoreBoy, Channels

Migrating to ASP.NET Core

In the quest to migrate to .NET Core, the first step at the time (a couple of years ago) was to start migrating to ASP.NET Core from using Katana (Owin). This seemed like a logical first step as ASP.NET Core 2.x could run on .NET Framework as well as .NET Core. Ultimately this was a good first step in our migration. ASP.NET Core 3.x is only supported on .NET Core 3.0 because it targets netstandard2.1. .NET Framework only supports netstandard2.0 and will never support netstandard2.1 This makes it much more challenging to migrate because my recommendation is to get your… Read More »Migrating to ASP.NET Core

Roundup #70: Coyote, DetectDuplicates, YARP, .NET 5, Lambda?

Coyote: Making it easier for developers to build reliable asynchronous software For developers, writing bug-free software that doesn’t crash is getting difficult in an increasingly competitive world where software needs to ship before it becomes obsolete. This challenge is especially apparent with online cloud services, which are often dictated by aggressive shipping deadlines. Cloud services are distributed programs comprising multiple back-end systems that continuously exchange asynchronous signals while responding to incoming web requests. They are complex by nature, hard to get right, and require protection from failures that could jeopardize client data or halt key services. Link https://www.microsoft.com/en-us/research/blog/coyote-making-it-easier-for-developers-to-build-reliable-asynchronous-software/ DetectDuplicates A… Read More »Roundup #70: Coyote, DetectDuplicates, YARP, .NET 5, Lambda?