ryansouthgate.com

A blog about technology & software development, by Ryan Southgate

Goodbye Disqus - Your injected ads are horrible

Disqus turned my clean blog into an ad-riddled mess. Here’s why I pulled the plug—for your privacy and reading sanity

A secure & efficient Node/npm in Docker setup for frontend development

npm package vulnerabilities are increasing, and the bad guys want your data. Here is an Node in Docker setup for frontend development. Keeping you productive and your files safe

ZSA Moonlander - A keyboard review

A review of the ZSA Moonlander, 1 year after purchase

Cronjob vs systemd timers - how to create a systemd timer

cronjobs have a new contender. In this post I create a new simple systemd timer and compare with cronjobs

Custom C# JSON Deserialisation for Object property Types

Dealing with Object property types on C# models, with System.Text.Json, is hard. But it doesn't have to be, in this post we'll enable custom deserialisation for specific properties

Fixing 'cups-pki-invalid' printing error in Linux Mint/Ubuntu

Removing and generating an expired SSL Certificate for cups

2024 - My year of the Linux desktop

Upgrading from Windows to Linux Mint and becoming more productive in the process

Creating Right-Click (Context Menu) actions in Linux Mint - Nemo

How to create right-click (context menu) actions in Linux Mint - Nemo

F# and Home Assistant helping take the bins out on time

Combining F# and Home Assistant, with native mobile notifiactions to take the bins out

Public Key Encryption with the JavaScript Web Crypto API

How to use Public Key Encryption on the web with JavaScript