 From around the globe, it's theCUBE with digital coverage of DockerCon Live 2020 brought to you by Docker and its ecosystem partners. Hello, how are you doing? Welcome to DockerCon. We're kind of halfway through now, I guess. Thank you for joining us on this session. So my name's Elton, I'm a Docker captain and I'm joined by Julie, who is also a Docker captain. This is actually, this session was Julie's ideas. We were talking about this learning of Docker and how it's a light bulb moment for loads of people. But Julie actually came up with this great idea for topics. So I'll let Julie introduce herself and tell you a bit about what we're going to talk about. Thanks, Elton. Though I'm Julie Lerman, I'm a software coach, I'm a developer, I've been a developer for over 30 years. I work independently and yeah, I'm a Docker captain. Also, a Microsoft regional director. I wouldn't let them put it on there because it makes people think I work for Microsoft, but I don't. Yeah, so it's a weird title, isn't it? So the Microsoft RID, the regional director, it's like a kind of Uber MVP. So I'm an MVP and that's fine. That's just like a community recognition, just like you get with the Docker captain. So MVP is kind of like the Microsoft version. Julie's MVP too. But then you get the regional director, which is something that's like, and people get so good. Yeah, it doesn't matter. It doesn't matter. What's your idea? I'm a man. Yeah, so I've been using, we've been using Docker for years between those 10 years between the company. You probably, how long ago was your Docker aha moment? So I, 2014, I first started using Docker. So I was working on a project where I was consulting for a team who were building an Android tablet. And they were building the whole thing. So like, you know, they spec'd out the tablet, they got it built over in the Far East. They were building their own OS, their own apps to run on it. And of course, all that stacks Linux, but they was all talking to services that were running in the cloud. They wanted to use Azure for that. And Dotnet, that was their technology historically. So I came in to do the Dotnet stuff that was running in Azure. But I got really friendly with the Linux guys. It was very DevOps-y. It was one team who did the whole thing. And they were using Docker for their build tools and for having the CI tools and they were running their own Git server. And it was all in Docker. Already in 2014. That's pretty cool. Yeah, they were, yeah. So I had pretty early introduction to it. And it was, yeah, it was super cool. So I'd always been interested in Linux, but never really dug into it. Because the entry bar was so high to run stuff in Linux. So you read about this great open source project. And then you go and look at the documentation and you have to download the source code and build it. And it's like, well, I'm not going to be doing that stuff. And then Docker came along, I do Docker run. Uh-huh. Well, I would say I was a little, definitely delayed from that. I'm still thinking, wait, when you first started saying that this client, this company was building their own Android system, you start thinking, okay, they're building software, but no, they were building everything, which is pretty amazing. So I have to say it took me quite a while, but I was also behind on understanding virtual machines. Right? So, you know, Docker comes along and I have lots of friends who are using it. Like, you know, I spent a lot of time with Michelle Lerubista-Monday and she's a big container person, right? And I, and most of the people I hear talking about Docker are really doing DevOps, which is not my thing as a developer. I always just said, let somebody else do that stuff. I, you know, want to code and architect and do things like that. And I also do a lot of data work. I'm not like a big data person doing analytics. And I'm not a DBA, I'm more very involved in getting data in and out of applications. So my aha moment, I would say it was like four years ago after Microsoft moved SQL server over to Linux and then put it inside a Docker image. So that was my very first experience, just saying, oh, what does this do? And I downloaded the image and Docker run and then like literally I was like, holy smokes. SQL server's already installed. Like, you know, the containers up like that and then it's got to run a couple of bashing SQL scripts to get all the system tables and databases and things like that. So that's another 15 seconds, right? But that was literally for me, the not really how it was more like OMG. And I'll keep the F out just to keep it clean here. It was my OMG moment with Docker. So getting that start, then I worked with the SQL server image and container and did some different things with that in applications and then eventually expanded my knowledge out bit by bit and got a deeper understanding of it and tried more things, right? So I get to a comfort level and then add to it and add to it. Yeah. And I think the great thing about that is that as you're going on that journey, the aha moments keep coming. So like we had another, I had another aha moment this week with the new announcement that you can use your Docker compose files and use your Docker commands to spin stuff up running in Azure container instances. So like that you've kept that learning journey is there. If you want to go down the, how do I take my monolithic application and break it up into pieces and run those in containers? Like suddenly the fact that you can just do all these things together and run it on one platform and manage everything in the same way. These light bulbs keep on coming. So the idea that the, I mean, you've seen the modernization things that people are doing. That's a lot of the work that I do now taking these big applications. You just write a Docker file and you've got your 15 year old dotnet application running in the container and you can run that in the cloud with no changes to code. And that's super powerful for lots of people. And I think one of the really important things especially for people like you and I who are also teachers is to try to really remember that moment because I know a lot of times when people are deeply expert in something it they forget how hard it was or what it felt like not to understand it that context. So I still have held onto that. So when I talk, I like to do introduction. I like to help people get that aha moment. And then I say, okay, now go on to the, the really, really expert people you're ready to learn more. But it's really important to especially maybe we're teachers, conference speakers, book authors, little site, et cetera, et cetera, right? But lots of other people who are working on teams they might already be somebody who's gotten there with Docker and they want to help their teammates understand Docker. So I think it's really important to for everybody who wants to share that to kind of have a little empathy and remember what that was like and understand that sometimes it just takes explaining it a different way explaining maybe just tweaking your expression or some of the words or your analogies. Yeah, that's definitely true. And you often find this, it's a technology that people really become affectionate for they have a real deep feeling for Docker once they start using it. And you get these internal champions and companies who say, you know, this is the stuff I've been using I've been using this at home or whatever and they want to bring it into their projects and it's pretty cool to be able to say to them this is, take people on the same journey that you've been on or you've been on a journey which was probably slightly more investment for you because you had to learn from scratch but now you can relay that back into your own project. So you can take, you know you don't have to take everyone from scratch like you did you can say, here's the Docker file for our own application this is how it works and bringing things into the terms that people are using every day I think is something that's super powerful. My video is going to completely strange. Thank you. Oh, I was being really cool about your video. Oh, maybe it's just how it's streaming back to me. Yeah, so yeah, that's I think the teacher thing again, right? Like we'll work a little harder and bump our knees and stub our toes or tear our hair out or whatever pain we have to go through with that learning because it's also kind of obsessive and you can steer people away from those things although it's also helpful to let them be aware like this might happen and if it does it's because of this but, you know, that's not the happy path. Yeah, yeah, absolutely. And you know, I think they and it's really interesting talking to people that they're kind of trying to get to where what problem are they trying to solve? It's interesting you talked about DevOps there and how that's kind of not an area that you've done a lot of stuff in I've worked in a couple of organizations where they're really trying hard to move to that model and trying to break down the barriers between the team who build the software and the team who run the software but they've had those barriers for 20 years and it's really hard to break that stuff down. It's a big cultural shift it needs a lot of investment but if you can make a technological change as well if you can get people using the same tools the same languages, the same processes to do things that makes it so much easier like now my operators are using Docker files and the security team are going into the Docker file and hardening it or the ops team are building up my compose file or my Kubernetes file and everyone's using the same thing and it really helps to find people together to work on the same area. I also do a lot of work in domain-driven design and that whole idea of collaboration and bringing together teams that don't normally work together and bringing them together and enabling them to find a way to collaborate and giving them tools for collaboration just like what you're saying with having the same terms and using the same tools, right? So that's really powerful. You gave me a great example of one of your clients aha moments with Docker. Do you remember which that was? The money, the money, yes. That's a very, very powerful aha. Yeah, so I went in to do that. The company that I'd worked for before when I was doing just dotnet consulting and they knew I'd got into containers. I was working for Docker at the time and I went in just as a, I wasn't a sales picture, I was just as a favor to talk to them about what containers would look like if it came into their operation. Big heavy Windows users, a huge number of environments, lots of VMs that were all running stuff to get the isolation and to give them what they needed. And I did this presentation of IT. So it wasn't a technical thing. It was a very high level. It was about how containers kind of work and I'm fundamentally a technical person. So I probably have more detail in there than you would get from a sales pitch. But it was very much about, you can take your applications, you can wrap them up to run in these things for containers. You still get the isolation, you can run loads more of them on the same hardware that you've got and you don't pay a Windows license for each of those containers. You pay a license for the server that they're running on. Right, that's it. That's the moment. The head of IT said, that's going to save us millions of dollars. And that was his aha moment. And I'm going to wrap that into my, conference session about getting to Docker for sure. Getting that aha moment. And my, go ahead. My experience is less that, but wow, I mean, that's so powerful. You know, when you're talking to kind of C level people, right, about making those kinds of changes because you need to have their buy in. So as a developer and somebody who works with developers and that's kind of my audience, my experience more has been when I'm giving conference presentations and, you know, we'll start out in a room of people. And I have to say, when I'm at dot net focus conference, I find that the not there yet with Docker, part of the audience is a big one. So I kind of do a poll at the beginning of the talk, right? You know, who's, you know, heard of Docker, obviously, they're there in the room, but, you know, you curious because you still not really understand it. And that's usually a bulk of the room. And what I like to ask at the end is, you know, of all of you that, you know, that first group, like, do you feel like you get it now? Like you just get what it is and what it does as opposed to, I don't know what this thing is. It's for rocket scientists, you know, because that's how I felt about it, right? I was like, you know, I'm just a developer, right? Like it wasn't my thing. But now, I mean, I'm still not doing DevOps, right? I use Docker as a really important tool during development and test. And that's actually one of the, I'm going to be talking about that, but it's my session a little later. Oh, like the next hour, right? It's about using Docker, that, you know, my AHA Docker, right? SQL Server in Linux in an image. And but using that in Dev and test, not it's not about the DevOps and the CICD and Kubernetes. I can spell it. Especially when I get to say K8S, right? Like, I even know the cool lingo K8S on Twitter. I think that's one of the cool things about this technology stock in particular. I think to get the most out of it, you need to dig in really, like if you want to, if you're looking at doing this stuff in production, if you're attracted by the fact that I can have a managed container platform in any cloud and I can deploy my app everywhere using the same set of compose files or Kubernetes files or whatever. If you really want to take advantage of that, you kind of have to get down to the principles, understand it all, go on a proper kind of learning journey. But if you don't want to do that, then you can kind of stop wherever it makes sense for you. Like you, when I'm talking to different audiences, strangely enough, I did a pro-site live stream this morning. It was quite a specific topic. It was about building applications in containers. It was about using containers to compile your app and then package it so you can build them anywhere. But even in a session like that, the first maybe two minutes, I give a lightning quick overview of what containers are and how you use them. Because exactly like you say, people will come to a session if it's got Docker or Kubernetes in the title, but if they don't have the kind of entry requirements, they've never really used this stuff, then suddenly we're up here and it's a big jump for them. So I try and always have that introductory stuff. I've had to do that on the fly. Sorry? I've done that on the fly in it at a conference because it was doing like ASP net core with entity framework and containers. And like 80% of the room really didn't know anything about Docker. So instead of talking like five minutes about Docker and then demoing the rest, I ended up spending more time talking about Docker to make sure everybody was really, you could tell that difference, right? When they're like, okay, like that they understood enough in order to follow along and understand the value of what it was that I was there to show them. Which is about the ASP net core. I'm also, this is making me remember that first time I actually used Docker compose because it was a while, right? I was just using the SQL server Docker image on my development machine for quite a while. And because I wasn't deploying, right? I was learning and exploring and so I was on my development machine. So I didn't need to do anything else. So the first time I really started orchestrating that was yet another aha moment, right? But I was ready for it then, right? I think, you know, if you start with Docker compose and you haven't done the other, maybe it wouldn't, right? But I was ready because I'd already gotten used to using the tooling and, you know, really understanding what was going on with the container. Then the Docker compose was like, wow. Yeah, yeah, it's just the next one in the line. There's a great comment actually in the chat about someone from, yeah, from Steve saying that you can see there'll be an aha moment for his about security. And actually that's absolutely, it's so when security people first kind of get their head around containers, they get worried that if someone can compromise the app in the container they might be able to break out and get to all the other containers. And suddenly, instead of having one VM compromise you have a hundred containers compromised. But actually when you dig into it it's so much easier to get this kind of defense in depth when you're building in containers because you have your on an image that's owned by the team, you know, the team who produced the platform, whether it's not network or whatever they all have their own images that are built with best practices. You can sign your images so your platform doesn't run anything that isn't signed. You have a full, full history of exactly what's in source code is what's in production. You know, there's all sorts of ways you can layer on security there and make, you know, attract that side of the audience too. I've been looking at you this whole time and like I forgot about the live chat. There's the live chat. There's Scott Johnston in the live chat. Yeah, yes, it's the CEO, yeah. The people talking about Kubernetes and Swarm. I'm scrolling through quickly to see if anybody's saying, well, my AHA moment was. There was a good one, there was a good one. What was this one? From Fatima earlier on my AHA was deploying that with almost no configuration onto a VM and couldn't believe it and never looked back. And that's, yeah, that's exactly it. You run one demand. If your image is nicely built so it has some sensible defaults, it just all works and, you know, everyone's happy. Yeah, and, you know, the thing that I'm doing in my session is what I love, right? Like the fact that for the development team, right? That development testing everybody on the team. And then, you know, again, on up the pipeline to CICD it's just a matter of, you know, not only do you have your source code, but in your source code, you've got your Docker compose and your Docker compose just makes sure that you have the development environment that you need, right? All the frameworks and everything that you need is just there without having to go out and find it and install it. Because, you know, it's described. There's no gap in the development environment to see how I build the production. So I'm hearing, you don't hear, but I can hear that we need to wrap up. Oh, yeah, yeah. I'm sure you get yourself prepared for your next session, which everyone should definitely, I'll be watching, everyone else should be watching too. So thanks everyone for joining. Thanks, Julie, for a great idea for a conversation. There was a comment about, I think we're probably good people to have a beer with and I would certainly echo that. Oh, yeah, we live so many thousands of miles away from one another. Well, hopefully next year, there'll be a little Dockercon and we can all meet some of you guys. And I do need to point out, the last time we were together, Elton, I got a copy of Elton's book and he signed it for me. And we took a picture of it. There's two more books in spend. Yeah, I know that's an old book, but it's the one that you signed. Okay, thank you so much. Thank you everyone for joining. And yeah, we'll enjoy the rest of Dockercon. Bye.