In this edition: When to use Dependency Injection; Unit testing made better with Fluent Assertions; 10 habits to adopt in 2016; Forcing passwords considered harmful; and a video on SOLID deconstruction. (For those keeping count, there was no #8.)

Sharpen the Saw is a somewhat delayed repost of a (mostly) weekly 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.


When to use a Dependency Injection Container

Mark Seemann literally wrote the book on Dependency Injection in .NET and his regular blog posts are well worth reading.

Mark’s recent post When to use a DI Container brings a balanced and nuanced viewpoint to the discussion.

Read now.

Software and Updates

Fluent Assertions - Unit Testing made Better

Unit testing has entered the mainstream and is now generally reguarded as a key technique for the delivery of reliable software.

The default mechanisms included in tools like xUnit sometimes leave room for improvement.

Enter Fluent Assertions, a library that focuses purely on allowing you to more naturally - and more readably - assert the required conditions.

Check out the Home page, the Source code and use the Nuget package.

Being Professional

10 Habits To Adopt Now To Be Better At Your Job In 2016

An interesting post from FastCompany talking about how to be more awesome this year.

  • Get Enough Sleep
  • Become The Go-To Ideas Person
  • Cross Everything Off Of Your To-Do List Every Day
  • Be The Person Everyone Admires
  • Reach All Of Your Goals
  • Ask More Questions
  • Be The Most Liked Person In The Office
  • Keep Your Cool No Matter How Unsure You Are
  • Always See The Glass As Half Full
  • Finally Get Your Desk Organized

Be sure to read the article to find out what these actually mean and for links to more information.

Read now.

Staying Secure

Forcing users to change their passwords may do more harm than good

We’re all familiar with the common advice to change our passwords on a regular basis. Some organisations mandate a password change monthly, others quarterly, some weekly and some annually.

The key goal of this is to ensure that any compromised credentials are only useful for a limited time, reducing the window of opportunity for mischief.

Unfortunately, recent research has verified something that many of us already knew - that some users subvert this goal in the name of convenience. If a black hat finds out that my password is myVerySecretPhrase1603, changing that password next month to myVerySecretPhrase1604 doesn’t increase security much, if at all.

Read the ZDNet Article and the FTC blog post.

Video of the Week

SOLID Deconstruction

Kevlin Henney, noted author and speaker, gave this talk at NDC London talking about the SOLID principles and how they are frequently misapprehended by developers. By drilling down into the motivations behind the principles, this is a talk that every serious developer should watch.

Watch Now.


blog comments powered by Disqus
Next Post
Don't work too hard  30 Jul 2016
Prior Post
When (not) to use Var  16 Jul 2016
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
July 2016