During the transition to online classes due to COVID-19, there was a lot of confusion as to what the best ways to teach were, and how students and teachers could best interact in this new online format. Inspired by the confusion of every teacher doing something differently because no one tool did everything they needed, I wanted to build a supplemental platform for teachers and students to interact via live lecture.

I spoke with Dr. Spagnuolo, the Chairperson of the Department of Mathematics and Statistics at Oakland University, to do some initial user research on what the hardest parts of teaching online were. From there, I tailored the app to what she had discussed as the biggest problem from a teacher's perspective, as well as what was problematic for me as a student.

What it does

Based on the initial research, there were 3 main areas that were noted as issues in the traditional online format:

  1. Students don't feel comfortable un-muting their mic while the teacher is talking, and there is no way to virtually raise your hand in most video platforms.
  2. Many classes have an in-class attendance or participation component, and that part of the grade was replaced with tests during COVID. It's better for students if their grade isn't based on just tests, and it helps teachers to see who is engaged in class.
  3. When teachers ask a question in class, one voice tends to drown out everyone else. There needs to be a way to democratize class participation so everyone can answer (and get credit if there is a participation grade).

Therefore, Auto TA is a platform for students and teachers to easily interact while on a video lecture. It lets students raise their hand to ask questions, and it lets teachers poll the class and ask questions to do attendance and participation grades. It also generates a report for teachers so they can view the data over time for grading.

How I built it

I built a web app using React and Typescript for the front end, and Firebase for the back end authentication and database. The web app was geared for responsive design, so it is easily viewable either split screen with the online lecture, or on another device like a phone.

Challenges I ran into

It was a lot of work to figure out how to secure all of the data so both students and teachers had enough live data to be useful during the class, without exposing grades to students or personal information to the public. I also needed a way to make sure that data integrity was persevered between classes, so that students can't cheat the system and just enter all the correct answers they get from a friend after lecture.

Accomplishments that I'm proud of

It was a time crunch, but I got it done! All of the major systems are fully working, including both live polls and hidden short answer questions with an auto-grader.

What I learned

I learned a lot about live data and webhooks, how React handles listeners, and how to handle concurrent edits in a database. Because the entire hack was centered around the synchronous use of data, I learned a lot about how to move data back and forth synchronously efficiently, so I wasn't just reliant on pinging the server every 5 seconds!

What's next for Auto TA

Give more time, I'd like to add more types of questions, like specifying a number for short answer, or letting the teacher choose the categories in a poll. I'd also like to expand the report, so the correct/incorrect answers are more clear, and so it is downloadable for teachers to import into their grade book. Finally, I'd like to deploy Auto TA for some user testing, and iterate based on feedback from there!

Share this project: