Inspiration

Will and I are fans of all kinds of music, and while we share many of the same interests, there is still plenty of music that one of us may not know about that the other does. Our efforts to recommend music to each other have been unsuccessful for a couple of reasons. Since we don't happen use the same music subscription service, nor do we want to share large quantities of space-consuming music with each other, we end up texting songs or artists to check out, often in the form of YouTube links. This isn't ideal because of a natural tendency to judge the name of the song or the artist, and in some cases skip through the song at semi-regular intervals. We realized there had to be a better way to recommend music to each other, one that would allow us to recommend any type of music while being able to fully appreciate its worth.

How it works

Our solution involves using youtube-dl, an open-source, command-line program that lets users download video, and audio, from sites like YouTube and Soundcloud. Those two sites alone would afford us, and other users, no shortage of musical recommendations. The site allows users to create accounts, add each other as friends, and recommend music to each other effectively, which brings up the second issue we encountered. We realized that with less functionality, less control, users would be able to better appreciate and consider the music recommended to them. Specifically, there is no identifying information about the song displayed to the receiver, not the artists' name, title, or album cover. There is only the music itself to consider. Furthermore, users can only pause and play one song at a time, in order of which they were received, so they can't fast forward through it. The only other action they are able to take is to like or dislike a song, which may only be possible after a minimum amount of time of the song has passed. If a song is disliked, it is skipped completely and discarded. If a song is liked, then the information about the song is revealed and saved for later viewing.

Challenges I ran into

The biggest problem we encountered was with our initial choice of database, Postgresql. While I had some previous experience with mySQL, we were both still very inexperienced with that particular database management system. Even though our schema wasn't very complicated, our efforts in setting it up correctly were anything but. This occupied a great deal of our time and energy.

Accomplishments that I'm proud of

After the Postgresql slump, we were reinvigorated when we reconsidered using MongoDB, which we initially thought wasn't ideally suited for the project. With Will redoing the database with MongoDB, I was compelled to start working on the front-end of the website, which was a lot of fun. Seeing us get back into this passion project with the requisite vigor was much welcomed by us both.

What I learned

I learned that it is especially important to be prepared to work with new languages and APIs, and that it is sometimes best to stick with the tools you are more familiar with. Even if they don't seem like they're the best fit for the job, what really matters is your will to accomplish the job at hand.

What's next for Muse

While we weren't able to get a working product during LA Hacks, which is why we decided to leave before judging, we are committed to finishing this project as soon as possible. Once we make sure the backend is as solid as can be, we will start letting some of our friends and their friends use the service in order to get some initial feedback. After a good amount of beta testing, further development, and fine-tuning, we will incorporate our monetization plan, which will allow paying users to send unlimited recommendations to their friends. Through it all, though, the project will be completely open-source. Once we have put the site through beta testing and implemented the monthly premium subscription option, we will open the site up to anyone who wants to discover new music and help their friends do the same.

Built With

Share this project:

Updates