Inspiration: When hunting for a roommate, one often has to go through ad after ad to find one that relatively meets the criteria that they are looking for. With universities such as McMaster, there are entire groups dedicated to finding a suitable roommate, and even then, ads are often lost in the sea of people looking for someone to live with.
What it does: With 'Roomies', simply type in what you are looking for, and using our searching algorithm, we will sort it and pull up the best matches for the criteria you have searched for.
How I built it: There were two directions we started with this application: the front end and back end code, and we eventually met in the middle. What I was responsible for was the front end, involving the CSS, Bootstrap, and HTML. This started off by first creating a skeleton site, and later filling it in with Facebook authorization. Once this was done, the next part was setting up the site to accommodate the information that would later be pulled from the Facebook API.
The back end was done on Microsoft Azure, where the database was created to store all the information that was pulled from Facebook, as well as to host the site. Darryl first learned about the back end that was necessary to implement these features, and once he had completed this, he proceeded to figure out the exact path he would need to follow to get all the information necessary from Facebook for our application and how to pass this information from the front and back.
The 'middle' process involved the mathematical calculation of finding the best match based on user defined preferences. David started off with a class file for the people object with constructor of information that he would pull off of Facebook, and then proceeded to make functions for information the user would themselves. His process for finding the best match involved assigning values to find the profile of the best matches with a linear scale towards accounts with similar ratings toward the user, and an exponential scale towards ratings that the user acquired from previous clients.
Challenges I ran into: Some of the challenges we ran into was the constant flow of information to the server as simple errors would cause the entire program to crash. There were also issues with communicating between the front and back end as these two programs were done simultaneously, and certain things were not taken into account into much later, such as passing the information the user has entered to the back end, and the matches back to the front end. In addition to this, while we got a sorting algorithm that mainly worked, there were a few glitches which we were not able to solve, and in doing so, we hard coded in matches to solve this problem.
Accomplishments that I'm proud of: One of the things I am personally proud of is the front end design, as it is the first time I've designed a fully functional front end website which has access to back end codes.
Darryl is proud of learning a new language and producing a product within a tight time frame as it provided a variety of problems along.
David is proud of contributing a significant part of the program which involved a complex mathematical algorithm and models to provide accurate data to help find the closest match.
What I learned: I learned that I enjoy front end programming and possibly would like to continue this in the future.
Darryl learned that php and skills required in project management, and working in a team. David learned that he enjoys the math and logic behind programming.
Log in or sign up for Devpost to join the conversation.