One of our teammates, Jacob, comes from India where people travel hours to receive a real classroom education. Additionally, all of us have had some experience using some sort of online classroom application but from our discussions we generally found the applications were too limited and caused students to lose some of the benefits of learning in person. We wanted to develop a new virtual classroom application that gave teachers and students an experience that better reflected what you would have with an actual classroom

What it does

The app provides a platform for teachers and students to teach and learn remotely. Upon registration, teachers can create classes and students can register for them. Teachers can then host live class sessions in which students can participate. Our classroom interface includes live video/audio streaming from the teacher's webcam. There are also two live messaging windows - one for chatting between students and another dedicated to asking the teacher questions.

The student may also control the class sessions using our partner Apple Watch application. With the Apple Watch application, the professor can first choose which class he would like to teach and start the streaming the session. All students registered for the class will receive a push notification that the class is starting. While the class is streaming, the watch tells the professor how much time is left in the class and how many students are currently participating in the live stream. The watch also notifies the teacher each time a student asks them a question through the dedicated question chat window. Much like students raising their hands to ask questions in a physical classroom, the student questions are placed in a queue from which the professor can choose which to answer. Once the professor chooses a question to answer, the watch can read the question to the professor aloud. The professor can then speak the answer into the watch and his response will automatically be sent to the students as an 'Answer' within the question chat.

The watch also offers the teacher the option to send a 'Note' to students within the question chat. If there is an important point the teacher wants to stress to students, they can choose 'New Note' on the watch and speak their note into the watch. The note will then automatically be transcribed and sent to the students as a 'Note' in the question chat.

Another watch feature allows the teacher to take a screenshot of the video stream. This can be used if the professor is working on a whiteboard and wants the students to have the material that is written on the board. By choosing 'Screenshot' on the watch, the application will automatically download the screenshot onto each of the students computers. Students also have the option within the stream to screenshot the video independently for themselves.

The teacher can then end the session through the watch as well.

In addition to the class interface, we have several other resources available for students and teachers. Within the 'Documents' tab, the teacher can create new folders and share them with students. Students then receive push notifications whenever a teacher shares something with them.

Within the 'Contacts' tab, professors can add other professors or students to aid in sharing resources with them. Students can also connect with other students.

Ultimately the integration with the Apple Watch gives the teacher more freedom to move around the classroom and use a whiteboard or other resources in the room without having to monitor their computer to manage the class.

How I built it

We built the backend of the application using Ruby on Rails with HTML/CSS and Javascript on the frontend and PostgreSQL for data storage. We utilized the OpenTok API to setup the video and text chat as well as firebase to handle communication and notifications among users. The Apple Watch application was built using swift along with the OpenTok API.

Challenges I ran into

The main challenges we faced were in integrating the apple watch application with the web application. One difficult task in particular was getting the watch application to connect and send messages to the web application.

Accomplishments that I'm proud of

We are very proud of the Apple Watch integration with our application. In particular, we think the ability to receive and answer student questions aloud and in text through the watch provides a superior performance that best simulates real in-class learning.

What I learned

In addition to learning a lot about building Apple Watch applications and live streaming video/chat applications, the process of building our application made us think about what students and teachers want from a classroom experience. In the end we all felt like we better understood the needs of students and teachers and that our application could be used to help them.

What's next for MCITeach

Share this project: