Caveat with AddInitialRequestCultureProvider() in ASP.NET Core

AddInitialRequestCultureProvider() in ASP.NET Core localisation seems to have an undefined behaviour when it is used in both services and application builder configurations to add a custom RequestCultureProvider. If you want to use a custom RequestCultureProvider to customise how the applicable culture is determined for an incoming HTTP request (for example, by looking up the chosen …

How can you minimize the impact of the persistence layer on your domain models?

This is a blog response to the question ‘How can you minimize the impact of the persistence layer on your domain models?’ posted on reddit /r/dotnet, showing how I would have implemented the solution in the purest form of OOP that is possible with C#. (Note: The implementation of the factory and persistence classes is …

Disabling Bluetooth auto-suspend with module options

In my previous post I showed how to restart Bluetooth on Debian Linux. Here I explain how to disable Bluetooth auto-suspend by using a kernel module option. Kernel modules can be passed parameters that affect how they work. The parameters accepted by a module can be identified with the command modinfo. In the example below …

Restarting Bluetooth on Debian Linux

On my laptop I use a Bluetooth keyboard and a Bluetooth mouse. Occasionally the Bluetooth adapter in the laptop shuts off completely, which means that it is not even possible to restart the Bluetooth service with sudo systemctl restart bluetooth.service. My troubleshooting points to powersaving as the cause of this, but the TLP setting that …

Centrino Ultimate N-6300 slow to connect to Wi-Fi network

Wi-Fi connections from my laptop became unstable after I upgraded it to Ubuntu 19.04. To get them to work, I had to turn the Wi-Fi adapter on and off several times, which quickly became annoying. The following attempts to fix the problem were unsuccessful: disabling IPv6 disabling power-saving on the Wi-Fi adapter setting bt_coex_active=0 during …

SO #57225262—Inputting list of passwords in a class

Stack Overflow question ‘Inputting list of passwords in a class’ is more interesting as an object-oriented design (OOD) exercise than as a debugging exercise, but it also provides an opportunity to practise some Python programming. The requirements identified in the problem are: represent a set of credentials comprised of a username and a password; represent …

Programming Arduino in Atmel Studio

As a fun way to improve my C, I started programming the Arduino using Atmel Studio instead of the friendlier Arduino IDE. Below is my very first program. It blinks a red LED and a white LED according to a preset pattern. #define F_CPU 16000000UL #include <avr/io.h> #include <util/delay.h> struct Led { int pin; int …

Hacking SSL support into smtpop.dll

We use smtpop.dll in one application to retrieve email from a POP3 mailbox. Today we had to connect to a mailbox over SSL, which smtpop.dll cannot do. Our code to retrieve email is in a façade class, so I expected a simple replacement of smtpop.dll with another library and calling new methods. But the tight …