Turbocharged: Writing High-performance C# and .NET code, by Steve Gordon
In this session, you'll learn how to write C# code which executes faster and allocates less. This session is packed with practical examples and demos of where the latest high-performance APIs and language features can be applied in your applications. During this session, we'll apply types such as Span and Memory to efficiently process data and parse strings. We'll examine System.IO.Pipelines, offering high-performance I/O, and we'll utilize ArrayPool to help reduce GC allocations. In .NET Core 3.0, we have new high-performance JSON APIs which we'll also add to our arsenal. Microsoft has made fantastic performance gains to the .NET Core framework – now it's time to apply them to your code! We'll begin by discussing when and why performance matters in your applications. You'll learn how to measure your code, and use a data-driven approach to focus your optimisations. These features can seem complicated, unapproachable, and difficult to apply. In this session, Steve introduces high-performance newcomers to the features, showing you how they work, where they can be applied, and how to measure performance improvements in your code. This talk is for developers, who like Steve, are ready to begin their journey towards writing faster .NET code, which allocates less. 0:00 - Introduction 1:21 - What we will cover 2:18 - Aspects of performance 11:46 - Benchmark.NET 16:36 - Span of T 29:35 - Memory of T 31:00 - Practical Example: Key Builder 36:50 - Array Pool 39:14 - Pipelines 41:52 - Practical Example: CSV File Parsing 46:19 - System.Text.Json 47:59 - Practical Example: JSON Parsing 55:03 - Business Buy-In 59:12 - Summary 1:01:41 - Q&A Speaker: Steve Gordon, Microsoft MVP, Pluralsight author and Senior .NET Engineer, Elastic Steve Gordon is a Pluralsight author, Microsoft MVP, and senior engineer based in the UK. He works for Elastic, maintaining their .NET client libraries. Steve is passionate about the community and all things .NET related, having worked with ASP.NET for over 16 years. Steve enjoys sharing his knowledge through his blog, in videos, and by presenting talks at user groups and conferences. Steve is excited to be a part of the .NET community and founded .NET South East, a .NET Meetup group based in Brighton. He enjoys contributing to and maintaining OSS projects. You can find Steve online at his blog www.stevejgordon.co.uk and on Twitter as @Steve Gordon. Twitter: / stevejgordon Blog: https://www.stevejgordon.co.uk

Going Real Time Using Azure CosmosDB and React, by Olena Borzenko

Turbocharged: Writing High-Performance C# and .NET Code - Steve Gordon - NDC Oslo 2024

High-performance code design patterns in C#. Konrad Kokosa .NET Fest 2019

Deep .NET: A Complete .NET Developer's Guide to Span with Stephen Toub and Scott Hanselman

Writing High-Performance C# and .NET Code - .Net Oxford - July 2019

Turbocharged: Writing High-Performance C# and .NET Code - Steve Gordon - NDC Porto 2024

100 Must Know Tips to Write Better C#

Debugging Tips and Tricks with JetBrains Rider, by Joseph Guadagno

How IEnumerable can kill your performance in C#

Back to Basics: Efficient Async and Await - Filip Ekberg - NDC Oslo 2023

Correcting Common Async/Await Mistakes in .NET 8 - Brandon Minnick - Copenhagen DevFest 2023

Background Services in ASP.NET Core and .NET - Steve Gordon - NDC London 2024

.Net Memory Allocations and Performance

Back to Basics: Efficient Async and Await - Filip Ekberg - NDC London 2022

The Top 10 Best New Features in C# Version 6 to 9, by Chris Klug

Correcting Common Async/Await Mistakes in .NET 8 - Brandon Minnick - NDC London 2024

Real-world examples on optimizing .NET performance - Stefán Jökull Sigurðarson - NDC Oslo 2023

Stackalloc and Spans

Performance tricks I learned from contributing to open source .NET packages - Daniel Marbach

