Lightning Talk on AutoFixture at dotNetOxford Nov 2020
First public speaking engagement, thoughts on how it went and link to video
Posted on 24 November 2020
Integration Testing with ASP.NET Core 3.1 - Set Default Headers for All Clients
Set up a custom WebApplicationFactory to always add specific headers to the generated HttpClient
Posted on 20 October 2020
Becoming a Remote Worker - Month 6
6 months of remote working and how I have changed
Posted on 16 September 2020
Using Project Tye to Run .NET Worker Services
Looking at another .NET templated project type working with Project Tye. In this post we explore the .NET Worker Service template type.
Posted on 15 September 2020
Using Project Tye to Run Dependent Services for use with ASP.NET Core
Needed to spin up a dependency such as Redis locally but it's too involved using Docker or the alternatives aren't good enough? Let's explore how to harness the power of Docker but keeping the friction low.
Posted on 08 September 2020
Using Dotnet CLI To Setup ASP.NET CORE Solution And Run With Tye
Setting up a new solution purely on the command line and getting them to run with Project Tye
Posted on 01 September 2020
Nullable Maths Readability
Looking at the readability of performing a mathematical operation on a nullable integer and how it relates to readability and maintainability of the code base.
Posted on 25 August 2020
Autofixture Generate Specific Format Values By Extending AutoDataAttribute
Using custom specimen builders with AutoDataAttribute functionality to reduce the amount of repeated code in your Arrange phase of unit tests.
Posted on 18 August 2020
Autofixture Generate Specific Format with Specimen Builders
Writing a custom specimen builder to extend Autofixtures auto generation routines to abide by business requirements.
Posted on 11 August 2020
Returning Different Values From A Method Call
Ever needed to return different values from a method call without exposing an enumerator? Let's explore some options.
Posted on 28 July 2020
Why I love Resharper 2
Looking at another constructor parameter checking option when passing in an enum value.
Posted on 21 July 2020
Becoming a Remote Worker - Month 4
A reflection of the past 4 months of being a remote worker
Posted on 17 July 2020
Thoughts About Test Driven Development
Thoughts and musings about Test Driven Development, refactoring and how design principles can help with testing
Posted on 14 July 2020
Becoming a Remote Worker - Week 16
just get through it
Posted on 07 July 2020
Optional Dependencies with Autofac
Ever wanted to define a dependency as optional and only be loaded depending on consumption of your service?
Posted on 30 June 2020
Becoming a Remote Worker - Week 15
Up until now remote working had not had to cope with heat, that all changed this week!
Posted on 26 June 2020
Using Moq Callback to set values to drive tests
How to set a value on an object passed to a mock to drive conditional logic further in the system under test
Posted on 23 June 2020
Refactoring and Learning Challange
Taking up the challenge from a tweet I explain my thought process on improving some code which will hopefully help someone.
Posted on 23 June 2020
Becoming a Remote Worker - Week 14
In a blink of an eye week 14 has come and gone!
Posted on 22 June 2020
How To Assert Collection Count With FluentAssertions
Asserting numbers of items in a list or collection is vital to unit tests, but which to choose?
Posted on 16 June 2020
Becoming a Remote Worker - Week 13 Rollercoaster
Full on rollercoaster this week
Posted on 14 June 2020
Buy Me A Coffee
My first donations, feelings and what I purchased.
Posted on 09 June 2020
Becoming a Remote Worker - The New Normal (end of week 12)
The New Normal
Posted on 06 June 2020
Becoming a Remote Worker - End of Week 11
What is wrong with the world?
Posted on 31 May 2020
Becoming a Remote Worker - End of Week 10
When hay fever strikes!
Posted on 25 May 2020
Getting Microsoft Feature Management Working in a Console App
Looking a the new version of Microsoft's Feature Management nuget package and how to get it working in a console application without Azure!
Posted on 19 May 2020
Becoming a Remote Worker - End of Week 9
Bit late, but better late than never ...
Posted on 18 May 2020
Becoming a Remote Worker - End of Week 8
Not a good week
Posted on 11 May 2020
C#8 Using Declarations With FluentAssertions
Harnessing the power of the C# 8 using declarations to aid with unit test assert clarity
Posted on 05 May 2020
Becoming a Remote Worker - End of Week 7
Time has flown by and days have merged together.
Posted on 02 May 2020
Becoming a Remote Worker - End of Week 6
Back at work, resetting personal mental expectations and finding data from the past.
Posted on 25 April 2020
Becoming a Remote Worker - End of Week 5
We've had Easter and been on "holiday"
Posted on 19 April 2020
Becoming a Remote Worker - End of Week 4
Tough week but Happy Easter
Posted on 12 April 2020
Becoming a Remote Worker - End of Week 3
Thoughts and musings at the end of the 3rd week
Posted on 05 April 2020
Inject JsonSerializerOptions so Don't Repeat Yourself
How many times do you create a private options variable when using json serializer and end up with duplicate code? Let's take a look at one option to help resolve this.
Posted on 31 March 2020
Becoming a Remote Worker - End of Week 2
Looking back at the second week and how I have had to adjust.
Posted on 29 March 2020
Becoming a Remote Worker - End of Week 1
End of week 1; I've survived!
Posted on 20 March 2020
Becoming a Remote Worker - Leaving The Office
Leaving the office to become a remote worker; initial thoughts and feelings.
Posted on 16 March 2020
Becoming a Remote Worker - Preparation
As the potential for remote working is a possibility, the preparation for anything is king.
Posted on 13 March 2020
Mocking ILogger with Moq
Looking at how to verify calls to Ilogger based extension methods using Moq.
Posted on 06 February 2020
Why there is no such thing as Greenfield development
Thoughts and musings about what makes up Greenfield Development and if there is such a concept anymore.
Posted on 05 February 2020
Integration Testing with ASP.NET Core 3.1 - Swapping a Dependency with Moq
Investigating how to write integration tests while swapping out dependencies with mocked instances using Moq
Posted on 23 December 2019
Reduce Method Parameter Checking
How to make you method parameter checks not take up a chunk of the method body
Posted on 18 December 2019
Integration Testing with ASP.NET Core 3.1 - Remove the Boiler Plate
Writing integration tests for your application while keeping your tests as DRY as possible by removing the boiler plate code
Posted on 16 December 2019
Integration Testing with ASP.NET Core 3.1 - Swapping a dependency
Looking at how you can write integration tests for your application but swapping out a 3rd party dependency
Posted on 11 December 2019
Integration Testing with ASP.NET Core 3.1 - Testing Your Application
How to write an integration test to access your REST end point api with ASP.NET Core 3.1
Posted on 09 December 2019
Integration Testing with ASP.NET Core 3.1
How to write a basic integration test with ASP.NET Core 3.1
Posted on 05 December 2019
TryParse is your friend
Using the power of the framework to avoid reinventing the wheel
Posted on 06 November 2019
Multiple Ways to Register Your Dependencies with ASP.NET Core 3
Exploring the multiple ways you can register your service dependencies with the new IHost found in ASP.NET Core 3 (Preview).
Posted on 17 June 2019
Registering Services with DotNet Worker Project
How to register services and dependencies in the new dotnet core worker project
Posted on 15 June 2019
Beyond Basics - ASP.Net Core Using the Decorator Pattern
Refactoring to use the Decorator Design Pattern to help apply the Single Responsibility Principle.
Posted on 10 June 2019
Beyond Basics - ASP.Net Core Adding and Using Configuration
Adding strongly typed configuration settings and injected them through dependency injection.
Posted on 06 June 2019
Beyond Basics - ASP.Net Core Adding Caching
Starting the journey of going past the basics of beginner training resources to appy software development practices and design patterns.
Posted on 04 June 2019
Unit Testing - Are you asserting too much?
Are you asserting too much in your unit tests? Is this due to potential code smells? Let's discuss.
Posted on 21 May 2019
Resource Driven Messages in ASP.NET Core
Ever wanted to allow native country error messages from your ASP.NET Core api?
Posted on 03 December 2018
First Published Article
My first published article in DotNetCurry Nov-Dec 2018.
Posted on 21 November 2018
Playing with C# 7 - Deconstruct
Looking at how newer language features allow for extension of types to add Deconstruct functionality.
Posted on 23 October 2018
ASP.Net Core default route on startup
Started a new ASP.Net Core API application and want to default to a different route? Read on to find out how.
Posted on 18 October 2018
Where Should I Put My Logic?
Do you have logic in your constructors as well as duplicated through your class definitions. Explore the options to add consistency into your code.
Posted on 04 October 2018
Span<T> - byte to int conversions - Update
Updating the Span conversion examples with the updated API
Posted on 13 September 2018
Strategy Pattern with Full Generic Contraints
Implementing the strategy pattern with generics to improve consistency of code base.
Posted on 19 July 2018
ASP.NET Core Exploring Custom Middleware
Exploring creating and consuming custom middleware in ASP.NET core and it's configuration
Posted on 10 July 2018
Strategy pattern with enum constraints
Strategy pattern implementation options with enum generic constraints
Posted on 08 June 2018
ASP.NET Core and the Strategy Pattern Continued
Building on the previous post about implementing the strategy pattern in ASP.NET Core to harness SOLID design.
Posted on 06 June 2018
NDepend - Initial Thoughts
Initial thoughts on NDepend, mainly around installation and licencing.
Posted on 23 May 2018
Accessing FitbitAPI in dotnet core and Refit
Using the Refit Rest client library to access the Fitbit Web Api
Posted on 12 May 2018
Fitbit.NET ASP.NET Core Webhook Preview Released
Fitbit Subscription Webhook based on the new ASP.Net Core Webhooks library
Posted on 01 May 2018
Don't Let Redundancy Define You
Self reflecting thoughts on redundancy
Posted on 29 April 2018
ASP.NET Core 2.1 Preview on VSTS
Running a build on Visual Studio Team Services with ASP.NET Core 2.1 Preview SDK
Posted on 19 April 2018
ASP.NET Core WebHooks - Mini Series
Links for the ASP.NET Core WebHooks mini series
Posted on 07 April 2018
ASP.NET Core and the Strategy Pattern
Using ASP.NET Core Dependency Injection to wire up a strategy pattern implementation to harness SOLID design.
Posted on 03 April 2018
ASP.NET Core WebHooks - Running The Github Webhook Locally
Running the aspnetcore Github webhook locally.
Posted on 17 March 2018
Mocking the Clock
Reducing the coupling of code dependent on DateTimeOffset
Posted on 15 March 2018
ASP.NET Core WebHooks - Secret Values
Looking at the secret values and how they work to allow for the AzureAlertWebHook webhook to process.
Posted on 16 February 2018
ASP.NET Core WebHooks - Running the AzureAlertWebHook
Running the ASP.NET Core Webhooks project locally and debugging the AzureAlertWebHook end point.
Posted on 13 February 2018
ASP.NET Core WebHooks - Building repository locally
Looking at getting and building the ASP.NET Core Webhooks project on your development machine.
Posted on 11 February 2018
Should I use Nullable bool?
Posted on 30 January 2018
Are you registering IHttpContextAccessor correctly?
Posted on 23 January 2018
Why I love Resharper 1
Posted on 19 January 2018
Missing ClaimsPrincipal in ViewComponents
Posted on 18 January 2018
Refactoring Kata - 6 Year Code Review
Posted on 16 January 2018
When logic doesn't read well it can lead to confusion
Posted on 09 January 2018
Span<T> - byte to int conversions
Posted on 06 January 2018
Microsoft Arc Touch Bluetooth mouse and Surface Pro 2 not working
Posted on 13 December 2014
Asp.net MVC Output Caching During Development
Posted on 13 December 2014
Enums in C#; Doing More Than You Thought!
Posted on 22 July 2014
Feeling overwhelmed and like a phony Chill out!
Posted on 29 August 2013
Make your code readable by making it flow with Generics
Posted on 18 July 2013
Debugging WCF messages before serialization
Posted on 27 September 2012