What is Alexa?
Alexa is a virtual personal assistant from Amazon. Similar in spirit to offerings from Apple (Siri), Microsoft (Cortana) and Google (Assistant), you can speak to these personal assistants and ask them to read the weather report, play a song or tell you a joke.
What truly sets Amazon's Alexa apart from the other personal assistants, however, is that it provides an API that programmers (like us) can use to define new skills for Alexa — teaching it new tricks.
Demo
As a demonstration, Finite Wisdom has developed a new skill for Alexa that allows it to connect to Harvest, the time tracking application that we use to track the number of hours we bill each day to each of our clients. With this new skill in place, one of our clients can have a conversation like the following with Alexa:
- Alexa, what's the weather going to be today?
- Alexa, open Finite Wisdom
- What is your telephone number?
- What are your hours of operation?
- How many hours did you bill to Blazing Tadpole this month?
- How many hours did you bill to Blazing Tadpole last month?
- How many hours did you bill to Sadistic Pigeon last year?
- Close
- Alexa, open Pandora please
In fact, the video on this page recorded this exact conversation along with Alexa's answers to each question. Watch it now.
It is important to realize that the answers to the "how many hours did you bill" questions are determined on the fly by connecting to Harvest and performing the appropriate calculation. If one had asked the question "how many hours did you bill today", then the answer would change as the day progressed!
What technologies were used in this demo?
What's next?
Three things. First, our Alexa skill needs to provide a more natural voice user interface (VUI). Currently, the voice interface is somewhat stilted:
- Alexa, open Finite Wisdom
- How many hours did you bill to Blazing Tadpole this month?
- How many hours did you bill to Blazing Tadpole last month?
- How many hours did you bill to Sadistic Pigeon last year?
- Close
A better VUI would be something like this:
- Alexa, talk to Finite Wisdom
- I'd like to discuss Blazing Tadpole
- How many hours did you bill last month?
- How about last year?
- Let's switch to Sadistic Pigeon
- How many hours did you bill last year?
- That's all for Finite Wisdom
Second, our Alexa skill needs better security for our clients. Currently, we've used the security through obscurity approach and given each of our clients a nickname, e.g. "Blazing Tadpole" for "Boost Technologies" or "Sadistic Pigeon" for "Stony Point Surgery Center". That's fine for a demo, but it won't fly in the real world.
Third, I need to put the cat outside before recording any more videos.
Once we've made these improvements, we'll post a new entry for "Take 2".