laying blame where blame is due

At home, I have three computers. 

The first is my workstation which is used primarily for web browsing with Internet Explorer, reading E-Mail and RAS-ing to work.

The second is my Media Center PC which is used for watching TV (I love it when those video drivers cause blue screens, but that's another story).

The third is my media repository server.  It has huge hard drives that store ripped copies of all the CDs I buy.  I'm a somewhat OCD music collector.  In addition to trying to collect any given artists entire oeuvre, I worry about things going out of print, getting scratched, etc.  Each CD I buy is ripped and then stored on a shelf for long term preservation.  The ripped copy is then back-ed up to an external harddrive in case the internal drive fails (or vice-versa).  The server runs Windows Media Connect for our Roku device downstairs.  I also listen to the ripped files directly over the network using Windows Media Player or Winamp, depending on my mood.

I have installed very few applications on my media repository server.  This is to decrease the chances of anything bad happening.  I have the CD burning software that came with my Plextor CDR.  I have CDex, the ripping software that I prefer (it has really nice, simple UI).  I have Windows Media Connect.  I have the Phatnoise Music Manager software (Short digression: I used to own a VW into which I had the Phatnoise MP3 player installed.  Now I own an Audi and the installation charges for putting it in were prohibitive (6 hours of labor they wanted to charge; oy! I could fly my friend who used to do professional installation to Seattle for half that price, and get to spend a weekend with my friend.).  So now it sits unused in my garage, but the software for syncing its HD cartridge is still installed on the off chance I ever actually install the Phatnoise machine in my new car.  Okay, maybe that wasn't so short.  Anyway.).  I have WMP 10 and Winamp.  And that's it.

So my normal routine after buying a CD is to go home, remove the excessive packaging stickers and plastic, pop it in the CDROM, open CDex, download the CDDB data, do a quick double check to verify it is reasonably correct (bad CDDB data drives me nuts, but that, too, is for a different story), and then click the button that starts ripping all the tracks to a compressed format.  This worked well for a very long time.  At some point it started having problems though; problems I initially blamed on CDex.  The problem was this: sometimes after ripping a track (at some random point in the list) an error dialog would appear saying the ID3 information could not be written, perhaps my disc is full?  The only option was OK.  I didn't care too much about the ID3 information since it is usually wrong anyway (I organize my collection based on the file system because I can't trust the interwebatron).  But I had to stand there and baby-sit the ripping process because I might have to click OK.  This annoyed me very much.

So what's going on?  Is there a bug in CDex?  Is Windows to blame?  My initial thought was Windows Media Connect might be to blame, so I stopped it by simply right clicking the tray icon and chosing Exit (or whatever the menu option was).  But the problem still repro'd.  So I shutdown the Phatnoise Music Manager in the same manner.  But the problem still repro'd.  So I opened task manager and, lo!, there was still a Phatnoise process running.  Closing the tray icon had done exactally that; it got rid of the icon.  The actual process doing all the work was left alone.  This is shoddy design, in my opinion--I should be able to stop background processes without resorting to using taskkill.

What does the Phatnoise Music Manager do?  It looks for new media files to appear on the machine and then adds them to its database.  I did not do a Mark-level investigation, but here is my theory: CDex writes the MP3, PMM notices and opens the file to index it but they open it with more permissions than they actually need, thus preventing CDex from writing the ID3 data afterward.  I killed that process and I have not had the issue since. 

Here is my point: computers are complicated.  Or just because one program reports an error condition, doesn't mean that program is to blame.  Or you have to do a little investigation before you start laying blame.  Or don't open a file with more access permissions than you actually need.  Or never, ever install software.