Inspiration
We decided to address Google’s challenge of dealing with the pandemic. One thing that we noticed is that since college students are not able to live on campus, they are isolated from the Hopkins community. A student might have to study alone in their room during the evenings while their family relaxes or plays games; it’s a lonely feeling. On campus, many students thrived from the sense of solidarity and camaraderie while studying together, working out together, or eating together. We attempted to create an interface where this could still be possible virtually.
What it does
Our project makes student life better under COVID pandemic. By logging into our app, students can press “Brody Learning Center” and “Levering Hall” (“Gym” needs further construction) and go to that place virtually to communicate with each other. It allows students to see how many people are actively inside the building and see what they are currently doing. This creates a sense of going to a virtual university with friends and classmates around. By going into the “Brody learning Center”, one can see several tables that are listed. People can choose to go to a specific table and chat with each other; they can also name their table like “Intro to Java” which will attract people from the same class to come and discuss. By going to the “Levering Hall”, one can see pictures of what other students uploaded (about their meal/snacks). They can also upload their own pictures or chat with people. The Gym section is not implemented yet, but we hope to implement something similar to the Brody Learning Center in which people can update what kind of exercise they are doing and chat with people.
How I built it
We used Java in Android Studio and a Firebase backend. User information and chat history is all stored in the Firebase and loaded when navigating throughout the app.
Challenges I ran into
Only half of us have been to a hackathon before and only half of us have programmed for Android before, so there was a learning curve for a lot of us. Without as much experience in hackathons, we were a bit ambitious to start. We had a lot of features in mind when we were brainstorming, but implementing everything would have been possible in this short amount of time. Prioritizing the most important aspects of the app was difficult. In addition, we’re much more used to long projects where one person could just wait for the other to complete some section of work before even beginning. When time constraints are so limited, this isn’t feasible; we had to create more simultaneous workflows. In addition, some aspects of Android studio and Firebase were difficult to learn to use since many of us did not have experience. One particularly technical difficulty we struggled with was uploading and accessing images in FireBase, but we were able to complete it after all.
Accomplishments that I'm proud of
We’re super proud how we were able to incorporate Firebase so that interactions between users could be seen in real-time. Going into the project, we assumed that our updates might be slow or you would have to log out and back in to see updates, but using our chat was just as fast as any messaging app you could download on your phone. While some parts of the app are still unfinished, it felt awesome that the core of the app seemed so effective.
What I learned
For some of us, it was the first time participating in a hackathon. It was definitely a learning experience coming up with our own idea with such an open-ended range of topics to choose from rather than developing something in a class. For others in our group, it was our first time doing any app development. By just diving in without much instruction, we still learned a huge amount about how core elements like view elements, the activity life cycle, and more.
What's next for COVIDUniversity
Our first next step would be to simply finish up the structure that we have: actually put table names in the library, put real features into the gym, allow a user to edit their profile, etc. We developed a lot of the main elements that other areas of the app would use; creating a chat in the gym would be easy after having already created it for the other two locations, for instance. In addition, since we were in such a limited time window, we would probably revamp a large amount of the aesthetic and layout choices; we generally just tried to get the functionality down. Some elements such as a navigation bar, more clear labels, and more would greatly improve the user experience. We also had some ambitious extensions in mind that would be further down the road. For example, we had considered using some kind of natural language algorithms to label the topics of recent conversations at the various tables in the library so users could know which table would be most useful to join.
Log in or sign up for Devpost to join the conversation.