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.
Monday, May 21 2018 sharpen-the-saw
In this issue from October 2017: the ideal length of a function is easier to decide than you think; the next major version of C# is bringing some long overdue changes; six approaches to programming that will change the way you think; recovering access to a PC when it has fallen off the domain and you don’t know the admin password; ten of the worst features of C#, as selected by Eric Lippert; and the Myth of the Genius Programmer.
Saturday, May 19 2018 smart-code
Long ago, before storing things in the cloud was commonplace or economic, I used an online mirroring tool to replicate all our family photos between my desktop PC and my wife’s netbook. This was both effective and painful - here’s why.
Saturday, May 12 2018 professional
One of the most useful precepts that I use to guide my development is this: when something goes wrong, make sure you fix it twice. This is especially important when the problem impacts on a production environment, but it’s also relevant for staging, testing, and development environments.
Saturday, May 05 2018 professional
In our last discussion we talked about the cost of leaving a minor bug in place, versus the cost of fixing it properly. We discovered that the fix might involve half the time investment of leaving the bug in place.
Monday, April 30 2018 sharpen-the-saw
In this issue from October 2017: Great code produces beautiful errors; expression bodied members get more powerful in C# 7; why some like to measure lines of code even though it’s a poor metric; password guidance for the modern era; thinking about where your time goes on social media; and Larry Wall opines on programming languages you should know.
|Equality in .NET||7|
|Killing the Utility Class||5|
|A simple fix takes longer than you think||28 Apr 2018|
|Sharpen The Saw #34||23 Apr 2018|
|How long is a simple fix?||21 Apr 2018|
|Sharpen The Saw #33||16 Apr 2018|
|Types behaving badly||14 Apr 2018|
|Implementing Value Equality||07 Apr 2018|
|Sharpen The Saw #32||02 Apr 2018|
|Implementing Entity Equality||31 Mar 2018|
|Sharpen The Saw #31||26 Mar 2018|
|Equality and GetHashCode||24 Mar 2018|
|Equality has Symmetry||17 Mar 2018|
|Types of Equality||10 Mar 2018|
|Why is Equality important in .NET?||03 Mar 2018|
|Sharpen The Saw #30||19 Feb 2018|
|A Tale of Minification||17 Feb 2018|
|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|
|Using Semantic Types||06 Jan 2018|
|Sharpen The Saw #24||01 Jan 2018|
|Using Extension Methods||30 Dec 2017|
|Handling command line parameters||23 Dec 2017|
|Defining command line parameters||16 Dec 2017|