As the bay area is well-known for its extremely competitive schools, many times it may seem as if high school classes are nothing but a grade. Students are very prone to ignoring the possible relationships to be built between themselves and their teachers and peers. This negates an essential portion of the educational experience: if this connection isn't built, a class is no different from a youtube tutorial or an instructional website. In order to get the most out of their education, students should build these relationships with their peers and educators. Encouragement of the building of this bond is what we hope to achieve with our app.
What it does
There are two types of users that can be created with an email, password, and name: students and teachers. Teachers can create classrooms and delete them, and when they create a classroom, they give their students a code to join the classroom. Our app offers several features per classroom: a conflict calendar, where students can mark the day of the week that they're busiest, and the busier the class on a day, the darker shade the UI for the day will be. This way, the teacher can adjust his/her schedule to the schedule of the students, demonstrating that the teacher genuinely cares about the students' well being and giving the students a say in the class schedule. Another feature is a virtual classroom, where students can send texts to a classroom anonymously if they're in need of help. Both teachers and students can see these texts. Because of the anonymity, students can openly ask questions without fear of getting shamed by the rest of the class.
How I built it
We built this in the Xcode engine with the language swift. A large part of our project was created with the Firebase API, which acts as a remote server where we stored our data. The authentication, the virtual classroom, and the conflict calendar all used the realtime database in Firebase as a method of storing, retrieving, and writing data.
Challenges I ran into
As this was our second 24-hour hackathon, we were unprepared for the physical and mental toll it would take. Two of our members had headaches throughout the hackathon, and we didn't get much sleep. As a result, it was extremely difficult to stay on task and work efficiently even when we had very little energy. Moreover, we were conflicted about whether we would use a project we'd already started on or to create a new one. Several hours in, we decided to create a new project, meaning we'd have to start from scratch and putting us at a disadvantage compared to some competitors of ours.
Accomplishments that I'm proud of
We are all very proud of how diligently we worked today. We didn't let ourselves get distracted very often and we helped each other keep going. There were many periods of time where we ran into stupid errors and while it was tempting for us to give up, we powered. Moreover, we are very satisfied with our end result, considering we only had 24 hours to create it.
What I learned
We grew a lot this hackathon, as individuals and as a team. As individuals, we massively improved our proficiency with Swift and Firebase. As a team, we learned how to efficiently collaborate with each other and be open to each other's ideas. Moreover, we took a lot of time this hackathon to plan out our idea before we executed on it, making the coding process a lot smoother.
What's next for ClassroomConnections
We hope to expand on this by adding several new features and publishing it on the app store. After we polish our app, we plan to implement it into our own school, talking to the staff and offering our own teachers to incorporate the app into their own teaching.