In this edition: Monitoring for negative events (and why your application should have a blog); writing Python with Visual Studio; the effect of negative stereo types amid language snobbery; big data is just like nuclear waste; and WAT is going on with JavaScript.

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.

Techniques

Do you monitor negative events?

It’s much easier to support a system if it has good monitoring, a way to see what’s going on. Logging of errors and ordinary activity is vital, but do your systems monitor for negative events? That is, do they monitor for events that should happen, but are not?

Note that this isn’t about using external systems to watch what is going on - this is about the system being introspective, paying attention to its own behaviour and making useful decisions on what to do. Imagine, for example, a system using a payment gateway that does more than just log gateway failures - it keeps track and proactively reaches out for help if/when it notices the gateway is consistently failing particular kinds of payments.

“Hey boss. Payments using American Express have been failing for the last twenty minutes (five transactions affected). I’ve queued those transactions to retry in an hour (starting at 12:45pm PST) and will advise if they are still rejected. Payments with Visa and Mastercard have worked fine (forty three transactions processed).

Read more

Software and Updates

Python Tools for Visual Studio and Visual Studio Code

The PTVS package (Python Tools for Visual Studio) enhances Visual Studio with support for writing and debugging Python Code in a first class environment.

Read more

If you’re not working with Visual Studio, the open source Visual Studio Code also has first class support.

Being Professional

C is Manly, Python is for “n00bs”

This insightful article by Jean Yang talks about the nature of cliques in the programming field and how stereotypes about language use are used as an excuse to marginalise other developers. Of particularly concern is the way these stereotypes reinforce gender and cultural biases.

I’ve noticed that good developers can churn out reliable, elegant and well architected solutions in practically any language. The converse is true of poor developers - they can (and will) fail regardless of the platform in use. (Of course, making the right technology choice can make success more likely.)

Read more

Staying Secure

Haunted By Data

Bulk collection of data with no goal is the latest fad - it’s called Big Data and few are seriously considering the dangerous ramifications of Hoovering up all that data.

This article discusses the parallel between big data and nuclear waste.

Read more

Security specialist Bruce Schneier expresses a similar opinion in his recent editorial Data is a toxic asset

Read more

Video of the Week

Wat — Destroy All Software Talks

Just 4m 17s of insight into why computer programming is insane. A lightning talk by Gary Bernhardt from CodeMash 2012. Includes Batman. Really.

Watch now

Comments

blog comments powered by Disqus
Next Post
Factory Methods  18 Feb 2017
Prior Post
Queue Concatenation  11 Feb 2017
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
Archives
February 2017
2017