Have you ever been nervous to make that "looking for teammates" posts? Have you ever felt nervous to attend a hackathon because you didn't have a team? I am sure we have all been there at some point. To make the hackathon environment more welcoming to everyone, we wanted to create an app that easily connects hackers with hackers through their preferences: hacking interest, skill level, university... Through our app, we want to bring hackers closer together.
What it does
A user first creates a profile with their hacking skill level, interest, university. The user can find matches with their hacking skill level, interest and university, depending on their filters.
How I built it
We built an android app from scratch and used the FireBase database to store user data. We came up with our own algorithm to matching hackers of similar interests and skill level, and we created a visualization of other hackers to provide a better visualization of potential hacker teammates. We stored user data on FireBase and Cloud Storage, and created our own authentication login system.
Challenges I ran into
A notably consistent challenge during PennApps was the integration of our code with one another. An example was the collaborative work on the FireBase database. Firebase was very restrictive to each user and we had a hard time accessing the same database. We each did our individual parts, but because of the complexity of android studio and firebase, specifically regarding accessing data, integrating everyone's parts was difficult.
Accomplishments that I'm proud of
Being able to finish a project in the span of 3 days is incredible but doing it with complete strangers is just amazing. We are all extremely proud of each other's communication, brilliance, and work ethic. Not only are we proud our app, we are proud to have worked alongside team members who we would love to work with again.
What I learned
We learned the easbility as well as limitations that Google Firebase offers. Though Firebase was very easy to use, we had to find ways around many limitations from its inability to store large data like images, accessing database, and collaborating on the same database. We also deepened our skills in app development and android as we developed the app from scratch. We also learned to better collaborated with each other by dividing tasks and learning Github.