August 2006
Mon Tue Wed Thu Fri Sat Sun
« Jul   Sep »

Day August 27, 2006

iTunes drives me crazy sometimes

OK, so I’m suffering iTunes woes. I’ll leave aside the DRM issue: the frustration of having music I can play on my iPod and on my computer via the iTunes app, but not via my Slim Devices Squeezebox, for example. Sucks, but at least I understand why that issue exists.

My biggest issue with iTunes is that it’s simply inadequate for maintaining a serious music library, especially when you have multiple devices and perhaps a centralized home file server. In my case, I’m trying to consolidate all my music and media onto an Infrant ReadyNAS NV storage server, which sits on wired gigabit ethernet at the house and should offer streaming access to a variety of devices throughout the house. The storage part works just fine, of course; it’s the management functions that suck.

I used to have two iTunes libraries, because the sum of all my music files were bigger than both my 12″ Powerbook and my 20GB iPod could handle. So I kept one library with everything in it, and a library on my laptop which was small enough to leave me some free disk space and fit on the iPod. Fair enough. Managing these subsets, however, becomes a real pain in the butt. Issue #1: Merging and subsetting two libraries has virtually no support in iTunes. Basically, you copy the underlying files and then import or “Add to library…” which works fine, until there’s overlap. iTunes is brain-dead in terms of duplicate management. I know, newer versions have a “Check for duplicates…” function, but if you’ve used it, you know it’s pretty bad. Leaving aside how bad the duplicate management function is, why should this be a problem in the first place? A wide variety of methods are capable of detecting whether you’ve got the same track. Starting with filenames, you can move on to CDDB data, id tags, all the way to some of the acoustic “fingerprinting” algorithms. It’s not an insoluble problem, but Apple must not have any “power user” personas in its use-cases.

This would all be much less of a problem — basically restricted to situations where you really need to merge two disparate libraries together — if iTunes had a better way to deal with server-based libraries and local system-resident libraries (Issue #2) Why should I have to manually copy and manage separate libraries on a server and my laptop? I don’t really want two libraries — I want one, resident on the server, which I have a copy or a cache of on my laptop. And as long as we’re building some kind of snapshot or cache, let’s handle the use case where I’ve got a large library on the server and only have a smaller free space on the laptop. I should be able to specify how the “subset snapshot” is taken and maintained: examples might include choosing a space limit and then filling it with “most played tracks,” “highest rated tracks,” “most recently added,” “by genre,” or adding specific playlists (and their underlying contents) and then using one of the other algorithms to fill the rest of the space. Again, creating rational subsets of the total library doesn’t seem like a hard problem.

When I reconnect my laptop to the appropriate network server, iTunes ought to sync the two (issue #3): stuff I rip on the laptop or purchased from the iTunes store, or eMusic, ought to be copied into the server library, and stuff that I need from the server library (perhaps added from a desktop machine) ought to be sync’d to the laptop. We know Apple knows how to do this because that’s what it does between the iPod and the computer-based iTunes library, so this is just extending the same idea out another level, between two “computer resident” iTunes libraries.

Today, solving each of these use cases involves manual copying of files, puttering around with Applescripts, trying out buggy freeware, or just suffering through libraries chock full of duplicate tracks. If there’s a good commercial application which handles some of these use cases, I’d buy it. But ultimately, this is the kind of thing that I expect Apple to solve in the core product, since they don’t have to cruft up the non-power-user scenarios in order to do it. People who don’t care about each of the three situations won’t even know the functionality is there — iTunes would just work like it does today. But those of us who are trying to build a serious multi-computer media center, and have mobiles devices as part of the mix, would sure appreciate the new features.