How to build a skill for Alexa…


I’ve had  Bose Wave Radio in my kitchen for close to ten years now. My aging Mother, who doesn’t see very well gave up on tv years ago and so her sole entertainment was this Bose radio. We would NPR on constantly and the various hosts kept her company throughout the day.

One day a few months ago, the Bose Wave just stopped working. I was a bit confused because even though we had it for close to a decade, I thought those things were supposed to last forever. I’m still working on getting the Wave fixed but I wanted an affordable replacement in the meantime.

I decided to get an Amazon Echo Dot. It cost just under $50 and I was intrigued by  the Dot’s AI function Alexa.


I thought it would be helpful to be able to ask Alexa the time, weather, and what time the train would arrive. Alexa is capable of SO MUCH MORE! I can not only listen to my Spotify playlist and my favorite podcasts, but I can also listen to and play interactive stories all hands-free while I’m doing the dishes. Check out The Wayne Investigation…so much fun!

Anyway, Alexa has countless skills that you can enable to do all sorts of fun stuff! Amazon has been pretty open with the developer’s platform and they’ve made it super easy peasy to build your own skill. One of my favorite learning platforms A Cloud Guru has a free introductory Alexa course. It walks you through how to build three different skills for the Echo.

I decided to build a Flash Card skill to help me study for my AWS Solutions Architect exam. It sounded intimidating at first, but it’s actually easy peasy lemon squeezy.

So the first thing you need to do is head over to the Alexa Skills Github repository. Amazon has been pretty generous and have provided the source codes for TEN different skills all packed up nice and cute.


I downloaded all the skill files so I can eventually play around with all of them. I used ReindeerGames as the basis for my Flash Cards skill. Be sure to log into your AWS account AND the Alexa Developer Portal so you can create your skill. You need to make sure that all the accounts are the same and/or linked. Your AWS account, your Alexa App, and your Alexa Developer Portal must all be the same username.

In your AWS console, select the Lambda service.


You can see where I’ve created my Flash Card skill. Hit the blue button to create a new Lambda function.

screenshot-2016-12-12-11-17-42Select this Alexa skill kit as your blueprint.

Screenshot 2016-12-12 15.59.40.png

Select Alexa Skills Kit as your trigger and then hit next.


You’re now going to name your skill and add your code. You can just copy and paste the ReindeerGames source code you saved from Github. In the source folder of that file, there should be an index.js file. Open it with your fave text editor (mine is TextWrangler) and then edit the code to add the questions you want to be asked.

Screenshot 2016-12-12 20.11.06.png

After you’ve added your desired code create your Lambda function! Be sure to copy the ARN that will be created at this point. You’ll need that for the developer portal.

Head over to the developer portal and under the Alexa Skills Kit select ‘get started.’

You’ll then select ‘add a new skill’ you’ll then have to add your invocation name, your utterances and custom slot types. I’m planning to make another skill so I’ll do a full walkthrough of the developer portal then. I’m not able to upload my snippet of me being quizzed by Alexa. I need to do more studying, but I had fun making my very own skill!




How to get into Lamda…

I’ve been working through some AWS labs in preparation for the Solutions Architect Associates Exam. I’m getting more familiar with the services provided and getting to know the inner workings of each service. I’ve mentioned before that EC2 is the superstar around which all the other services revolve. Well, there seems to be a new girl on the rise and she seems to be coming for the EC2 throne. Lambda is the service that seems to be on every developers lips. At first glance Lamda just looks like EC2, but with the ability to deploy code. It’s so much more than that.Startups seem to love it, its cost-effective and everyone is excited. Cloud Academy is launching a new learning path for it and ‘server less architecture’ is a buzzword.

So what is Lambda exactly, and how is it different from EC2?

AWS Lambda is a compute service where you can upload your code to AWS Lambda and the service can run the code on your behalf using AWS infrastructure. After you upload your code and create what we call a Lambda function, AWS Lambda takes care of provisioning and managing the servers that you use to run the code.

-Amazon Web Services


In other words Lamda is a way to run code without a server. The code runs in response to ‘triggers’ that are put in place by the developer/user. It’s a sort of ‘set it and forget it’ model. It also seems to be a lot more cost-effective than dear old Ec2.

AWS Lambda lets you run code without provisioning or managing servers. You pay only for the compute time you consume – there is no charge when your code is not running. With Lambda, you can run code for virtually any type of application or backend service – all with zero administration. Just upload your code and Lambda takes care of everything required to run and scale your code with high availability. You can set up your code to automatically trigger from other AWS services or call it directly from any web or mobile app.

-Amazon Web Services

It seems to be an interesting and useful service to learn. I wouldn’t be surprised it a Lambda Certification pops up in the very near future. Also, every time I say Lamda, this song gets stuck in my head–