In todays post: Enforcing the Liskov Substitution Principle, C# language versioning, reminders for better meetings, making money from 2FA, the Curta mechanical keyboard, and Crypto 101.
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.
The LSP — and why you might want to enforce it
Of the five SOLID principles, the Liskov Substitution Principle is perhaps the most obtuse. Many explanations of the LSP make it sound terribly complicated, partly because of the way it was originally formulated by Professor Barbara Liskov in her 1987 conference keynote. The explanation by James Ellis-Hones in this article is relatively good.
Update 4 November 2019: The link above seems to be lacking in content, here’s an alternative link.
Software & Updates
A new or upgraded tool can be a beautiful thing.
An update to C# versions and C# tooling
As the .NET ecosystem evolves and the C# language starts iterating much faster than Visual Studio, it’s time for some changes to the way that Visual Studio projects target C#. In particular, there’s a need to be able to target the latest release version of the language without also targeting any pre-release versions you might have available. In this post, the .NET team show how to do this.
A great developer does more than just write great code.
How a few simple reminders inspire better meetings
Regardless of the meeting culture at your workplace, I think we can all agree that a badly run meeting can be a complete waste of time. Here are five tips from the folks behind Trello that can help you run better meetings.
Staying safe online and writing secure systems are both harder than we think.
Making money by abusing phone-based 2FA
Proving that carefully thinking through the positive cases is not enough, here’s a security researcher who worked out how to slowly siphon cash from Facebook, Microsoft, and Google by using two factor authentication.
Sometimes the answer is random.
Before the days of handheld electronic calculators, there were mechanical calculators of various kinds. One of the most intriguing is the Curta, a hand held mechanical calculator invented by Curt Herzstark. Despite production ceasing in 1972, these little marvels are still sought after.
Take some time to feed your mind.
At PyCon 2013, Laurens Van Houtven gave an introduction to modern cryptography. That presentation is worth watching - and it’s now been turned into a free book that suitable as an introduction for beginners and a refresher for the more experienced developer.
Length: 45 minutes