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 #55: .NET Core 3, F# 4.7, AWS joins .NET Foundation, .NET Foundation Maturity Model, Finding Service Boundaries

Here are the things that caught my eye recently in .NET.  I’d love to hear what you found most interesting this week.  Let me know in the comments or on Twitter. Announcing .NET Core 3.0 We’re excited to announce the release of .NET Core 3.0. It includes many improvements, including adding Windows Forms and WPF, adding new JSON APIs, support for ARM64 and improving performance across the board. C# 8 is also part of this release, which includes nullable, async streams, and more patterns. F# 4.7 is included, and focused on relaxing syntax and targeting .NET Standard 2.0. You can… Read More »Roundup #55: .NET Core 3, F# 4.7, AWS joins .NET Foundation, .NET Foundation Maturity Model, Finding Service Boundaries

Roundup #54: Service Provider Validation, Default Interface Members, BFF with ProxyKit, GC Perf

Here are the things that caught my eye recently in .NET.  I’d love to hear what you found most interesting this week.  Let me know in the comments or on Twitter. ASP.NET Core 3: Service provider validation In this post I describe the new “validate on build” feature that has been added to ASP.NET Core 3.0. This can be used to detect when your DI service provider is misconfigured. Specifically, the feature detects where you have a dependency on a service that you haven’t registered in the DI container. Link: https://andrewlock.net/new-in-asp-net-core-3-service-provider-validation/ Default Interface Members, What Are They Good For? The… Read More »Roundup #54: Service Provider Validation, Default Interface Members, BFF with ProxyKit, GC Perf

Detecting Sync over Async Code in ASP.NET Core

It’s pretty easy to write some bad async code, especially when you first start using async/await. Async/await is pretty viral in .NET, which means it generally goes all the way through the stack. This can be challenging if you are trying to add async/await to an existing app and you usually end up adding sync over async code. If you don’t use async/await correctly, and end up writing sync-over-async code, you’ll ultimately end up causing ThreadPool starvation. Sync over Async The term refers to making an async call but not awaiting it. Often time this is caused by calling .Wait()… Read More »Detecting Sync over Async Code in ASP.NET Core