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.
So you’re going to start fixing some of your technical debt? Great! Just remember the one cardinal rule: Don’t break the application. Think about it — when we get to take on technical debt the business paying an opportunity cost for us to refactor code instead of making new features or even […]
Technical debt: We all have it and every developer worth their salt wants to pay it down, but how do we actually manage this process? Implementing a Crop Rotation In my article on communicating technical debt I compared paying down technical debt to the importance of crop rotations in farming. If […]
Many developers feel that product management and executive leadership don’t “get it” when we talk about technical debt. At the same time, if you ask developers about factors vital to the long-term success of a project, paying down technical debt is high on the list. So, how can we communicate […]
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 […]
I have no idea how many different hobbyist software projects I’ve started and abandoned over the course of my life. Let’s just take an average guess and say I’ve worked on 3 side projects each year since 1987 when I started programming for fun. That’d put the number at 96 […]
With Microsoft’s official release of .NET Core 3 today, I want to give you my perspective on .NET and tell you how the platform continues to innovate solutions to modern problems. I’ve been using .NET since beta 2 of the framework back in 2001 and have seen a lot of change over the […]
Ever wish you could act on different types of variables — effectively switching by object type and taking different action depending on which class is present? Discriminated Unions from functional programming languages offer an answer to this. In this article I explore the good and bad of Discriminated Unions in C# and […]