Skip to content

2020

My 2020 in Review

I am glad 2020 is over. It was the year that put an end to any hope of self-responsibility to tackle a global crisis. It did not work for COVID-19, it will not work for climate change. We need something else and I hope we find it in time.

The cathedral of Chartres

The Gilded Rose Kata

Code katas are little exercises that help you to improve your programming skills. My favourite one is the Gilded Rose kata. It was originally created by Terry Hughes and is now maintained by Emily Bache (@emilybache).

While most katas start from scratch, the Gilded Rose kata comes with existing code that you need to modify. This code is available for more than 40 programming languages and covers most likely your favourite language.

The Mikado Method: A Great Help to Work With Legacy Code

Earlier this year I read the book The Mikado Method by Ola Ellnestam and Daniel Brolund. Whenever someone describes their process as a

"pragmatic, straightforward, and empirical method to plan and perform non-trivial technical improvements on an existing software system"

I get sceptical. Too many books claim that and deliver nothing. But this process is incredibly helpful, and I wish I found it earlier.

How to Fix "Error NETSDK1005 Assets File project.assets.json Doesn't Have a Target for netstandard2.0"

After updating Visual Studio from 16.7.x to 16.8.2 on our Azure DevOps build server, I got this error message:

##[error]C:\Program Files\dotnet\sdk\5.0.100\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(241,5): 
Error NETSDK1005: 
Assets file c:\agent\_work\***\obj\project.assets.json 
doesnt have a target for netstandard2.0. Ensure that 
restore has run and that you have included netstandard2.0 
in the TargetFrameworks for your project.

How Much Impact Can New Network Cables Have?

The network cables in my home are old. Some date back to the time I moved in and even the newer ones passed the five-year mark. Over the last few years, I have again and again read @SwiftOnSecurity's recommendation to replace network cables more often. Since I had no problems with my network, there was no reason for me to buy new ones.

How to Create a Catch All Requests Route in ASP.NET MVC 5

I will soon move a web application to a different domain. Without any extra work this change will break the existing URLs. To prevent this from happening, I try a new approach with a small replacement application that accepts every request to the old domain name, logs its referring site and redirects the user after a few seconds to the new application.

How to Restore an Azure *.BACPAC File to Your Local SQL Server

As part of our build and deploy job in the user group project we create a backup of our Azure database before we run any data migrations. If something goes wrong, we do not lose any data and can restore our cloud database to a known good state.

It would be a great opportunity to take this backup file and restore our database to the local SQL Server on our developer machines. Unfortunately, the backup tool creates a *.bacpac file and not a *.bak. Restoring a *.bacpac file needs a few additional steps and, most importantly, a different entry point in the SQL Server Management Studio to start the restore process.