Rhythmbox Stuff
rhythmbox is my music manager of choice. It has a nice interface (which is readable, unlike xmms!). One problem in the current version (0.8.8) is that there is no way to increase the buffer size for playing streaming audio. This patch fixes this by defining a key in the Gconf schema called buffer_size which is used to set the buffer size in the player.

If you need to change the buffer size, start up gconf-editor from the command line and then navigate to apps->rhythmbox->state->iradio. Double click on the buffer_size key and set it to however many kilobytes you like.

A proper configuration UI would be nice :)

Stochastic Proximity Embedding
This is a C implementation of the SPE algorithm described by Agrafiotis et al. (Proc. Nat. Acad. Sci., 2002, 99, 15869-15872 & J. Comp. Chem., 2003, 24, 1215-1221) . All it requires is a set of input 'coordinates' in a file. The format is n x m matrix where there are n observations and m 'coordinates'. Note that 'coordinates' can be descriptor values (corresponding to a m dimensional descriptor space). Currently the code does not implement the pivot SPE method (J. Mol. Graph. Model., 2003,22, 133-140). Most of the variables in the algorithm can be set on the command line.

The algorithm requires proximity values which are caluclated by default as Euclidean distances. If you have some other measure of similarity, you can provide a daat file with the proximity values in upper triangular form. Note that for large datasets this file is going to be big and reading it in will take some time!
(You can get an R package that wraps the C implementation in R, providing eas of use along with speed, here

A C++ Interface to Gnuplot
(Tested with g++ 3.2, 3.0.2, 3.2.2, 3.3.6, 3.4.2, 4.0.0 & 4.03 and gnuplot 3.7, 4.0 & 4.2, runninng on RH 7.2, RH 9.0, FC 3, FC 4 , Gentoo 1.4rc2, Ubuntu 7.0.2 & OS X Tiger. It has also been tested on Windows with Visual C++ and MinGW)

This is a small peice of code which is based on the C interface to gnuplot written by N. Devillard. The original code was pure C and though it compiled with a C++ compiler I felt that it could be rewritten in an OO fashion. Hence this project. Like the original interface, it depends on the system having POSIX pipes.

The code is now maintained by Jeremy Conlin who hosts it on Google Code. All queries should be directed to him

gtkcdlabel - GUI for cdlabelgen
This is a GTK2 and Glade based program written in C and acts as a GUI interface to cdlabelgen which is used to create CD tray covers (normal, slim, envelope with images, tracks lists).

gtkcdlabel (you can download here) can get track names and album names via the FreeDB service, parse ID3 tags in the case of MP3 collections, handles UTF8 and locales and is generally a nice way to create CD covers :)