Resizing the disk of a virtual machine

If you are like me and work a lot with virtual machines you will probably have the same problem and regularly run out of disk space in your virtual machines because the person that created it was too stingy regarding resources. In this post, I want to document how you can resize and extend your virtual machine disk, even if you do not have any paid versions of the virtualization software of your choice.
Read more

Loud software

A lot of popular software is loud. It shows me notifications, popups, and all the new features I don’t care about. I want to make the case, that quiet software is better. Quiet software is there for me if I need it, it does its job but otherwise gets out of my way as much as possible. Let me elaborate: I grew up with an Atari ST, then got my first PC with Windows 95, and soon after switched to Linux.
Read more

Let's talk about tenants

The first question is: What is a Tenant and what is Multitenancy? Think of a tenant as a group of users, that operates independently on the same shared infrastructure. So to support multitenancy we have to logically isolate the tenants from each other while keeping them on the same infrastructure. The support for multitenancy can be achieved in multiple ways, whereas the level of separation is the defining characteristic. Below I explain how multitenancy can be achieved on the database level.
Read more

Linux boot loader not detected after BIOS Update

I got a new Desktop PC recently because my 8-year-old PC just hadn’t enough power to handle my current workloads. And as we all know: New Hardware brings new challenges, especially if you are using Linux. It is a nice machine with an AMD Ryzen 7 5800X CPU and 128GB Ram. But the Mainboard I chose seems to have some quirks. It is a “MAG X570 Tomahawk WIFI” Mainboard from MSI.
Read more

Spam protection sucks - and it will get worse

Do you have a website with a contact form, which sends you emails? Do you use Captchas to protect yourself from spam? Then I have bad news for you! But let me elaborate: Captchas Ever since I started hosting my websites I have a problem. How do I protect myself from spam? The obvious choice would be a captcha. Captchas are basically small riddles only a human can solve. The reasoning behind it goes along the lines: Because almost every other website uses some form of captcha as spam protection, it must be the best solution.
Read more

C# .net core - NuGet Package downgrade error

One of my clients has a large C# dotnet core codebase. It consists of many NuGet packages that in part depend on each other. Overall not an ideal position to be in. When implementing a feature typically, multiple NuGet packages have to be touched, rebuilt, updated and tested. Sometimes this leads to conflicts and inconsistencies between NuGet Packages with specific Versions, or Bugs in general. One of the errors we sometimes hit is the “Package downgrade”-Error with the error number NU1605.
Read more

sway tray status - Swaybar Tool

A while ago I was testing sway as a wayland compositor. The goal was to make the switch to wayland for my daily work. Unfortunately, this didn’t quite work out. I have the feeling, that wayland isn’t quite there yet. A lot of things work, but it still feels cumbersome at times. Anyway, while testing sway, I noticed that the tray wasn’t working. When looking for the reason I stumbled upon the planned swaybar tray features.
Read more

How to process bugs

Bugtrackers, tickets and squashing bugs is a process essential to every software engineer and it is expected, that you know the process. But somehow there is no proper description of the process and how it works. All knowledge about squashing bugs is self-taught or delivered in tales full of nostalgia. In this article I explain my strategy on how to process bugs in an efficient manner. The goal of this process is not to close as many tickets as possible, but to solve the problems of the users and improve the software.
Read more

Hiring Software Contractors

Over on HackerNews was a question about “Best practices for hiring software contractors. As I have been a contractor for about 10 years now, I will give you some insights in my approach when it comes to clients and getting hired for a job. I am living in Germany, not everything I write might apply to the situation in your country. Context There are many contractors out there with varying skill levels.
Read more

Great Software is a byproduct

Last week I was on the shooting range learning how to shoot clay pigeons with the shotgun. When our trainers explained the process I was a bit irritated at first. They explained to us how to raise the weapon to get into firing position, what to do with our eyes, and how to move the weapon for a moving target. But they didn’t talk much about the hitting itself, they just gave us feedback about the technique and if we shot too low or too high.
Read more