I suck at programming, but it sure is fun and rewarding to
create something that does what you need and want it to do, and then see
it get used by others. Hence, possibly why you're here, even.
This isn't really a programming project as much as some summer work
I did for a private school back in 2003~2004. Basically they wanted
to be able to create uniform system installs for their OSX machines
and deploy them across a network easily. My job? To figure out what
the hell was up with OSX, why it was broken/didn't work with their
own netboot thing, and then implement a working solution.
Back in Oct 2005, I acquired a 10 year old network data CD server
With the advent of something called "large hard drives", this thing
became obsolete, and started collecting dust at a school. I thought
to myself after looking at it, "hey, I could do something neat with
that." I took it home and it sat around for awhile, and then it hit
me. I have loads of CDs around the house, I've been meaning
to rip them so I can box them up, and I could turn the tower into a
CD ripping thing. I ripped out the server board and ran the SCSI
cables up to another computer on top, installed Slackware, and began
After looking at CD ripping packages, though, it became apparent
that no one package supported all of the features I needed.
To the coding board it was, and a victory was had. The result is
cdevour, about 200 lines (8K) of bash scripting that:
continually polls your cdrom drives for discs
determines what CD it is
ejects a CD if it has already been ripped
rips your cds, making sure it has enough disk space to do
monitors disk usage of running rips
queues discs for ripping when not enough disk space is
gets all the information it needs to name your rips later
ejects when finished with a CD
applies cheese or peanut butter spread to discs if
cdevour also spawns its own separate encoding script which:
encodes any finished rips into ogg vorbis, one track at a
removes raw data when finished with a track to save disk
tags the encoded file with artist, album, track number,
renames the file (by default, to my personal liking)
moves encodes of finished albums to an artist/album directory
And, last but not least, you get all the stats on a neat
little web page.
Please Note that cdevour does not
untar into its own cdevour-version/ structure because it is meant to
be used as its own user. Create an account ("rip" perhaps) and untar
this into that user's directory to use cdevour properly.
This is a cute little script to bust up not-so-cute single-file CD
rips. Basically, at least a few people have gotten into the habit of
ripping a CD into a CUE file and a lossless format of their choice.
So, you'll end up with WAV/CUE, APE/CUE, or FLAC/CUE sets. All the
times (and possibly track names) are in the cue file, and all
you want is individual tracks you can skip around and listen
Inspired by a similar CUE/APE->FLAC converter by HEx, this will
give you split Ogg Vorbis tracks from a CUE/lossless set with a
All you need is python, a file to break up, and decoder binaries.
Sometime shortly after the millenium change, I discovered the genre
of dancing games, and quickly became addicted. I ordered a parallel
port (ew) dance pad and I wanted to get it working on a computer
so bad that I even installed Windows on one of my computers,
only to find out the drivers were terrible and the clone of Dance
Dance Revolution was even worse (and it didn't work with the
I got to thinking: I had been quite the Linux zealot lately, why not
put my code where my mouth is? I looked around online for some neat
game-writing tools/libraries to write my first "multimedia" app/game
since my DOS days and discovered Python, along with the wonderful
pygame. Two days later I had arrows
on a screen, keyboard handling, and music playing in the background.
I was feeling like a champ. After a few months and even more code
rewrites I had a real, full-fledged game to call my own.
After totally random, awesome, positive experiences with taking the
game to MAGFest (a video game
convention) with preset dance steps for two songs by the Minibosses and watching them play
it, then to HOPE, then to Linux World Expo, going to Brandeis in
Massachusetts to talk to a DDR club, and then getting written up in
MacWorld, I began receiving more and more code from outside sources,
and accepted Joe Wreschnig into the CVS tree. Between all the things
I had going on (another bout with kidney stones, keeping the bills
paid, and having purchased MAGFest), Joe was a welcome sight.
After more overhauling, Joe not only helped my dream come true, but
also helped me give back to the Linux community that I benefit from
the works of on a day-to-day basis. These days, pydance does pretty
much everything we intended it to, and we kind of burned out on it,
but it fully imitates several popular dancing games and controllers
and should entertain for quite awhile.