Assertion Roulette & Eager TestAssertion Roulette is a test smell where it can be difficult to determine which of a number of assertions in a single test is the one that…Oct 17, 20234Oct 17, 20234
Cyclomatic Complexity & C#/.NETCyclomatic complexity is a code metric (integer value 1 or more) used to measure how complex a function/method is.Apr 3, 202320Apr 3, 202320
The God Constant ClassAn anti-pattern I have observed in some .NET projects, though it could equally be relevant in any object-oriented environment, is placing…Mar 6, 202311Mar 6, 202311
Treating Warnings as Errors in .NET projectsCompiler warnings can be an indication of potential problems in your code project. For this reason it can be good practice to treat all…Feb 22, 20238Feb 22, 20238
.NET Niggles (2): When to use First or Single?This might seem remediable to more senior .NET developers however I wanted to address a mistake I often see more junior .NET developers…Sep 13, 202271Sep 13, 202271
.NET Niggles (1): Overuse of File.ExistsThis is a post aimed at the slightly more junior .NET developer audience.Sep 13, 202233Sep 13, 202233
Quickly setup StyleCop for new .NET solutionsStyleCop is an open source tool that can be used within .NET projects to define and enforce code style guidelines in an automated manner.Aug 1, 202221Aug 1, 202221
What not to unit testWriting unit tests is certainly a good software development practice, however there are a number of things we should not actually test when…Jul 25, 2022106Jul 25, 2022106
What’s a software developer’s job?The purpose of a software developer’s job is primarily to write code that:Jul 25, 2022Jul 25, 2022
Code comment anti-patternsThe following describes some of the various different types of bad code comments and anti-patterns as well as what we can do to improve…Jun 20, 20221632Jun 20, 20221632
ISO data code standards useful to software developersThe ISO defines standards that are internationally agreed by experts. However, for the scope of this article we will only examine different…Apr 12, 2022Apr 12, 2022
Cover bugs with tests using DDTDefect Driven Testing (DDT) is the process of covering discovered defects/bugs with tests. It has some similarities with Test Driven…Feb 15, 2022Feb 15, 2022
Things I’ve learned from writing a lot of unit testsThe following are a few observations I’ve learned from writing unit tests over the past decade and a half that you might not get from books…Feb 10, 202219Feb 10, 202219
Azure DevOps wikis driven from git repositoriesAzure DevOps wikis don’t have to be just created from within the Azure DevOps web UI. They can also be created by using existing markdown…Jan 19, 2022Jan 19, 2022
Why write unit tests?Automated unit testing as an approach as most developers know it today has been around for quite some time. In fact probably since the late…Dec 15, 20211Dec 15, 20211
.NET Web API SDK Best PracticesThe following are some code related best practices when creating SDKs for web based (HTTP) APIs. This list is not exhaustive and will…Oct 19, 20211Oct 19, 20211
.NET Web API SDK ArchitectureA Software Development Kit (SDK) is a set of development tools that help when creating applications for a particular platform. A web API…Sep 22, 2021Sep 22, 2021
Web API Design Anti-patterns (or how to give consumers a headache)When building a web based API there are many design aspects to consider including the endpoint format, the request and response structure…Sep 6, 20211Sep 6, 20211
Creating Custom Converters for .NET System.Text.JsonSystem.Text.Json is Microsoft’s equivalent package to the very popular Newtonsoft.Json for JSON serialization. System.Text.Json is often…Aug 18, 2021Aug 18, 2021
The Art of .NET Custom Exceptions.NET has a large number of built in exceptions. However, there maybe times when none of the built exceptions seem adequate for your…Aug 5, 20212Aug 5, 20212