I want to get non-statisticians to explore data using the English language. I also want to get statisticians to talk about data using English. The Alexa interface for the GapMinder database is inspired by this goal.
What it does
It takes english statements and maps them to structured queries on the GapMinder dataset. It is flexible in the english statements it recognizes.
How I built it
I created an AWS Lambda function to respond to Alexa events.
I wrote and deployed a node.js application to my new Linode server. It crunches the data, responds to AWS Lambda, and serves visulaizations to the client.
I created a graphical front-end using Highcharts and my usual front-end stack.
Challenges I ran into
The echo device cannot get past wi-fi captive portals so I had to get creative to give it internet access.
I have never written an AWS Lambda function or Alexa skill before so there was a lot of conceptual overhead to get through.
Things went wrong in the production environment that didn't go wrong in dev environment. This made debugging a very time consuming process.
Accomplishments that I'm proud of
I learned some cool new technologies
My hack works!
What I learned
Alexa app development
The importance of changing direction when a task becomes too time consuming
What's next for alexa-gapminder
More descriptive stats names as well as units
Incorporation of the _ complete _ GapMinder dataset
Expansion of Alexa's supported "Question Space"
User Authentication and Deployment to Alexa App store