For some reason I always assumed ID3 tags were much harder to parse than they actually are. Using this reference (and the included links), I was able to write a Ruby a basic ID3 parser with relative ease. Yes, I realize there are already a million ID3 parsers out there; this was just a mental exercise.