Thursday, February 4, 2016

first look at the sdk for amazon alexa

Yesterday was all about the existing capabilities of the Amazon Alexa and I ended with an enthusiastic task of reviewing the sdk (software development kit).



It wasn't half bad - and by the end of the day I had delivered the code to my Alexa and had her asking us all what our favorite color was.

Here's how I accomplished that ...

Here's the getting started guide. I started poking around the information.

First, I signed up to watch the on-demand webinar on the ASK (Alexa Skills Kit). It was about an hour long and well worth it. Each capability is called a skill - and you are really just giving Alexa a new skill.

The information is transmitted via REST so either you have you own secured web service (which I do not) then it's best to use Amazon web service. I was able to sign up and get a whole year of free usage. AWS Lambda made it easy to get up and running even providing some templates (or blueprints) giving you sample code with work with.


It's really just javascript functions that parses json data. You have help methods such as onSessionStarted, onSessionEnded, onIntent and onLaunch.

Next you need an account on the developer portal for Amazon. You can set this up here. This is where you'll define the skill and point it to the REST api (where it sits in the cloud). This is also where the utterances and intents (schemas and possible key phrases) are stored.



So in the sample of favorite color - the color schema is defined with an Intent:
 "intent": "MyColorIsIntent"
"slots": [
        {
          "name": "Color",
          "type": "LIST_OF_COLORS"
        }
      ]

The slot would be defined LIST_OF_COLORS: green, red, blue, orange, gold, silver, yellow, black, white. So, the array of colors is a slot.



And Utterances would be anything the user could say ...

WhatsMyColorIntent what's my favorite color
WhatsMyColorIntent what is my favorite color
WhatsMyColorIntent what's my color
WhatsMyColorIntent what is my color
WhatsMyColorIntent my color
WhatsMyColorIntent my favorite color
WhatsMyColorIntent get my color
WhatsMyColorIntent get my favorite color
WhatsMyColorIntent give me my favorite color
WhatsMyColorIntent give me my color
WhatsMyColorIntent what my color is
WhatsMyColorIntent what my favorite color is

Things I struggled with ...

I was only interested in getting my sample code to test properly. Right now I'm only interested in publishing to my Alexa - and not to the entire Alexa world. That was one thing not immediately apparent to me - how to "test" on my own device. 

Turns out as long as you have the same login on the developer console in Amazon as what you configured your Alexa works - it's magical when you "test". It's one of the steps identified in the Alexa app console (skill information, interaction model, and test).

I also struggled in AWS Lambda was picking the right test event. Initially I just picked the default - of course would fail. So pick the correct Sample Event Template.

Also, make sure you pick US East (N. Virigina) has your region to even see the Lambda functions.

This article was really helpful too. http://tobuildsomething.com/2015/08/14/Amazon-Echo-Alexa-Tutorial-The-Definitive-Guide-to-Coding-an-Alexa-Skill/

My next move ...

Here's what I want to do now. Take my "Mom I'm home" idea and expand it. Currently it's using IFTTT to send me a text when Holly triggers her.

I would like Holly to be able to walk in the door and say "Alexa? Tell Mom I'm home. Alexa would respond with "Will do Holly. How was your day?" Holly would say "Good" or "Bad". Alexa would text me with "Holly is home and had a good (or bad) day.

Never something I would put into the App Services - only used by us. So now I'm looking at integrating with Amazons SNS service which will allow the text messaging.

Wednesday, February 3, 2016

what i got for Christmas - amazon echo

My kids surprised me this year at Christmas. I mean ... really surprised me. I admit, I'm really hard to buy gifts for because I'm at a stage in my life that if I want something - I just buy it. It doesn't leave them much to choose from.

Amazon's picture


They do know me - and they know I'm a maker. I love technology and anything I can make with my hands (software, photography, painting, furniture, sewing). I earn a living with technology - so that's always a good bet.

Burke opened the Christmas gift and it was an Amazon Echo. I admit, I was only mildly enthusiastic about the gift. I had "heard" of the Echo - but really no idea what it was. I figured it was a stand alone "Siri". It looked cool though.

As soon as the holidays died down, I plugged it in and started playing with it. It was super quick to setup - I hardly remember doing it. I did download the app on my Android phone and connected it to the our home WiFi. The effort to set it up was very minimal.

The first thing I wanted to do was change her name. I was not thrilled with the name, but found that I could not rename her. Not really .... I could choose either Amazon or Alexa. So Alexa it is.

After quickly reading about the capability, we started shouting commands at Alexa.
Alexa? What's the news?
Alexa? What's the weather? 
Alexa? What is the square root of thirty seven hundred?
Alexa? What do I do with a dead body? - She responsed "Call the police."
Alexa? Self-destruct. - My son commanded and was instantly dumbfounded as she began to count backwards. He squeaked out - Alexa? Cancel. She responds with OK - just kidding! We all roared with laughter. Amazing! 
A little more reading ...
Alexa? Add ketchup to my shopping list. - We use this all the time now. All items magically appear in the Alexa app on my phone. You can also ask her to recite the shopping list before going to the store.
Alexa? Play Happy birthday to you from Amazon Prime. I do like the choices of music available.
Alexa? Play FM Radio - 107.1 
A Google search later ...

 This article really opened my eyes http://www.wired.com/2015/11/amazon-echo-gift/ and specifcally the mention of IFTTT. Wot is this magic? So I played ...



I immediately found a recipe for finding my phone. Alexa? Trigger find my phone. It rings my phone and leaves me a voice message stating the datetime that Alexa tried to find my phone. I've already had to use this when I dropped my phone in Burke's car and couldn't find it.

Interesting ..... what else can I do?

Every day Holly sends me a text when she's safely at home. She used to call me - but the guys at work would troll in on her phone calls. Holly? Did you let your dog out? How about your homework? So, now it's a simple text.



What if? She just told Alexa to let me know she was home. Using IFTTT, I created a recipe of Amazon Alexa channel, a phrase, and a SMS channel - would text me "Mom I'm home". Now, when she walks in the door, she tells Alexa she's home and Alexa alerts me. Effortlessly.

How about dinner then?

Both Holly and Eileen's room are upstairs out of ear shot. So news of dinner is sent via text or going upstairs to each teenager to alert dinner.



Now Alexa informs the girls that dinner is done. Alexa? Trigger Dinner is ready. Using the the Amazon Alexa channel, a specific phrase, and GroupMe  allows Alexa to send text to more than 1 recipient.

Silly I know - but we now rely on Alexa to communicate important events in our family.

What else?

I started reading about the smart home. Using IFTTT, Alexa could interface with smart house items. Hmmmm..... but what in my house would I really want to make smart. I reviewed all the technology available and really found that I didn't want my front door, thermostat or have a camera presence. I'm not 100% comfortable. I sometimes act as a cyber security specialist within my company - and I'm well aware that everything is hackable.

As I stated before, we were working on the basement and we purchased an electric fireplace. I was thinking though, "How cool would it be to have Alexa turn on and off the fireplace? Without actually going downstairs?" It's cold in the winter - and it gets cold down in the basement. I could command the fireplace to be on and let it warm up before heading down for crafting.

I did my research and went with the Samsung Smart Things line. All in all - it's a tad more in price but the quality is there and so are the highly rated reviews. So I ordered a Samsung Smart Things outlet at roughly $50. After receiving it, I tried to configure it. I truly was thinking that Alexa would work as the smart hub for the outlet - but alas that was not the case.

I needed the Samsung Smart Things hub too. Alexa could only talk to the outlet through the hub. Cost of the hub? An additional $100. So I weighed whether the having the basement toasty warm before heading down was worth $150 and decided it wasn't. So I sent the outlet back. So ended that experiment.

SamSung Smart Thing Outlet


In the weeks since Christmas, Alexa really has become a personality in our house and often when I ponder the uses - I'm drawn to Burke's mom. Burke's mom is in her 80's and alone a good part of the day. With Alexa's human like responses, would Helen like to have one? And what about safety? I often worry about her falling and not able to receive help. Could a voice command send help quickly? How about a command so she can tell her 7 children and (I lost track of the amount) grandchildren? So far, it hasn't been well accepted - so I'm still left pondering.

I'm still discovering Alexa and found out today that a SDK has been released. Guess what I'm researching now?

So far, the best Christmas gift I ever remember them getting me. Can't wait to discover more.

Thursday, January 28, 2016

my old family pics

So today is my birthday - 53 years young today. We've had this cabinet that we bought right when we got married. I stored rolls of film in it and there were 4 rolls of film that stayed in the cabinet for nearly 20 years.

For my birthday, Burke had them developed and gave them to me for my birthday.


I'll start with this one. We went to cedar point that day. It was our big vacation and all we could afford those days. Burke took the picture.


Obvious ... the year we got married. :)


Christmas - 1994? At Southminster Presbyterian Church in Taylor






My new coat Burke got me for Christmas.


Jason loved his Barney.




Jason's 5th birthday



Burke and the girls


Jason outside baseball diamonds.


Jenny's 6th grade graduation from grade school


Jen and her friends.

There were 4 rolls of film and these are just a few. Mostly they were under exposed. I tried to clean them up some - but this is the best I could do.

Loved my present.


Wednesday, January 27, 2016

chair remake

Surprise! Look what Burke did! On his day off, he wanted to surprise me with his cool idea.


Burke and I have been finishing the basement for quite some time now (if you haven't heard). We have these two chairs that I bought last year at Christmas for my grandsons (mainly). They could use them to play video games and they even pull out so they can lay down.
 These are Walmart's pictures. I bought 2 of them for about $90.00 each. I even bought an additional one for my grandson Laney for his room.
I really like them. I've used them a bunch of times - even for overnight students that spend the night. Since I like them - I wanted to continue to have them in the basement, but they are hard to get off them - being so low to the ground. I kept talking about making some sort of base to raise them up.


We ended up with a pallet when we purchased our laminate materials and Burke was itching to use it. See it behind the table saw?


So he tore it all apart and created a base for the gaming chairs.


I really love it. It's very comfortable and the kids can still pull them onto the floor for overnight stays.


He even put little pads on the bottom.


I love the way it turned out. I think it still needs to be sanded down and stained. We have another chair still left to do. Gotta find another pallet!

Monday, January 25, 2016

kitchen closet

Burke and I have been finishing the basement for the last 5 months now. Whew! What a chore! It's all starting to come together now and I'll post pictures soon.

Today .... is all about my kitchen overflow closet. I built a closet just for my kitchen gadgets. Oh yea!!


I painted the inside of the closet and had to repaint it  I was trying to save rollers and tried using a small trim roller. It was only the second worse paint job I've ever seen. The first was my sister Trudy's bedroom. :)


So I repainted it and trimmed out the inside. Guess I should have taken a picture of the after (with actual trim).


I also painted a bunch of furring strips in preparation. There's the trim (the 2 end pieces). I put them on the inside to frame out the door.


I trimmed out the floor. It was about here that I remembered to grab hearing protection. Nail guns in small closets = hearing protection.


I measured out the distance for each shelf. I figured 12 inches between shelves with 2 of them at 16 inches for my larger gadgets. I found the studs and nailed in my first strip.


Look at this monster. Holy cow it was heavy. It's like 4x8 5/8 melamine. The cost was $30.00.


Took out my handy table saw and got ready to rip some shelves.


We cut it in half first so it was easier to manage. Then Burke held the MDF while I guided it through the saw. We ripped 12 inch shelves.


I ended up with 8 shelves altogether. I needed 5 for this closet. The rest will go in a craft closet. I was able to use some left over trim as furring strips for the side. Had a bunch 15 inch pieces of scrap left from the doors - so I used them up.


It is a small closet and worked out well. I spent a total of $30.00 to do the shelves. Got quite a bit of my gadgets in there and a few more to clean out before putting them in their new home.

Friday, January 22, 2016

girls who code - saline

Back in the summer of 2015, I began to see Girls Who Code presence on Twitter. I became more and more intrigued and finally decided to see if I could start a club in my hometown in Michigan. I remembered walking through an open house at the high school the previous year and seeing a programming club sign on a table with nobody manning the table and no one around. Sad ... I thought. With all the technology in use today, you would think it would have more of a presence.

Girls Who Code - Saline, 2015 - 4 instructors and nearly 40 girls.

The first thing I did was get in touch with the high school to see if they interested in sponsoring the club. Since all the clubs were ran by students, they graciously declined. I then went to the superintendent Mr. Steve Laatsch who was very excited to sponsor a club in our district.

Now that I had a sponsor, what I needed was to actually become a Girls Who Code instructor. You had to pass a background check and also an exam. The test was somewhat of a challenge. Some of the questions pertained to computer science theory and in my 20+ years of coding had never seen and had no practical knowledge of. Since there were only 7 questions, every one was important. I passed it on my second try.

Mr. Laatsch arranged for us to meet in the Saline HS Media Center and have at our disposal 200 chrome books. Amazing! He also arranged for the club to be offered through community education and they handled the marketing and sign up. I just can't say enough nice things about Mr. Laatsch, he cares very deeply about our community and was excited to help me get this going.

The new community education program booklet arrived at my house and there it was! First page ....



I immediately felt an explosion of pride. Cool.

Several weeks later I began to think about how the registration was going. I contacted the community ed department and asked them to give my access to the class registration. They did ...

I logged in, really just expecting a few signups and thinking about how to go about marketing to attract girls to the club. I hadn't even signed Holly up yet. I was immediately shocked and absolutely thrilled to see 25 girls had signed up and we still had nearly a month left for registration. O.M.G. I got up from my work chair and did the happy dance. Holy smokes!

After celebrating for a few few minutes, realization set in. Holy smokes .... how was I going to effectively manage a large number of girls? O.M.G.

I started recruiting helpers. The product manager of the team I was on at work -Steve Sobieski actually wanted to become a teacher at one point but changed to computer science in college. He has a great sense of humor and an awesome work ethic. He was totally in. Yes! Still I needed more, I felt.

Next I contacted our local Girl Develop It - Ann Arbor chapter and asked if anyone was interested. I got 2 additional helpers, Ronda Bergman, who is the chapter co-founder, and Karen Dickensen, who is a active participate. Both amazing women in technology and fun to be around.

I was set .... we picked Monday nights from 6:30pm - 8:30pm. I was so nervous and anxious about our first meeting. By then 40 girls had signed up.


Headquarters sent us some cool swag ... and we were on our way! The only criticism I had is that there was just so much information sent by headquarters on curriculum and running a club - it was hard to keep it all straight and figure everything out. We did eventually figure it out and added our own flare to it.

It's now January and we've had an awesome time so far. We even inspired Ann Arbor to create a couple chapters in the area. They came and sat in on our club and we've established a wonderful relationship with them.

Usually we start off with about 10-20 minutes of discussion about something related to computer science. I've found a tons of great short videos from code.org and youtube. Then we work on our modules for about an hour. This is the curriculum designed by Girls Who Code. We're actually fortunate to have all the girls at the same Level. The last 30 minutes is a fun activity and then we end the night with "standup". We get into a circle and talk about challenges or triumphs - or what kind of pie we like.

I should have written more on this journey - I feel like it's alot of info to read. I swear, I'll get better. Stay tuned to hear all about our community project.


Wednesday, January 20, 2016

acts of kindness

The holidays were fast approaching. Julia had returned to Sweden back in August but we chat through Skype about twice/week.

What do you want for Christmas? she asked over and over. A million dollars, I would say. No, seriously .... what do you want?

My family always struggle with this very thing. If I really want something - I just buy it, so it doesn't leave a lot to choose from in terms of gift giving. Then it came to me ...

Acts of kindness ...

Why don't you perform an act of kindness, write it in a Christmas card, and send that card to us for Christmas?

No really .... what do you want for Christmas, she said.

It took me a few minutes to convince her. After she thought about it, it turned into 12 acts of kindness. One for each member of the family (Me, Burke, Holly, Jason, Matthew, Lil B, Big B, Jenny, Jackie, William, my mom (Pat), and yes, even Butters). Although Christmas was fast approaching - we put no time limit on it.



It took her awhile to get in the right mindset. But ...so far to date ... 6 have been completed and I think they are amazing. :)

First was the Lussekatter. She's learning how to cook and made them to pass out to the homeless. With the flood of refugees in Sweden, there are plenty to be found.


Second was she bought gingerbread and gave it to others in her school.

Third was she noticed a lady that seemed rather tired behind her in line at the grocery and she let her go first.

The fourth was for Butters. She found a dead bee and gave it a proper burial.



Complete with a squirt of honey for the trip of everlasting peace.

Fifth was she made a origami flower for a departing teacher at her school. The teacher was so happy, she hugged Julia 3 times.



And the number six, was delivering warm clothing to the refugees in Sweden. Since it's been snowing in Sweden, it's was really needed.


So, family members ... go ahead and pick your favorite and claim it as your Christmas gift from Julia. I can't wait to see what she'll do next, but she seems to be having a great time doing it. The feeling you get from doing something kind for someone else is immeasurable.