 If any live demo, if anybody saw me at summit, it always starts with this may not work, sorry, and ends with, actually works, this is amazing. Timothy will now be going live through this, and I will let him talk and tell you a little more about what he's doing. Hi. Give me a sec. Very important, I have replaced the beer keg outside. Yes. For those of you not familiar with beer, the one on the left is pure blonde. It's a low carbohydrate lager. For those of you familiar with beer, you'll understand why what I just said was an oxymoron. The one on the right hand side is great white. It's a vice beer and tastes much less bad, so I encourage you all to drink that one instead. Now Timothy has his things ready so I can stop my fluff and go straight over to the demo. By the way, I've noticed that we've had quite a few people voting on the poll on Facebook already. Please do continue to submit your ideas about things you'd like to speak about. So far, upside down, so far IoT is winning. Hopefully once Tim has presented, IoT will lose because you'll be like, wow, that's everything I ever needed to know about IoT and more. Right, Tim? So, hey guys. I'm Alex. I can't pull off the English accent. Louder. Louder. So Alex asked me to replace, which one was it? Honest be. Honest. We'll do a fantastic presentation of the next user group. Right. So my objective was just to jump in and replace, but also try to show you something fun and cool, rather than go through some very complex descriptions of our services and just to show you something fun that I've prepared for the India Summit. So next week I'll be in India for the Mumbai and Bangalore Summit and the teams there asked me to speak on IoT. So I'll be presenting IoT there. They asked me to build a demo because, so I've never been to India. And supposedly in India, you have street lights that work supposedly very well, but they're either on or off at the wrong times. Meaning, oops, this thing's weird. So they asked me if I could just build a demo for this. So I've built a demo. Can you pull out your phones and go to that URL? Don't type demo. Type the tiny dot cc. I've got auto scaling of what? Oh yeah. So what is the India Summit? What is the... Okay, so do you know what a summit is? Okay. So a summit is a big AWS event that we organized. Alex pointed out that we organized three summits last month, end of April. We went to Kuala Lumpur first, Singapore, and then Manila. So these are big AWS events that run for a day. In Sydney it was three days, I think, around the same time. It's a free event where we invite our customers to come and join us, and there's a lot of presentations around our services, new features, some in-depth sort of architecting types of presentations, as well as the developer tracks, which we're very appreciated. So everybody's loaded this? Zero percent. Zero percent. That means it works. Sorry. So I'm going to show you something else while you have that on your phones. For those who are not familiar with Alexa, about six months ago I did a demo using Alexa, and some people are like, ah, I really need to get Alexa. I wish I could get one. It's only available in the US. Well, you don't have to wait to get it from the US. You could download a free app, which is called Roger. It's not from AWS, and they've integrated Alexa. So basically you can use Alexa on your phones, which I will invite you to do so later, after my demo. So I'm going to be using Alexa for my phone, and I can do things like, Alexa, tell the India Summit to turn the light on. It takes a couple seconds, and hopefully if everything works well, if my demo works well. I couldn't find any smart devices on your network. Alexa, tell India Summit to turn the lights on. Hello. My next slide is a blue screen of death. Yes, it worked. Here we go. Woo! So hot. No, okay, here we go, ready? Alexa, tell India to turn the... Oh, sorry, that didn't work. Alexa, tell the India Summit to turn the lights off. I'm not pressing a button. I talked to Alexa. She's going to say she didn't understand. She's going to say, okay. Okay, so my point here is... So this is a demo. I'm not going to go into the details of the IoT service, and this is, if you bring it up as part of something you want to talk about next time, we'll happily sort of go over the service with you guys. The purpose for me tonight is to demo this, but to show you how I actually built this demo very easily, so that you can actually replicate this demo. So what's the architecture behind my demo? Does this have a pointer? On the far left, I've got Alexa or an Echo device. In this case, it's my phone. It could have been an Echo device. And I'm using a couple of services. I'm using Lambda, which will process the code coming from Alexa. I'm using AWS IoT, which is a service that allows to connect to my physical devices. Using three different protocols, which are going to be HTTP, MQTT, very efficient for electronic devices, as well as web sockets. And in this case, for the web developers in the room, you guess I use web sockets because I'm controlling your phones using a web page. And then I'm using Amazon S3, which you're all familiar with, as well as Amazon Cognito, which allows me to do some authentication of my web app. And, of course, a mobile phone. So how does this demo actually work? I'm using Amazon S3 to host a static web page. So for those who are not familiar, you can use S3 to host a static JavaScript HTML and CSS web application, which you don't need a server to run this. That web page gets pulled onto my phone. And then my phone uses Cognito to get an unauthenticated credentials into AWS to connect to AWS IoT using web sockets. So this is highly secure because I'm authenticating using credentials coming from Cognito from my web application. And once I'm connected and authenticated to IoT, I'm publishing and subscribing to topics, same as sort of web socket events that some of you web developers may be familiar with. I'm subscribing to topics that simulate the light bulb on and off state of the light bulb. Then, basically, I've built a skill within Alexa to understand my India Summit demo. So this is a skill that I've created within the developer account of Alexa to understand India Summit. And once I trigger that skill within Alexa, that will call a Lambda function that I've defined within my account. And as Alex pointed out in the introduction, for those who are not familiar with Lambda, Lambda is an event-driven compute functionality where you define functions that get executed on triggers. And you're only built for the time of execution of those functions. So there's no servers that you need to manage. You just define the code. And my code, in this case, just connects whatever I'm telling Alexa to do to AWS IoT. So once I've connected to AWS IoT, I'm basically telling Alexa, tell the India Summit to turn the lights on, and that triggers a modification within AWS IoT of the state of that light bulb, if you wish, that you're all displaying on your web app. And then I'm basically acknowledging the fact that the request was successful with AWS IoT. And I don't know if some of you heard, but basically Alexa replies OK, telling me that she's done it. But I could have had her say something really amazing, but I just couldn't think of anything else and OK. So she just replies OK. But once it hits IoT, it changes the state of my light bulb, basically the thing that I've described within AWS IoT. And then using the WebSawKids, this gets communicated back to my web application to trigger at this time from the client's side the state change of the light bulb image from dark to yellow, which is what you guys all saw. So that was easy, and I thought I'd improve it because they told me in India, OK, so that's cool. You can turn the whole street on and off, but supposedly they turn on and off at the wrong time. So I thought, let's bring a bit more of IoT into the mix. And so for this, IoT allows you to control things in electronics, right? So this is using RSDKs as well as this time a different protocol, which is going to be MQTT, which is very low bandwidth, low footprint, dedicated to connecting low memory, low power devices to the cloud. And in this case, I'm using an Intel Edison. I could have used anything else. This one's battery operated. And if you guys now switch, so I've divided, this is going to be complex. I haven't really planned for this. If the first five rows do summit one, these five rows do summit two, then these do 30 U to get the drift, right? So once you've loaded that, what am I actually doing? What you haven't seen is I'm holding one device and I'm walking around with that device, but I've reprogrammed another Intel Edison here, as well as one on the floor over there. And I've just programmed them to be completely stupid. Those aren't connected to AWS in any way. They're just acting as their generic iBeacons. For those who are familiar with iBeacons, the whole Bluetooth BLE, what's the word? Identification, sort of used for geo-localization internally. For example, Apple came up with these so that when you walked up to the shelf of whatever Apple store product, your phone could know that you're physically close to that location. So if my demo now works, which I really hope, as I sort of walk left and right... This is scary. These guys should light up. Oh, so you guys should light up? No? What do you mean? This is going down. What's the percentage at? It goes down to five. Okay. One, three, twenty-two. Wait a minute. I'll light up, right? And you guys are off. You guys were on, right? So now as I walk this way, right? It's going to take a bit of time. These guys have lit up. You guys have shut down. And as I keep going, you guys are up. So I'm walking on the street. And the lights are following me, right? Now let's solve India's street problem. Street bike problem. Yeah. There's the end of my demo. Too fast. That was good speed walking. I enjoyed it. So thank you very much, Tim. Any questions about IoT for Timothy before he drinks all of his beer? Is there a source code open? We'll find out and let you know. The answer is I can share the code. Because it's really cool. I know. I'm battling with a lot of people making sure that we can actually distribute code. Yes. I'll find a way to communicate it to you guys if you're interested. But it's really simple code. The whole purpose of this demo was to really showcase how easy it was, because this is a simple, very simple static web app. It's just loading two different ones. In the case of me walking around, actually, no, let me rephrase that. If you were to load the India Summit one, as I walk from left to right, basically you mentioned the percentage, right? So I have five images that I focus based on the percentage so the light can actually gradually increase. That doesn't work with my Alexa demo because I'm turning on and off, so I'm just using the off image and then the large image. But that's sort of a very simple web application using WebSockets, where I'm just changing the state of my images based on the messages that I'm receiving, live, push notified to me using WebSockets. Now, in terms of the device itself, the IntelliDison is a Linux board, so you don't actually need an electronic device. You could simulate this off of a Linux computer or Raspberry Pi. For those who were here six or so months ago, we tried and failed that day. The Tic Tac Toe demo, in that case that used Raspberry Pi. So those are using Linux devices and using our SDKs, but the amount of code necessary for this demo is very limited. But again, long story short, I will find a way to share it with you guys if you're interested. Do you talk about the new skill that you're using? Yes. Is that done on Lambda or is that done on Alexa? So which part would you use Alexa to organize? So let's just take a step back. For those who don't know, so the question is around the Alexa skills for those who didn't hear. So for those who aren't familiar with Alexa, Alexa is really the sort of the voice recognition software that runs on the Echo devices that Amazon.com has built and is distributing in the US for now. But the Alexa, call it voice service, because that's the name, is an API that you can use and you can build skills as well as leverage the voice service by embedding it in Raspberry Pi or other devices, sorry. Meaning, for example, if you're interested, you can go on YouTube and some guys have actually explained that you put Alexa on a Raspberry Pi so that you don't have to order and buy an Echo device. You can just build your app. Or I just told you about the Roger app and you can get one for free. But to answer your question as to the skills, so Alexa out of the box answers the generic sort of what is the time or a lot of sort of questions that answers that have been built in by the Alexa team. But you can customize those by creating skills to do what you want. So last time six months ago, we created the tic-tac-toe skill, which is where you tell Alexa, I want to play tic-tac-toe. And she understands that and then passes those messages on to something else. In this case, this is a Lambda function. So in the case of this demo, the trigger is the India Summit. I just didn't have time because Alex told me to do this last minute, but I could have changed it to AWS User Group. So the trigger being AWS User Group. That's what you define as part of the skill. It's sort of the patterns, the word patterns that Alexa is supposed to understand and then trigger events, functions in where you're going to be using Lambda to process those functions and those data. So trying to answer your question in the best possible way, the Alexa skill part is really understanding the words India Summit, turn the lights on, turn the lights off. The speech recognition of that and sort of matching those words and then once it sort of matches those words, passes to whatever function I decided to trigger based on turn the lights on, turn the lights off. And in this case, it's the Lambda function that does the actual modification of the state within the IoT to then trigger the automatic publish-subscribe of your web interface. The mapping between the speech and the Lambda function where is it done? It's going to be at the Alexa side, right? It's at the Alexa side. So Alexa, you don't access through aws.amazon.com You actually build all of this in developer.amazon.com for which this is where it's time we probably move out for the beer because the reason I'm saying this is because Alexa is not an aws product or service, right? It turns out that it is an Amazon.com product and it runs on aws and then it triggers functionality in aws that we support. But all of the sort of the skills-based thing is things that you guys, we're going to try and support you as much as we can because basically it's not one of our products. So this is why I'm saying for the skills aspect of it you go to developer.amazon.com for the voice recognition aspect of it and then what your Lambda function decides to do whether it's sort of right to a database or trigger sending an SMS using Twilio or doing something else that happens on the aws Lambda side. Any more questions? Anyone else? No more questions? Awesome. Right, before I let you guys escape I just want to very quickly cover a couple of things so yet again I'll talk about the three things that you guys should do. There's already been some votes for the next topics for next month, next two months whenever. I think IoT is still winning. Please submit your votes in. People have started saying analytics would be good or other bits. We're still going to use Meetup for organisation because I think it's probably easiest rather than Facebook groups if you're anti-social or hate Facebook or don't want to be my friend, like most of you people. And then finally, if for some reason you didn't want to come and see us face to face, these will be posted on engineers.sg. Please note that the intro won't be posted. The intro won't be posted because I'm quite offensive. So if you want to listen to me for a little bit you have to come along. I'm really not selling this well. Anybody who wants to take a photo of that do so if you haven't just come grab me the URLs. One thing I've been asked to call out is on Friday of this week we have a big data workshop in this office. This big... Tim. This big data workshop will cover off EMR, Kinesis, Redshift, DynamoDB and S3. It's aimed at beginners to intermediate so if you're already a data analyst or a data scientist or a data engineer go drinking, do something else. If you are interested in skills along those lines, come along. Please RSVP or ask for more information from Lily and So, my colleague who is sitting out at the front desk. Her email is solilyatamazon.com She works in our BizDub team here in Singapore so many of you will have known her. She is the person that Wayne mentioned in the very first talk. Again, an hour and a half this Friday. Finally, again, thank you Huirin, Michael Chang and Valentine. Please look at engineers.sg. Finally any more questions grab myself, Timothy or Steve the gentleman in white over here in the corner. Everybody else from Amazon has gone home. Oh, there we go. We have Charles sitting at the front, he's an account manager based in Singapore and we have Veronica sitting over there who has recently joined us covering Indonesia. So please do ask us, otherwise I've replaced the beer taps, go finish the next keg. Thank you very much.