Being college students, we know the feeling of wanting the DJ to play that popping new song or that new fire album but just doesn't. Well with YoDJ!, event goers at a social event can now have the power to request songs that they want to hear directly to the DJ through the Facebook!
What it does
Event goers at a social event can vote on songs event goers request and after a certain period of time, the most voted on song will be shown to the DJ and the DJ can (and probably should) queue that song up next.
How we built it
We used Python's Django framework as our main front-end service and integrated Facebook's Graph API into our application. This way, we can see the events a user has RSVP'd to and give him/her the power to establish a relationship with the event hosts/DJs. We also used the musixmatch API as well to serve as our repository of songs.
Challenges we ran into
The Facebook graph API, due to the numerous updates in security it received over the past 4 months, proved to be extremely difficult to navigate. There were a lot of server-side technicalities that proved to be too difficult to troubleshoot and so we could not completely integrate the Facebook Graph API into our application.
Accomplishments that we're proud of
However, we were able to complete a prototype using Django, Java, Android and the other musixmatch API.
What we learned
It's always better to start early. It'd be wise to know the themes of the hackathon from the get-go and have certain ideas brainstormed before coming to campus (and with some details hashed out already) so this saves your group time. If we had figured to use the Facebook Graph API on Friday night rather than the afternoon on Saturday, it could have saved us many, many hours and perhaps we may have been able to successfully integrate it.
What's next for YoDJ!
Some of us wish to take some time, now that we've done our research from the past 36 hours, to really delve into the details of this project and break down the different problems we must solve, one by one, then slowly build it into a successful, as-intended product. We would consider using other APIs, as well, and maybe learning Android and iOS skills to build the end product.