 Yeah the Linux foundation called me and said like do you want to come on stage and do IoT demos? I had a slight impression they called all the other Linux distributions asking for executives to go on stage but this unwritten rule always put an executive on stage with a slide deck. So I said yeah I'll come and demo how hard can it be? Yeah so if anything goes wrong it's all blame it on me. So what do we do at Canonical? Well we run this operating system called Ubuntu and we made something new Ubuntu Core and that's what I wanted to demo here today but before I start demoing let me go a little bit back. This came out some years ago everybody will probably know this Raspberry Pi. If you think about it it's more powerful than the first Google servers. It costs 25 dollars it's amazing. It's like a supercomputer as big as a credit card then they brought out a better one a little bit more expensive but a lot more powerful. Then they started making it smaller and what I got the other day was this the Nanopi the smallest supercomputer I would call it at this moment but you can easily see that like computers will become cheaper cheaper cheaper cheaper and smaller smaller like five dollars ten dollars. So what does this mean? In a couple of years time we'll have small chips in any type of device everywhere and there will be super powerful computers compared to a couple years back. Now think about this how are we going to do that? Like how much time do you spend on like a PC managing it on your mobile managing it? Imagine now that you have a hundred thousand Linux devices all around you in your home your office and so on. How do we push software to it? How do you update it? How do we make it secure? Well that's when we started to think a couple of years back and basically we came up with a new format called snaps and we thought we can't make a new format without it working everywhere. So we worked with other Linux distributions to make sure it works on there as well. Why? Well the snap format is a new way of packaging software you package it like an app and then you deploy it onto any type of device and the snap makes sure that it's secure. It also makes sure that like if something goes wrong you can roll back and pretty soon you can run your own app store. So this is what I wanted to come and demo today. So let me start solitaire of course like how do you get an app to install? Well you just do snap install it downloads it it's installing it and now you should be able to play solitaire. Now why is this important? Well you as a developer now put all the software together in a snap and determine when it's time to upgrade. It used to be that like it was cool to have Debian and other type of packaging formats to install new software but we were always running behind. As a developer what you actually want is to just have something in GitHub package it up and push it out. You don't want people from Ubuntu or any other distribution to have to do things. So what we did is we made this packaging format with a tool to actually take the best tools out there. So this was a snap I made a couple of weeks ago which packages a Python part a Node.js and some Go language all together. So what do you do? You just run snapcraft and basically it will read this snapcraft file. I already did a pull step otherwise you'll see things downloading and it's like watching paint dry and then it will compile everything it will build it as you see it's all being built and then it will do the staging and then at the end it will do priming bring it all together and if everything goes well at the end out comes a snap. It's priming. So let's yeah it's moving and it should be there in a second. So let's focus on this for a little bit. So what is snapcraft? Snapcraft has these plugins for different languages that allows you to package straight out of Debian packages out of GitHub out of anywhere else Maven whatever you have you just package them together in a snap and then afterwards thank you Melissa. You get this snap okay here it is. So I have my AWS snap so the only thing I now have to do is to push it to the store and it will it will go and you'll be able to then download it. So I made another snap no dread this is the most amazing IBM software I've seen in my life it basically is really cool and really easy because if you haven't worked with it it's just as simple as like you drag and drop you connect you deploy and you can send messages. So what can we do with this? Let's hope this works. So here I made an Arduino with some temperature sensor and basically I was making this last yesterday in the airport almost had a bomb scare there because a strange guy like with wires onto some crazy things. So what this basically means is I can with almost no effort just make a temperature sensor if everything goes well we should see it go up it doesn't yeah there okay it went up sorry there's something else running as well. Now what's the problem with this this sends continuously and in IoT you have these two camps you have the sensor camp and you have the cloud camp all data gets sent immediately to the cloud that's what everybody should do because that's where you can then do things well I'm not really so sure because this sends quite quickly data and if you start doing the calculations about like sending some data from a million of devices you very quickly get to these big numbers especially if you start sending video data. So what you actually want to do is you want to do some analytics locally so what am I going to do here well I made this statistics function and what this does is calculate strange numbers okay I think now it comes yeah what this does is it takes the mean every three seconds of the temperature so even if the Arduino is sending it every half a second this takes the mean and as such you can like reduce enormously the data because what you don't want is create an alarm every time there's a reading of a sensor that goes spiky you want it to be if the temperature goes up for the last 10 seconds 20 seconds on average there might be a fire not if somebody just touched the sensor by error and it spiked so analytics on the edge is something that we need if we want to do really IoT and think about it you could do all these type of complex analytics with machine learning and so on now what do we actually want we want to integrate this into the cloud that's how fast you can integrate things into the cloud now but to tell you the truth that is how fast IBM does it because they focused very good on integrating it then I tried to integrate things into other clouds and it became a lot harder because I had to like create certificates I had to create a profile I had to create things I had to attach those things and so on and so on just to be able to start talking to for instance the Amazon cloud so I said it should be ooh it's getting really hot here I told you it was going to so I said we need to be able to do it easier so let me stop everything that like I've running on this box so to really make it go bad and then show you what I did with the AWS IoT snap that you saw building before so what I'm installing is I'm installing on this little box which is just like a Wi-Fi router and four Ethernet ports an MQTT agent, note read again, some RFID, some LED you'll see that in a in a minute and some other snaps and now the interesting one the AWS IoT how can you connect this box very quickly to the cloud well you generate a thing you create a policy you then create keys you attach those things to those certificates you attach the policy to the certificate all of your steps and basically boom so what I did is I created a snap that automated setting up these hard to do things because I'd actually want to go and connect things to the cloud so let's see if this is still up and running okay what this is is a light sensor here so if I put my hand on it it goes down cool so now by connecting this and let me just in case we started locally so that okay so now I'm sending it here and somewhere I'm getting it out again and to show you that I'm not lying here is the MQTT on AWS so I'm sending it to AWS and then afterwards I'm getting it out again now what if I send it to AWS and then read it there again so I'm now going to the other box and I'm reading it there so what this means is that with apps I can integrate any cloud I can integrate any sensor now think about it in IoT what is one of those things that everybody always says different standards which one should I use which cloud should I use oh I just deployed one you can make another snap and deploy another one you can make other standards like you can have iotivity standard the next foundation definitely is familiar with this one you can deploy that as a snap but why not also deploy all join so in a world of IoT where we don't have standards yet what we need is smart devices that can bring all these sensors together and then integrate them via just bringing any protocol any standard as a snap now what else can I do we work together with own cloud which makes this software to store data on a local thing and also western digital so basically what this is is you just have a Raspberry Pi, a hard disk and a box other companies tend to charge quite some money for this because they just put a microphone in it and then they put some things like this what's the better going to be like tomorrow in Berlin tomorrow in Berlin Germany there will be cloudy skies with a high of 49 and a low of 41 so this is Alexa if you want Alexa already installed of course this is what you have to do so bringing all these cool things to device that you deploy in your house that now connects to lots of things in your house because like Alexa you could have a chrome snap and cast files that you have locally stored to your Chromecast you could integrate with some Apple TV you could integrate with a sonos you could integrate with a nest you could integrate with everything so the whole idea of like these world gardens we should stop thinking about it it should all be software defining applications what else can we do well we work together with Facebook and they have these like big switches that they now open source call to wedges by bringing software as a snap on to a networking switch you can redefine what it does last year a mobile wild congress we showed that by putting a robot arm on top of a switch and two iot apps on it and some other things and we called it a smarter switch of mobile world congress fortunately Cisco Huawei Ericsson Nokia and so on didn't have a switch that could control robots so they had to admit it was the smarter switch this year we had lots of Broadcom switches that were a lot smarter and actually production ready and anybody can now go to Amazon buy a box that has an Intel and an ARM processor inside and just put networking software on it because that's exactly what i did but i'm not using this for a switch what i actually can use it for is to make an access system to my house because somebody that doesn't that i don't know comes in nothing happens but if somebody i do know comes in then i can send a personalized message and this is the power you can go and buy things on Amazon on other places and connect them together into new type of things have you seen your switch being talking to an RF idea to a let before well you could like make this talk to anything now think about a world where like you just grab things together and all link them we also did a crowdfunding campaign because we're trying to change the way software is done on wireless so i have a pre-built thing of the lime sdr but basically you plug this in and through an app you now define any type of wireless protocol so you can make your own wireless protocol and make this box a 4g box make this box a lora box or make a better standard and this is where like the github generation will meet the wireless innovation and then i just wanted to show the last thing why do you want powerful boxes well you want them for this because unfortunately my Arduino can't do this it takes a couple of seconds to start up in the future we want autonomous things that can recognize so basically think about this you can have all types of sensors all type of machine learning all type of clouds all type of activators all brought together just snap away thank you