Over to you

14 Mar 2020

Software

Some software I’ve written and released as open-source:

  • Nimplication — a toy SAT solver using the DPLL algorithm (and maybe CDCL in future).

  • memvalid (source) — memorise prose or lyrics, or test that you can reconstruct a completed piece of text by just looking at the first letter of each word, and revealing one word at a time. Implemented in Ur/web.

  • vfconcat — generate videos from PNG frames with inconsistent durations. Timings are recovered from the difference in consecutive frame timestamps, producing a control file for ffmpeg.

  • Metron (source) — a minimal implementation of a metronome that allows you to only play the first of every n beats. Uses the HTML5 webaudio API to play clicks.

  • Pitcher (source) — a collection of exercises for training and testing absolute pitch (also known as perfect pitch). I trained with it for a while and didn’t make much progress, and took part in a research study in training absolute pitch via another method which was much more effective. But I still use the pitch test from time to time to check how reliable my sense of pitch is (my mean absolute error is usually around 0.2-0.5 semitones). Implemented in Elm and uses the HTML5 webaudio API to control sounds.

  • Shotclock (source) — a shot clock for snooker shootout games. Implemented in Elm and uses the HTML5 webaudio API to control sounds.

  • The Iconic Memory Game (source) — a memory game based on the tachistoscope experiments by George Sperling in the 1960s which sought to characterise the visual short-term memory system. Implemented in Elm.

  • Blinkenwords (source) — a minimalist rapid serial visual presentation (RSVP) reading utility. Implemented in Elm.

  • Gluap — a stalled implementation of the PushGP stack-based genetic programming framework. Implemented in Lua.