Anyone who invests the amount of time I have into music - even if this blog doesn’t always reflect that - eventually runs into roadblocks with their music player. Usually, they’re the result of problems that afflict any large quantity library - sifting through everything to get to exactly what you want. Even in large quantity-high quality libraries like - I pretend, at least - mine is, it’s difficult.

There are a couple different facets to the problem. First, there’s a constant stream of new music coming in. Each new song is, in theory, categorized as to genre and rated on first (or second) listen. It’s then thrown into a complex playlist scheme, which I’ll get to in a bit. The problem here, though, is that it’s nearly impossible to keep up with new music, as it’s a constantly shifting set. (I envision the constant march of new music to be like a stream. You can dip your toe in, reach down and cup some water in your hand, but you’ll never be able to taste or feel all the water that rushes by.) Moreover, your brain (well, my brain) can’t keep all the artists and albums in at once, so songs aren’t able to properly gestate in your inner theater like they used to.

On the flip side, older stuff just slides away completely unless the serendipity of shuffle rediscovers it. Then there’s a flurry of activity as I remember just how damn good something like The National’s “Sad Songs for Dirty Lovers” disc is, leading me to listen to their catalog a couple times until I need the complement to their style. So I move onto Arcade Fire, or take the switchback to Shearwater or something. This is great, and sets me on a path to rediscovery, but the path is overgrown and poorly marked.

Apple’s Genius

Apple’s new Genius feature in iTunes is billed, in part, as a solution to this problem. Like Pandora, you select a song and allow Genius to create a playlist of related songs. Assumedly, those songs are related by mood, genre, rhythm, etc. It… works, sort of. When I built one off of a Sufjan Stevens song (Predatory Wisp of the Palisades…), I got some Iron and Wine, Decemberists, Andrew Bird, etc. But, somehow, it also decided Deerhoof would be a good fit. What? Deerhoof fits only in that it’s Indie, but in a completely different way than Sufjan. They’re not from the same genre, or even artists that you’d probably listen to in succession. However, there’s probably a statistically significant amount of crossover between Deerhoof fans and Sufjan fans, and I think that’s more of what they’re going for.

With bigger name acts, the results are a little less obtuse. I Geniused “Right Behind You (Mafia)” from Our Lady Peace’s Spiritual Machines album, and I came up with a bunch of 1997-2001 Alternative, as I would expect. Bands like Live, Radiohead, Stone Temple Pilots and Everclear ended up on the list (yes, I have Everclear in my library. I’m ashamed.) - bigger bands with wider population rates in iTunes libraries. Moreover, for the most part, the songs selected are similarly mid to up tempo, unlike the haphazard tempo distribution of the Sufjan Genius playlist.

Obviously, 2 attempts by no means creates a complete set, so this all could be statistical noise. But I’ve done some random Genius tests over the past week, to similar results: more well-known songs will warrant similar results, and, in general results stick to the same genre or identity set. As a result, it’s probably pretty good at setting up, say, and 80s Alternative Mix, but not so effective at maintaining a mood for an hour.

On a different note, this is an astonishing data grab by Apple. I’d love to see the relationship trees they’re able to develop now between artists. Sure, they’ve had iTunes Store info for a while, but Genius analyzes your library before submitting it anonymously. I’m sure record company owners would love to have access to the data.

My Imperfect Solution

I mentioned above that I have a complex playlist scheme. It’s not really all that complex, though it probably vaults me into the iTunes Power User cloud. Essentially, I copy any song I think has lasting value into a “Singles” playlist. If it’s an older song that I’m just getting around to buying - let’s say there’s a great sale on old Elvis Costello repressings - it also goes into a “Flashbacks” playlist.

From here, I exploit iTunes tracking capabilities to the fullest extent I can, building a playlist that’s meant to be flexible, heavy on more recent and favorite songs, and constantly updating. I end up with a playlist of songs, chosen by random but using the following formula:

  • Pre-1980 Songs [2%]
  • 80s songs [2%]
  • 90s Alternative [2%]
  • 90s Songs (non-Alternative) [2%]
  • Songs from 2000-2007 [10%]
  • Songs from the last 12 months (that are not Flashbacks) [23%]
  • Songs added in the last 3 months (that are not Flashbacks) [52%]
  • High rated (4 or above) songs not played recently [5%]
  • Songs not played in the last 6 months [2%]

This gives me a rough mix; my radio mix, so to speak. In other words, if I was setting up a radio station and needed to have an automatically generated mix, it would do something close to this - though I’m constantly fiddling with those percentages. The result isn’t too bad, but there are some real problems nonetheless.

First, iTunes’ Smart Playlist language is a very limited conditional one. In other words, I can tell it to grab 2 songs from the 1980s, but there’s no way to ensure that those songs are from 2 different artists. Thanks to the paucity of my pre-1980 library, I find that I end up with a ton of Beatles songs in my playlist and very little other stuff.

Second, though I have ratings to separate songs, those ratings aren’t necessarily accurate. To do so, I would have to be in exactly the same mood when I rated each song - but that’s not the case. I go on huge rating sprees whenever I add new stuff, but that’s not always the most accurate rating. Really, it reflects how I felt about the song at the moment I rated it. I try to keep some general guidelines, of course. I can tell when a song’s a 5, but sometimes the line between a 4 and a 3 is blurred. I tend to never give anything a 1, under the assumption that I wouldn’t have anything in my library if I hated it that much (exception being the random filler tracks) and only a few 2’s. That means almost everything’s a 3 - which makes differentiation difficult. Additionally, something that’s a 4 when I first hear it can easily fall out of favor - or a song rated 3 could be a 5 that I just missed somehow when I first heard it (or I wasn’t in the right mood; it hadn’t sunken in, etc.)

Third, the playlists, when I first made them, never actually changed. I had to add a requirement on each playlist that it not include songs played in the last x days, where x varies by the playlist. This is how iTunes does it; I’d just like it to automatically generate a new playlist each time I go to it.

So despite these complaints, my playlist scheme mostly works. I’m locked into the iTunes ecosystem because of its excellent tracking and (mostly good) rating capabilities, so no real complaints there. Because this is a blog, though, I have to make some general recommendations (that would go nowhere) for some intrepid soul who has more time than me to implement. So I’d love to see something that:

  • Notices bands you’ve been listening to a lot lately and puts them into a playlist more frequently. So if I go on a Built to Spill kick, I’m probably going to want to hear them a bunch over the following few days. Currently, the opposite will occur, thanks to the “Not played in last x days” requirement. The frequency that songs from this band will show up will decay over time.I can see this happening in several scenarios, particularly when a band makes the news - a member dies, they’re playing a show near me, a new album is coming out. I’m not necessarily going to want to hear a whole lot of them, but it would be nice for them to pop up more in my playlist.
  • Allows you to set the genre, year, etc. composition via a slider. In other words, I’d like to very easily shift the mix from a more recent singles heavy mix to a classics mix. Right now, that means changing several smart playlists, which takes 5-10 minutes and isn’t really worth the effort.
  • Gives you the ability to limit the number of songs from a particular artist or genre, etc., or require that certain artists, etc. appear. One of the biggest failings of my pre-1980s is that lots of late 70s punk gets lost if there’s only 2 songs that can be selected at any given time.
  • Reminds you to re-rate songs after a few months. A second review is always helpful. If it was linked to other people’s music habits, it could actually elevate songs that you have been ignoring to this Revisit Me list.
  • I could probably implement this without too much difficulty, but there might be several different types of songs. Songs like “Lost in the Supermarket” aren’t just a 5 - 15 years after I first heard it, it’s still one of my favorite songs of all time and I would love for it to come up more frequently. Last time I was in LA, I found that Kroq was still playing Smashing Pumpkins’ “Disarm” regularly. I’m not sure how this would be implemented; it would probably require some sort of multiple Singles playlist scheme.

I could go on. And on. And on. But no need to belabor the point - I’m getting lost in my music, and while I love it, I wish I didn’t feel like I was constantly missing something as it went by - or ignoring something in front of me. Genius is an ok tool for this, and iTunes offers some other great ones as well, but nothing I’ve found so far offers the flexibility and automation that would make me (theoretically) happy.

If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!