1A: Writing down a trig problem.
1B: The problem is recognized!
1C: Trying to simplify by hand (yikes! There's a mistake!).
1D: MathTutor caught the mistake!
1E: Writing down a correct simplification.
1F: MathTutor agrees with your simplification!
1G: And this one too! You've successfully simplified the expression!
2A: Writing down a difficult (trig-y!) problem.
2B: The difficult problem is transcribed.
2C: A hint has been requested (help button pressed!).
2D: MathTutor comes to the rescue (hint is read aloud too!)!
3A: An option to send expressions as LaTeX by email.
3B: Sending expressions as LaTeX by email.
MathTutor was inspired by a shared desire to make high quality STEM education globally accessible. We believe that for this to be possible, being able to write and communicate math expressions (which aren't always easy to convey with basic text) is essential. Impassioned by our love for technology and education, we decided to hack together this virtual tutor!
What it does
MathTutor is an Android-based app that, when first loaded, looks like a blank sheet of paper. The user can write expressions by hand on the screen and MathTutor will recognize them on-the-fly. It points out mistakes by coloring them red, and confirms correct calculations by coloring them green. If a student is stuck on a math problem, MathTutor will provide a hint for the next step. When the problem is solved, the user can email all of the calculations in LaTeX form.
How we built it
We used an API called MyScript to convert the handwriting into math expressions. Then we built an interface to access the Wolfram Alpha API. The Wolfram Alpha API was used both to check for errors and to provide hints.
Challenges we ran into
The biggest challenge was building a parser to understand Wolfram's output.
Accomplishments that we're proud of
We were excited to interface multiple APIs in our project. This was also Birgitt's first app!
What we learned
Birgitt learned a ton about basic app development. John learned how to interface with two new APIs.
What's next for MathTutor
MathTutor is a standalone project that is similar in spirit to an ongoing project of John's that aims to improve the way people use technology to communicate math and science. Some of the MathTutor code might make it's way into this other project.