I have never built an application for a voice assistant device like Alexa and wanted to give it a shot with this project.
What it does
It randomly selects two numbers in a specific range depending on the level and asks the user for the sum, product, or difference of the values. The first level only contains addition within the range of 0-15. The second level contains both addition and subtraction within a range of 0-15. The third level is still addition and subtraction but pushes the range up to 100. And the fourth level is for basic multiplication of numbers in the range of 0-12. This skill is also compatible with the echo show, it will display the equation and other useful information on the screen.
How I built it
I built it by using the Java Alexa-skills-kit SDK in conjunction with Amazon Web Services Lambda serverless compute to host and execute the code.
Challenges I ran into
I had never really seen or used the Alexa tool kit in the past so I had to learn a lot about it. I started off by going through the introductory videos on the interaction model and continued to follow guides and tutorials until I had a basic understanding of how it worked. From there I had to decide what language to use and decided to go with Java. I had to learn how to correctly package the Jar file for the Lambda service using Maven and after awhile of tinkering with the back end services and learning the SDK's syntax, handler's, and objects I was able to get Alexa to begin the skill and began to build the project.
Accomplishments that I'm proud of
Learning how to build skills for Alexa devices as well as learn a decent amount of information on the functionality of Amazon's Web Services.
What I learned
Alexa's syntax for the interaction model Alexa's Java SDK functionality AWS functionality
What's next for Kid's Math Challenge
My original vision for this project was to make it a voice adventure game where you had to answer the question correctly to move on in the story, but due to a few set backs and large amount of time spent understanding all the pieces I decided to go with something a little more simple. I plan on eventually building a bigger project and I feel like this was a good starting point for me.