Nicholas Parker

I'm a Bay Area programmer.


These are a few things I've made recently in my spare time.
They're often just meant to scratch an itch or build something interesting.

Interest Calculator

A web-based calculator with a simple interface which visualizes the lifetime of savings accounts and loans, and which can be configured to solve for any part of the equation, such as the start balance, duration, payment amount, or interest rate.


A DAAP daemon with the design goal of simple initial configuration. Initially planned to be written in Go, but it will probably end up being C++ on account of the expected library dependencies.


A simple Android app that shows a streaming voiceprint of the currently playing audio, or of the microphone input if no audio is playing. Also available for free in the Play Store.


A library and command line utility for flexible and efficient generation of Markov chains from arbitrary text. Includes built-in support for storing processed input data to a SQLite db for later retrieval.


Provides keyboard-bindable commands for easy window manipulation. Effectively a port of the "Grid" Compiz plugin, except designed to work with any EWMH-compliant window manager, which is just about all of them. Also has commands for moving windows between monitors and directionally selecting windows.


A simple conduit for sending content to BetaBrite-compatible LED signs. When run, it executes a list of commands, captures their output, and writes that to the sign. This structure allows for extensions in any language without needing to modify bbusb itself.


Made some contributions for cross-format song rating import/export, and more recently a couple new visualizations.


A half-finished utility which organizes music files according to their metadata. Originally written as a sort of workaround to mpd's lack of rating support. Might bring this back if I someday resume using mpd. In any case, here's a python script which synchronizes song ratings to a Google Music library.