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, 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.
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?
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.
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
Dictionary. Here’s an example to show how they can break.
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.
|Equality in .NET||7|
|Killing the Utility Class||5|
|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|
|The Nature of Experience||24 Feb 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|
|Sharpen The Saw #23||11 Dec 2017|
|The curious case of the test that wouldn't run||09 Dec 2017|
|Sharpen The Saw #22||04 Dec 2017|
|Assembly binding redirects for the fail||02 Dec 2017|
|Sharpen The Saw #21||27 Nov 2017|