Welcome to my website. You can contact me by .
Here's my latest articles mostly related to programming:
Converting rotation matrices to angles
Tutorial on converting rotation matrices to angles in two and three dimensions.
Aligning point patterns with Kabsch–Umeyama algorithm
Description and implementation of Kabsch–Umeyama algorithm for finding the optimal translation, rotation and scaling between two paired sets of points.
Pixelated images in SVG
Investigating how to render pixelated raster graphics such as pixel art in SVG images.
Exif orientation in different formats
Investigating how JPEG, WebP, PNG and AVIF store Exif metadata and do web browsers support Exif orientation in all these formats.
Chroma subsampling and JPEG sampling factors
Comparing different ways of notating chroma subsampling and trying to understand how these are related to JPEG sampling factors.
Drawing musical keyboards
Studying different ways of drawing musical keyboards in music software.
Here's some of my free and open source projects:
Collection of Finnish public domain literature.
Perceptual Image Optimizer
Compress images while maintaining the same perceived quality.
Fictional name generator website based on Markov chains.
Command-line utility to pritty-print JSON quickly.
Simple command-line utility for adjusting backlight brightness on Linux.
Standalone desktop application for viewing Markdown documents.