Eric Olson and David Phillips, co-founders of 3PO-Labs, are both “champs” when it comes to building and testing Alexa skills. The two met while working together at a Seattle company in 2015. Finding they had common interests, they soon combined forces to “start building awesome things”—including Alexa skills and tools.
Eric, an official Alexa Champion, is primarily responsible for the Bot family of skills. These include CompliBot and InsultiBot (both co-written with David), as well as DiceBot and AstroBot. David created and maintains the Alexa Skills Kit (ASK) Responder. The two do most everything as a team, though, and together built the underlying framework for all their Alexa skills.
This fall, they’re unveiling prototyping and testing tools that will enable developers to build high-quality Alexa skills faster than ever.
In the beginning, there was ASK Responder
Eric and David first got involved with Alexa when Eric proposed an Amazon Echo project for a company hackathon. The two dove into online documentation and started experimenting—and having fun. “After the hackathon, we just kind of kept going,” Eric said. “We weren’t planning to get serious about it.”
But over the past year, they grew more involved with the Alexa community. They ended up creating tools that could benefit the whole community. “We wrote these tools to solve problems we ran into ourselves. We ended up sharing them with other people and they became popular,” David said.
The first of these, the Alexa Skills Kit Responder, grew from David’s attempt to speed the process of testing different card response formats. Testing a response until it was just right meant you had to repeatedly modify and re-deploy code each time you changed the response. Instead, this new tool lets developers test mock skill responses without writing or deploying a single line of code. Follow the documentation to set up an Alexa skill to interface with ASK Responder, then upload any response you’d like. The ASK Responder will return it when invoked.
And that’s just the beginning. The ASK Responder’s usefulness is about to explode.
A quantum leap for prototyping
David created Responder for testing mock responses. But the two soon discovered a home automation group using the tool in an unexpected way.
Instead of a skill called “Responder,” they’ll create a skill named My Home Temp, for example. They’ll map an intent like “What is the temperature?” and have their smart home device upload a response to the ASK Responder with the temperature of the house. When the user says “Alexa, ask My Home Temp what is the temperature?” Alexa plays the uploaded response through the Echo. This creates the seamless illusion of a fully operating skill.
When David noticed over 10,000 uploads a day from this group, he discovered how they were using Responder to create “virtual” skills. So why not make it easier? He originally designed Responder to hold a single mock response. Now they're launching a more advanced Responder that holds multiple responses which are uniquely-keyed by intent and custom slot variables. The new Responder will allow for the complete simulation of an entire skill.
“That means you’ll be able to do rapid prototyping of complex skills without writing any code at all,” Eric says. David adds that the same home automation group has been beta-testing the new Responder. They’ve already written a guide on how use it.
The future is quality (and rapid) testing
If you hadn’t noticed, 3PO Labs has a focus on skill testing—both its efficiency and its thoroughness. That’s partly because Eric has a QA background.
Eric says Amazon provides helpful service simulator and voice simulator tools. Knowing a new utterance, intent or custom slot value didn’t break your voice model is another story—especially in a complex skill. And how do you know if your own voice is representative of all possible users? “Right now, people aren’t testing enough. If they are, it’s sitting in front of an Echo testing manually for half an hour, every time they make a small change.”
Eric has prototyped a solution to this problem. The tool aims to automate the voice input to provide reliable and repeatable automated testing. It will also provide empirical measurements to judge how well the skill performs over time with different interaction models. In short, it makes sure that "small change" doesn’t render your skill inoperable.
Eric and David will make the new Responder and the automated testing tool available to the whole community. Watch the 3PO Labs page for announcements about these and other advancements coming soon.
Get Started with Alexa Skills Kit
Are you ready to build your first (or next) Alexa skill? Build a custom skill or use one of our easy tutorials to get started quickly.
Share other innovative ways you’re using Alexa in your life. Tweet us @alexadevs with hashtag #AlexaDevStory.