Zure Digest #3

Joni Moilanen | 26.03.2021
Reading time 5 min
Zure Digest is a collection of Azure and other development-related links, curated by the Azure Guild of the Zure.

Links don’t represent the values of Zure or our coding practices. They are intended to be thought-provoking or otherwise worth sharing.

Azure

  • Azure Defender for Storage powered by Microsoft threat intelligence (Hasan Abo-Shally)
    • Based on these capabilities, Azure Defender for Storage now alerts customers also upon the detection of malicious activities such as:
      • Upload of potential malware (using hash reputation analysis).
      • Phishing campaigns hosted on a storage account.
      • Access from suspicious IP addresses, such as TOR exit nodes.
  • Built-in backup management at scale with Backup center (Aruna Somendra)
    • We understand that protecting your data from increased ransomware attacks, adapting to increased scale with demand surges, managing costs more efficiently, and driving optimizations in overall management are top of mind for you. Azure Backup helps you achieve this by providing built-in capabilities to safeguard your data so that you can recover in the event of accidental deletion, corruption, or ransomware.
  • Architect and optimize your internet traffic with Azure routing preference (Mahesh Nayak)
    • Today, we are announcing the general availability of Azure routing preference, a new option for you to further architect and optimize your traffic delivery between your Azure resources and clients on the Internet.
  • Securing Microsoft Azure in 10 steps (Jussi Roine)
    • Microsoft Azure, with its numerous services and capabilities, is a significant platform. Depending on what a company might enable or employ from Azure, securing it might be trivial and challenging at the same time. I often consult with organizations of all sizes, and the inevitable question comes up usually during the first meeting: what about security? I decided to write this article as a starting point for anyone looking to ensure their Azure is secure enough.

ASP.NET

  • Avoid password reuse with Pwned Passwords and ASP.NET Core (Thomas Ardal)
    • Let’s face it. Password re-use is something that should be avoided. Breach after a breach is published and giant lists of users unhashed passwords available for hackers to exploit. In this post, I’ll show you how we are avoiding people to re-use pwned passwords on elmah.io in our ASP.NET Core web app.

C# & .NET

  • C# 10 — 3 Candidate Features That Could Make the Final Cut (Matthew MacDonald)
    • The ideas in the working set that we’re talking about are all under active consideration. We’d like to see them in C# 10, and with C#’s rapid pace of incremental improvement, the odds are good that they’re within reach.
  • Performance and Polish with NuGet 5.9 (Jon Douglas)
    • There are many important improvements in NuGet 5.9:
      • Manage solutions easier with Floating Versions Support.
      • Know where your packages come from with Content Hash & Source Information.
      • Quickly update your packages with Right Click -> Update….
      • Be even more productive with Visual Studio Package Manager Improvements.
      • See improved visuals with Polished Icons for NuGet.
  • Using C# 9 records as strongly-typed ids (Thomas Levesque)

Data

Messaging

  • Idempotent Receiver (Martin Fowler)
    • Clients send requests to servers but might not get a response. It’s impossible for clients to know if the response was lost or the server crashed before processing the request. To make sure that the request is processed, the client has to re-send the request. If the server had already processed the request and crashed after that servers will get duplicate requests from clients, when the client retries.

Methodologies and Productivity

  • Maximizing Developer Effectiveness (Tim Cochran)
    • What does being effective mean? As a developer, it is delivering the maximum value to your customers. It is being able to apply your energy and innovation in the best ways towards the company’s goals.
  • Choose Excitement over Fear  (Steve “ardalis” Smith)
    • There’s virtually no difference, physiologically, between the sensations and symptoms of fear and excitement. But there is a big difference in how we react based on these feelings.
  • CUPID the Backstory (Daniel Terhorst-North)
    • At a recent Extreme Tuesday Club (XTC) virtual meet-up, we were discussing whether the SOLID principles are outdated. A while ago I gave a tongue-in-cheek talk on the topic, so ahead of the meet-up one of the organizers asked what principles I would replace SOLID with since I disagreed with them. I have been thinking about this for some time and I proposed five of my own, which form the acronym CUPID.

UI/UX

  • CSS is awesome: A dark/light mode switch with preference detection in 15 lines of CSS  (Christian Heilmann)
    • I just love how far CSS has come in the last few years. With custom properties and media queries, you can achieve so much in just a few lines of code. For example, these 15 lines make sure that users of light mode in their operating systems get a black on a white document and those with a dark mode setting a white on the dark one
  • Ghost 4.0 Released  (Ben Moss)
    • Ghost 4.0 has just been released, and the host of new features is another giant leap forward for the popular blogging platform.