12 October 2021

86 links ยท Tuesday

ASP.NET Community Standup - Exploring the ABP web app framework

ABP Framework is a complete infrastructure to create modern web applications by following the software development best practices and conventions. Join ABP team member Halil İbrahim Kalkan to learn how you can use ABP in your ASP.NET Core projects. Community …

Canonicalization Attacks Against MACs and Signatures

Canonicalization Attacks occur when a protocol that feeds data into a hash function used in a Message Authentication Code (MAC) or Digital Signature calculation fails to ensure some property that&#…

Working around expired Root Certificates

Should clients care about when a Root Certificate expires? That's a bit of an odd question, and the first time I asked myself this question, the answer was a resounding 'yes, of course'! On further inspection though, it seems like there could be a case to make…

Why Is Equity Compensation Common in Tech?

Equity is often a significant element of compensation in the technology industry. It has a long history in Silicon Valley: companies dating back to the 1950’...

1Password Refugee’s Guide to KeePass

Introduction Passwords are the gateway to our digital identities. I have been relying on 1Password to manage my passwords in local vaults for a few years. But as you may know from the recent news, …

A Tale Of Two Optimisations

A couple of months ago I wrote a toy program called whitespacer. Ever since, I’ve had this gnawing feeling that I could have done it better; that it could have been written in a more performant manner.

To Catch a Hacker in My Home Lab

Today I wanted to write a blog post to answer the questions to the Noabar scenario located here: A little background on what Noabar is, this is a Windows machine in my home lab that I attacked to c…

Announcing .NET MAUI Preview 9

.NET Multi-platform App UI (MAUI) Preview 9 is available today with .NET 6 RC2 and in the preview channel of Visual Studio 2022 Preview 5. While much of the work in this preview is focused on completing and stabilizing the 50+ controls and layouts,

Rethinking GIS

Sambo sivam, jagame thandiram. The deregulation of Indian geospatial data sector may have opened opportunities for some leeway in India’s st...

How Livewire works (a deep dive)

<p>The experience of using Livewire seems magical. It’s as if your front-end HTML can call your PHP code and everything just works.</p> <p>A...

Why I host my blog on Cloudflare Pages

My initial goal was to write a post comparing two major hosting offerings for a static tech blog at zero cost. Turns out, there’s an abundance of «Github Pages vs Cloudflare Pages» posts on the web. So the premise shifted to why do I pick Cloudflare Pages. Goo…

Rockin’ The Code World with dotNetDave – Special Guest: Chris Voisey

Join me live on Saturday, August 21st, 2021 at 10:00 PST on C# Corner Live for season 2, show #34 where I will interview Chris Voisey, Principal Solution Engineer with OverOps.

The New JSON Serializer In .NET Core 3

The release of .NET Core 3 today includes a brand new serializer for JavaScript Object Notation (JSON) under the System.Text.Json namespace.

Rockin’ The Code World with dotNetDave – Special Guest: Joost van Schaik

Join me live on Saturday, October 9nd, 2021 at 10:00 PST on C# Corner Live for season 2, show #39 where I will interview Joost van Schaik, Senior Mixed Reality Software Architect and a Microsoft MV…

Collection Performance: Looping Over a Collection

There are four main ways to loop through a collection by using for(), foreach(), do() and while(). Let’s see which one of these methods are the most performant.

Self Diagnosing Deployments with Oakton and Lamar

So here’s the deal, sometimes, somehow you deploy a new version of a system into a testing, staging, or production environment and it doesn’t work. Shocking and sometimes distressing wh…

Rockin’ The Code World with dotNetDave – Special Guest: Allen O’Neill

Join me live on Saturday, April 3rd, 2021 at 10:00 PST on C# Corner for season 2, show #20 where I will interview Allen O’Neill, CTO, The DataWorks. I’m really excited for this show sin…

Rockin’ The Code World with dotNetDave – The Agile Show

Join me live on Saturday, October 16th, 2021 at 10:00 PST on C# Corner Live show #40 where the show will have it’s very first panel (that includes a certified Scrum Master) show all about Agi…

New Code Rules – Conference Sessions Must Include What Devs Need To Learn

In show #28 of Rockin’ the Code World with dotNetDave I am discussing the lack of session about code quality, performance and architecture. Watch and let me know your comments below or Tweet …

Collection Performance: Creating Collections with Capacity & AddRange()

Using List is perfectly fine when creating a collection when the number of items is not known beforehand. If the number of items is known, or even a close estimate, it could be more performant sett…

The Adventures of Inspector Cody: An Introduction

These are the adventures of Inspector Cody who is one of only five certified Super Coders in the world. He is the guardian of code quality and software engineers across the land and the leader of D…

Learn C# with CSharpFritz: The AMA Show

Join Fritz for a stream where the focus is on YOU. We're answering some of your questions from the last few streams that needed a little more time to explore...

Scribe

To view a Medium post simply replace medium.com with scribe.rip

How I use Polywork to overcome impostor syndrome

Polywork is a new social media platform that I’ve been using to track my recent achievements, both big and small, and to tackle my ongoing impostor syndrome.

CURIA - Documents

Language of document : ECLI:EU:C:2021:811

Mapping .NET Timestamps to PostgreSQL

Npgsql 6.0 contains some significant changes to how timestamps are mapped between .NET and PostgreSQL - most applications will need to react to this (although a compatibility flag exists). This post gives the context for these changes, going over the timestamp…

handtracking.io

Sorry, your browser doesn't support embedded videos.

The efficiency of Microsoft.

TL, DR: If you have MFA enabled on your Microsoft account, this automatically adds your phone number as a sign-in alias, supplementing an…

Let's Encrypt Root Expiration - Post-Mortem

Well, the Internet Apocalypse came and went! Due to the recent expiration of the Let's Encrypt intermediate and root certificates, I saw more widespread issues than I was expecting, but on different devices and for different reasons than I thought. Let's take …

Build MAUI Apps in an Azure VM — App vNext

I love using a cloud-based virtual machine as my developer machine. A moment’s thought will reveal why. A VM is isolated. You can set up a developer environment on a per-project basis. You can access it from anywhere, untethering yourself from your office chai…

Business as usual for Azure customers despite 2.4 Tbps DDoS attack

The pace of digital transformation has accelerated significantly during COVID-19 pandemic, alongside the adoption of cloud services. Bad actors, now more than ever, continuously look for ways to take applications offline. Azure DDoS Protection Standard provide…

Hidden IDisposable Issues in Microsoft .NET

Out of all the millions of lines of code I have reviewed in the past 20 years of .NET, hands down the #1 issue are developers not properly disposing of objects that implement IDisposable. In this p…

ongoing by Tim Bray · Worst Case

Suppose you’re running your organization’s crucial apps in the cloud. Specifically, suppose you’re running them them on AWS, and in particular in the “us-east-1” region? Could us-east-1 go away? What might you do about it? Let’s catastrophize!

World's Smallest C# Program (featuring `N`)

TLDR: Tongue in cheek post on how - in .NET 5+ and C# 9+ - the smallest possible C# program appears to be {} or 2 characters long. This doesn’t do much, though. Using N (github, nuget) you can write a program doing something in 4 characters with e.g. N(); i…

Relational Databases Aren’t Dinosaurs, They’re Sharks

Oh relational databases, that tired old relic of another age. Codd and friends were great in their time, but serious software engineers need to move on. People building Web Scale™ software You’ve probably heard a similar sentiment at some point. That relationa…

Silicon Valley VC Firm Leaked 'Deal Flow' Data

A Silicon Valley venture capital firm that runs a matchmaker service linking investors with startups exposed 6GB of data, including deal flow information pertaining

Parsing JSON is a Minefield

[2016-10-26] First version of the article [2016-10-28] Presentation at Soft-Shake Conference, Geneva (slides) [2016-11-01] Article and comments in The Register [2017-11-16] Presentation at Black Alps Security Conference, Yverdon (slides) [2018-03-09] Presentat…

A preview of WSL in the Microsoft Store is now available!

The Windows Subsystem for Linux (WSL) preview is now available in the Microsoft Store as a store application for Windows 11 machines! Installing WSL through the store will allow you to get the latest WSL updates and features faster, and without needing to modi…