Mathcounts was a math competition that I participated in while in middle school, so I wanted to make something that would help other students practice for Mathcounts competitions while having fun (the countdown round is the fun one).
What it does
Alexa reads questions from the Mathcounts countdown competition chapter and state level (160 problems total) one at a time, while keeping track of your score. You have 16 seconds to answer after every question is read and the question is repeated twice. If your Alexa device has a screen or you are playing on the Alexa app, you can also see the questions while they are read by Alexa.
How I built it
I built the specific utterances (the words the user would say) on the Alexa console. Using the history of the user's responses and their utterances, I determined Alexa's response with AWS Lambda (the Alexa device sends JSON containing history and utterances to the lambda and the lambda sends JSON containing what words to say back to the Alexa device). The problem database was pulled from the mathcounts website and stored in the code.
Challenges I ran into
The format of some of the problems on the website were in such a form that Alexa couldn't read them (such as fractions, division signs, special characters, subtraction signs, parenthesis, and multiplication signs), so I had to manually edit some of the questions so that Alexa could say them. Moreover, optionally adding units to your answer was a problem at first, because sometimes Alexa wouldn't understand how to respond to an answer with units. So, I had to manually type out all the possible units that the user could say, so that Alexa could formulate the correct response.
Accomplishments that I'm proud of
I created a helpful and educational Alexa skill that could help anyone get better at math if they practiced using the skill!
What I learned
I learned how map utterances (what the user would say) to specific intents (whether the user stated and answer, was asking for the next question, saying no...), which will be very helpful in future Alexa skills.
What's next for Mathcounts Countdown
I plan to get others to use my skill, so it can help anyone prepare for math competitions.