 So, thank you very much. So, I love Bosch and so when Paula and Colin asked me if I'd like to share, Paula said this was my talk title, which is great because you know, we've all had happy days with the Bosch and the sad days and you know, so when I say I love Bosch, it's the same as in the same way I love my children. You have the good days and then you have the other six days of the week and which is why you should have more than two children. I have three children which and my children have started to hear me say this next phrase and started to question it and I always joke that I actually have two children plus one for spares. So, hopefully they don't say I've got one parent and one for spares. That's going to turn out badly. So, whilst to come to that place is to really, I thought we in the sense that everyone else is going to share the ongoing story of Bosch. I would tell the story that led to loving Bosch because I don't think if you worked at McDonald's and found Bosch there's not much in it for you. So, there's probably a lot of context and a lot of even you know the pain that you've gone through in your life to find Bosch and go oh my god that solves that problem that problem that problem this is the best thing ever and so perhaps when we ask the question why don't more people love Bosch, my gut feeling is not enough people have actually experienced real production pain and then had thoughts about why their life is so terrible to then see what Bosch does. So, I'll tell the story of where I came from put a little context across our customers last year. I estimate we have about 50 different things running on a bunch of different Boschs. There may be a bigger number than that. A lot of those are running under pipelines and that and relatively stably and I really think that that Bosch is allowed in addition to concourses allowed. I don't have a cool Bosch t-shirt on me so I'll go with the concourse t-shirt because they tell a similar story of deterministic awesomeness but so it's really you know we're moving forward really well in terms of not not us so much as the customers the things that are happening you just can move forward so fast when you've got a rock solid platform but to tell a story I think we'll go back in time which now I get to use my keynote skills all right watch this oh yeah look at that that was cool as long as you have low ambitions for what you'd like to achieve with keynote you can pretty much do them. April 2012 I was when Bosch was was publicly announced and and I happened to be at the event when it was happened now you don't just happen to be at VMware for the day that something that you want to see arrive arrives you have to know about it in advance and so yes I was lucky in that I knew people at VMware who were telling me this stuff was coming out so we'll go back further 2010 I joined a company called Engine Yard who were one of the first companies who took the name Paz and said this is what we are which is great because I called us a hosting company which wasn't very cool so Platform of Service much cooler name and but but in a way you know my little my short duration at Engine Yard short relative to the entire length of Engine Yard and to our entire profession doesn't really I don't think it's respectful so we'll go back a little bit further all right so Engine Yard was created in 2006 and I think its story is an interesting story that leads to why Bosch and I always really enjoyed the when I came later in Engine Yard's life I enjoyed trying to uncover the history you know a lot of organizations have amnesia it's not just companies but you know governments have amnesia we all have it so it's interesting sometimes to go back and hopefully we learn why we did things and doesn't sometimes mean you get to fix them but you can like okay now I know why we have Gen 2 so Engine Yard in even you know probably many of its products now Kevin is that right we're still cloud and Gen 2 is still and most cool kids today would not be touching Gen 2 there aren't barge poles long enough no one has barges it's really hard to get the right tools to poke Gen 2 but in 2006 it was chosen because it was the only OS platform or distro environment where we could do we could create the VPSs or slices in a 64 bit environment and some of them knew Gen 2 because they were hackers you know they'd played with they built their own thing and so we picked Gen 2 you might think well okay we'll pick it today and we'll change our mind tomorrow some of these things you can never undo and you know you get some skills you've got the people is it really worth I mean I think in the two years I was at Engine Yard every six months we'd have the why haven't we switched to a Bantu conversation because that would make us cool and oh yeah but then we'd be pulling down arbitrary packages and would be own our own packages and it's it's a very hard conversation because well we'll go through it so so what did we get out of Gen 2 so one things we could do if you and this isn't part because I'm sure many of you who's ever used Gen 2 look at all the pain that you've brought see you're here with me on this story so so Gen 2 is wonderful in the sense once you start to understand what you're really trying to achieve with a with a stable production system that you know your company wants to run on top of is you get to build things from source so that means you can twiggle the flags you can you know you can use the specific source you want to use you can build the specific dependencies you want to use there is a quarrel into that which we discovered in the history of it Engine Yard was what happens when the source disappears so I heard about this in but this is a very exciting story yes so what happens when one of your packages cannot be built anymore so anyway well obviously there's the solution to this but packaging script is just a bash script I mean I wish it was just a bash script it turns out that it's actually a bash script but there are magical wizarding rules that you must follow in order to be a correct you know e-build and so when I found Byte it was like oh my god I can build my own packages and no one's going to tell me I'm a bad human being and then Gen 2 has the system for for taking you know you can build the binaries and that they can be built so you're not building source on the machines you know you have your binaries and but in its essence you get to curate your own distro so let's have a look what Bosch does Bosch builds packages from source it has a packaging script in bash we get compiled binaries that are available to us and you might not have thought of this way but every Bosch release is a distro it's a distro for very for one very specific thing and and I became very much a fan of this idea that yeah I mean you don't get the reuse inherently of of one package for many reasons which is what a standard distros for but you know what I don't want that I want I want a Ruby for the specific job of running CF containers broker that is part of the Docker Bosch release I want another Ruby that might be exactly the same or it might not but I want it specifically described to run the cloud controller and I'd rather solve the problem of managing those packages horizontally than the worry of if I touch this one here that's shared across 50 different Bosch releases what's the outcome and so fundamentally they have a very similar role in the packaging so that was really interesting in the history of EvEngineard we were the one of the first people that so Ezra who was one of the founders of EvEngineard met Adam from Opscode and both of them were very excited about this thing called Chef and Adam was writing Chef Ezra was using it and I think we were one of the first companies to really put Chef into production this is great I've got Dennis here Dennis and Kevin are going to keep me on track for the EvEngineard and and so one of the first sort of releases of Chef was 0601 I've no idea why so early they were with four bullet points but and by the time I arrived and by the time I left the version we were at was 0601 what had happened was was we had because we were innovating in a sort of forked universe to Opscode itself Opscode wanted to go with a Chef server model where you know you describe it and pull it down we wanted our own model of we would control the Chef repose and we would you know we had a different thing called Chef Solo and so a lot of the innovation around how this all worked and the community grew separately and in essence we were competitors with Opscode who are now Chef and so one of the things we did differently that we never unwound was we had two Chef runs so we ran our Chef right set up engine x and and the app to all the install all the packages and everything and and you had a perfectly designed cluster of machines and then we said now you can run some Chef and you would you know you could provide your own bespoke Chef and people did all sorts of interesting things run Redis and other systems and there would be competition for certain files as they would want their ideas engine x being one of them the configuration for my sequel and so the problem was that we lost the ability to easily move our platform forward with confidence and there were a lot of it was a lot of heartache every conversation around curating the cloud cookbooks is what they were called was was fraught with this well we have a customer who did this once this is a terrible place to have have an experience of trying to move a platform forward but another one was we literally really couldn't move Chef forward either because to what and how many are we going to do this every week and now do we need to let customers know that Chef has changed in some way in their cookbooks running it was it was a nightmare and and like many things if it's just a bit too hard you just don't do it today do that 365 days a year for five years and you get that everyone feels bad about it but no one really has the job to fix it and this so let's have a look what Chef did for us and my gut feelings is what Chef does for everyone you install some packages I mean it's in Ruby what's cool about Chef at a glance is that you get these two runs through it you get to write in Ruby a programming language and you can write you know high-level functionality in there but but this is pretty much all we ever did I think this is what people your Chef for we install software packages which were built either by people we don't know or some other system that we did control so we were installing identity packages you create configuration files and Chef has two ways to do that there is the file command and then there's the template command I don't know why like I could just have one the template command which might do templating one of those types of files might be a wrapper for monitor so we use monitor coincidentally and then you tell monitor to start monitoring because that's his job and so it turns out if we look what Bosch does it installs packages it creates config files we install monitor scripts and then we start monitor and so when people ask me why don't we you know why not Chef it's like well what else do you want like what what is that thing that you can't do with you know if you look at what you're using Chef for let's get rid of all of Chef and just describe the packages in a list just have like a folder full of template files and process them all with the same inputs so with Chef you would sort of say here are my inputs for this one here are my inputs for this one let's just throw all the inputs into all files and let's just default to monitor like in Chef you can pick different process monitoring and so to my mind the convergence standard a very simple way of doing config management was one of the things I liked about Bosch all right so engineer we were a Ruby company we sort of grew on the back of the growth of Ruby we made Ruby applications specifically Ruby on Rails easy to do and and so we Chef was written in Ruby and so on when you brought up a machine as a customer like yeah we we brought the machines up for you and then we run Chef but you needed Ruby so we had Ruby on there to run that the problem we had was that when we started there was Ruby 186 and that's what the noise it used to make that was provisioning all right they all had a ringtone so so Chef was running on on Ruby and and our customers applications were running on Ruby and you got it on the same Ruby like the same package you know as you would app getting still and he select and and then a new version of Ruby came out some of our customers wanted to use it and some didn't and so this was a tortured process of untangling this and providing the option for we ended up having we had to have our own Ruby for our Chef stuff and then and a whole and we basically forked that whole thing and isolated it and said this is us for for the Chef called resin and then there was the option to pick rubies and you know it was the it was the learning lessons over time but they you know you can imagine the cost and then the R&D cost and the meeting cost and the customer dissatisfaction and you know why are you taking so long to do the simple job of offering us 187 and we had a similar problem later on where we went from one Amazon region I will get to Amazon and got to the point where where you know the Ruby maintainers wanted to move the hell on and just wanted to play with shiny new Ruby well we were a distro company really you know in a sense like you as a new company you still sort of mentally map yourself to legacy or existing industries and so say we like that we were like Red Hat except we managed running systems so we managed packaging we took it very seriously we had some people who took you know package and security maintenance very seriously and one of the things because we still had customers on 186 and we did for five years it took us a long time to get them off was we maintain security for that so along the path of Engine Yard came so we were running our own servers in fact in the early days that was one of Engine Yard sort of um conference ways to turn up to conferences to come in with their servers and say look at our servers these are awesome that's right they did that didn't they they're very excited about their servers that was 2007 you have to stop doing that for a while because obviously that involves downtime sorry you're perhaps not running we're taking the service at the conference and we had all our own you know somewhat bespoke code whatever for bringing up slices and things and Amazon came out around the same time that Chef was coming around and but Amazon Web Services didn't look like this back then it looked like that very benign this looks helpful doesn't it like you would build an entire business on that thinking nothing could possibly go wrong and um but and so yeah we had the we had the challenge of having to build an entire platform from scratch like so at this point we were now a bigger company we had more funding and so we could do a bigger investment instead of bigger investment instead of little scrappy little shell scripts that no one saw we now start to build a customer facing portal that would provision clusters run Chef and your app would come up and and all that billing and all that other stuff that you just have to do in order to be in business um and and just to go back I mean as over time Amazon became a machine and a very big public presence and new things would come out and our customers would say well why can't I use the ELBs it's like well you don't really need them um we've got you know we're using HA proxy on every machine what exactly do you need ELBs for it's like all right why can't I use IAMs like for God's sake right we build everything before they had that stuff we don't need it so staying staying with Amazon you know and and essentially competing with them and and and uh so I guess we were one of the first organization in the world to realise that that our days were going to be challenged by our very own vendor um hence we have this this whole multi-cloud premise here not just because of Amazon but mostly because of Amazon um so there and so we built this thing called app cloud and tens of millions of dollars really would have been spent um perhaps perhaps even more than that so uh over years right and when they built this there was only one cloud and only one API to build against so the idea of of building for multi-cloud wasn't really a concept you had no idea of what the abstractions might be even if and then then there's the you know engineer engineers had this idea of of agile development only build what you need and unfortunately that idea of only build what you need often means let's not worry about abstractions today or tomorrow um all right there's a number of very angry engine up people here and um and uh and it's really hard to add them in later on sometimes and it's hard to plan them in advance so it's a hard problem in general I mean one of the ones we missed was and it's hard not really visualised there but was uh then they came out with the second region oh my lord oh wow that was a surprise did not see that coming um you know he's mad you know you had we were deploying to Amazon that was it we were deploying to Amazon and then they said there's this other one what what does that mean what do you mean there's another one we were we were doing this and now you've got that um and so yeah the effort that goes into orchestrating and annex you're adding another access to things um so in essence we you know this was our um the thing we did you know we did packet management config management infrastructure management um that's what we did the value proposition was was always nebulous not nebulous not the right word um the value that customers saw didn't always manage you know they we would still have to have this do it yourself yeah I'm sorry how do I put it we suspected our main competitor wasn't Heroku it was people who said but I could do this myself like why am I paying you extra like like they saw the value of Amazon because you know infrastructure people need to be paid but exactly what are you doing it's like um we didn't have emoji back then so um um you could put that in support tickets but um yeah it was um and so you know you all our code bases get a little old little weary and um how am I going for time by the way doing great for time doing fine Matt doesn't want to come up next um and uh uh uh for finished so it's okay so you code gets a little weary and you know you the company starts to want to be multi cloud you know there was cloud stack there was these other things coming along and and open stack and um but our code was nowhere ready for that and we had different ideas we weren't really a container company even back then you know cloud foundry had come out by about now so we're in 2011 2012 we weren't the next phase wasn't going to be containers in any shape and um um but they wanted to redo everything you know they were open to redoing the entire product to to open up to other ideas that we'd learned and so at this time I discovered uh I was I started to know through Twitter our enemies at VMware um but they were funny enemies in a sense James Watters was hilarious um we would banter and he was funny I knew Dave McCrory um his good friend uh he ended up you know taking cloud foundry to warning music and but it was Dave that that telling me quietly there was this this thing that was going to be called it was Bosch and it was it was how you know cloud foundry had come out in the first year with some chef recipes and and very irregular updates but uh they worked and people happy but they weren't what VMware was using and that pissed people off and it caused problems and so they they brought up Bosch and and this is what made me fall in love with the cloud foundry project as a as a mission it's like because can you trust VMware don't know but they just shared how they run this thing and that that was pretty pretty powerful to me and um but I was still at engineer and still worried about engineer problems and here was a system that just came out that was completely open sourced and solved 80 percent of what we found hard and so to crickets I asked does anyone want to come down to VMware with me to investigate to crickets I brought it back to engineer and unfortunately true to um you know I was a junior executive in my I misbehaved and I wasn't I didn't have a lot of political capital about that time no one listened to a word I said and so I became the world's number one Bosch evangelist but no one at engineer gave two shits and that was hard um you know I could build demos of things in a week and they were still discussing what they might like to build for their v2 and it was it was becoming confusing internally why is nick making this stuff that's not what we're doing I built an api in a we're gonna wait it's a little ruby thing I just said like you have a post api and you'd send a request and it would talk to Bosch because Bosch has an api you all know that right it's not private and secret internal if Dimitri says that he's lying as did every product manager like Matt ever they lied and said there's no it's private don't use it no it's awesome and it's fabulous and you should talk to it um and it's really stable because no one touches it you know you construct your manifest and you give it to Bosch and up comes a thing a versionable thing a thing independently versioned from every other thing you brought up you bring I'll say you wanted to my demo was redis this was exciting I you know you go post instances you get a redis cluster post instances another redis cluster they could all be versioned independently like I didn't have to upgrade them all and it was just that was exciting couldn't anyway um it was an engineer I have the idea okay that's not working what else could I do all right we could we could start doing independent services we could do react as a service and not have to sort of jam it into our old system it doesn't have to be just for engineered customers because a hundred percent of engineer customers didn't want react I said redis I meant react um because they weren't using it so but no and then the last one I had was the idea of like this is really cool you could like use this as a a delivery system for systems in the enterprise it'd be like an app store and I gave that that was the last meeting I have with the CEO and he didn't like that idea and so I left and there are so many things we can do with this uh with this system um so I I I wish to finish there I there was an entire day of interesting stories that are going to come on that was that was how I got to Bosch I you know many of you have followed I have joined my journey along the path in the first year while I was still an engineer there was there was like three public people playing with Bosch there was myself 30 a couple others who've Brian McClain maybe one or two others who I've names I've forgotten now but and then and then it started to grow and people started to you know people started to find Bosch and then people started to use Bosch for reasons unrelated to running Cloud Foundry and whilst it can be a little painful to be so early it is so exciting to have a room full of 200 people that think Bosch is pretty okay so I'm pretty excited to sit down and shut up after a whole week of talking so thank you very much and have a lovely day