It's one of the paradoxes of blogging that most every blogger (including myself) is sharing what they know right now (let's quietly ignore those who blog purely for traffic and visibility). Since everyone is learning, this can result in poor or misleading information being shared just as much as good information. Keep this in mind as you read any blog - how experienced is the writer and how well do they really know what they're talking about.

I'm just as flawed as other bloggers, so you should feel encouraged to check my ideas for yourself. Keep the date in mind as well - in our fast moving field, even good ideas can become obsolete.

Sharpen The Saw #34

Monday, April 23 2018 sharpen-the-saw

In this issue from October 2017: Stronger encapsulation with entity printers; live unit testing in Visual Studio 2017; Code that lies; The dangers of skipping a EULA; The secret weapon for a great career; and why you shouldn’t use Git.

Read more »

How long is a simple fix?

Saturday, April 21 2018 professional

Imagine that you have a recurring problem in your production environment, one that occurs around once a week. The problem is fairly minor and affects only one user at a time. You can fix the underlying data issue pretty quickly with some custom scripts you wrote. What’s your threshold for fixing the problem permanently, instead of manually fixing it each time it happens?

Read more »

Sharpen The Saw #33

Monday, April 16 2018 sharpen-the-saw

In this issue from September 2017: Writing useful git commit messages; a NuGet feature for Visual Studio 2017; things to do before you commit; how to spot a phishing attack; weird commits in the Linux kernel; and a video on government mandated cryptographic insecurity.

Read more »

Types behaving badly

Saturday, April 14 2018 equality dotnet

At the opening of this series I wrote about how a correct implementation of equality is essential for the correct behaviour of many fundamental .NET types - including List, HashSet and Dictionary. Here’s an example to show how they can break.

Read more »

Implementing Value Equality

Saturday, April 07 2018 equality dotnet

Building on our implementation of entity equality, we are now in a position to implement value equality. This is more complex because it tends to have a greater number of factors to consider.

Read more »

Recent posts

Sharpen The Saw #29  12 Feb 2018
A Productivity Prompt for PowerShell  10 Feb 2018
Sharpen The Saw #28  05 Feb 2018
Prefer declarative method names  03 Feb 2018
Sharpen The Saw #27  29 Jan 2018
Using Premeditation  27 Jan 2018
Sharpen The Saw #26  22 Jan 2018
With Relocation  20 Jan 2018
Sharpen The Saw #25  15 Jan 2018
Using Consolidation  13 Jan 2018