Tuesday 28 February 2012

Is iTunes Suffering from Senility?

I lost a great deal of last week repeatedly messing about with iTunes. When I say messing about with iTunes, what I really mean is fixing the mess that iTunes caused with absolutely no intervention from me.

This is just the latest episode of a long running series of mishaps with iTunes, which I can only see continuing ad nauseam like Coronation Street or Eastenders for as long as I continue to  add content (purchased via iTunes or otherwise).

Don't get me wrong. As a piece of functional software I quite like iTunes. Most of the time it does what it is supposed to do. It does it without much prompting from me, and I've not resorted to using Doug's Scripts to add functionality - only to fix cock-ups (more on that later). I use the excellent Cover Sutra app to display my current selection on the screen, and I use Cover Scout 3 to fix artwork when it's missing or I think it can be improved on. Sometimes I run TuneUp and I used to use TuneRanger a lot when trying to sync between computers but even this has been superseded by iMatch (after a fashion).

So iTunes as a daily operational programme is fine...until something goes wrong and when it does it's generally catastrophic.

Let's step back in time for a moment. When PCs were first readily available either as business or home user devices they were pretty limited. A 20Mb hard disk was considered quite large and 256Kb of RAM was a fairly standard configuration. These limits were enforced by processor and operating system constraints. Software workarounds were available but were messy. These days of course we walk around with tiny 1Tb hard disks in our laptop bags in addition to 500Gb internal drives and RAM is also measured in Gb. Which is just as well, because my music collection alone currently weighs in at 140Gb and my video library is approaching 400Gb. Experience has taught me to keep the two seperate as a damage limitation exercise. The problem is that we just assume that programmes can cater for ever increasing file sizes, and I am not convinced that this is a safe assumption.

Some more history: whilst on my first tour of duty in Switzerland my iTunes music library on my laptop had a semi fatal hiccup and a whole bunch of purchased music went AWOL. My Time Machine backup also failed catastrophically. In all I lost about 12 albums worth of music - not whole albums mind - just a few songs off each one. I contacted Apple support, who to their credit, have always been remarkably helpful and made stuff available within a few hours with no questions asked. This time they made everything available - all 5000 songs and 100 TV shows/films. It was actually too helpful, because of course, in those days you had no control over what should or shouldn't be downloaded. It was all or nothing.

As I only had mobile internet access in Zurich there wasn't much I could do until I got home. It then took in the region of a week download everything. And another week to sort the mess out - weeding out duplicates and trying to merge previous backups to try and restore the old metadata - like original date added and  playcounts. (A similar thing happened last year in Zurich but just a few songs went missing, and it was possible to redownload them without going through Apple support thanks to the Purchases option in iTunes store.)

In fact, to this day, I still don't really know whether I got everything right, but it doesn't matter anymore because last week something similar happened. This time it appeared to be down to a glitch in iMatch. I subscribed to iMatch the day it was first unavailable in the UK (shortly after it appeared in the UK and us early birds signed up, it disappeared for 24 hours!).

By now my music library had grown to 16000 songs, but it was a similar random access attack on the library - only a few whole albums vanished, mainly it was a handful of songs from a large selection of my purchased. Running Doug's List MIAs script showed that nearly 600 items were missing. This time I had access to a working backup which I duly restored overnight. When I checked in the morning everything was back as expected. Until I loaded iTunes later in the day and the same thing had happened - with exactly the same selection of songs.

After a week of messing about with backups, restores, redownloading tracks and rebuilding libraries, I finally have a complete library again. Or at least as complete as I can get it. I've messed around trying to get as much of the metadata looking right thanks to Doug's scripts (particuarly New Play Count and Last Played Date). Sadly the two most useful metadata items for me, Date Added and Purchased Date are not available for me to use the way I want to. I can't change the Date Added field because it's read-only, except to iTunes internally and I can't use the Purchase Date in a SmartList. The Date Added field is a real bummer because everytime I have to rebuild a library the value that gets stored is the current date. So I have some albums with different tracks showing different Date Added values. I could live with that if I could use the Purchase Date to create a SmartList but that isn't an option. I know there's a Doug Script to copy the Purchase Date into the comments field but I haven't got around to trying it yet.

I really wonder how many more times this is going to happen to me. I think that iTunes needs a complete internal overhaul, because I don't believe it is any longer capable of handling these enormous databases and that is causing these catastrophic corruptions. If the application doesn't get a rewrite at least Apple should provide us with diagnostics and repair facilities to make life a bit easier. Manually fixing a 16000 song library is time consuming and painful (not to mention error prone).

Oh, and give me read access to the Purchase Date!