A Re-Introduction to C# References
Reviewing what we need to know pre- and post- C# 7 features about the type system and references in particular, while correcting common misconceptions along ...
Reviewing what we need to know pre- and post- C# 7 features about the type system and references in particular, while correcting common misconceptions along ...
Micro-optimising has a bad reputation although I’d argue that knowledge of such things can help you write better code. We should also make the distinction cl...
Know Your Garbage Collection Options. An under-utilised setting that can offer substantial performance gains.
Garbage collection is so often at the root (excuse the pun) of many performance problems, very often because of misunderstanding, so please do set aside time...
Builds and debugging in Visual Studio - from novice to expert in one blog article
Async/await has been part of C# since C# 5.0 yet many developers have yet to explore how it works under the covers, which I would recommend for any syntactic...
Introduction
On a recent project I experienced first-hand, how the .NET MemoryCache class, when used with either absolute or sliding expiration, can produce some unpredic...
Another Problem with FileSystemWatcher.
A robust solution for FileSystemWatcher firing events multiple times.
NotifyFilters enumeration explained.
We had a business need for the actual print size of an image in millimetres.
In EF6, DbSet gained an additional protected internal constructor. So instead of creating lots of mocks, we mark the DbSet properties virtual, allowing FakeI...
Useful things you may have missed in 2021 Q2 from the .NET community.
Useful things you may have missed in 2021 Q1 from the .NET community.
Remote code execution vulnerability in .NET Core and effected versions of System.Text.Encodings.Web
Reviewing what we need to know pre- and post- C# 7 features about the type system and references in particular, while correcting common misconceptions along ...
Know Your Garbage Collection Options. An under-utilised setting that can offer substantial performance gains.
Introduction
On a recent project I experienced first-hand, how the .NET MemoryCache class, when used with either absolute or sliding expiration, can produce some unpredic...
Another Problem with FileSystemWatcher.
A robust solution for FileSystemWatcher firing events multiple times.
NotifyFilters enumeration explained.
We had a business need for the actual print size of an image in millimetres.
In EF6, DbSet gained an additional protected internal constructor. So instead of creating lots of mocks, we mark the DbSet properties virtual, allowing FakeI...
Another Problem with FileSystemWatcher.
A robust solution for FileSystemWatcher firing events multiple times.
NotifyFilters enumeration explained.
On a recent project I experienced first-hand, how the .NET MemoryCache class, when used with either absolute or sliding expiration, can produce some unpredic...
Another Problem with FileSystemWatcher.
A robust solution for FileSystemWatcher firing events multiple times.
.NET 6 introduces new LINQ method to count the number of elements in a sequence more efficiently.
.NET 6 introduces new LINQ overloads that allows us to specify default values more succinctly.
New to LINQ in .NET 6 - Easier to work with complex objects
.NET 6 introduces new LINQ method to count the number of elements in a sequence more efficiently.
.NET 6 introduces new LINQ overloads that allows us to specify default values more succinctly.
New to LINQ in .NET 6 - Easier to work with complex objects
I was invited to chat with the Packet Pushers folk on ‘OpenTelemetry – Getting From Visibility To Observability With Ben Hall’. Looks like I pushed a show th...
At its core, OpenTelemetry (OTel) is a vendor-neutral standard for telemetry. But it also provides a complete end-to-end implementation for generating, emitt...
The observability problem - Why is the system exhibiting this behaviour?
I was invited to chat with the Packet Pushers folk on ‘OpenTelemetry – Getting From Visibility To Observability With Ben Hall’. Looks like I pushed a show th...
At its core, OpenTelemetry (OTel) is a vendor-neutral standard for telemetry. But it also provides a complete end-to-end implementation for generating, emitt...
The observability problem - Why is the system exhibiting this behaviour?
Know Your Garbage Collection Options. An under-utilised setting that can offer substantial performance gains.
Garbage collection is so often at the root (excuse the pun) of many performance problems, very often because of misunderstanding, so please do set aside time...
A reminder to be cautious and consider the warning window that comes up for Visual Studio projects from external sources.
Making it that little bit easier to keep up with security patching.
In EF6, DbSet gained an additional protected internal constructor. So instead of creating lots of mocks, we mark the DbSet properties virtual, allowing FakeI...
In EF6, DbSet gained an additional protected internal constructor. So instead of creating lots of mocks, we mark the DbSet properties virtual, allowing FakeI...
In EF6, DbSet gained an additional protected internal constructor. So instead of creating lots of mocks, we mark the DbSet properties virtual, allowing FakeI...
In EF6, DbSet gained an additional protected internal constructor. So instead of creating lots of mocks, we mark the DbSet properties virtual, allowing FakeI...
A quick fix using session storage on the client.
A quick fix using session storage on the client.
A quick fix using session storage on the client.
A quick fix using session storage on the client.
A quick fix using session storage on the client.
Introduction
Async/await has been part of C# since C# 5.0 yet many developers have yet to explore how it works under the covers, which I would recommend for any syntactic...
Builds and debugging in Visual Studio - from novice to expert in one blog article
Builds and debugging in Visual Studio - from novice to expert in one blog article
Builds and debugging in Visual Studio - from novice to expert in one blog article
Micro-optimising has a bad reputation although I’d argue that knowledge of such things can help you write better code. We should also make the distinction cl...
Micro-optimising has a bad reputation although I’d argue that knowledge of such things can help you write better code. We should also make the distinction cl...
Reviewing what we need to know pre- and post- C# 7 features about the type system and references in particular, while correcting common misconceptions along ...
Reviewing what we need to know pre- and post- C# 7 features about the type system and references in particular, while correcting common misconceptions along ...
Reviewing what we need to know pre- and post- C# 7 features about the type system and references in particular, while correcting common misconceptions along ...
So very happy to have received my certificate for CodeProject MVP 2019 MVA Most Valuable Author Award
I get regular queries about decisions on .NET Core versions so I have shared a snapshot of the key points to help you make an informed decision here. Remembe...
Keeping your email private and out of GitHub commit history.
Keeping your email private and out of GitHub commit history.
Making it that little bit easier to keep up with security patching.
Making it that little bit easier to keep up with security patching.
A reminder to be cautious and consider the warning window that comes up for Visual Studio projects from external sources.
Remote code execution vulnerability in .NET Core and effected versions of System.Text.Encodings.Web
Reverse your approach to enforcing authentication on controllers, endpoints, actions and Razor Pages with global settings.
Reverse your approach to enforcing authentication on controllers, endpoints, actions and Razor Pages with global settings.
An alternative using WSL 2, where Docker Desktop is not available to you in Windows
An alternative using WSL 2, where Docker Desktop is not available to you in Windows
A 3-part series published on CodeProject that demonstrates how to construct a complete end-to-end GitOps workflow using Terraform plans, GitHub, GitHub Actio...
A 3-part series published on CodeProject that demonstrates how to construct a complete end-to-end GitOps workflow using Terraform plans, GitHub, GitHub Actio...
A 3-part series published on CodeProject that demonstrates how to construct a complete end-to-end GitOps workflow using Terraform plans, GitHub, GitHub Actio...
A 3-part series published on CodeProject that demonstrates how to construct a complete end-to-end GitOps workflow using Terraform plans, GitHub, GitHub Actio...
An interesting read about outsourcing and in-house capacity, relevant to us in IT.