My original idea for the adding music stage was that the site would recommend music to the user depending on the type of mixtape they were making. This would involve the user inputting who they were making the mixtape for at the beginning of the process. The idea was to have 3 options:
- lover
- friend
- other
If they choose lover for example, a list of randomised songs that had been tagged with the genre "romance" or "love" would appear at the music stage. I would personally tag the music when listing the tracks in the database.
However, because giving the user more information to fill out would mean an extra stage I have started looking into other ways of helping the user compile a playlist.
A good way to get information is by using social networks. I have looked at both Facebook and Spotify.
Facebook
By using the Facebook graph API, information from a users profile is easily accessible. Using HTML and javascript, the API can access the users information after they have approved the connection.
The tutorial and example here: http://developers.facebook.com/blog/post/481 shows an application gaining access to Facebook users movie interests. This can be defined to user_likes and friend_likes.
Part of the information shared on a Facebook profile is 'music you like'. If I could gain access to a users friend list that would then allow them to find out the music the recipient of the mixtape likes.
Etsy Example
Etsy have a used a similar idea within their site to allow users to look for gifts specific on a Facebook friends tastes. Information from their Facebook profile is taken and applied to the store, a list of gifts appear on etsy that would be suitable for the friend. Information such as pages the user has liked and hobbies and interests are shared with Etsy in order for them to display the right gifts.
By clicking "choose a Facebook friend" the user authorises access to their Facebook account and the information held there.