Building an Alexa Skill from scratch (Live Stream - Dec 16, 2021)
What is this?
A live stream of me building an Alexa Skill (voice app) from scratch.
As a former Alexa Technical Evangelist, I have built several Alexa skills. But, it’s been a while since I have built one. So I will turning my SMS based app idea (howbigisthebaby.io) into an Alexa skill LIVE with you (what can go wrong, right?)
You will be able to watch my screen, as I build the skill live from scratch. I will not be doing any prep for this, outside of designing the basic interactions I expect to solve for.
Join me, if you're interested in learning how to build an Alexa skill , and connect it to a no-code database like Airtable!
I intend for this to be a fun session where I do what I love and you get to learn a new skill (pun very much intended). Hopefully you will learn some new exciting stuff, and have fun during the process.
At the very least, you will get to see me fall on my face - live! Now, that’s something 🙂
What you will get out of this
Being a core part of the Alexa Developer Education team for over five years, I have learnt a lot about building skills, some best practices, some do’s and don’t. I will try to give out this distilled hard earned knowledge as I build this skill.
✅ You will learn how to create your first Alexa skill - from scratch. No prior knowledge, or coding experience required (It certainly helps if you know a little bit of coding, but it's not required to build your first skill).
✅ You will learn how to use Airtable as a database, and use it to drive Alexa's responses.
✅ You will learn the basic terminology for voice based apps like - invocation name, utterances. You will also learn how to test your skill without needing a device.
✅ Most importantly, this will give you an idea of how things work behind the scenes. You will see what it takes to write code (hint: there's a lot of errors, lots of googling, lots of stack overflow). This is the reality of building software. It's what goes behind the scenes.
✅ Voice Apps best practices: If you’ve never built a voice app, this will give you an idea of what it takes to build a voice app. Building a visual app is very different from a voice app. For example, the voice assistant needs to be to the point, and not too chatty. Also, the prompts need to be framed in a way that’s not confusing. For example - “do you like ice-cream or cookies?” Is a bad prompt, because the answer to that could be “yes”. A better prompt might be - “which do you prefer - ice-cream or cookies?”
What am I building in this live session?
I will be building an Alexa skill (voice app) for howbigisthebaby.io. So, in addition to getting the text messages, I could also ask Alexa - how big is the baby today, and it would respond along the lines of - “It’s week 32 day 4, and the baby is as big as a MacBook.”. That’s it. That’s the MVP for this skill.
Building voice apps is very different from building “screen based apps”. For one, your users can’t "see" the app. It's all voice. So, the way you think of the user experience is very different from what you would have for other screen based apps.
What is howbigisthebaby.io?
I built howbigisthebaby.io for me and my wife. It’s a simple service that sends us a text message every morning telling us how big the baby is today, by comparing it to a fun everyday object. For example, this morning it sent me this -
What is an Alexa skill?
Alexa skills are essentially voice apps that run on Amazon’s “Echo” devices. Echo is the hardware. Alexa is the software that runs on it. Amazon calls these voice apps “skills”, because they “teach” her a new “skill”. There are two kinds of skills - those made by Amazon, and those made by people like you and me. The latter is called a “custom skill”.
That’s what I will be doing in this session. Building a custom skill for how big is the baby.
Do I need to know how to code?
You don’t need to have any prior knowledge of building Alexa skills, or any voice based apps for that matter. It would certainly help if you know a little bit of code, but I will try to keep the initial skill building to a 101 level, so you will still learn the basic stuff about building voice apps.
Here's the tech stack I will be using
Python as the programming language.
Alexa’s Python SDK to build the skill
Alexa Hosted: a free service provided by Amazon to host the code for Alexa skills. So, we wouldn’t have to worry about hosting it elsewhere.
Airtable as the database that includes all the daily facts for the baby size.
-
I will start off with the “hello world” template provided by Amazon, and customize it from there.
How long will this session be?
I am hoping I will be able to get the MVP done in 2 hours or so, but if it takes longer, I might split it across two days.