Hi, my name is Thomas Maurer. I'm here with Vinicius Aperlinario, a PM in the Windows Container team. We're going to talk about some awesome stuff, how you can actually modernize your existing Windows Server applications using containers and make it super easy using the Windows Admin Center extension. Hey Vinicius, how are you doing? I'm good Thomas. Thanks for having me at the show. Thank you for joining us. We really appreciate you taking the time to talk about some awesome stuff you're doing. For the people who haven't really heard about you, I'm sure a lot of people heard about you in the past, but you recently joined the Windows Container team and you work on some awesome stuff there. Can you explain me a little bit more how long you're at Microsoft and what your current role is? Actually, I've been with Microsoft almost 10 years. This is the year that I have the marks my 10-year anniversary with Microsoft. It seems recently, but I've been with the Windows Container team for two years already. Recently, I started working with how can we make the process for IT pros and ops teams to use containers a little bit easier. You see the result of that in Windows Admin Center today. We have tooling around how you can containerize applications using Windows Admin Center that makes the process completely easy for that specific audience and so on. That's awesome. First of all, congratulations to the 10 years you will have. Thank you. Secondly, sorry for the recent. I always say I'm recently joined Microsoft and I just realized that's also two years ago. It still feels like it just happened. Welcome back to your anniversary. Thank you very much. I think we met exactly when I joined Microsoft. I think that is when we actually had this awesome stuff. You're working on some really cool stuff, especially for IT pros and companies who actually need to modernize their existing work traditions. We actually asked you to join this session. What are we going to learn today from you? Well, today we're going to show the process of containerizing an existing application. We're going to show you some scary stuff like Windows Server 2008 up and running with an ASP.NET application that is up there from whatever customer that is running those types of applications is still on those servers. The problem they have is, how can they get out of Windows Server 2008 and still use the latest and greatest technology that is out there today, like containers for example, and Azure Kubernetes services and so on. So we're going to show that process, but we're going to show that process from the IT Pro perspective. How you take the application, how you extract the application from the running server, how you containerize the application, how you push the application to a container registry, and then from there, how you deploy the application to Azure Kubernetes service. That is awesome. We get these questions a lot from a lot of the IT pros out there. A lot of people are talking about containers and actually how we can use them and what the great benefits are and so on and so on. But it's always good to have like, okay, so now talk about the real stuff and how do I get to use them and so absolutely happy that we have you here. But before we start with that, can you probably share a little bit with us, like just get us a little bit of a recap what containers are and what the benefits of using containers is? Yeah, absolutely. So let's get started with that. The first thing I wanted to talk about is, if you are an IT approach today, you are probably used to seeing a scenario like this, a data center full of racks and servers, and it's great especially with hardware virtualization today. We get better usage of our hardware. We get isolation for the applications on each of the virtual machines. But the problem with that, that we found out over the years is that those virtual machines, they are what we call resource hogs. They still consume a lot of resources for those applications running on those virtual machines, and they are still an entire operating system that you have to manage. Especially with the Cloud, for example, how do we describe how we want to compose the applications and the operating system that we're running today? If you want to use infrastructure as code, for example, how do you adapt with virtual machines? More importantly, how does an application move between testing environment and production environment, which is one of the major problems between Devs and IT pros over the years. Developers go and test the application in the Dev environment when they send it to production, the application doesn't exactly work the same way. Well, there are multiple reasons why that happened, and containers are here to try and solve that problem. That is something I hear a lot. These are some awesome challenges we are facing, and I'm wondering really how you're going to show us how we can fix this. Yeah, absolutely. I think that was actually a good move at the next slide. Also, I know a ton of customers which are obviously still using Windows Server 2008 and 2008 are two, and obviously end of life basically on support is gone. What can they do with these applications, and can containers also help them with that? Yeah. I think the question customers are facing at this point is, if you still have a Windows Server 2008 application, how do I keep my business running without disruption? I need to move away from 2008, but I still need to run the applications. The other question is, if I'm still using 2008, how can I not only move away from 2008, but also modernize that application? I don't want to simply put it in the next operating system, and then just wait for the next end of support, and so on. Containers can help with that. By the way, Windows Server 2008 is already not supported, so if you're still running on 2008, you should be thinking on how to move away from 2008 pretty quickly. Entering the subject of containers itself. Containers, they solve for multiple things, including the things that we've been talking about in the previous slides. The analogy that we make here is with shipping containers itself. The reason why containers are called containers is because they are very similar in nature to containers that we see in shipping containers. The reason is, over the years, the industry needed to figure out how to transport goods from one place to the other, in a way that is standardized for the shipping container or for the ships that are actually moving those goods. Shipping containers are the answer to that. They are a standard way for you to package those goods and then ship it to somewhere else and then open the container, and the goods will be there exactly the way you inserted them into the container. If you want to move those containers around, you can do that. When you think about containerization from a technology perspective, it's the same thing. The only difference is, instead of shipping goods, we are shipping applications from one place to the other. The major benefit of containers is that they run exactly the same way, no matter where you run the container. As long as the service or the container host can run that container, the container will run exactly the same way. That's what we're going to prove today during our demo. So, going back to the analogy, sorry, Thomas, go ahead. No worries, I was just like, this makes this light bulb go on here. This is how we actually get it, the exact same configuration from one place to another, because that is one of the things you just said before, one of the challenges, and that is one of the channels I've seen a lot, is actually getting this application from a development environment into pre-production and then probably in production, that it actually has always done the exact same way, right? And I think that is now makes my light bulb go on here. Yeah, exactly. The reason why an application might not work in production compared to development might be multiple things, configurations on the operating system, requirements for the applications that are not in place on the production environment, and then the list goes on and on and on. With containers, when you package the application along with the container, you describe everything that the application needs in order to run, so that package contains everything, not just the application, right? So major benefit there. So when you move, for example, from your co-workers, DAF machine, to your machine, or to your Canary, or DAF environment, your test environment, and then into production, even the cloud, everything will work exactly the same way, right? Yeah. Major benefit there. So it's not just like, oh, it worked on my machine. Exactly. So looking a bit further on the benefits of using containers, agility is, of course, one of the main ones, because you're not tied to looking into issues when you move from environment to environment. Portability, because you can move from even on-premises to the cloud. So it doesn't matter, like, if your hypervisor is different anymore, it doesn't matter. If your virtual machine can have to be backed up or exported in a way to move to the different environment, the container itself is going to run exactly the same way. Density is another one, because we're going to talk about the architecture in a second. We can package more containers into one host compared to virtual machines. And rapid scale, because of that, because we have better density and better performance, then you have faster scale options with containers. All right, so let's take a look at the architecture itself. So again, this is what you're probably used to as an IT pro, a rack, a lot of servers, networking, storage, and so on and so on. Let's take a look at the hardware and operating system layers here. This is what we are used to, right? You have the hardware layer, and then on top of the hardware layer, you have the operating system. And with the operating system, you have additional layers inside that we don't get to see, but we know how the operating system behaves. You have the kernel layer on which the operating system basically manages how the applications and the services, they are going to access the hardware, plus a bunch of other stuff that the kernel is responsible for. But mainly for the purpose of explaining containers, the kernel is responsible for managing how the applications are going to access the hardware and managing the isolation between those applications itself. However, they are all sharing the same kernel here. So what we did back in the day with virtual machines was, well, let's create an isolation for the kernel so we can have multiple kernels running, and then you have one operating system per application of virtual machine that you deploy, right? The problem with that is that you have an overhead for that kernel, right? You have an entire operating system that you have to package, manage. You have to boot the operating system just like you've built the operating system in a physical machine, right? So with containers, I should have clicked before, but basically you have the kernel space and the user space. That's the nomenclature that we use for those two layers that I was describing. With containers, what we did was, well, we kept the kernel there. So you don't have a different kernel, right? It's the same kernel. But then you have the isolation of the user mode. So each of the application here has its own view of the user mode and the kernel, right? When you package an application in a container, you have the same applications and services running in that container, but that container is sharing the kernel with the host, right? The good news here is, well, if something goes wrong with that container, you don't need an entire operating system to boot it again or this won't affect the other containers that are running in that operating system because in the previous option, if something goes wrong with this application, it will affect the other applications that are sharing that kernel, right? Here we won't anymore. And the other thing is, if you need to boot a new container, you don't need to boot the kernel again. You would skip all the steps to booting the operating system and then from the management perspective, that's not another kernel and operating system that you need to manage. It's just the container itself. It's one operating system with multiple containers running here and they are user mode isolated. Okay, okay, that's pretty... I can already like see a couple of awesome things here. So what you're basically saying is like when we did, we had obviously like in the very early days, we had one physical machine, an operating system on top and usually we put an application on that. And we wanted isolation, right? You don't wanna have like five different applications on the same physical host. So we added like more physical hosts and then they were basically doing nothing over all that time. And then we had this cool thing called virtualization, which then allowed us basically to split up the hardware into different virtual servers or virtual machines, which had a little bit like, which actually was great and that is what we're doing now since years. But the problem with that always was, as you mentioned, we still have all that overhead. Like we have a whole operating system for that, right? And like obviously when you move a virtual machine, it takes some time and all that flexibility and you need to manage it as you said. And now what you're telling me is that I actually can like split up, if you will like use the same kernel and still have isolated applications running on that operating system, right? That's correct. And from a terminology perspective, some people call it operating system virtualization, right? Cause it's really like one layer above hardware virtualization where you are not, you are now sharing the kernel instead of the hardware, right? So I mean, from a resource perspective, management perspective, there are many advantages for using containers here. So there are, I mean, just out of the, just saying this is like, it's probably, they are very like a lot smaller. So if I want to copy move them around, I probably don't need that. And I know that you probably like have some other things talking about layering and stuff like that as well, but that they're definitely smaller. So they are easily movable. They're probably taking less resources so I can put more on one machine to get that density you mentioned. And then also they're probably faster by spinning up. As you said, we don't need to boot the kernel all the time, like if we do a reboot, we can just re-spin it up. I mean, again, I probably show me a ton of other things as well, but yeah, I'm already a huge fan. That's awesome to hear. Well, let's hope that the demo is even better. So let's get you on the slides here. So just to finalize an example, the example for the demo that we are going to use is for a web application. The cool thing here is if you have multiple applications running on IIS, for example, what people usually do is like I have one web server running multiple websites. And then even IIS has isolation methods, like for example, application pools that you can run inside of one instance of IIS for multiple sites. That concept is not even necessary with containers anymore. You can have one container for each website because they are way smaller. You can isolate and quickly boot a new instance of your website like in a matter of seconds. So even concepts like application pools are not exactly applicable for containers anymore. You can have one container for each of the websites that you have and still have a better resource for your application for your container host. Okay, now that's awesome. So again, as I said, huge fan. So how do we now take that advantage of containers? Like I know we run ton of applications. How do we now take advantage of that? Yeah, okay, let's get that app containerized. All right, so let me switch to my, this is going to be scary for some of you. This is a Windows Server 2008 R2. And this is how we use to run things back in the day. But primarily what I wanna show you here is that this is a web server running a ASP.NET web application. I'm gonna show you the application in a second, but primarily what I wanna start with is that this is a regular web server and very common scenario from what, 10 years ago or something like that. I have my application here deployed, as you can see as an application called ViniBeer. I have a default website, default kind of deployment back in the day. This is our application, right? So it's called ViniBeer. It's primarily a process for you. One of the things that I do is I brew beer at home. And during the process of brewing beer, you have to bottle your beer and then let it sit for a while. So it carbonates and generates CO2 and alcohol and all the process and so on. So basically what this tool does is it gives you how much sugar you have to add to your beer when you bottle it. So it ferments and generates CO2. So let's say, what kind of beer you like, Thomas? I'm kind of like, I like ales. Do you have any like an ale or something like that? Let's get a Belgian strong golden ale. I know you're Swiss, but let's get a Belgian strong golden ale. That's fine, like Belgium beer is fine. I'm just like, as a Swiss person, I have difficulties with Belgium chocolate, but. All right, so the temperature here is in Fahrenheit. I use Celsius, I know you too, but Fahrenheit, let's say like 75, oops, Fahrenheit. That's like above 70 is good, below 70 is not good. And usually when we brew beer at home, you're doing like five gallons of beer, which is a lot of beer. So basically what it gives you like type of sugar and then how much you should be adding to your recipe. So pretty cool tool for whoever builds beer at home. The app works. The problem is it's sitting in a Windows Server 2008 and we to move away from that. And in the process, what we wanna do is we want to modernize the application, right? Yeah, so there are multiple ways you can start the controlization process. We are going to use one that is probably the most familiar to IT pros out there, which is I don't have a developer to help me, right? When that process happens, basically what you have is you end up with the server that has the application deployed. So your first step in the containerization process is you need to extract the application from that running server. And for doing that in this case, of course it will depend on the type of application you have, but for web applications, we have a tool called WebDeploy. WebDeploy can be attached to IIS. There's an installation process out there. So let's show you how we do that using Windows Server 2008 exactly the same newer servers as well. So what I'm gonna do is I'm gonna right click my application here. You can see that I have WebDeploy installed. So I have this deploy menu option and I'm gonna click export application. The cool thing about WebDeploy is that it's going to export not just the application itself, like the files for the application, but the configuration of the application inside of IIS. So if you configured application pool, what version of .NET this application has to use, everything goes in the export process. As you can see, I have the configuration here and I also have the file system. So all the assets for my application to work, they are already included in here. The next step I have is if I want to add any parameters for the export process, this is particularly important when you have applications that are talking to a database. If you have a database string that connects the application to the database, here is probably something you wanna take a look. The reason why is you might be containerizing the application and keeping in the same network. So for example, if your application access your database by a DNS name or IP address, it will continue to work if you deploy the application on a container on the same place where the virtual machine was. Now, if you move to the cloud and you are moving the database, let's say for example, for a SQL managed instance, for example, here you wanna change that configuration. For example, if you have a database connection string, here's where you would be changing that configuration to the new connection string for the new database. Okay, awesome. So I would actually go out and let's say, to make this example, I will create the SQL database in Azure, for example. That is already now, I would take that data and put it in there. Yeah, because remember the connection string for the existing server is talking to your, let's say the old connection. You need to change the new one. So here's where you are going to export the configuration. So when you import this configuration in the container, it already knows where to talk to. Okay. We're not gonna do that here. The application doesn't have a database, but just to let you know that this is where you would do that process. The next step is just to specify where the package goes and then you finish the process of exporting the application. So this is step number one, right? The next step is now with the zip file that is generated by this export process, you can start the containerization process itself. So now let's go take a look at our friend, Windows Out in the center. And here I have another VM where I'm running Windows Admin Center. As you can see, I have connection to multiple container hosts. The one I'm going to use to demonstrate the process is this container hosts 0, 1. And as you can see here, I have been extension in Windows containers called containers, right? So before you do this process that I'm gonna show, one of the things you have to do is you have to install this containers extension. If you don't know how to do that, we have plenty of blog posts out there and even our documentation now updated to include Windows Admin Center and how to use the containers extension. But basically after you deploy the containers extension and you target a container host, you can see here that the containers extension will show up and you have multiple options in here. So to quickly describe what we have here, we have container host options. For example, your containers you have running, the images you have running the networks and volumes available for those containers, as well as some Azure configuration, the Azure Container Instance for running one instance of your container and Azure Container Registry to restoring container images, right? Now, the first thing I wanted to cover for a containers is the images portion because in a virtual machine world, what you would do is you would install the virtual, I'm sorry, create the virtual machine and then you would initiate the installation process for the operating system, right?  With containers, it's a little bit different. Whenever you restart a container, you have to start from a base image. That base image is the instruction on how the container was created and then all the configuration for the container is already in place. So let's say for example, we have base container images with just the operating system, like for example, the server server, nano server or even the Windows image. This is just the operating system, but we also have some other things like for example, IIS. This one not only has the operating system, but it has IIS already preconfigured in the image. The question is how do we create those images? How do you create those images? The process, the way it works is you write a instructions file called Docker file and that Docker file has the instructions on how Docker can go and create the container image for you. If that's starting to become a little bit scary, don't be because we're going to make that process extremely easy for you. It feels a little bit like if when I use templates for virtual machines and then I created a template which was like a blank Windows server, like let's say 2019 image. And then I created one where I took that template, I created the VM, I installed for example, IIS on it and then I created another template with that and then the next one will be then one where I have the application inside. So if I really hard was in templating, I think that is kind of like how this feels right now. Yeah, the analogy works.  Yeah. With containers, you don't do that. You could, but usually the way it works is you write a Docker file with the instructions on how to containerize the container, the application and then you run a command called Docker build and then Docker will run the instructions step by step in order to create your container image. Okay, so let's manual effort and I can just use basically a declarative way of how it should look like. Okay, that makes my life easier. Yeah, it does. The problem is how do I write those instructions and how do I get started with that, right? Yeah. So let's show a few things in here on Windows Admin Center itself. So the first thing I want to show is we have a pull option and the pull option basically says, well, if you have a container image out there already, it's ready to go and you want to use in this container host, just type the repository here, what is the tag that you of the image, the specific image you want to pull and then click pull here. If you don't know which ones to use, we have some pre-populated here. For example, the server core one or the ASP.net one or the IIS one or the nano server one. Oh, nice. And those tags. The other thing is if you are pulling from a registry that requires you to authenticate, here you go. You have the option to provide the URL, the username and password and you can pull the image from a repo that requires you to authenticate. Okay, so that's actually a good point. You just showed me on the left side in the menu that there is like Azure Container Registry. Does this mean I can only use Azure Registries or can I also use others? You can use other. The option here for registry authentication is industry standard for authenticating with whatever registry you wanna pull an image from. Okay, awesome. And as you can see, like for example, for the common image, if I select one for ASP.net, for example, you can see that we fill out the information here for you and the pull option becomes available. Nice, nice. Yeah, I really liked that one. That is new, right? That is new, yes. We released kind of recently. All right, so the next step is if I have base images in place, I can create a new image for my application itself. So let's take a look at how that works. I'm gonna click create new. And as you can see, we have here a Docker file preview, which is the option to give me the ability to add the Docker file if I need to. And then I have questions up here that I can respond and I'm sorry, that I can answer. And then we are going to create the Docker file for you. So remember that I mentioned like all those instructions you'll have to know to create the container for your application. Now you actually don't have to know. We can create that for you. So the images you see here, again, they are created from those instructions, but basically we are going to run those instructions for you. So let's just start with the process here. The first question we have actually is, do you already have a Docker file and you just wanna like rerun the process of creating the application? If that's the case, you mark this option, you provide the path on which your Docker file is located and we are just going to load the Docker file here and you can rerun the process. The next option is what type of application you are trying to containerize. For now, we have IIS web applications. The reason why we have this dropdown menu is because we will be adding other options here in the futures or keep an eye on updates for this extension. But let's say web application and then what is the source of your application, the application source type? What that means is what kind of assets you have to recompile or to rerun your application, right? Let's say you just have a static web application, well, very uncommon today, but still a scenario that some customers still use and all you need for that application is just a folder, right? So in IIS, you go to the configuration of IIS, you point to the folder and then you have an HTML web application run. The other option is let's say you do have help from your developer and they gave you the entire solution for the Visual Studio solution for the application itself. If you have that option, click this option to dropdown menu and give us the path to that solution, right? What Windows Admin Center will do is we are going to load all the projects that we found in that solution and you can go from there. Now, remember that we mentioned like in this case, we don't have the help from the developers, right? Yeah. So we went to the server that the application was running and we exported a zip file for web deploy, okay? So I'm going to mark this option and we are going to browse that server and I'm going to get the ViniBear, the ViniBear web deploy zip file, which is the file that we extracted from the server. Yeah. And with this configuration, Windows Admin Center has pretty much everything it needs to know. The final thing is, do you know which version of that network we use? Because this is important depending on how old your application is. If you're running up to like.net framework two, you can still containerize the application, but you probably need to run in the 3.5 version of that net framework, right? If you have a newer version, you can probably run these two options. My recommendation here is try the options that we have available. If you see an EHR, probably changing the.net framework version is going to fix the issue for you. So in this case, I know I can use the 4.8 because it does support the 3.5 and some of the other options here. So the latest version works for me. The next step is let's say your application, in addition to deploying itself to IIS or whatever it is, still requires you to run some manual steps like creating a folder, creating a registry, and three in the registry, whatever environment variable, although there are some other options here for that, but whatever that application requires you to manually perform, you can still do that. Put it in a PowerShell file and then load this PowerShell file in here. You can run additional steps for installing your application using this option. And finally, just to provide the name, so you can identify this image, I'm going to type VinnyBeer. I'm gonna say this is V1. And then as you can see, the Docker file was created for me in here. Everything that is needed for Docker to go and containerize your application was written here for you. Okay, yeah, that is nice. That is like the things I usually go into the documentation, right? Then I copy the stuff and then I start editing and fiddling around with that Docker file and like figuring out, okay, how do I now copy all the information in? What do I need to do? How do I run the script again and all that? And so this basically now gives me that Docker file, like basically generates that Docker file for me. Now, my question here, this looks like if I now need to add something to the Docker file, can I still do that? Or is it now just locked like this? Yeah, no, I'm sorry, I shouldn't have kept that open. This part over here is totally editable. Like you can come here and type whatever you want. So you can add it right here. And the other thing is whenever you run this process, so as you can see from the image over here, I already ran this process, right? So let's take a look at the folder on which we inform it where the zip file was. Oh, sorry, it's not on this service. It's doing on this service itself. So file sharing, files and file sharing. Let me go to the folder on which we passed on where the zip file was. As you can see, the Docker file is here. So now if you wanna use this for whatever else you might need, you can still do that. This can be open on Visual Studio Code, Visual Studio. This can be opened on a notepad and you can further add it as much as you want for this Docker file. Okay, so it's not just a Microsoft only solution. That is like the wizard gives you this and we don't care like whatever it is, it's just Microsoft. It's really like the normal Docker file standard format which we can take advantage. I can generate that, reuse it, can edit it, whatever. Awesome. That is correct, yes. And once you have the image running, there are two things that are interesting to do here. First one is to run the container, right? So I have the option here to run a container. I can specify or not the container name. We can give the container name for me. The other thing that we didn't touch is hyper-de-isolation. So briefly explains the difference here is remember when we talked about the architecture of containers and we said, we are sharing the kernel. For some environments, sharing the kernel is a security boundary issue. For those customers that don't wanna share the kernel, we have hypervisor isolation. So basically what this does is we still use the container technology, but we create a kernel specifically for that container. Okay, it is not an additional overhead from a management perspective, but you manage as a container, but it is a kernel. So it does add some performance, not exactly penalties, but the performance of a regular container is just faster than hypervisor isolation. There is some performance considerations there, but compared to a virtual machine, it's still faster, smaller, and everything else. Yeah, yeah, awesome. The other thing is because we are using the NAT option, the network address translation in this case, we are going to map a port from the host to the container. Now, this is not the only way to run containers, right? You can use outshell bridge or other options of layering for your network, where the container is going to receive a public IP address, but in this case, we are using network address translation. So I'm gonna map the port 8080 of the container to the 80 of the container host is 8080 and the container is 80. Here we have some options, for example, how much memory and CPU you wanna allocate for this container, keep in mind that this option here is not going to use two gigabytes of memory or one CPU. The container is going to use whatever it needs and it can go up to this configuration that it's running here. Okay, so it's a limit, basically, you said. Okay, nice. The other option we have here is if you are already familiar with Docker and how to run new containers, you know that there are many variables and options for specifying a Docker run command, which run new containers. We didn't want to add all those options in the UI. So what we did was we add this option for add and basically what you can do here is specify what is the parameter and the value for that parameter. So if you need to specify a persistent storage or an environment variable or a different network to use, here's where you're gonna do that. And if you don't know what options there are, you can click here and see the documentation. But basically, with the information that I provided, I can click run and this is going to start the process of running a new container. This should be finalized in a second. There you go. Our container is up and running. So I can click containers. Just to double check that the container is running. Let's see, I have two here actually. This one was created by the image that we just talked about. And one of the nice things about Windows Admin Center is that I have some management capabilities for the container here. So how much CPU, how much memory, network IEO, those kinds of things that you would expect that an IC Pro is looking for in terms of resource utilization. Those kinds of things. I have some options, for example, for even get events from inside of the container. And the cool thing here is that it's very similar to what you are used to in terms of event viewer visualization or application. Yeah, nice. So we've even out like joining somehow some, like we're using a power jewelry voting command or anything like that. We just can easily use Windows Admin Center to get the logs, get some details, how it's like doing. And it's actually a cool tool to troubleshoot also. If you're running a container host and you wanna see what is the container doing, you can actually use that, nice. Yeah, that's correct. But this is like for, still for your validation, right? You created the image and you wanna check if the image is running properly, right? Yeah. Great, let's do that. The next step now is how do we push this container image to a place where all the container hosts can see it and run in those hosts, right? The process here is called push. We're going to push to a container registry. So here what we have is we have the image name and the tag and we can change that we want. And then where do you wanna push this to? For example, you can push to Azure Container Registry and this is going to use your Windows Admin Center Azure account that you configured using Windows Admin Center to bring what are the subscriptions you have. So for example, here are the subscriptions I have in this account. And then what are the registries that are in place that I could push this image to? So I have three registries here. I can select which registry I want to push this information to and then just click push and this is going to start the process of uploading my image from this container host to a centralized location running on Azure, right? So this is now available for other container hosts and other Azure services. For example, Azure Kubernetes Service. Okay, that is awesome. Now, obviously like we have that container we can, as you said, we can reuse it. Now what I wanna see is like, so let's use it. Let's listen for the point in production. Yes. Before I show AKS or Azure Kubernetes Service the final thing I wanna show in Windows Admin Center is that we have Azure Container Instance. And what Azure Container Instance is, is as the name says if you just wanna run one simple instance of your container, you can do that. So let me show you this real quick. If I click Azure Container Registry where my images are I can open up my registries and as you can see I have multiple repositories with different tags. For some that are, this is the same image just a different version. Let me take this, this one and run the option to, I think it went away, it's like this one. Click Run Instance. And this is going to run the container instance just like we ran in this container host but on Azure Container Instance in this case. So you don't have to take care of the host now. You just ask Azure to run the instance and Azure will take care of everything. Oh wow. Okay. What you have to provide is the container name. As you can see the subscription is here. What is the resource group in that subscription? I'm not gonna run the process itself. I'm just showing what we have here. What is the location? These that you would expect that Azure asks for and then how many cores you wanna use and how much memory. If you want the public IP address for this application or not, in our case we need one and then what is the port you wanna expose for users to access your application? Okay. Wow. This is very straightforward here. Yeah, I just wanna say this is like super easy to actually now deploy a container in Azure Container Instance like just directly from Windows Admin Center. So this is awesome. Yeah. And from Azure Container Instance from this view as you can see I already have one container running here. Here I have some basic management options like for example, I can stop this container or I can delete this container. If I need further management I can click to manage it in Azure directly from Windows Admin Center. Awesome. All right, so with that let's take a look at the Azure portal because now what we wanna do is we want to show how to run that container image that we just deployed into Azure Kubernetes service. So let's take a look at the registry itself. So I'm gonna show this ViniBear registry. As you can see here, just to show the process when it's analyzed from the Windows Admin Center site the end result is that you have the image now pushed to the registry. And as you can see here I have the V6 which is the sixth version of my application. I can click here and I even have the command that I can run on new hosts if I'm doing this through the command prompt to pull this image to that host. So this is the full address of my image now running in ACR.  Or you can do it the easier way which is installing Windows Admin Center and just giving the URL which is this portion here until the column. And then V6 is the tag. So by providing this information you can go to Windows Admin Center and pull the image way easier. Awesome, awesome. All right, so let's go back to the dashboard. And what we wanna do here is we wanna create a new AKS cluster or Azure Kubernetes Service cluster. To do that, you're going to run the usual process in Azure, right, so create new resource or you can just click here on the option of Kubernetes Services and then select the option to add a new Kubernetes service, a Kubernetes cluster and then follow the wizard to create a new cluster. I'm going to run this wizard until the end to explain some of the capabilities in here and some of the options but I'm not going to finalize because it takes a while to deploy a cluster and then deploy the application. I have it running already. So let's go to the process of deploying. First, of course, this is Azure so you need to specify what is the subscription you wanna use and what is the resource group. So I'm gonna select the container demo RG. The name of your cluster so I'm gonna call it test cluster. What is the region you wanna deploy this of the ability zone for surviving a disaster? What is the Kubernetes version you wanna use and this dictates how much features or which features will be available for you. I'm gonna use a default one and then one of the concepts in AKS is that you have a pool of servers to support your application and even the configuration of Kubernetes itself. By default, the primary node pool is a Linux node pool because this is configuring and running Kubernetes itself. So what we are going to specify for the primary node pool is just the size of the VMs that are going to run and how many VMs you want in that pool of servers, right? Since our application is Windows, we can keep this standard here. You can even change this configuration if you want but for us we are going to keep this standard. Next, we have the option to create new node pools and we need to do that because as you can see the primary one is Linux. So we need to create a new Windows one. So I'm gonna click the option to add a new one. I'm gonna call it WX for a Windows server pool. I'm gonna say this is a user mode because this is going to run my application is not going to run any configuration for the Kubernetes cluster itself. This is a Windows type, the availability zone I can select which availability zones I wanna use. The size of the nodes are the servers running in this pool and this is the usual VM size that you have in Azure. For the sake of the demonstration here, select this standard one. Node counts from three servers per node. I can say four or five or how many servers I need and how many pods that represent containers I can run per node. So the maximum is 250 pods. I'm gonna add this, as you can see now I have two node pools, one for the system running Linux and one for my applications running Windows. Nice. Next authentication, I'm not gonna go deep into authentication for Kubernetes because there are gazillion options for managing authentication and how the Azure services are going to authenticate against your Kubernetes cluster. The thing I wanted to say is we have two options, the service principle or system assigned managed identity. For service principle, what you wanna do is you want to manually configure what is the service principle that is going to have access? For example, how do your Kubernetes cluster access your container registry where you restored your image? You need to authenticate for that. So if you use service principle, you have to manually do that but you have more granular options. If you use system assigned managed identity, Azure will take care of that for you but then only for the resource group and it's not as granular as service principle. I'm gonna keep this one just for the sake of the demo. Sorry, go ahead. No, that's great. I did something, I just learned something new that we have this new system assigned managed identity and that this works with the resource group so that I was not aware that it was limited to that, okay? That's pretty good. I'm not entirely sure if it's limited. I think you can change later. The default option is for the resource group. Okay, awesome.  Let's go to networking. Since we have Windows nodes, we can't use KubeNet which is the default networking configuration for Kubernetes. We have to use the Azure CNI at least for now but basically what this does is this is going to configure an Azure network for the Kubernetes cluster and the application so they can of course communicate and so on and so on. In terms of integrations, here comes the result of the authentication like the container registry. Do you wanna integrate with that? And I do. So I'm gonna select the BiniBee registry that I just showed you because they are in the same resource group. Now I can actually go and have that integration already configured. Next I have tags that helps me manage resources in Azure. I have the review and create and everything looks fine. I can just go ahead and click create. But like I said, this process takes a few minutes to complete. So what I did was I created a cluster previously. So the end result of that creation process is this, is a fully working Kubernetes cluster that now you have and you can manage either through a command prompt or the Azure port itself. If you are familiar with Kubernetes, you know that one of the ways that you can connect to a Kubernetes cluster is using kubectl or kubectl or whatever you pronounce this. So one of the nice things about Azure is that it gives you the instructions on how to connect to this cluster plus a few options for already going and managing AKS from Azure Cloud, I'm sorry, the Cloud Shell or the Azure CLI directly. So let's take a look at a few things in here. So the first thing I wanna show you is the node pools. All the configuration we specify during the wizard are here. So you can see the WS pool, user, this is windows, three nodes. I can go and take a look at the nodes itself or the scaling option for these nodes. All the configuration that you would expect in here for managing a Kubernetes cluster. Now the question is, how do we deploy our application to AKS? Well, AKS follows the same deployment process for any Kubernetes cluster. To deploy an application in Kubernetes, instead of going through a wizard of deploying it, you also have to write a instructions file that tells you how to deploy the, or tells Kubernetes how to deploy the application. And then Kubernetes is going to take that, those parameters and run those instructions to deploy the containers to the nodes. The way you do that is specifying a YAML file. And what I did was I prepared this one for this demo and I put it in my GitHub repo. So you can use this as a basis for your validation and testing. And quickly taking a look at this, as you can see, we have a deployment option here. We have some metadata information that describes my application. And then we have the specification of our deployment. And deployment is using for deploying containers itself. So here I have three replicas for the containers. I have metadata for the application, specifying which application to use and specs for the container. So first we are saying that this is a Windows, this application, so it should run on a Windows node. And then the container itself, I'm giving it a name, I'm passing on what is the image that we are going to use. And then the resources itself. So how much CPU memory in terms of limits as well as requests. So this is how much you can use tops and this is how minimal it's going to use when it's running. What are the ports that needs to be open? And then for a service that is actually the representation of the networking for your application, here we have an option for load balancer because remember we have three replicas. So you need to load balance the load into those three instances. So we are saying that this is using TCP port 80 and the application that this is, they should be deployed is VINIP here. Now, one of the cool features in AKS actually is that yeah, and providing all the commands to go and deploy this. We have an option here called workloads where you can see the workloads and even pass on a new YAML file. As you can see, this is a YAML editor. So all I have to do is copy, sorry, is copy the content from here to here and click add. And then AKS is going to deploy both the containers and the networking to this AKS cluster. Okay, so the YAML file really is like the, like a decorative way of the configuration of the whole application. So if I would have also multiple containers for one application, if I need like a application server and a front end server, I could also specify that all in there, right? That is correct, yes. And I mean, I could separate, for example, one deployment for the deployment of the container, another YAML file just for the service. I'm just using one just for the sake of easier management and so on. One thing to keep in mind is the description on the YAML file calls out that same address that I explained earlier on in the registry, right? So make sure that your image matches what you have in the registry. I'm going to cancel this because I already did this process. The end result of deploying this YAML file is this, right? So the ViniBeer application that you just saw me configure. As you can see, there are other ones. These are all system kind of applications that are running in order for Kubernetes to simply work. But mine is also here. So if I click this application, I have some details here on how the application is actually deployed. So as you can see, I have three desired replicas and there are three available. Everything seems to be running fine. I have the pods here that are exactly the containers that are running. So I can get a lot of details here on how my application is actually running. But the main thing I want to show is that the application is actually running, right? So let's go to the services and ingress because remember my YAML file described the application plus the service. Here you go. You have ViniBeer, the application deployed as load balancer. I have a cluster IP address, which is the IP address used by the cluster to access the service. And I have an external IP address, which is the IP address that is going to be used by my users to open the application. So if I go to this IP and I type in the address of my application itself, my application is open running. It's exactly the same application that we saw back at the beginning of the demo running on a Windows Server 2008 R2, right? So just to prove that the application is still running fine, let's get your strong golden ale, 75 degrees Fahrenheit, five gallons and the application runs just fine. Nice. So now, like you showed so many awesome things. So first of all, like how fast you actually can set up a Kubernetes cluster using AKS, right? This is like, for me, still absolutely awesome. And it kind of like, it is a managed service which lets us run Kubernetes. And then the second thing, which I'm like, this is just a nice side effect. Now this application you just showed me, it actually is now localized. So like you showed me to have these three instances. So now we have this like application. So if one node fails, that's something in the old days, I would actually have that run on a VM and then I would have a virtual localizing appliance or even a physical one to actually do that. And I need to do that all manually. Now you just basically describe that in that YAML file, which for me is absolutely awesome. Exactly. Like if I need more replicas from a host perspective, all I have to do is scale up the number of nodes in my application pool, the node pool that I showed. And if I need more containers, all I have to do is change the YAML file from three to four or whatever number you wanna use and redeploy it, right? Okay, that's pretty cool. I love that. I mean, this is like, makes it obviously like, also like we talked about the advantages of having like the scaling wise and all that. But now with that, like I can see just another other benefit of that. Now, we used obviously Windows admins that made it super easy to generate the Docker file and then generate the container image and then allow us that to push that to the container registry. And from there, we could then create like we had to build our YAML file to actually go out and deploy that to an AKS cluster or a Kubernetes cluster in general, right? Now, wouldn't it be cool if like Windows Admin Center could help us creating that YAML file? Is there something in the pipeline? Yeah, thanks for bringing that up, Thomas. If I can show you the demo flow that I just did because it's a lot, let's just recap what we did. So we had an existing .NET application running. What we did, the first process was to export the application and then use Windows Admin Center to containerize the application. Then we pushed the container to Azure Container Registry and then we started the process with the AKS cluster. Now, all of the things you're seeing here on the left-hand side are supported by Windows Admin Center today. You can use Windows Admin Center to make this process easier. What we don't have yet is this option over here. How do I alter the YAML file plus how do I deploy that YAML file and the services and whatever it is to AKS, right? And this is what we are working next. We are working on a YAML authoring tool inside Windows Admin Center plus the option to deploy to AKS and AKS HCI which is a new release in public preview where you can run AKS on premises. Oh, that is awesome. Yeah, we have a session in this event. So if you wanna know more about it, go to aka.ms slash itobstocks and there you will find the whole session on AKS on Azure Stack HCI. So I guess the whole workflow you just showed me is obviously now using like the Azure Container Registry and our Azure Kubernetes service running in Azure. But if I would go back and say, hey, I could not run for different reasons, right? Network latency or data sovereignty reason, I could not run it actually on AKS in Azure. Now with Azure Stack HCI, I could actually run it in my own data center and still use the same tooling and everything you just showed us. Yep, exactly. So the whole containerization process, it will work for both AKS and AKS HCI. And then it's just a deployment option.  Oh, that's awesome. That is really, really awesome stuff. Like this makes it, like I can't wait. I have a couple of old applications here running. I will definitely try this out and like see if I can containerize them and put them on AKS so I can actually save some power here at home. That's awesome. Okay, with that, I definitely like always wanna learn more now to prepare actually for like exactly for my migration, right? And if others like the viewers of this video, if they wanna learn more, where do they go? Yeah, so I put some links in here. The first one is the aka.ms slash containers. This is the link to our documentation. And just recently, we updated the whole documentation to include Windows Admin Center. So we have new tutorials there explaining how to deploy the containers extension, how to deploy Docker itself and configure the host. If you don't have it pre-configured. So if you just have an installation of Windows Server and you wanna transform that into a container host, you can use Windows Admin Center to actually do that.  Everything is now documented in this link. Oh, awesome. The next one is aka.ms slash containers feedback. This is our GitHub repo. It doesn't have any code, but it does allow people to go and create new issues. Those issues, we triage those. So if you have a bug, if you have a question, if you have a suggestion, go to this link, create a new issue and let us know what's going on. The product team is looking at those issues and working with our community and users and customers to understand what they need, what's working, what's not. And it's a nice channel for communicating with us. This is awesome. I love that. And I just wanna quickly highlight this because when I was not working for Microsoft and was like really like in the back in Windows Server 2003, for example, days and so on, I was like, I was setting up Active Directory for some customers and stuff like that. And I was like, I run into issues and bugs, right? And I was like, I don't even bother telling Microsoft that because why would they listen to me, right? And that is like, since I joined Microsoft from even before that, that is actually like one of the biggest mistakes I made because really the product groups are listening to that feedback. They wanna know what is working, what is not working. So please, please, please take that opportunity, provide feedback, especially if the container teams offers that. So if you try this out now by yourself and you run into issues or you have like something you don't understand, I guess they can also write you if there's like documentation missing, if they have a missing piece or a question, like, and that would also help us obviously fix those things as well to make sure that they have all the resources they need, right? Yeah, yeah, absolutely. Two things, please contact me. I have my Twitter here. You can contact me there. But also the documentation is all open source. If you have feedback on the documentation itself, you can write your feedback directly in the documentation. So you can also try that as well. Awesome, now this is great, great stuff. I'm really happy to have you on this video and in this sessions. I really appreciate your time here. Thank you very much, Vinicius. Great to having you. No, thanks Thomas for having me. And again, great partnership here. Awesome, thank you very much. And for all of you who haven't like watched this session and want to learn more, we have obviously all the links in the description below. So you can find the links to the documentation, to the feedback hub where you can provide your feedback. And if you want to watch more sessions, for example, also on Azure Stack, on AKS, on Azure Stack HCI on other hybrid sessions as well, check out aka.ms-itops-talks. And you will go to our little event website where you can find all the other sessions and what's going on with that event. Thank you very much for viewing that session. Thank you folks.


Hello and welcome to the session. Let us discuss the following question. It says, find the coordinates of the point equidistant from the three points A51, B-3-7 and C7-9. So we have to find the coordinates of the point which is equidistant from these three given points. So let us now move on to the solution and let Pxy be the point equidistant points A51, B-3-7 and C7-1. Now since this point Pxy is equidistant from these three given points we have PA is equal to PB is equal to PC that is distance between P and A is equal to distance between P and B is equal to distance between P and C and this is according to question. We have to find the distance between P and A and the distance formula the points Q1, X1, Y1 and Q2, X2, Y2 is given Y under the root X2 minus X1 whole square plus Y2 minus Y1 whole square. Now we find the distance between P and A this is Q1, Q2 so distance between P and A is given Y 5 minus X whole square that is X2 minus X1 whole square here X2 is 5, Y2 is 1 and X1 is X and Y1 is Y. So this becomes 5 minus X whole square plus 1 minus Y whole square similarly we find distance between P and B so this is given by minus 3 minus X whole square plus minus 7 minus Y whole square similarly PC is given by the formula 7 minus X whole square plus minus 1 minus Y whole square its mean this as 1 this as 2 and this as 3 now from the question we have P is equal to PB is equal to PC so from 1 and 3 we have P is equal to PC that means under the root 5 minus X whole square plus 1 minus Y whole square is equal to under the root 7 minus X whole square plus minus 1 minus Y whole square can be written as 1 plus Y whole square because if we take minus 1 common and since here we have square so minus 1 square becomes plus 1 now squaring both sides we have 5 minus X whole square is plus 1 minus Y whole square is equal to 7 minus X whole square plus 1 plus Y whole square now by the formula of A minus B whole square so we have 25 plus X square minus 10 X A minus B whole square is A square plus B square minus 2 AB so this becomes minus 10 X plus 1 plus Y square minus 2 Y is equal to 49 plus X square minus 14 X plus 1 plus Y square plus 2 Y here we have a counter formula of A plus B whole square now we see that X square gets cancelled with X square Y square gets cancelled with Y square 1 gets cancelled with 1 and we have 25 minus 10 X minus 2 Y minus 49 plus 14 X minus 2 Y is equal to 0 now 25 minus 49 is minus 24 minus 10 X plus 14 X is plus 4 X minus 2 Y minus 2 Y is minus 4 Y is equal to 0 so this implies 4 X minus 4 Y is equal to 24 so this implies X minus Y is equal to 6 taking 4 common now again from 2 and 3 we have PB is equal to PC so we have minus 3 minus X whole square plus minus 7 minus Y whole square equal to PC which is under the root 7 minus X whole square plus 1 plus Y whole square again squaring both sides we have minus 3 minus X whole square plus minus 7 minus Y whole square is equal to 7 minus X whole square plus 1 plus Y whole square now again taking minus 1 common from this we have 3 plus X whole square and again we are taking minus 1 common but since here we have square so this becomes 7 plus Y whole square is equal to 7 minus X whole square plus 1 plus Y whole square now we apply the formula of A plus B whole square so this becomes 9 plus X square plus 6 X plus 49 plus Y square plus 14 Y is equal to 49 plus X square minus 14 X plus 1 plus Y Y square plus 2 Y now we see that Y square gets cancelled with Y square 49 gets cancelled with 49 X square gets cancelled with X square and we have 9 plus 6 X 9 plus 6 X plus 14 Y plus 14 X minus 1 minus 2 Y is equal to 0 again this implies 6 X plus 14 X is 20 X plus 14 Y it should be 12 Y 14 Y minus 2 Y is 12 Y 9 minus 1 is 8 equal to 0 so taking 4 common we have 5 X plus 3 Y plus 2 is equal to 0 and this implies 5 X plus 3 Y is equal to minus 2 let us name this as A this as B equation A is X minus Y is equal to 6 and B is 5 X plus 3 Y is equal to minus 2 now we will solve this equation for X and Y by equating the coefficient of X or Y so here we will equate the coefficient of Y and we will multiply equation A Y 3 so we have 3 X minus 3 Y is equal to 18 and we will add equation A and B 5 X plus 3 Y is equal to minus 2 adding the 2 equations since we are adding sign will not change 3 X plus 5 X is 8 X minus 3 Y gets cancelled with plus 3 Y 18 minus 2 is 16 so this implies X is equal to 16 upon 8 that is 2 now from equation A we have X minus Y is equal to 6 now X is 2 minus Y is equal to 6 so we have Y is equal to 2 minus 6 and this implies Y is equal to minus 4 so X is equal to 2 and Y is equal to minus 4 and the coordinates of the point P X Y where X is 2 and Y is minus 4 thus the required point is which is equidistant from the 3 given points is 2 minus 4 so this completes the question and the session bye for now take care have a good day


Today we're gonna be doing some spring cleaning, going through some of my shoes I've been wearing recently over the past couple months. And I'm gonna be giving you guys tips and tricks along the way when it comes to cleaning and protecting your shoes. And we'll be talking about stories and different memories about how I copped the shoes and what I wore them for and all those different events and what not. But with all that being said, let's go ahead and get started with cleaning my LeBron's first. I've been wearing a lot of shoes lately and I haven't done any cleaning in a long time. I've been traveling a lot. So just gonna have a long video. We're just gonna talk. We're gonna have a good time right here. Just go through everything. On these in particular, recently got these. Just need to clean up the midsaws a little bit. Upper's got a little bit of dirt on them so that's just too crazy. But on the rubber on the midsaws, I'm gonna use the back end of the brush. More firm. Got patent leather on the upper so I wanna stay a little bit away from that just so I can try to protect it. But just gotta make sure that I get all this stuff cleaned up. So if you have like a white Air Force One or honestly any Air Force One and it has a white midsole on it, especially the outsole area.  But you always wanna be aware of that especially on these older Air Force Ones. Like these ones in particular are from what? 2005, 2004, something like that? I think it was 2005. So when it comes to a pack like this, you know, these shoes are like $1,000 for these Air Force Ones. You wanna take care of them, you wanna protect them. And by doing that, cleaning the midsaws on these older shoes will definitely help that. If you leave the dirt on there for years on end and you don't clean it off and then you try to wear the shoe again later and then you try to clean it, it will permanently stain that area and cause the midsaws to change in different parts of the shoe. And then it's not gonna look as nice and then obviously it won't hold that value. Again, we're collecting and all those things. But say one day the time comes and you wanna sell the shoe, you're not gonna be able to get as much money for it. So to take a couple of minutes, do a little bit of spring cleaning and show on some of the shoes. And I got, we're gonna be cleaning these up just the bottoms a little bit. Besides, they got a little bit of dirt on the top. I wore these at the day club in Vegas so they got a little dirty but nothing too much. Just some light cleaning on these.  But white midsaws in particular, again, just always give them a good scrub before you decide to put the shoe away for the long haul. And when it comes to store-in sneakers, I know everybody, when you have a large collection of shoes, yeah, it can be hard to wear everything. Finding the right occasion, finding the right outfit, not trying to wear something twice, all these different situations. But you definitely do want to wear your shoes. You do want to get them into your rotation. So for me, I have a rotation about, I would say like 30, 40 shoes. And then I have like obviously like the start in five and all that stuff. But there's always like shoes that are going into the rotation. That are those higher value shoes. So I don't know if you guys saw recently, I posted on TikTok like some of the stuff I've been wearing lately. This is another one. I've been wearing these a lot. I've been trying to take care of them. I did low-key get something on the toe, but I wasn't tripping out. I mean, I still wear the shoe, it doesn't matter. But the bottoms, we're going to clean these and protect these bottoms a little bit. And then I got my bred 11s. I need to clean those on the midsaws as well so it doesn't stain it. That's actually the older version. So we'll get into that and talk about the different methods. But basically with this right here, well, hopefully you can see on the overhead camera right here, you still have a lot of dirt. This is the pair that hasn't been cleaned yet. And then on these ones, it looks a lot nicer, a lot cleaner and just full, all white, not the patchy areas, dark and light. And then you got speckles of dirt and everything like that. So that little bit right there and those speckles, sometimes it could be a drink or something like that that may have splashed on the shoe and you want to clean that off. I got black bottoms on these and I plan on wearing these again. So I'm not really, the bottoms are pretty clean. So I don't really worry about that on a black bottom, especially on an Air Force One. But these ones in particular, when it comes to those splatter spots and those different things from the dirt like that from wearing them out, definitely want to try to get that cleaned off because that can stay for a long time and leave that stain. So you're gonna hit that with a hard bristle brush real quick, run through the midsaws and we'll be on to the next one. And I didn't know, I was originally gonna like chop this video up and run it all like the different quick angles and the switch ups and the before and afters and all the stuff. But I kind of wanted to just have a conversation with you guys. So we kind of went over the basics of cleaning the midsole of a white Air Force One. Now let's talk about this shoe in particular, how I got it, all those different things, what it means. So for me, when these first came out 2005, I was just getting into seriously collecting. My foot was still growing. I was young, middle school, high school era. So for me, it was like, this is a shoe that I always wanted, but I never could get it. And at the time it was hard to get. And with the online market and the way things were with, you know, tracking down different sneakers like this, it was just really hard to get over the years. And this is actually my first time owning a pair of these since they originally came out. So this shoe is almost 20 years old. What's it, 18 years since these came out. And I finally got this shoe in my collection now. So sometimes it takes 18 years to get a pair of shoes because there's just a lot of shoes out there. You can't just go buy everything all at once, right? You got to take your time. You got to find the gyms. You got to find the good deals. You got to find a clean pair. And when it comes to older shoes like this, finding a clean pair in a condition like this is really, really hard. So I recently got these not that long ago from Untied LA. Shout out to them over there. I'll have the link down below in the description on YouTube here. But basically, found them for a really good deal. Saw that they had a really, really clean use pair. And I was like, you know what? I need these. So when it comes to that as well, I've made videos in the past of like cleaning the insoles, spraying them down with a disinfectant spray and everything like that.   It's like, well, obviously you're gonna clean the shoe. And then like, have you never been to a bowling alley? Have you never went to a skating rink? Like, there's been thousands of feet in those pairs of shoes. These come from a single owner. So to me, I'm like, those probably worse than actually getting a pair of used shoes from somebody that knows how to take care of them in the first place. But I don't know. Everybody has their different mindsets behind it. But for me, it's like, okay, if this shoe, these Air Force Ones are worth $1,000. And if I can get them for a discounted price and still they're gonna hold their value and I can still wear them. And they're gonna be worth a lot of money still. Why would not just buy the used one and just be more inclined to wear it and all those different things? Clean it up, disinfect it, do those things and call it a day. So I don't know. That's just kind of how I feel about it. Just did some basic cleaning on these. These look really, really good. Yeah, if you guys want to see a in-depth review of this pack, let me know down below in the comment section. I'll make sure I get a full review for you guys and just breaking it all down. But this was one of our first shoes and now I kind of give you guys some, you know, more details about the Air Force One, cleaning them and just making sure you're protecting those midsole because they will yellow and age a lot faster if you let them stay dirty. And that's what kind of brings me to my bread 11, same thing right here. Now this pair is from, what is it? It's like 2012 or something like that. I think this was a 2012, retro, 13, something like whatever year that was. But these are real dusty. So they're dusty on the uppers and then also I need to clean the midsole on these as well. So I'm gonna just give them a quick wipe down. The towel is already a little wet. So that's really easy, obviously. Boom, now look at that way better. These already look a lot cleaner than they use the other dirty pair of butt. Hey, real quick, if you guys are getting any value out of this video, make sure you guys hit that like button. And I want to let you know, I have a full community of dedicated sneakerheads looking to take their game to the next level and investing in the shoes, growing their collections. So if you guys are interested in that, make sure you hit the link down below in the description, get signed up. I'm looking forward to seeing you guys on the inside. All right, let's get back to the video. When it comes to the midsole, we're gonna hit the toothbrush on these ones. Classic old school, don't want to mess it up too much. Got a made bristle toothbrushes, boom.  This can stain those midsole as well. And bright 11s are really easy to wear, clean, store, all those different things. The outsole is red, so you don't, the yellowing is noticeable on pairs that yellow bad. I know it's kind of weird to say, but you can tell the difference between a pair that's like super oxidized and not, the red is just not as vibrant on certain ones. So we're gonna scrub it a little bit more right here. Get that main dirt off, and then we'll hit the back end of the toothbrush just to make sure that it's crispy white right here. Honestly, it's all clean, it looks good. So these red 11s, 2012, I have all the retros and generations and the OGs and all the different stuff like that. This one in particular was just one that I've, you know, I had, I kept a 2008 pair of Deadstock and I've just been kind of sitting on these, just letting them do their thing. So I've been wearing these ones the most compared to the 2008 ones. And I wear these 2012 ones. And then the new retro came out and I'm like, man, I still wear my 2012s, but they're still so clean. I keep them clean, the creasing ain't bad. Like I know it's crazy because people are like, man, you don't even barely wear those. And I'm like, bro, trust me, I'll wear these a lot. But if you know how to wear 11s, especially with the ankle in the back, that's where you get the creases a lot. When you put your foot in the shoe, make sure you're careful about putting your foot in the shoe, because that's what causes that creasing around the ankle. And you wanna keep that protected. Now, the left side is gonna be a lot better when it comes to creasing than my right side, naturally, because when you drive, and those different things as well, it can cause your foot to crease from going like this and pushing on the pedal, different things like that. So just some stuff to be aware about. We'll clean the bottom just a little bit, nothing crazy, there's just some bigger dirt pieces on here, wanna get that out. But there's not too much to worry about on any of these, honestly. I think everything's solid, you know, just classic spring cleaning, because I plan on putting these up for a little bit, pulling out some new stuff for the rotation.  So when you do that, brush the shoe in a single direction away from you, and then you won't worry about dirt splattering all on top of you as you're cleaning the shoes. If you're going back and forth, then you're gonna get a lot of dirt going both ways, and then what's gonna happen?  So always try to just brush it in one single direction and get it flowing with the outsole, whichever way that may be, and then that way you can get it cleaned off. So looking really good. I don't need to clean these too crazy on the bottoms, just get some of that major dirt off.  I don't know if you can see it on camera from the overhead cam, but there's definitely some black area right here, and that's just from natural overtime, but I truly don't care too much about that. So looking at the midsoles, oh, we gotta do the inside of this foot right here. So looking at these midsoles, hit that real quick, get a little spring cleaning done. Yeah, bro, I don't wear these too. Concerts, festivals, funeral rules, all different types of occasions. This pair of Bread 11s have been with me over the years, so I love this shoe, I love this model, I love this colorway, one of my favorite Jordan 11s of all time. Honestly, I still might think this is the greatest 11 of all time. I know that's the great debate basically between like Space Jam, Concord and Bread, but you can see right here, clean pair, dirty pair, not too much crazy dirt, but we definitely wanna get that off to protect the midsoles, and that way when I store these, I just kinda leave them just like this unlaced, so if I ever do decide to take them back out, I can do that. But Bread 11s, they're coming out once or twice a year for me in my rotation, and once they come out, oh yeah, we rockin' them things, man, we hoppin' to wear these a lot, and it's cool cause you can wear these on rainy days too, it's a black shoe, so I like that. It still looks clean with the outfit. You can go through and do a lot of cool stuff with this type of shoe. But yeah, that's just kinda where I'm at with these. Just kinda knock this other foot out real quick, and then we'll take it to the green Oregon Five next because that has the suede on the upper, and you wanna be real careful about cleaning the bottoms, and everything because of that, and you wanna make sure that you protect that suede without getting that water on there without doing those things at the same time, so I have a very careful process when it comes to cleaning the outsoles on those shoes, and some people wonder, hey, why do you clean the outsoles? Same thing, we talk about these ones in particular, don't have like too many issues when it comes to yellowing per se, but when it comes to just keeping the shoe clean, you definitely wanna have a nice bottom, and then not having that dirt on there. For me, like I shoot YouTube videos and stuff, so if I use these for an example in a video, and the bottoms are like super dirty, and they're like sitting on something else, I don't wanna stack them on something, because they might dirty up the other shoe just because the bottom is dirty on one shoe, so that's kinda natural for me for just overall taking care of my sneakers, using it for content, storage, different things, display, you name it, images, whatever it may be, there's a lot of different reasons as to why I would clean the outsoles of my shoes, but this is where we are right here with this one, let me see if we got any big dirt chunks on the bottom. Got a little bit of grass in here, we'll get that out. Yeah, these ones is honestly a little bit cleaner than the other ones, so should be real quick and easy. Same thing right here, stroke one direction away from you, get that dirt out of there, wipe it down. The towel is a little damp, but basically dry, and it'll kinda get a little bit more wet as you use it on more sneakers. So yeah, that's kinda where we're at with these, definitely a lot cleaner, I'm excited about putting these up for a little bit, getting them out of the rotation and pulling something new in the rotation. You can't wear all your shoes all at once, so it takes time to get through those things. So now we wanna make sure the surface is really clean because we're bringing in an even more expensive sneaker with even more difficult materials on the upper when it comes to these, so I'll put down this towel, get another towel to put the shoe on, nice little microfiber joint. So like I said, the uppers on these, it's the Oregon Duck 5 PE, I got these a while ago, then I ended up trading, getting a different size, and I never had a 13, then I finally got them, and then I couldn't stop wearing them. So now I'm trying to make sure I take care of these as much as possible, so this time in particular, the shoe is still straight, everything is good, but I'm definitely gonna just wipe these outsoles down just a little bit, get some of that dust off the bottoms, and then we're gonna put these things up. I think they need to go into retirement for a little bit, so the towel is wet on the end already, and we're just gonna wipe the black areas of the shoe, and you'll see, so these outsoles in particular, they have a smoky bottom, it's not a pure clear, translucent, or icy blue, it's more of a smoky bottom, so luckily I've worn these at events, I do walk outside in them, but I've worn them at a lot of events that's inside-based things, not out in the grass, and different stuff like that, so these are gonna get more dusty than anything, so you also wanna be strategic about when and where you wear your shoes, and the value, and the different things like that, like obviously you're not gonna wear your most expensive shoes out in the mud for no reason, just to go do the thing, it doesn't make sense, right? There's definitely alternate options if you have a collection with a broad amount of shoes, so for me, I'm always selective about that, okay I'm wearing a vant inside, da-da-da, great, I can still wear these for that, so just like that, you see a lot cleaner, a lot nicer right here on the bottoms, and then let's put it next to this one, hopefully you can tell the difference between the two, I'll shoot from up top, this is the cleaned pair, and I just wiped it down with a wet towel, and then this is the dirty pair, so just from wearing these inside, that helps a lot, now if you got a lot of dirt, the strategy that I use for this, I never put the water and all the suds, and all the stuff on there, what I'll do is, let me wipe this down so I don't get wet, but basically I'll use the back end of the toothbrush, I'll wrap it around like this, so you got the heart in here, put my hand inside the shoe, and then I'll scrub on the shoe like this, with the toothbrush in here, which you can do it this way too if you want to, but that's if there's a lot of dirt on it, or if it's a lot more caked in than normal, but that way you're not spreading a lot of suds, or the opportunity for, because sometimes like you see right here, there's an indent and the water will flow into the side of the shoe, because of that, they'll get water spots on the side of the foot, and then when it dries on the suede, you'll see these little spots, and it'll be like, damn, I did that from trying to clean the outsoles, and I was trying to protect the upper, so that's something you always want to be aware of, you want to have not too much water flowing around the suede area on this shoe, just to help to protect it a little bit longer, when it comes to cleaning them and wiping them down and everything like that. And then obviously I have other videos and tutorial stuff on cleaning suede, and protecting it, and using the mink oil, and all those different things like that, but overall, quick little wipe down. I think I'm gonna lace these ones up. We're gonna lace them up. Usually if I know I plan on wearing a shoe again, like soon, I'll just like not even lace them back up, but some people wonder like, why do you lace them up? Like dead stock style, like what's the point? Like, and then the funny thing is like, people will be like, oh, he never wears his shoes, da da da, you know, after I clean the shoe and protect it, get it right and put it back in the display case, you know, I don't want to put it in there dirty and drunk looking like I want to make it look back-presentable. So what I'll do is all dead stock, knot it, and I'll put it in its place and do what I do. So it has that, you know, that nice presentation. I like it when it looks like that. Everybody has their preferences. That's just my style. And then also, like I said, for videos, photos, examples, different things like that, it's easier for me to have the shoe when I'm doing a comparison video and I want to show like the styles, cuts, materials, all the different things. I want to show it looking more like a dead stock style, more clean and put together, then like loosened up and just kind of sloppy because that's, I mean, that's how I wear it, but when it comes to presentation and making the shoe, looking back to its truest form, that's kind of what I'm going to go with all the time. So I'm lacing these back up to that dead stock style, just like we did on the Lebron Air Force One, same thing right there. I need to lace up the other one still, but that's all similar to that. So that's something I always like to do as well when it comes to that. Just a presentation of the shoe, bro. I don't know. Everybody has their preferences. It really doesn't matter.  I'm just going through my spring cleaning and I have a lot of other shoes to clean, but this video would be way too long if we did that. So I'm just kind of going through my spring cleaning and just showing you guys my process on some of these, giving a couple of different examples when it comes to the types of materials and the uppers and things like that on this video. So let's get this one laced up real quick and then we'll get onto the Air Force Ones, tell a little bit about that. I'm not sure if I made a video when I was wearing those. I think I posted some photos and stuff on Instagram or something, I don't know. I might have had like some TikToks or something I made. But yeah, here we go, Oregon Five. Now, last but not least, we got the Air Force Ones. The off whites right here, these things go crazy. And I'm just gonna clean the back of the heel a little bit. I think there was some dirt on the toe on one of these. I might have wiped it down low key already before, from a different time, because I knew I was putting them away for a little bit. But I just wanna make sure that these are fine. And for these ones in particular, now the whole upper, the midsole, everything is the same color. So if you get water that's coming over, especially with it being leather, you're not gonna have too many issues with a sneaker like this. So these ones you can kind of go ham a little bit. We're gonna use the harder bristle brush on these and then we'll wipe it down and then I'll show you what it looks like. And then I kind of go in a circular motion, kind of small. And as you can see their suds kind of popping around right here. So I'm kind of trying to just keep it in that area. The brush is more firm, so it's gonna make it pop a lot more because of that. So when you see that, start brushing away from you and then hit some circles, trying to keep the suds down from flying away, flying all over the place. I'll show you guys what this looks like as we wipe away from us. Now normally what I'll do in this situation, they'll be like these little suds. You can wipe it all out with a towel, but when the shoe is the same color as the upper and it's all leather and all these different things, I'll basically take it to the sink and I'll just run the water down towards the toe this way. So that way the water all goes like this and it doesn't get, if you hold it like this in the water the water is gonna go all the way down on the side of the foot. But if you hold it at an angle and put it slightly in the water stream, it'll then rinse out all those suds and get everything super clean for you. But basically as you can see right here, I did a quick scrub and look at the difference between the two outsoles just off of that. We didn't even spend too much time on it and you don't have to spend too much time if you already know you're gonna wear the shoe again. So I'll kind of give it a quick scrub and make the shoe look like this. And then from there, I'll put them back up, I'll lace them up and I'll have them in that dead stock style just for presentation purposes and sitting in the collection nice and pretty and everything. But I'll show you what it look like, DS. Then obviously I have the zip tie and all that stuff upstairs and the containers and stuff. But we'll kind of just tie it back up like that and we'll have it looking back, presentable again. Worn these a couple of times, plan on continuing to wear them. But obviously I don't wear these a lot. So I always want to make sure I protect them and we know that this is a valuable shoe. So I want to take care of the midsoles and the outsoles as well on something like this. But that's kind of like a gist of my spring cleaning. I wanted to run through this. I figured I was like, oh, maybe I can make a video. I usually do it on my TikTok which I'm live streaming on here now. If you guys aren't following me on TikTok, make sure you do DJ underscore sneaker head. But just wanted to run through this for you guys and give you guys some quick tips and tricks. So if that was helpful, let me know down below in the comment section and I'll see you guys in another video. All right y'all, I'm out. I will never let you down. If you made it this far to the video and you're still thinking about it, hit the link down below in the description. Get set up, join the community. I'm excited to see you on the inside. We got a live meetup coming very soon and hopefully you guys are gonna be there. If not, we have one every single month plus community giveaways. We're giving away shoes every single month. There's definitely a lot of knowledge and networking on the inside as well. And I'm looking forward to helping more people buy their first property simply because of sneakers. I'm here to help you. If you want any help, make sure you guys sign up and I'll see you guys on the inside. Listen my DNA, the only choice I like to make what I'm aware today. I will never let you down and send my DNA. The only choice I like to make what I'm aware today. I was made for it, listen to DNA.


And to some entertainment news, Netflix has cancelled development of Pell as an animated series created by Meghan Macle in its move-to-cut course. The show which was announced last year is one of several projects being dropped by streaming giant. Last month, Netflix revealed a sharp fall in subscribers and 1 million more are yet to quit the service. That's why over $50 billion off the company's market value has expert won it face a struggle to get back on track.


What is going on guys welcome back to the channel critical overlord here. This is just a video of me basically kind of responding to the comments that YouTuber Dave McCrae gave he is a well-established person in the community For all things Michael Myers and several other horror things that he talks about on his channel He's also a well-known voice actor as he likes to talk about on his channel from time to time Basically in one of his videos Dave McCrae said something that I Firmly agree with and that's the fact that we as the audience do not need to see How Michael Myers survived or how he escaped the fire from the end of the 2018 film That's not necessarily relevant to the narrative going forward more so that It's not necessary. It's more so that it's not necessary as much as it is not relevant The reason why it's not necessary is I'll give a firm example of this from Halloween 4 We saw how the end of Halloween 4 Michael Myers is shot he's Basically shot down into some sort of mine or something of that sort they throw like a firecracker or something down there to blow him up and In the story he of course survived as we found out in Halloween 5 the issue though is Halloween 5 humanizes him too much because we see this character who's supposed to be the Quote-unquote boogeyman we see how he escaped in detail vivid detail We see him and see him crawling out of the mine shortly before he blew up We didn't see him Flowing down a river or something and then landing on the porch of a hermit or something of that effect some old man with a bird Something that just was not necessary to see on screen. There's obviously a Factor of when you do that you're kind of putting now now the audience is no longer at the same speed With the characters since we saw how Michael Myers escaped in Halloween 5 That's fine for us, but now we're at an advantage where the characters on screen They do not know how he survived. He's just he's just seemingly back and They don't know how but we do I feel like that's that's very cheap If you want like a more effective narrative overall having the audience in the same position with your Characters that's always more effective because you're just right there along for the ride now just as much with these characters You don't know as much as they know. They don't know more than you know They don't know less than what you know stuff like that Of course, there's instances where it works when you know more than the characters But for something like Michael Myers and the way this narrative has been constructed and how this is supposed to be directly building from the original film from 1978 It's kind of irrelevant for us to get to see how He survived the end of the last movie and I need to stop saying irrelevant because what I mean is it's not necessary Us seeing how he survived the end of the 2018 film isn't necessary because at the end of the day They already established that they're going back to the original intent the original intent of the character was for him to not Literally be supernatural but for him to have that edge and then for you to kind of always be like Well, is he or isn't he but of course, he's not literally supernatural in the first film He's not teleporting around. We see him with the car. We see him on foot with two legs. He's not just teleporting And the stuff he endured at the end of the first movie I've said this a thousand times just because you see you feel that you wouldn't live or that someone else wouldn't live Doesn't mean that it's impossible for someone to endure all of that and then survive Just because it's not likely doesn't mean it can't happen It's just highly unlikely that what he endured at the first at the end of the first film would be something that Some ordinary person in today's society probably wouldn't see them survive that yes That doesn't mean that what he endured was something that should have just flat-out killed him point blank period No, he wasn't he he didn't have his head decapitated or anything of that sort He was shot six times. We don't know where those six bullets went clearly if he survived They didn't go anywhere significant. He got stabbed in the chest. Yes. I understand that Stabbed in the neck again. We're just assuming that vital organs were hit and Suspended your disbelief and the fact that he's still alive clearly vital organs were not touched But to get back to the point of the video in the end of the 2018 film we see him in the Cellar it's on fire Lori sets a fire. It seems like there's no way out. That's from our perspective Now obviously if he got out that means he found a way out We do not need to see that maybe something can happen along the way to please those who think it's necessary to know Maybe Lord will make mention of or remember the fact that she probably had something down there Just in case she became trapped in there with him and she had a way out and that's probably what he found And that's how he got out that or Lord can just speculate for us the audience And we can take that as maybe that is how he got out There's no need for us to definitively see how he got out because just from the simple fact in the matter that we know He is not full-blown supernatural It's safe to assume that obviously he did not teleport out. He got out of there by some by some means He escaped he did not simply magically get out because he is supernatural. That's not what happened He did not teleport out just because we did not see him escape does not mean he teleported and the fact that they're going back To the original intent of the character That's enough evidence to show you right there that he in fact did not teleport out of that cellar We see a shot at the end of the movie where it shows him no longer present That doesn't mean he now teleported out of that cellar He's still down there and he's probably trying to find a way out And if he escaped which is apparently he did because there's howling kills and howling ends coming We don't need to see exactly how that happened Maybe something can happen at the beginning of howling kills where we see Something broken and just a big hole or something alluding to that's how he got out But for us to actually see it occur We don't need to see that and then even that even if they don't want to show any details of how he escaped It's not necessary. It's not relevant It comes if you're gonna do that By doing that you're again putting the audience in the same position with the characters We're just as confused now as they are well, how did he get out? This isn't this isn't possible There's no way he could have gotten out How did he do it? He found a way just because he found a way does not mean it needs to be illustrated on screen It does not mean that we as the audience need to be filled in on every little detail about Michael Myers Because that's what makes Michael Myers Michael Myers We're not supposed to know everything about this character. Those are my thoughts on the matter I think Dave McCrae is absolutely correct in everything he stated. He's usually always correct in my opinion most of his videos But let me know down in the comment section what you guys think do you agree disagree? If you haven't already make sure to subscribe and turn on post notifications I never miss a video in the description. I'll have links on my social media accounts I'm a Facebook Twitter and Instagram you can message me there to let me know if there's any movies news or views You let me to cover in the future but all that in mind guys. I will see you in the next video