This last weekend a few friends and I went to AngelHack Austin, a 24-hour long hackathon held at MakerSquare. Three of us are professional techies, while one is about to join a coding bootcamp, and none of us have been to a Hackathon before. One of the sponsors was Amazon Echo, so we decided to make an RPG on it. We won “best use of Amazon Alexa voice service”, woo!
Check out a video of what we did here.
Alexa is a cool piece of voice recognition software, but we ran into some technical limitations, namely:
- Alexa’s machine learning learns best with whole sentences. If we did not speak in whole sentences, Alexa had trouble understanding us. For example, if we said “Alexa, let’s play”, it was often interpreted as “Alexa, west play”; or if we said “examine the bar”, Alexa would interpret it as “ant and the ball”. To get better recognition we would have to say something like, “Alexa, I would like to play.” We didn’t have enough time at the end to rewrite all of our voice commands as whole sentences, so we had a few misinterpretations during our demo.
- We had to do a decent amount of input sanitization. Alexa would capitalize some names such as “Ian” or “Cecile”, but would leave names like “chris” as lowercase. We also had to make it recognize past tense words such as “examined” be recognized as “examine”.
- Our code relied on persisting variables using the Echo’s session attributes. Sometimes Echo sessions interrupt themselves and reset the session attributes. This was a big issue early on since we weren’t able to persist our variables cleanly, and is an issue known to Amazon. Magically, the issue miraculously fixed itself in time for our demo. ¯\_(ツ)_/¯
It was great to work with a team of friends to write awesome content and build it together. You can check out our code at this repo: https://github.com/cecileceng/angelhack2016