My partner John wanted to find a team at PennApps. He attended the organized team building session but did not find it as helpful as it could be because the hackathon has already started and not many people attended. I also looked into joining a team, but I used the organized Facebook group instead. I was not able to look through all of the posts and therefore was not able to fully go through all the possible options. This led us to think of an optimized way of building teams at hackathons.
What it does
The app is for people who want to create a team, join one, or both. First, a user profile is created. Each profile includes various fields such as email, hackathon, programming language(s), interests, and experience level, among others. The profiles are stored in a database. When a user searches for possible team members, appropriate user profiles are retrieved from the database and listed for the user to browse through. Users can use the contact information provided to get in touch with one another if they so choose.
Challenges we ran into
Setting up the database was a challenge because the documentation for Firebase made it a lot more complex than we anticipated to integrate with Flask. Therefore, we ended up sticking with a local database for our purposes as most of the information we would need would be user-provided anyway.
Accomplishments that we're proud of
John is already acquainted with Flask and Git, so to his credit, he established most of the integral framework. I am essentially a complete beginner with these so I was proud that I was able to start learning these and code in HTML in the front end a little bit too.
What we learned
I learned the basics of Flask, Git, and HTML. We both learned more about databases and how to connect it to the front end.
What's next for pennapps2018
The project isn't completely working yet, so we need to finish coding the backend and integrate it with the frontend. Once that is completed, we would like to set up a visually pleasing user interface to make the app more legitimate.