Reggie Beats
2019
Python, JavaScript, Django, PostgreSQL, Spotify API, Heroku
In the second semester of my freshman year, my dining hall installed speakers so we could listen to music while we were eating. But I noticed a problem. What in the world was this music? It was terrible. Just awful. Then I realized an even bigger problem. The only way for the students to suggest their own songs was through a Google form that I'm pretty sure nobody bothered to check.
A lightbulb went off in my head. What if there was a way for students to queue their favorite songs onto the speakers? The staff wouldn't need to check that Google form or manage the song player anymore. Plus, the students would have a more enjoyable time in the dining hall!
This was the inspiration behind Reggie Beats (named after our campus corgi, Reggie Bee). This Django web application made use of the Spotify API to allow users to search and add songs to their chosen queue. The device running Spotify just needed to be connected to the speakers and all the music handling would be done by Reggie. Since the intended setting was one of the nine dining halls on campus at UM, I knew I needed to implement strict admin and filtering capabilities.
Throughout the summer, what drove me to keep working was the vision of students using and enjoying my creation. I wanted the dining halls to become a lively place where the students had freedom in choosing what they listened to.
When the school year started, I immediately went to work on pitching my idea to the dining administration. It was a surreal feeling as I pulled out my laptop and started demonstrating the interface and functionalities of Reggie. It felt even more amazing when I was given the go-ahead to implement Reggie into my dining hall as a pilot test run.
But that euphoria was soon cut short. Apparently, playing Spotify in public places is not allowed and that was all it took to have my idea shot down not long after it took off. There is a silver lining though. From all this work over the summer, I became really good at Django and SQL. This proved to be really useful later when creating the Mission Control Center for CLAWS.
Even though it can't be used by UM, you can still check out Reggie Beats here! (You do need a UM Google account)
A lightbulb went off in my head. What if there was a way for students to queue their favorite songs onto the speakers? The staff wouldn't need to check that Google form or manage the song player anymore. Plus, the students would have a more enjoyable time in the dining hall!
This was the inspiration behind Reggie Beats (named after our campus corgi, Reggie Bee). This Django web application made use of the Spotify API to allow users to search and add songs to their chosen queue. The device running Spotify just needed to be connected to the speakers and all the music handling would be done by Reggie. Since the intended setting was one of the nine dining halls on campus at UM, I knew I needed to implement strict admin and filtering capabilities.
Throughout the summer, what drove me to keep working was the vision of students using and enjoying my creation. I wanted the dining halls to become a lively place where the students had freedom in choosing what they listened to.
When the school year started, I immediately went to work on pitching my idea to the dining administration. It was a surreal feeling as I pulled out my laptop and started demonstrating the interface and functionalities of Reggie. It felt even more amazing when I was given the go-ahead to implement Reggie into my dining hall as a pilot test run.
But that euphoria was soon cut short. Apparently, playing Spotify in public places is not allowed and that was all it took to have my idea shot down not long after it took off. There is a silver lining though. From all this work over the summer, I became really good at Django and SQL. This proved to be really useful later when creating the Mission Control Center for CLAWS.
Even though it can't be used by UM, you can still check out Reggie Beats here! (You do need a UM Google account)