Thomas Woltjer3 Recommendations Using C# Primary Constructors EffectivelyToday, .NET 8 and C# 12 were officially released, with long term support. This release comes with a host of performance improvements, and…3 min read·Nov 14, 2023----
Thomas WoltjerImprove Your C# InterfacesSince I started using C# years ago, I have needed to learn how to design and use interfaces, and have learned some valuable lessons along…7 min read·Oct 3, 2023----
Thomas WoltjerWriting a Symbolic Execution C# Analyzer — Part 2: Understanding Symbolic ExecutionThis post is part of a 6-part series titled “Writing a Symbolic Execution C# Analyzer.” Part 1 explores the problem that this may solve…7 min read·Jun 5, 2023----
Thomas WoltjerWriting a Symbolic Execution C# Analyzer — Part 1The past couple months have been busy. Busier than usual.2 min read·May 15, 2023----
Thomas WoltjerC# Thread Safety and Avoiding Race ConditionsRecently, my team at work was faced with a race condition, in which an object was being disposed (“cleaned up”) and still being used on a…8 min read·Feb 10, 2023----
Thomas WoltjerUsing LINQ when performance countsI have been occasionally surprised at how flexible the C# programming language proves itself to be. It definitely reads and feels like a…6 min read·Jan 29, 2023----
Thomas WoltjerAn Introduction to Unit Testing, Integration Testing, and System TestingIn software development, it is important to test different aspects of the code to ensure that it is functioning correctly. One way to…8 min read·Jan 20, 2023----