Imagine you finish playing Bastion, an niche game you found on Steam. The indie graphics are vivid and the narration and storytelling is thought-provoking , and you really want to share this new experience with someone. But sharing your exhilarating gaming experience can often be lost amid an excess of information spread via news-feeds, twitter-bots and subreddits. Our inspiration for this platform is inspired by providing the ability to have a meaningful exchange of ideas and topics that are often lost amid the modern rapid social-media focused lifestyle.
What it does
Our product hopes to counter this problem by creating an intimate and meaningful connection between two people via the exchange of categorised ideas; movies, music, restaurants - it can be anything. Two anonymous users are matched based upon similar interests and corresponding search criteria, and are given the opportunity to recommend to each other an idea. This interaction hopes to provide a exposure to new ideas and give users an opportunity to share their own passions and interests. Unlike a chat bot, our platform highlights the idea as the focus of the exchange rather then the people involved. The interaction involved is exclusively two-way as users must share a recommendation to receive one in return. Emotive and critical feedback is an important aspect of sharing new ideas and it was important to reflect this in our platform. However, our app restricts the quantity of user feedback, with the aim to induce more meaningful and thoughtfully constructive feedback among our users.
How we built it
The platform was build by our three team members and coded in Python scripts. Our front end web-interface was built using Flask and Bootstrap. To manage the user data we build a custom database from scratch using Python's sqlite3 library. We also built Python scripts to manage requests from our front end and manage our sql database, as well as our search and matching algorithms.
Challenges we ran into
UNIHACK's lack of theme and deliberate open-endedness was definitely the most challenging part of the hack process. Coming up with a good idea that aimed to be original and fresh was particularly difficult, as was deciding on how to logistically implement the idea that we settled on. Our team faced technical challenges from the get-go. Only one of our team members had prior experience with HTML scripting and sql code. As a result, we had to learn these functionalities as we built the platform. In addition, none of our team had experience with building a working database and we ran into architectural problems throughout the hack as we discovered flaws in our design, and were consistently having to come up with bandaid style fixes. We also found it very difficult to succinctly and effectively communicate the essence of our idea to any of the mentors .
Accomplishments that we're (somewhat) proud of
Despite having to learn almost 2/3rds of the technical skills we used in the project we ended up with a (mostly) working platform!
What we learned
Working in Python is a godsend as you can literally write in English and your code will compile, and, most likely, run. But never on the first attempt. As mentioned previously, we learned how to write a database (sqlite) from scratch in a day. Database design is (unsurprisingly) really important and a lot more forethought needs to go towards that before we attempt a similar build again.
What's next for SondR
Currently no plans. But we're not adverse to some startup or incubator trying to help us make the idea a commercial platform!