 Morning everybody. If you're standing in the back, there's plenty of seats here up in the middle. Just raise your hand if you've got an empty seat by you. So we're in this nice shiny new venue where folks don't have to sit in another room watching a live stream of the keynote. So please take advantage of those seats. How are you guys all liking Pasadena this year? Cool. I'm glad you guys are liking our new home. Pasadena has been very welcoming to the scale team and one of the folks that has been doing that has been what we've been working with is Andy Wilson on the City Council here. And so I'd like to call him up. He's going to be introducing our session today. And for Andy Wilson. Good morning, good morning. I'm impressed this group was up at 10 o'clock in the morning on a Saturday. I had my coffee walk my dog so I'm ready to roll. First of all thank you and welcome Scale 14x. I wanted to tell a little story about how this happened because first of all you know having you guys in Pasadena is incredible. And it doesn't happen by accident so I'm going to follow my notes here because my coffee hasn't fully kicked in. But I remember Richard Gatson is sitting up front in Maddie came to me and said this thing scale is awesome and it needs to be in Pasadena and then they wanted my help. And I said why are you talking to me? And you're probably like why is Andy on the stage this morning? Besides being on my walking ride I had a few things I wanted to say to you. So I co-founded something called Innovate Pasadena. Is anyone familiar with Innovate Pasadena? Any people? We got a few? Yes. Thank you guys. And that's all about creating a vibrant tech ecosystems in this part of Los Angeles. So I'm going to talk about that a little bit later. And that effort Innovate Pasadena is more around technology and engineering a little bit different than I think the consumer media activity in Silicon Beach. So if you're really kind of nerdy like me, we're trying to make this home. So that's our focus with Innovate Pasadena. I also have started a series of software companies and invest in a bunch of companies. And as Alon mentioned, some people say I drew the short straw. I sit on the city of council of Pasadena and I'm really the advocate for innovation in technology in our city. So I've been a star geek and I'd heard a scale but I didn't know a lot about it. So they were educating me and I started to learn that scale is the preeminent event for Linux users attracting more than 3000 people. Are we close to that number Alon this year? Oh, more. Awesome. So 3000 amazing people. Great job. And I like to say bringing together the best and the brightest. So welcome. And who cannot like Linux, right? My nine year old is a coder. He likes to hack, particularly a Minecraft, especially when it's time to do his homework. And I was telling my kids about Linux and my nine year old says, isn't that the thing with the penguin? And you know, I don't know, I think we're always gonna think it's a penguin thing. And who cannot love penguins? There's a book called 365 penguins that my kids made me read when they were young. And ironically, penguin birthday parties were all the rage when my kids were younger. So I hate when people talk about their kids, I won't talk about my kids anymore. I did research on penguins. So I could talk to you guys with some credibility. And they're pretty incredible animals apparently, very social. I have a feeling this group is so sure we're going to check the box there. But also what considered one of the smartest animals in the world. So I think Linus was pretty, pretty bright in choosing the penguin. So why is the Linux scale conference a great fit for Pasadena? Right? And it's great you're using you know, kind of filling this building. By the way, I served on the board of the convention center when we built this beautiful building. So I'm glad you're taking advantage of it. But let me tell you a little bit about Pasadena. And I'm gonna brag because I want you to know about Pasadena should you come back and realize what we have here. Okay, we're a city of 140,000 people. I think you used to do this on Long Beach, am I right? So lax, okay, lax. Okay, not that great. But Santa Monica has last there about 90,000 people. So we're a little bit bigger than Santa Monica. And we have a lot of great stuff in Pasadena. Mars Rover up to straight JPL any JPL people. Go JPL. There was a video they did called think five minutes of terror about the landing of the Rover, which is incredible DNA sequencer spun up out of Caltech. So if you think understanding the gen the human genome is important that came from Pasadena, CMOS semiconductors, Caltech invention unbelievable. Maybe some other things are more relevant. Page search advertising invented and passing a patented company I work for out of ID lab called overture services, invented paid search. We all know that is the monetization engine behind Google. I think it worked out okay for them. A couple other companies hatched in Pasadena, e harmony moved actually to Santa Monica won't mention that earth link city search and more recently, incredible companies open X do we have any people here from open X? Yeah, we got some open X is good. Spokio incredible company around data and people search supply frame also here as well. So just to mention a few companies in Pasadena. Caltech in ID lab people familiar with ID lab, raise your hand if you know about ideal. So ID lab was the original incubator 140 companies can read ID lab. Now incubators are kind of like everyone has an incubator, but the first incubator was in Caltech run by a guy named Bill Gross. Caltech 30 Nobel Prizes, right? We got some smart people like Caltech guys, they're amazing. So a lot of incredible people. We're talking tech Art Center College of Design. How important is design to technology guys? Come on. Art Center College of Design in Pasadena. We know if you can't get people to understand and use your technology, it's not worth very much. So having people think about injustice on usability. Art Center here is in Pasadena. They do incredible work. Interesting fact about Art Center, the majority of the cars on the road today were created by Art Center hand. So you think about the impact to an industry Art Center designers are extraordinary. We attract almost $2 billion annually in R&D funding in Pasadena. That's $14,000 per capita, more than any other innovation hub in the country. So lots of R&D dollars going here. We're home to three of the top world's engineering firms. Dare I go on and boring you so I'll stop. Anyway, so the bottom line about Pasadena, like me, we love smart, nerdy people. This is such a great place. My kid tells me I'm a nerd and I said thank you for the compliment. So a little bit about Innovate Pasadena because I think it's a personal mission. It's an organization that I helped found. And I want to share with you what we're doing because I think the scale mission is very consistent with that. So three years ago, I helped find a local grassroots organization focused on building our local kind of geek in tech community called Innovate Pasadena. And our vision and bear with me is to create a vibrant ecosystem of technology, design and innovation in greater Pasadena that supports sustainable growth. I'm not exactly sure what that means, but it sounds impressive. But I think the bottom line is we are here to help connect people, connect people with other innovators so they can strengthen the innovation community and build more great shit. It's like we help people build more great shit because we know by connecting people and sharing ideas, that's where innovation happens. And clearly conferences like this are super important to what we're doing. So connectivity is key in supporting conferences like scale plays right into our kind of sweet spot. So to wrap up, I did a little research on Mark who I met briefly, who's an incredible guy. I was reading about Ubuntu and Unity desktop. And you guys probably know what that means. And I found out that he was he was an early adopter and he and I were talking about this early to space tourism, right? Space tourism. And if I can say if he paid some $20 million to go to space, I'm thinking maybe someday I'll go to space. And with companies like Space Act, I'm sorry, Virgin Galactic, Space X, Blue Origin, all of us I think will have some time in our lifetimes to actually experience space and hopefully not at $20 million, but two orders of magnitude less than that. So, you know, your fantasies can become reality, thanks to innovation and technology. And I was reading about the the genesis of Ubuntu. And it says it means I think if I get this right, correctly, humanity towards others or the belief in a universal bond of sharing that connects all humanity. And I think our mission at innovate Pasadena, and I think for innovators in the whole is around community building and sharing ideas and connectivity. So I'm really happy to have you all here to help you facilitate your community, because I think what you're doing at scale in the Linux open source movement is very consistent with what our ethos is around creating an innovation community here in in Pasadena. So thank you for coming along. Thank you for having a great conference. Thank you for letting me bore people first thing in the morning on Saturday. I wish you all a fantastic rest of your conference. And I have fingers crossed that this is the first of many times we get to host first this group in many like yours. Richard wanted me to mention April 11th and 12th. We are hosting the worldwide space apps challenge, which is a hackathon around the space data set, right? 100 concurrent locations hacking space data around the world. We've moved that kind of ground zero of that hackathon from New York to Pasadena. So I hope you'll be involved in that. I'm going to turn this over to I don't know a lot. Mark, who's next? Mark? Alon? Someone more impressive than me. Okay, guys, thanks very much. Have a great conference. Hello. Balancing down up down. This is the first hackathon. Is that technology, huh? I think we're good. All right. Well, what a treat to be here. Loudly in Pasadena. The reason I'm into this stuff is because technology changes lives. And technology changes lives in many more ways than you think. You know, we think that society evolves because people decide that they want something different. But actually society evolves because it becomes possible to live differently, right? And then we embrace what's possible, right? And what's possible changes because of technology. So one of the reasons Ubuntu exists is because it struck me that there was this enormous potential for innovation around free software. But there was also enormous friction, right? I looked in the late 90s around the technology community. And there was this huge divide between the people who had access and could easily consume this amazing free software. And those who couldn't just because it was too difficult or too foreign or too unusable for them. And Ubuntu initially kind of came into being because I thought, and I was lucky enough that lots and lots of other people joined in with this vision, that if we could make that free platform easily consumable, then amazing things would happen, right? People would build new kinds of businesses, they would get deeper into new kinds of data, new kinds of science. And so the happiest thing that happens to me all over the world is people come up and they say, thank you very much, Ubuntu changed my life. It made it possible for me to do things that otherwise I wouldn't have been able to do. And obviously it's not Ubuntu. It's that huge tale of free software. But we did something to try to, we tried hard to make that consumable and easily accessible. Now, Ilan set me a challenge to talk this morning about free software in the age of app stores. And that's a super interesting topic because I think it's something we could easily forget, right? The nature, the nature of software itself has changed a little, right? If you think back to the 90s, software was scarce. You know, there was a price on software and that price either took the form of, you know, an obstacle, a cash, which is an obstacle. I grew up in a country very, very far away from the epicenter of technology. And I couldn't afford software. I remember saving for a year so that I could buy small talk, right? I was fascinated by small talk. And that took a year for me to be able to get it. And then I found myself in a position to say, well, we could actually just make that great software, the best software that people make in the world. We could make that easily and instantly available. So nobody has to wait a year just because they happen to live somewhere where, you know, currencies work against them. So software used to be scarce and free software has essentially changed that. Now, today, we have vastly more software, vastly more complex software and software that moves much faster than ever before. So if I look at the sort of world of software today in this app store era in a really interesting way, six months, which used to be a really fast cadence of releases of getting the new stuff out to people, six months is way too slow, right? If I look at the really cutting edge stuff that's getting done now, the stuff that I would like to accelerate and help sort of robotics, people making robots that can help people live better, people figuring out how to introduce smart devices into the world, people doing stuff on the cloud. Only about half the stuff that they need is stuff that we can curate at the speed of a distribution, right? The other half of the stuff is stuff that's happening on GitHub, right? It's happening at the speed of Git, right? And so in a very interesting way, one of the things that's changed as we move into this era of app stores is just the speed and complexity of software has kind of leveled up. And that happens slowly, so like the frog in the pot of boiling water, right? You may not be aware of that change, it just kind of happens. But think for yourself how much of what you do on the cloud involves apt-get or yum or something like that, where you're getting curated software from a distro versus building the latest version of something from upstream from GitHub or from somewhere else. So this is one of the areas that I've been thinking about a lot, right? How can we understand this new sort of speed of software and how can we support that from the perspective of a distro? Essentially, if you think about the role of the distro, it is about essentially taking on common work, integration work to make sure that two pieces of software kind of fit together and work well together. You can get them on, get them off. Trust work, looking over the code, patching it to address security issues, maintenance work, right? Making sure that that stuff can just become a background utility for people. The fact that we move that into the background allows bright people to apply more of their intelligence to solving the problems of society and the problems of the future. But there is a trade there, right? It takes time. It takes time. That's why it takes us six months to produce a rev of the distro, two years between LTSs. So we looked at how we could potentially in the age of the app store do this differently. And the heart of the problem is this. In a traditional Linux or Windows or Mac OS type environment, all software is the same, right? We treat every piece of software exactly the same. Every piece of software when it's installed effectively has root, right? And not just root here but root everywhere. So you install a package and that's great. You can app get it, you can app get remove it. You install another one, that's great. You install more. And because each of these packages can do anything on the system, what you end up with is a fairly complex story, right? And it becomes difficult to know exactly what you've got, right? You know because you did it once. But if there was 100,000 of them out there in the world, it becomes difficult to reason about all of those different things. And that complex interweaving of software really makes sense for a lot of the sort of deep common stuff that we all use, like GCC, you know, the foundational stuff. But it doesn't necessarily make sense for the things that we're talking about now, the stuff that moves really fast on GitHub, right? The stuff is kind of a leaf node rather than the web in the middle. So we looked at that and we said, well, how can we change that? How can we change that trade of speed for trust integration and maintenance? And so we said, well, let's look at two of those things. Let's look at the nature of trust on software, right? And let's look at the nature of integration on software. Now trust is really important because in a traditional world those packages are going to just can do whatever they like, right? So when you apt-get install something, that package can literally do whatever it likes, right? So we have to figure out ways to trust it. But what if we could put it in a box, right? What if we could put each piece of software in a box and say, like, that piece of software can only go so far. I can only see the stuff that I give it in its box and it can only write in places inside its box unless I explicitly let it write somewhere else. And this is really interesting. There's a great paper called A Machine for Keeping Secrets that I read and it was talking about how, in a sense, we get it wrong. We still live in a world where we think that the software is working for us, but increasingly the software actually is half working for the guy who wrote it, right? Think about that. The software is half working for you. You're installing it. It's your machine. But it's also kind of half working for the person who wrote it. And so it becomes interesting when you see that to sort of say, well, what if we could create like a DMZ on the machine? We could say, right, in there I trust that person with the stuff that I give that software, right? But I don't trust it with anything else. So that was the genesis of something called snappy, which you might have heard of, right? And it's a new packaging system that I think is going to match GitHub for binaries, right? It's going to be softer at the speed of GitHub with the convenience of apt-get, right? Lots of people will use it just for their own stuff and lots of people will use it to share things in the way that perhaps they use PPAs to share stuff today if you want to create a package that's shared. So how does it work? Well, the first thing we do is we say we segregate the system using some of the new kernel primitives for isolation and confinement. And we segregate the system into blobs of software where it's absolutely clear and unquestionable who's responsible for each blob, right? So let's take a tour of that system. There's a blob there which represents the OS and that can be updated essentially arbitrarily on any given day by the people who make the OS. There's another blob that represents the kernel or the hardware effectively and that can be updated essentially arbitrarily by the people who make the kernel. And again, we keep all of the files from those blobs separate. So in fact, the code sits in a read-only blob. It is literally a single file on a file system and it never gets unpacked. That's really important because it lets us digitally sign it and in an era where there are some very smart people who devote their time and attention to compromising the integrity of our computing, I'd like to live in a world where I can check signatures on software every day at boot time. So we built that world and this is what it looks like. All of the code associated with the hardware in one blob, that has some space that it can write to, some read-write space, but you can imagine that if you just deleted the data in that read-write space you'd effectively have reset that aspect of your computer. Similarly, all of the entire operating system in one blob with some read-write space where you can store configuration or data associated with that. And then apps go into boxes, right? Apps become blobs, single files, compressed with everything that they depend on, and they get the ability to write to space that is assigned to them that no one else can write to. And so we're starting to just change the pattern of trust. No longer when you install software are you trusting that person who wrote that software with every bit of data on your machine. You're only trusting it for the data that you feed to it, and that I think fits the modern era of app stores much better. If you think of what changed in personal computing with the advent of the app store, we now consume software from many more companies, right? I think that's fantastic, right? But we correspondingly have less recourse effectively, less idea of who wrote that software, what are their motivations, what are their intentions, how do I find them, right? So in a world where it's impossible to sort of to square that circle, you can't have perfect knowledge about huge numbers of of actors, right? But if you can essentially put stuff in a box, then you don't have to worry about it so much more. So this is the kind of Linux equivalent of saying like when I download a game onto my phone I don't want it to read my address book, right? And I don't want it to have access to the microphone. Now partially we did this because there's a whole new world of computing opening up, and in the free software community we have a bad habit of waiting for larger proprietary companies to invent stuff and then essentially trying to commoditize that. But it means that in many cases we've played kind of second fiddle. We've come to the party long after the rules of the game got established. And I think that what's really exciting is that for the first time, actually maybe the second time, we might be, free software might be there right at the beginning of this whole new phase of computing. So what does it look like? And again the things we were trying to address here, we're trying to reduce the amount of work required for somebody to publish software. Essentially the work required to package software. Whoever's tried a package software in Debo RPM format, a couple of people, right? There's a fair amount of work to be done, right? There's a lot of, there are a lot of rules and the reason for those rules of course is that those rules help all of those pieces of software that can do anything, not trade on each other's toes. Well because we've put each piece of software in a box effectively, there are far fewer rules. You can basically do whatever you like in that box, right? So this is what a package looks like, maybe difficult to read, but the summary is super clean, super simple. This is a package that's basically pulling two pieces of software, GPS, D and NTP, and putting them into a snap, essentially a big blob, so that they can be installed and removed together, transactionally. And the reason for that is I'm a bit of a clock freak and this will let me use GPS to run really accurate clocks in the house. So what does that feel like in practice? This is, that's that package declaration. So that's describing a snap and you may be able to see that it's composed of two parts. And the reason for that, there's one part essentially saying here's how you fetch and build GPSD and there's another part saying here's how you fetch and build NTP. Now this is a packaging system, not a build system, right? The way it works is essentially it's describing those two parts, saying the one uses SCONs and the other uses auto tools. So essentially just documenting in a structured format what you would do if you were surfing through GitHub and reading readme's and building stuff, right? You'd say here are some dependency packages that I want to have installed in advance, I'm going to use make files or I'm going to use auto conf and then just do what you would normally do. We all know those patterns, we all do it fairly sort of quickly without thinking, this is essentially just a structured way to describe it. The net effect of that is if I say snap craft, build or snap, it will go out and fetch if I still have my VPN running. So it went out and fetched the code for GPS, went out and fetched the code for NTP, it checked that it had packages up to date and installed and now it's just going to build. So this is a from source build and the reason that's important is because the code that moves faster than the distro can move is source code, right? That's the great thing about the world we live in right now. It's coming straight from GitHub and it's being built from source. So of course there's a different kind of trust game going on here because this code is never going to go through a distro. Like if you installed one of these snaps it would be coming literally from the person who built it. So we're bypassing in a very real way, we're bypassing some of the traditional trust mechanisms. That's why we've got to put it in a box and that's why we've essentially got to create a more direct relationship between the user and the system. I'm running a VM which is a snappy VM and if I say I can't use app get, right? Why? Because again this is a system where there's no read write file system, right? This is a set of snaps. So what can I do? I can say what snaps are installed here and those are those kind of base snaps that I was describing, right? Each of those is a single file. If you actually look to the file system you'd see three blobs effectively that contain all of the data for the kernel or we call the gadget and the OS. I don't know if there are any updates. Maybe something came in overnight? Nope. One of the advantages we get here is that updates become super fast because there's no, you don't have to fetch a whole catalog of all the snaps effectively. It's just a single message up saying these are the snaps I've got installed and a single message back saying you might want to try these ones instead. And I've previously built that snap and so I can install it just like that and you'll see Snappy there. So we've got this kind of prickly file system. It feels a lot like firmware if you've ever kind of gone into a firmware world and in fact that's the sort of spirit that we're going for. Occasionally that gets uncomfortable. So one of the things we've added now is something called classic, the classic dimension up. So a snappy system has this kind of rigid file system that's really nice for if you've got thousands of them out there because you know exactly what they're doing. But it's a bit uncomfortable if that's a machine that you happen to be logged in. So what we do is again using some of the modern primitives we create this classic dimension. So you've got the snappy system with its snappy file system and we essentially create a container, a special container, which has a traditional there based file system. So now here app get works just fine. And so you think of it as one system with two faces, two dimensions, right? And if you pop into the classic dimension you can use app get. You have all of those tools available to you. It's easy to debug stuff. You can you can look at what the machine is doing. It's comfortable effectively. If you flip out of the classic dimension into the snappy dimension you're back into that very structured, very manageable world. Okay. So the goal is to be faster because the software is moving faster. The goal is to be easier because again if we make it easier for people to share things then everybody else benefits. Right? I mean I love this about free software. Right? It is it is special to to build stuff and publish it for other people to use. Right? Not only does it kind of help you but just think of what it does for all those other people. Right? So we want to make it faster and make it easier and we want it to make it much more secure. We also want to make it compatible with classic system. So what I showed you there is I was on a snappy system which is connected to snaps in the store effectively but I could pop into a classic dimension and it struck us that we could do the other thing as well. Right? You could start with a classic system, a deb-based system, a re-dried file system and you could install snaps as well and I can't demo that now but it will be in 1604. This idea that in fact when people publish these GitHub speed apps, free software apps, those could go to traditional Ubuntu desktop and server and VM cloud systems just because of the way snappy is built. Right? Since everything is in a box we can essentially set up a box for it on a classic system just as easily and so in this way I think we're really going to help people like the Kubuntu community we were talking just the other day about how to help communities like that go faster and one of the challenges for them of course is attracting people to this packaging process but the vast majority of the stuff that people are interested in every day the new versions of the new stuff is actually again the leaf nodes it's the apps at the end of the chain not the sort of libraries at the core and so this will allow those communities to package that stuff and share it much faster. It also solves another problem we've traditionally had in the Linux world where our entire software stack was interlocked. Right? You got all of the applications from 2014 and we couldn't introduce newer applications because they would introduce newer dependencies because of the system of boxes now the dependencies go in the box and we're off to the races so we should be able to bring much fast much newer software to the desktop and to the server and from a much broader base of developers in this app store era. So why am I excited about this? Well first everything that we do today gets better right? So PPAs are kind of amazing but it always freaks me out that I'm giving every single PPA I subscribe to root on my system. They can all change the kernel on my system just by popping a kernel with a higher version number in and d-package will very happily install that that newer kernel. I might not even notice right? So as much as I love Google and I'm intensely grateful for the fact that Chrome is such a fantastic browser on on on Ubuntu I'd like to keep that code and I think Google would appreciate this too. I'd like to keep that code focused on the stuff that we both trust it to be trusted for right? Because it's enormous it's an enormous attack vector. So things like third-party software on our existing world go much faster but this is the other half of that right? We're about to see an entirely new domain of computing created. We've got personal computing and that's been getting more and more personal right? Your phone is the most personal computer we've all ever had right? And then we've got cloud computing which is sort of super professional right? If you think of clouds they're giant data centers there are lots of professionals watching them. If something goes wrong there somebody notices and jumps on it really quickly. But I think about the Linux that's running in that Wi-Fi access point up there that's blinking red that kind of kind of awkward that it's blinking red right? What does that mean? Is it broken right? If it's broken and someone has to get there just imagine what that involves. It could be more expensive to reach that box than the box cost in the first place right? And so in a sense you're yay Linux one that's running Linux in another sense yay new responsibilities right? We have to think about building software to support this whole new class of device. Drones this is a drone from DJI an amazing company making great drones and this is the first drone that they launched with a intended goal the specific goal was to attract software developers. It's got a little Nvidia motherboard on it it's running Ubuntu and the reason it's running Ubuntu is because all of their research showed that the developers who're doing the amazing computer vision and collision detection and avoidance type algorithms they're all using Ubuntu right? They're using the free software stack expressed in Ubuntu and so you know maybe something like snappy enables us to get faster better apps onto drones. If those are going to be flying up around us I'd like to know that they can be secure right? To fix the software on that I have to wait for the vendor of that device to publish a new version of a single monolithic blob right? To fix Heartbleed on that device I have to wait for a vendor who doesn't really have anything to do with the operating system normally their focus is on a single application. In a snappy world because those are separate blobs I can update the operating system on there as soon as there's a new blob version of the operating system that comes from the people that I trust to deliver that blob right? And I can update the autopilot or the whatever else it is as soon as as soon as those guys have produced a new version that fixes the issues that they're responsible for. Robotics this is just if you haven't been to a robotics fest in the last year it's just exploding it's just amazing right? What is coming out of labs right now will blow your mind right? We are genuinely at the dawn of a new era. All of that running free software all of that running Linux all of that right now completely crazy right in the sense of you know if you had all of those robots running around in your house and another heartbeat happened you wouldn't know where to turn right? Because it would all be compromised it would all be vulnerable. GE essentially has said that every single appliance they make from jet engines down to kitchen appliances will become smart that means they'll be running Linux that means they'll be running our stuff free software stuff we're going to be responsible for that in an entirely new way. Smart cars, cars that drive themselves they're all built on free software and these devices don't have that same property of being either personal in other words somebody looks at them every day or centralized in other words they're closely watched 24 hours 24-7 right they're sort of just distributed so we're going to have to figure out how to work with the software on those and here's where I think the opportunity for people is you know this is a this is a town of inventors and scientists and dreamers so what kinds of things might you dream? Well there's the hardware and I think the hardware is going to behave economically like hardware does it'll be produced very cost effectively somewhere else right almost certainly but even the guy who's making that hardware is in a super competitive position in fact most of the magic here is going to be software and I assume that just for the core function of that software I'll have three versions of that software open source versions of that software and proprietary versions of that software and so we need to be able to accommodate that full mix but in fact the guy who made the drone only knows about flying that thing around so I would trust him for the autopilot right but think of all the things you want that thing to do right what if I attached a camera to it and now I could or a sensor now I could look at farmland effectively and and and conduct analysis right well think of all the sorts of things you can do if you have a moving eye in the sky traffic analysis if you run a city the city of Pasadena nutrient analysis if you if you run a farm I love the example of ski resorts that have to find areas where they might be avalanche risk and then drop hand grenades on them right I love the idea of an Ubuntu-based drone I'm going to get that through I'm going to get that through the TSA what's that oh that's a it's an automated hand grenade dropping machine well come on in sir yeah nice clock all right so this is what we're trying to set up right we're trying to create this framework for people to invent stuff I believe the vast majority of the fun stuff that gets invented will be built out of free software and I hope we can help people go faster so that's the one half of what I wanted to talk about other half what I want to talk about is on the other end of the spectrum right now the other thing that's changed in software is we've entered an era of what I call big software you've heard of big data right think about big software right when I grew up all you needed was a single machine and you could do all the fun stuff on that single machine you know you could get your lamp stack you could get you could set up all the things that people were talking about you could be part of the cutting edge just with one machine right and essentially for most people who are passionate about technology having one machine somewhere like on the side was free cheap easy consumable right accessible the challenge we have now is that the really interesting stuff like the idea of building an AI in your basement right doesn't run on one machine anymore in fact it's not even just a few pieces of software it's big software this is a phase change and so again like the frog in the in the pot that's where the temperature is slowly rising right we may not be aware of that phase change so what's happened is that software's gotten bigger and bigger and the approach that we take to that software the tooling that we bring to it the way we think we're going to do it needs to change to match that if I say to you you've got to get 100 tons of H2O from Pasadena to Santa Monica right you'd really want to know am I dealing with ice or am I dealing with steam all the tools would be different the mindset would be different the risks would be different right and so in the same way if I said you're going to install some free software you'd actually want to know are you dealing with something that's going to run on one machine effectively or something that perhaps needs an entirely different way of thinking about that software so these are some open source projects and free software projects they're all pretty amazing they're all big software open stack Hadoop TensorFlow Google just open sourced this very cool deep learning neural network AI based sort of construct Cloud Foundry Kubernetes Mesos these are all things people have heard about but you'd be amazed how few people actually get to play with them because unlike the software of the 90s you can't just stick it on a laptop on the side to really understand it you have to be able to work with it at scale it is big software and the interesting thing here is that the scarcity is no longer the software back in the 90s the scarce thing was the software it was a miracle that you could get a full TCP IP stack for free right set up web servers amazing what was scarce was the software back then now what scarce actually is the knowledge the operational knowledge right by the time one person comes to understand open stack open stack has changed twice right and exactly the same thing is true of big data AI Paz big software so I've seen super competent teams crushed by big software because they charge in thinking we're hey Python on Linux we've done this before right and that's why we've spent so much time and effort building a new way of working with software a new way of thinking about software at scale so today's software is about topologies and scale right and the operations are really about managing the topology and changes in the topology over time at scale it's a topology that doesn't sit on two machines or four machines it sits on hundreds of machines and it's the mapping of software to machines and the gluing of all of that together that is scarce the knowledge of how to do that so what if we could crowd source that knowledge in the same way that we crowd source the code itself right when you buy SaaS right what are you really buying if you buy elastic map reduce Hadoop is free what are you really buying it's the operations so what if we could open source operations for big software right and what if we could codify all of that so that people could just reuse it in their basement the way we all started reusing Linux packages in the 90s that's what juju is all about this is a picture it's a logical picture of a big data deployment some software notice you can't you've no real idea at this stage how many machines that's running on right because what I'm drawing there is a logical description of services spread across some machines and what matters in this view is just what's connected to what each of those boxes comes from a kind of software a kind of open source software we call it charm that's essentially a codification not of the software but of how you operate the software how you get it on how you get it off how you connect it to other pieces of software all of the things that somebody who wants to be like a total expert in that software would need to know all the stuff you'd find in the book about that software but instead of reading the book you can just use these charms their open source and the beauty of this is that when it gets better it gets better for everybody at the same time now it's difficult to do this in the same way that it's difficult to to create a deb right but once it's done thousands of people can use it without having to dig into the book effectively and so again we have exactly that same same dynamic of sharing of something that used to be scarce in a form that is easily consumable everywhere if I want I can go and have a look at what's actually mapped to which machines that's obviously super important and I can do all of this at a CLI or through a REST API but ultimately this is what it's about it's about saying here is a distilled version of a complex thing that would take you weeks to figure out and set up and then be too brittle for you to want to touch it instead of that here is a distilled version of that that you can use on any cloud or on your laptop effectively if we can make your laptop look like a cloud and we can and the store angle on this is that ultimately that becomes a repository of goodness it's a repository of competence not a repository of software right we really have repositories of software it's not a configuration management system either because inside those charms whoever whichever communities collaborate on those things they're using puppet they're using chef they're doing the configuration management inside those charms I don't have to worry about it right this is a modeling system and the store effectively of the knowledge of the free software community for big software right so it's an app store but not for software for operations gives you the SaaS experience with on-premise control the the dark trade at the heart of SaaS is the loss of control of your data right and in a sense that's just as important at scale as it is when we're thinking about software on a device and we want to put it in a box and control it so what's at the heart of that stuff it's code and code what we've learned in the last what we've learned in the last over the last couple of years of doing this is that the unit of collaboration here is not actually around a single piece of software it's about common aspects of operations so here's an example here are two charms talking to each other and they're actually made out of reused operational code so for example there's a chunk of operational code called a layer that would handle setting up a JVM right and in fact you could reuse that in any charm that was a charm of Java software on the other side you might have a layer that was used for setting a Python code right and all of the all of the common operational practices that would go with that similarly for key generation and so on but there's a shared layer there which is specifically around the protocol that those two pieces of software are going to talk and there's now a rapidly growing community of people contributing this operational code largely in Python it doesn't have to be but largely in Python effectively okay so I want to wrap up with just one teaser trailer of something new in 1604 which comes out in April and that is something called LexD now if you haven't played with LexD LexD is essentially LexC 2.0 it's a hypervisor gives you virtual machines on your laptop that are Linux only but super super fast so they're Linux only because in fact those virtual machines are containers but there's been an enormous amount of work to make them look feel and act just like virtual machines so you can get a CentOS one you can get a Debian one you can get a Ubuntu one and off you go super fast super light I think that is the single tool that is most going to change what people do with their Linux laptops because it's going to allow everybody to work with big software in a very realistic way because you can actually have 50 machines running on your laptop on an airplane right whereas today there's very few people that actually get to work with 50 machines all day long and develop code right the coders tend to have far fewer machines available to them than the ops guys so if you haven't looked at it that is the single thing that I am most excited about for everyday developer usage in 1604 the nature of software is changing the nature of our communities will change to match it but it's been a real pleasure to be here at scale because more than almost any other conference this feels like one where smart people coming together to figure stuff out without much of an agenda I hope this stimulates debate, thought, discussion and I hope some of what I've showed you is super useful to you all in the years ahead thank you very much