Software, Linux & Infrastructure
This blog is my workspace for building software, working with Linux systems, and developing technical infrastructure - with a focus on clear and structured solutions.Recently updated
The Bubble Sort Algorithm π¦πΉ
How bubble sort sorts a list by repeatedly swapping adjacent out-of-order elements, visualized as an animated bar chart with a C++ implementation.
The Heapsort Algorithm π¦πΉ
How heapsort turns a list into a binary heap and repeatedly extracts the maximum, visualized as an animated bar chart with a C++ implementation.
The Insertion Sort Algorithm π¦πΉ
How insertion sort grows a sorted prefix one element at a time by shifting larger values out of the way, visualized as an animated bar chart with a C++ implementation.
The Merge Sort Algorithm π¦πΉ
How merge sort repeatedly merges sorted runs into larger sorted runs until one remains, visualized as an animated bar chart with a C++ implementation.
The Quicksort Algorithm π¦πΉ
How quicksort partitions a list around a pivot and recurses on both halves, visualized as an animated bar chart with a C++ implementation.
The Selection Sort Algorithm π¦πΉ
How selection sort repeatedly finds the smallest remaining value and swaps it into place, visualized as an animated bar chart with a C++ implementation.
WMines β A Minesweeper Clone π¦πΉ
A browser-playable Minesweeper clone, compiled to WebAssembly.
Hello, World! in C π¦πΉ
The classic first program every C programmer writes: a short history of the Hello World tradition and how to compile and run it.
The Bresenham Line Algorithm π¦πΉ
How Bresenham's algorithm draws straight lines on a pixel grid using only integer arithmetic, with a C++ implementation.
Generating spectrograms with arecord, sox and ffmpeg/avconv
How to record audio with arecord and generate spectrogram images and videos using sox and ffmpeg.
Transferring files with Netcat/nc
How to transfer single files, directories, and encrypted streams between hosts using netcat (nc).
Syncthing - Cloud-synchronisation without cloud π¦πΉ
Syncthing syncs files between devices directly, without any cloud service or third-party server. A practical setup guide for Linux.
Apache Benchmarks with ab and curl
How to measure web server performance with ab (ApacheBench) and curl β useful after configuration changes or software updates.
The Midpoint Circle Algorithm π¦πΉ
How the midpoint circle algorithm draws a circle on a pixel grid using only integer arithmetic and eightfold symmetry, with a C++ implementation.
The Perlin Noise Algorithm π¦πΉ
How Perlin noise generates smooth, natural-looking randomness from a grid of pseudo-random gradients, with a C++ implementation.
plot β A Minimal C++ Plotting Library
A lightweight C++ SDL2-based plotting library with a minimal callback API for 2D graphics.
Install Steam on Debian without using an installer
How to install Steam on Debian using a dedicated user account, without relying on the official installer.
Set the exif-date with exiftool
How to set or correct EXIF date metadata on image files using exiftool.
Test the IO performance of hard-disks/disks using Linux
How to measure read and write performance of hard disks and SSDs under Linux using dd and hdparm.
Browse SMB/CIFS shares under Linux with smbclient
How to browse and access SMB/CIFS network shares from the Linux command line using smbclient.