In this episode from July 2016: Building a good build system; productivity improvements for Visual Studio 2015; how layoff decisions are made; geek advice for our parents; literate programming; and asynchronous programming in C#.

Sharpen the Saw is a somewhat delayed repost of a semi-regular newsletter of information I publish for the professional development of software developers. While targeted primarily at developers working with the Microsoft technology stack, content will cover a wider range of topics.

To subscribe, send me an email and I’ll put you on the list. Membership is moderated.


13 Things That Make a Good Build System

An interesting post by Aneel Lakhani discusses improvements made when they replaced their Java-centric build system with something new.

Read more

Software and Updates

Improved Productivity with new Version Control Features in Visual Studio 2015

Every update for Visual Studio includes more than just the expected collection of bug fixes. Unlike the service packs of yesteryear, these updates always include new features and improvements as well.

With Visual Studio 2015 Update 3, the support for version control integration within the IDE has improved - and they have even more in store for the future.

Read more

Being Professional

The Layoff List

I’m not sure I entirely agree with Keith Gregory’s thinking about how layoff decisions are made, but his blog post makes for thought-provoking reading.

Like many in our industry, I’ve been through my fair share of redundancy rounds, as both survivor and victim. I would suggest that they never seem to be well handled.

Read more

Staying Secure

What geeks need to tell our parents about shopping online safely and securely

Staying secure online used to be simple. This was because the web was new, most people are good and because the attacks were simple and sloppy.

This straight-talking guide from technologist Scott Hanselman is written in plain English and is something you should consider sharing with your friends and family. Perhaps, even worth sharing with that one relative whose mouth keeps writing cheques that far outpace the available skills.

Read more


Literate Programming

The idea of literate programming has been around for many years.

Initially put forward by famous computer scientist Donald Knuth, literate programming is the interesting idea that computers and humans need to read source code in different ways and that we should optimize for the humans, not the computers.

A literate program is written serially, as a linear discussion of the program requirements with prose (definition) and code (implementation) interspersed. One tool, a tangler is used to generate documentation from this master document; another, a weaver is used to generate the actual program.

Read more

Read more

Video of the Week

I’ll Get Back to You: Task, Await, and Asynchronous Methods in C#

The async and await keywords introduced with C# 5 have the potential to fundamentally change the way we develop software because they let us deal with asynchrony in a straightforward way.

In this video from NDC London, Jeremy Clark investigates what these keywords do and how their use can help you write software that is more responsive and more efficient.

Watch now


blog comments powered by Disqus
Next Post
The day my build broke  04 Nov 2017
Prior Post
NuGet and .NET Core  28 Oct 2017
Related Posts
Browsers and WSL  31 Mar 2024
Factory methods and functions  05 Mar 2023
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
October 2017