In today’s post: Why Code Katas are important and how do do them well; the new Microsoft Edge is available now and coming to a PC near you; Yori is CMD reimagined; improving email one message at a time; why some people are chronically tardy; Intel patches CSME only for researches to find it’s still broken; the consequences of undocumented features; improving your CLI Prompt; and a talk on Unit Testing.

Sharpen the Saw used to be an email newsletter of information I published for the professional development of software developers. Now it’s a series of blog posts. While targeted primarily at developers working with the Microsoft technology stack, content covers a wider range of topics.


Always a way to improve the code you write every day.

Code Katas

In order to get good at something, we need to practice - even (or, perhaps, especially) when it comes to writing good software. Unfortunately, simply writing code every day doesn’t always count - the pressures of deadlines and commitments get in the way. Software Katas are about taking specific time to practice writing code. In this post, Mark Clearwater writes about his experiences.

Read more:

On doing katas

Code Katas are a proven way to improve your proficiency as a developer - whether with a language you know, or one you’re learning. Some find them unhelpful, however - and Mark Seemann has some ideas about why this happens. The essence of his argument is that Code Katas are about solving the same (well understood) problem in a variety of different ways, forcing you to consider alternative solution techniques.

Read more:

Software & Updates

A new or upgraded tool can be a beautiful thing.

The new Microsoft Edge now available for download

In case you missed the January announcement, the new Edge browser (based on the same open-source Chromium rendering engine used by Google Chrome) is now generally available for use. For the impatient, it’s available by explicit download, but for everyone else, it will be progressively rolled out by Windows Update.


Download page:

Yori - The quiet little CMD replacement that you need to install NOW

It’s amazing the impact that little tools can have on your day to day productivity. Scott Hanselman recommends Yori for everyone who uses CMD on a day to day basis:

Yori feels very comfortable because it’s literally “CMD reimagined.”

Read more:

Being Professional

A great developer does more than just write great code.

Life Would Be Better If We Added This Line to Every Email

Writing effective emails is a skill - one that many people ignore. I’m a fan of but that only takes you so far. Leah Fessler has a simple suggestion for your email signature that might prove useful. Even if you don’t adopt that suggestion, here’s one idea from the article that you should absolutely do:

… write in the subject line what it is that this is about

Read more:

Beat the Clock: The Surprising Psychology Behind Being Perpetually Late

In a former role, I had a colleague who would consistently be 5-10 minutes late for every one-hour meeting. Raised to believe that you should treat people as you would like to be treated yourself, I always found this behaviour frustrating and borderline insulting.

There must be a million reasons why people run late over and over again.

Often, the culprits are well-meaning and the underlying causes hard to identify. But, sometimes, the explanation is straightforward: with my former colleague, it was a simple power play: if a meeting room full of professionals was waiting on her arrival, clearly she was the most important person in the room.

Read more:


Staying safe online and writing secure systems are both harder than we think.

Intel Patches High-Severity Flaw in Security Engine

Intel can’t seem to catch a break, with an ongoing series of security issues being identified with their processors. It’s gotten so bad that a good friend of mine is only considering AMD for a new high-end rig he’s building. In mid-February Intel patched a high severity vulnerability in CSME (their Converged Security and Management Engine).

Read more:

But it gets worse - just a few weeks later, an even worse CSME issue is disclosed, one that’s reportedly unpatchable and unfixable. One significant mitigating factor is that it requires physical access to the machine to exploit.

Read more:


Sometimes the answer is random.

The Opposite of Documentation is Superstition

If a product feature you develop is left undocumented, what happens to it? Either it goes unused, undiscovered and ignored; or people come across the feature accidentally. This isn’t a good situation. For you as a developer, the value you contributed to the product is dramatically depreciated due to underuse. For the end-user, the value of the product is significantly reduced because the feature is unpredictable and seems unreliable.

Read more:

How to make a pretty prompt in Windows Terminal

You can pack a lot of information into your prompt, regardless of the CLI you choose. In this post from Scott Hanselman, he walks you through a simple process to invigorate your prompts by filling them with useful information.

Read more:


Take some time to feed your mind.

The Clean Code Talks: Unit Testing

This talk might be over a decade old - but it’s a discussion on writing untestable code that’s worth the watch. There’s good advice here.

Audience: Developers
Length: 32m

Watch Now:


blog comments powered by Disqus
Next Post
Redux Middleware  14 Mar 2020
Prior Post
Always review code you copy  29 Feb 2020
Related Posts
Using Constructors  27 Feb 2023
An Inconvenient API  18 Feb 2023
Method Archetypes  11 Sep 2022
A bash puzzle, solved  02 Jul 2022
A bash puzzle  25 Jun 2022
Improve your troubleshooting by aggregating errors  11 Jun 2022
Improve your troubleshooting by wrapping errors  28 May 2022
Keep your promises  14 May 2022
When are you done?  18 Apr 2022
Fixing GitHub Authentication  28 Nov 2021
March 2020