2022
December 31, 2022
Reverse engineering an old Windows game to understand why
it didn't work with the Wayland driver for Wine
December 4, 2022
Introducing a command-line tool to separate interleaved streams of text lines
into per-stream columns
October 22, 2022
Coaxing GitLab into providing sensible merge diffs for branches that rewrite commit history
2020
March 9, 2020
Plotting an interactive time series graph of confirmed COVID-19 cases
per country using the JHU data
2019
December 16, 2019
Exploring the intricacies of saving buffers holding data from
multiple sources
October 7, 2019
A Rust library for creating custom Mail Delivery Agents
April 20, 2019
Using dynamic programming to solve an investment problem more efficiently
2018
November 3, 2018
Introducing some metrics for test suite comprehensiveness
and using them on Free and Open Source (FOSS) codebases
October 15, 2018
Thoughts about the reasons that keep Free and Open Source
Software (FOSS) projects from adopting comprehensive automated
testing
September 19, 2018
A much delayed update to the Bless Hex Editor
September 14, 2018
A tool to create dependent git branches from commits
2017
November 24, 2017
A guide describing how to run Chromium on DRM/KMS on a normal GNU/Linux desktop
October 29, 2017
A description of the algorithm used by the top2bottom tool to convert top-posted emails to bottom-posted.
October 5, 2017
A look at the new features of the Pixel Format Guide documents and accompanying tool
October 5, 2017
An introduction to the Pixel Format Guide — a collection of documents and an accompanying tool which aim to help people navigate the wilderness of pixel format definitions
July 12, 2017
Announcing the vkmark Vulkan benchmark
2012
September 17, 2012
A look at C++11's out-of-the-box performance using a simple word counting program as an example.
June 11, 2012
How to change the user X session and other login settings from the command-line
2011
December 16, 2011
Introducing the glmark2 OpenGL (ES) 2.0 benchmark
2010
September 30, 2010
Solving the partition problem to fairly distribute shared
receipts among friends