These are dinky little programs which I find useful, but aren't big enough to merit their own web page or freshmeat announcement or anything.


CD BABY Cheapskate: a price fetcher

CD BABY is a clearinghouse for independently produced CDs on the internet. They have lots of music from great musicians you've never heard of, and streaming samples for you to check out. How do you start searching from this huge collection? If you're like me, you look for the cheap ones! Prices are set by the artists, and those who price their CDs more cheaply are just being nicer to you. (Or at least that's one reason. Another is that the CD may be short ... a demo, or EP. The number of tracks can give a hint about this, but the total time of the CD is unavailable. I think that's crazy. I made one order which I'm quite happy with, but even so, I'm writing the artists to find out how long their CDs are before I make any more purchases.)

Unfortunately, CD BABY isn't set up to make price shopping easy. You get lists of various genres sorted alphabetically, and you have to click on every link to find out the prices. So I wrote a perl program to help me search: cdbaby_cheapskate.pl. It fetches the list of all the CDs of a chosen style, and re-renders it sorted in price order, with prices and number of tracks listed for each CD. It uses the ubiquitous LWP module to fetch web pages.

For usage instructions, run the code and type "?" at the prompt.


Magnatune total time bookmarklet

Magnatune is an innovative buisiness which sells music over the internet. When you purchase a CD from them, you don't get the physical disk, you get the opportunity to download the CD-quality files to burn your own disk. They have some very high quality stuff — you can listen to it all as streaming mp3 before you buy — but the one thing I wish they had listed on their pages was the total time of the CDs.

So, I wrote a bookmarklet (a small javascript program which you can run from your bookmarks) which will tell you the total time of a Magnatune CD when run from a track listing page (such as this one).

I'm afraid this one only runs in Mozilla, because the code I stole from squarefree.com to base this on said it was Mozilla-only. (I haven't tested it in any other browser myself).

Right-click on this link to add it to your bookmarks: Magnatune total time


USBank HTML Reformatter

I have my checking account at USBank, and I use their online banking web pages to keep track of my checking account. I wrote this program to take html pages saved from my account there and process them into something easier for me to use to keep track of my finances (for which I use GnuCash).

The output is an html file which has a checkbox on each row, and javascript to change the color of the row when it's checked. That way I can easily keep track of what I've entered.

I use Mozilla under Linux, but I'm pretty sure the javascript I generate works under IE for Windows as well.

The code, usbank_html_reformatter.pl, is written in Perl and uses the HTML::Parser module.