Two of our team members were eating at a dining hall late at night. While they were eating some fattening food, they talked about how hard it is to find a pickup game whenever they want to play basketball. Then they thought how awesome it would be if there was an app for that. So we made QSport.
What it does
This application gives people an easy way to play pick up sports. This web (iOS coming soon) application allows people to create or join a session of any sport with any sort of description, criteria, filters, etc. This app is really good for team sports such as basketball, soccer, cricket, etc... because it allows people to meet other random people who are interested in playing the sport. Even for 1v1 sports, it allows the same functionality.
Challenges we ran into
We ran into some challenges with implementing some of the custom UI elements. We ended up prioritizing the ones that we wanted and scrapped the ones that we didn't have time for. We also ran into challenges with the FourSquare API because it does not always return relevant information. Getting the user location to the server was a challenge because it was hard to find a way to send it through headers or something of that sort.
For the mobile application we ran into design issues. During the hackathon, we had to reimplement one of the tableview for the application. We also ran some issuess into network authentication for the mobile application. Also while implementing one of the tableviews, there were little nit picky issues with UI.
Accomplishments that we're proud of
One of the things that we are proud of is finishing the web application of this project and making good progress on the mobile side. This was a very big idea and there were a lot of things to implement. Another thing we are proud of is implementing the project with the FourSquare and MapBox API. Both of these APIs were very crucial in implementing the core functionality of our application. We are also proud of our fully functional backend and it is successfully integrated with the project schema. We also implemented some custom UI elements that make the website more pleasant to interact with.
What we learned
Our team learned the kinks of Express and how to properly incorporate a backend to an application. We learned how to use the FourSquare and MapBox API with our own application. One person on the team learned how to make custom UI on the application and Jade which is a mark-up language. While working with the mobile application, we learned network authentication and getting/posting to the server. Another thing we learned during mobile development was protocols, extensions, delegates, custom views, stack views, and custom tableviews.
What's next for QSport
Right now we have a very basic implementation of QSport. Our ideas for the future is to finish the mobile application and make the mobile application more user friendly. We also want to make the GUI for the web application better and add more customization to the GUI. For implementation features, we have a lot of ideas. Our first idea would be applicable if the FourSquare API doesn't get a court or a location to play on. We want to allow the user to enter his/her own location of interest and create a session there. Once the user creates the session, this location would be saved on our main database and now whenever a user searches that specific court they will see that location in the application. We also want to implement group messaging and friends in our application. So whenever the user joins a session they will have the ability to message others and talk to them.