Join the Free World - Joe's Blog

Highlighted articles

<2024-04-20 za> - Free à la Carte - Modelling effects with free monads in a simple and composable way with Haskell. Checkout my custom library and how to use it.

<2024-02-27 di> - Why SQL SELECT * is a bad idea - Doing a SELECT * may seem like a time-saver, but it's actually setting you up for problems in the long run, specially when database schema changes.

<2024-02-26 ma> - Black Box Testing in modern Software - Testing software at a high level means freedom of implementation and refactoring, while maintaining guarantees of correctness.

<2024-02-01 do> - System Interaction Model - Software Design - My hot take on software desing using the years of experience on ever-changing business requirements, and wish for expressive, functional programming loving code.

<2023-11-02 do> - Open VPN 3 on NixOS with Web-based SAML - Learn how to install and configure OpenVPN 3 client on NixOS, in a reproducible way.

<2023-08-25 Fri> - Bootable Windows 11 USB from GNU Linux - procedure for creating a bootable USB flash drive with Windows 11. The same process should also work with any HDD/SSD connected to your system.

<2023-08-18 Fri> - OpenVPN3 on Void Linux - Learn how to build OpenVPN 3 from source code and install it on Void Linux, for SAML VPN auth.

<2023-04-28 Fri> - Emacs for absolute beginners - In this article, I'm going to give you exactly what you need to get started using Emacs and understand the basic concepts and key bindings of the editor.

<2023-04-26 Wed> - Emacs and Scala setup with Eglot - Learn how to setup your favourite text editor, Emacs, as a super powerful and capable Scala IDE (integrated development environment) with the latest and most performant approach.

<2022-09-12 Mon> - Type safety back and forth - Types are a powerful construct for improving program safety. Haskell has a few notable ways of handling potential failure, the most famous being the venerable Maybe type.

<2021-09-21 Tue> - German / Dutch naming convention - There's one thing that could make our life as software engineers much easier: better naming convention.