Let me introduce you to my go-to code visualization and analysis tool for .NET: NDepend. NDepend lets me see dependencies, issues, and quality over time.
C# 6 introduced an operator that can prevent several issues. Let’s look at the nameof operator and how it improves maintainability while reducing defects.
Cyclomatic complexity and its cousin Cognitive Complexity are subjects every developer and tester should understand because bad code lets bugs multiply.
Learn to create a WPF Core app that can talk to a F# class library in .NET 3.0. This is part of a series on simulating squirrels with genetic algorithms.
Ever wondered about using F# Unit Testing to build a simulation of a squirrel’s world? No? Probably a good sign.
Caller Member Info attributes allow you to simplify your code by providing more information to individual methods without having to pass in explicit values. Let’s see how they work.
Causing a production bug is a right of passage for new developers. Let me tell you about the worst bug I’ve ever caused – and what you can do to not make my mistakes. As you might expect, it deals with threading.
Take a look at how new C# 8.0 language features available now in .NET Core 3 can help improve the quality of released software.
This is part two of a tutorial series on using F# to build a genetic algorithm in .NET Core. By the end of the article you’ll learn a lot more about the specifics of F# and we’ll have a player controlled squirrel that can move around the game world. By the […]
This is part 1 in a new tutorial series on creating a genetic algorithm in F# and .NET Core 3.0. This tutorial is focused on creating a new console application and learning some of the basics of F#. By the end of this tutorial you should be able to: Understand the […]