How To Build A Music Recommendation Application With Your Facebook Friends

This article originally appeared on A blog I created about music technology.

If you’re a music geek like me, every day you’re looking for new ways to find tunes. Checking Twitter, scanning Tumblr, RSS Feeds, Last.FM scrobbles and inevitably hitting play on that YouTube video you’re not so sure of in your Facebook news. All of this produces so much noise though and its hard to really filter down to the stuff you actually want.

I have found that I discover most of my favorite music from some of my closest friends in every day conversation.

Unfortunately over time your friends always grow apart from each other and you find yourself trading new finds less and less. Luckily we now have these massive social hang outs online that allow us to engage in ways with our friends that we couldn’t even do when they lived close to us. I love Last.FM for music discovery but the main problem is that not all of my friends use it and they won’t for some reason. Out of all the networks that have popped up in the past few years the only one that I can reliably find the majority of my friends on is Facebook. Unfortunately Facebook is still highly lacking in the awesome music applications category right now that allows sharing with your friends.

So how do you take the features Facebook already has and make it into something useful that your friends can share music with each other through. On top of that how do I get the best music recommendations from my friends and their friends I don’t even know. I decided to start a secret Facebook group on the premise that most people don’t want to share what they’re listening to on their stream but if its a private group geared towards music then they have no shame. I then encouraged the 10 or so friends I added that I knew had similar tastes to add other friends who love music. 30 days and 125 interspersed friends later we got a pretty sweet thing going here. About 5-10 posts a day with some sort of link to music. Needless to say I’ve discovered quite a few awesome tracks that are right up my alley that I had no clue about and probably would have never found otherwise.

About 4 months pass and everything is going great. I asked people to only post 1-2 links a day max and we were trekking along having some great conversations, sharing past show stories, and building a tightly knit community of music lovers. Then came the problem, too many links and no way to listen to them all in a given day. Especially as the group started to expand I could see this becoming a problem. Once again too much noise that inevitably I needed to be able to sort through to get what I wanted. I spend enough time doing that already through out the day. I knew though that this time around though the noise was a lot more refined and worth fine tuning. So naturally having a bit of understanding of the Facebook API I decided to take advantage of all this great data.

I decided to build a mini application that allows you to simply up vote or down vote a post that somebody made in the group and also tallies likes/comments to add to the posts score. In part 2 I’ll show you how to build something like this on your own using PHP, Javascript, and the Facebook Open Graph. In the meantime go start your group, add some friends who like the same music as you, and then encourage them to invite friends with similar tastes. Below I have shared what I posted as the rules for the group and it seems to be working relatively well.

A place to share/discuss music we love among friends. Since not everyone on facebook likes good music. Thought it would be a cool idea to start this group of friends and share shit that we don’t care for our whole stream to see or just share some new hot shit you found but don’t feel like posting to your stream. A couple things to clarify that I have been asked ..

  1. Invite whoever, all I ask is they like good music and want to share with friends or people they have never met. I believe groups of friends share the best unknown bands. Genres don’t matter, if you think its good then post it.
  2. If you post something, try and add at least a link for people to listen to
  3. Try not to spam the board, 1-2 links a day is enough from an individual. (would like this to last not for you to share all your favorite bands in 2 days) Enjoy and start conversation! NOTE: Its probably a good idea to edit settings of the group and turn off notifications and emails when you join.

19 January 2011