Welcome. Can you hear me? Great. So today we're going to talk about Windows containers and host process containers for configuration and beyond. And so before we get too deep into the details of how Windows containers, host process containers work, we're going to show you a quick demo. Get right into it and show you how this works. Who here has used Windows containers before? All right, and who has had to debug and get onto the node, like SSH or RDP onto the node? Okay, so only one or two folks, but you know how painful that is. And so for everybody else, SSH, SSH into the node usually requires doing a proxy jump or already like setting up a VM inside the network so you can RDP. Then you need to know the password to that VM and it's difficult, challenging. And so what I'm going to show you here today is we're going to use a kubectl plugin to connect to the node and get direct access to the node. No SSH, no passwords, none of that. And so we're going to get just easy access. And so in the demo, things to look for are how fast this container boots up and the tools we get to use such as Vim and other things. So I'm going to start the demo here. First thing we're going to do is take a quick look at the nodes. So you're going to see a Linux node and a Windows node. And then we're going to install the plugin. So we're going to use crew to do that. Crew install Windows Debug. Crew, if you're not familiar with crew, it installs a plugin so you can start to use that tool directly with kubectl. Next, I'm going to run kubectl Windows Debug and it's so fast that I can barely say it. We just got connected to the Windows node and we have access to the root file system there. And we can run programs on the application. We can see all the logs and there was no SSH or RDP. I've also got access to Vim, which is typically not something you install on the machines, but now I can edit the config files, kind of poke around, do some searching with inside the error logs or anything else there. And so this is all hosted inside this HPC folder here. And inside there you're going to see we have Vim, but we also have some networking scripts that we ship out of the box so that you can collect traces and packets and all sorts of other things there. And the best part about that is it all goes away when the container gets killed. So that's a quick demo. Hopefully that gets you excited. I'm James Cervantes. I'm a software engineer at Microsoft. I've been working with Windows containers for four or five years now. I'm a tech lead for SIG Windows and a maintainer at Cluster API for Azure, mostly doing Windows work there. And I know how to make fire six different ways using only sticks and stones, and that's related to my Twitter handle, Aspenwilder, so you can ask me about that later. Mark? Yeah, hi. I'm Mark Rossetti. I am also a software engineer at Microsoft. I am the co-chair of SIG Windows and I kind of pop in all around different parts of core Kubernetes to make sure things work with Windows. I am not generally on Twitter. Okay, so here's a little bit about what we're going to talk about today. First, we're going to do an overview of what host process containers are. That was the new kind of feature that powered everything in that demo. Then we're going to go deep into one or two deployments to show you guys kind of how it works, and then we're going to probably fill out most of the rest of the time with some demos and then have some additional resources and some questions and answers. So first off, what are host process containers? Host process containers are conceptually equivalent to privileged containers on Linux for anybody who's familiar with that. Really, just as a way where you can package, distribute, and deploy your workloads as containers to Windows nodes, these containers run as a process directly on the host, hence the name host process containers, which gives you almost full access to the host's file system, network stack, process space, event viewers, all of that. I say almost because we'll demo some security considerations for all of these in the future. The other great thing about this is we really designed this feature to be Kubernetes first. So they deploy these containers, but they run just as a normal pod, so you get the benefits of all the different constructs that you're used to, like volume mounts, resource limits, everything that's managed there or listed there. So what are some of the motivations for this? Really, I think as James hit earlier, managing and provisioning Windows was extremely difficult. Also, there really wasn't a good standardized way to deploy many of the essential components that needed to run on the node. Your CNI solutions, Kube Proxy, before all of that, really it was just up to whoever was setting up the node to set that up. It often involved a lot of custom PowerShell to parse environments, relied on third-party service managers. Often NSSM was the big one. There really was poor upgrade story. You needed to orchestrate logging into the node and rolling your own updates each time. And also, yeah, just another downside was requiring access to the node. And then your workloads, once they were running with this, they were very difficult to monitor. You really didn't have any visibility into if they were running or not the error state. Again, you required access to the nodes to even get that information, and you had no easy way to get your logs. So with those process containers, you can deploy all of these workloads just as demon sets. So it's a familiar upgrade story, familiar deployment story, runs as a container, which everybody here is used to. You have rolling updates, all of that, and actually no access to the node is required as already demoed. And then once your workloads are deployed, you monitor them just like anything else. Just check to see if your pods are running. They'll get restarted if they're not. There's logs to monitor them, all of that. There's a little bit of information about the history of this feature. This feature went beta in Kubernetes-123. That's when it's generally on by default, so it called that out here. And it is going stable in this next release of Kubernetes. One thing to note, though, is this functionality is only supported if you're running container D as your container runtime. I believe most Windows users have migrated to that now, so it's not a big issue. So here, we're going to go into some deployments, James. Cool. So now that you know kind of what host process containers are, we wanted to show you how you'd actually use them. And so we're going to take a look at a big spec here. And don't worry, we're going to zoom in here. And the first thing we're going to take a look at is the pod spec and using the security context. This is the standard Windows security context that we're hooking into here. You can see that we'd say host process true. And then we specify who we want to run as. And this is powerful because we can use security policies to block people deploying these because it's built into the pod spec. We also specify host network equals true. We need to work for the CNI specifically. We need to work within the host network compartment to be able to program all the rules for the networking in there. And so we have access to that there as well. And Mark's working on a cap to enable that for regular containers as well. So if you're interested in that, you can talk to him afterwards. The next part I want to dive in on is the init containers. So Mark said we built this with Kubernetes ideas in mind. And so we can use init containers with these host process containers.  This is a very familiar pattern from the Linux side. And so I no longer need to go download these things and prep them on my Windows node initially. I can apply them at the time I'm applying my CNI. It enables things for upgrades and other things like that. And I can also pass in the configuration at this time. So I no longer need to know that I'm going to be running Overlay or SDN Bridge or any of those things. I can swap out the configuration using a config map at that time. Next up, we have multiple containers here. Calico needs a little bit of prep before Felix runs to be able to talk to the Kubernetes API. And so we're able to run more than one container inside this pod with that host process. And they communicate to each other via the file system in this case, but there's other ways they could do that. And the most exciting part here is that they have full access to the API server using the security, sorry, the service account that's applied to the pod. And so you can specify that they're able to access different components of the API and communicate with them without having to copy around cube configs and do other things, which is the way that we did that on the host node prior to this. Next up is we're using volume mounts. And so I kind of alluded to this before, but I can map in exactly where I want to copy those CNI binaries. And then I can also use the config map to configure the CNI in the way that I want to. So the next part that I wanted to call out here is cube proxy. So we're also enabled this for cube proxy. And we're using it basically in the same way. You'll see the host process security context at the top there. But we also are using the downward API to pass in information. Because this is built into Kubernetes, we no longer have to use our PowerShell scripts and do some kind of fancy thing to go figure out exactly what the pod IP address is. We get that information just given to us through the Kubernetes native constructs. And on top of that, we can use taints and tolerations with these. So we can say this is a critical component because it's the cube proxy. We need this running at all times. And then upgrading becomes super simple. We're using Kubernetes upgrade strategies here instead of having to build our own through some sort of PowerShell scripts or something along those lines. And so for those that may have noticed at the top when we were talking about who this container runs as, Mark is going to talk a little bit about how we can restrict the access of that container user. Yeah, so you'll notice in the previous demos we were running as a local system account that's generally not desirable in a lot of cases. So we do have some mechanisms so that people can configure what access these containers have on each one of the nodes. There's a demo here that I'll kind of narrate as it's going through. So this deployment has a PowerShell script. What was that? So he asked if that would be an equivalent of a run as as a service account. And yes, it is. So here you'll see here there's a PowerShell script that gets plopped in as a config map that runs on the nodes. The first thing we do is we use NetLocalUser to create a local user account. And then we create some folders and give different access to those. Here you'll see, well, we just missed, there's an init container that all it does is it runs that script and then there's two workload containers in here. One that runs as that NT authority system and one that runs where we set the run as username to that new local group name. And that's what's highlighted here. So this local group did not exist on the machine before this deployment started. So here we'll start this deployment and then we'll wait for the containers to run and then we'll poke around inside the containers. So this is what I call the admin container. Here you can see we're running as NT authority system and we'll just see if we have access to these different chairs. In this case, we have access to both of them. And here's the other share. So now we'll exec into the other container that was running as that local user group. I'll talk more about the output of this who am I in a minute. But here you'll see that we try and access that admin share and get an access denied. And then we try and access that other share and we have access to that share. So I'll talk about what's going on here. So now we realize that this is a pretty powerful feature and we want to limit access to the node but we're trying to figure out a way to do that that didn't require having people manage user accounts on the nodes either using weak passwords or potentially no passwords or other things. So what happens here is if you pass in the local group name as that run as user name, when these containers are started, we'll actually create a new user, a local user, add it to that group so it will inherit all of the security permissions from that group and then your container will run as that user and then that user will get cleaned up at the end. This is beneficial because, yeah, it makes it a lot easier to manage these user accounts who don't need these passwords and there's just a lot of benefits to this. Another nice thing with this is it really completely falls into the Windows security model. So you assign access or deny access to all of the different Windows resources just with native Windows constructs like these local security groups here. And as James mentioned here, we're relying on people using different policy engines to restrict who these containers can run as and what namespaces and all of that. I need to check. I don't... Well, let's... I'll bring some other people up to help answer that question. Yeah. One other thing that I wanted to call out here is you may have noticed that these containers start pretty fast for Windows containers. As we were developing this feature, we noticed, like, since it is a process just running directly on the host, you really don't need all of the stuff that comes in with these Windows container-based images. So we tried to make it so that you didn't need this and so we created a new base image here. This new base image can only be used with host process containers, but it is very small. It's about 25 kilobytes, which people are used to working with Windows. Other Windows containers, Nano servers on the order of 100 megabytes. One other benefit with this is the same image will work across all versions of Windows Server. So you can build a single container image and deploy it to your Windows Server 2019 nodes, your Windows Server 2022 nodes, and that too. One thing I will note is that you don't have to use BuildKit to build this image. There's a demo here, and for anybody who's interested, there's a GitHub repository that has the source code that's used to build the image and instructions on how to use this too. And if anybody is not familiar with using BuildKit to build images, it's pretty easy. So here's a quick demo. First, we'll have a Hello World file that just says Hello World and a Docker file. And then... So with BuildX, you need to make a BuildX builder to specify the target operating system or the platform to use. But then you can just use Docker BuildX build commands to build that. So in this case, building it, pushing it to a registry. And then here I've got a pod spec that's using that. And... then we'll run it. And this image was not pre-polled on this machine. Here too. Super fast. James? So now that we have an understanding of what host process containers are and how to configure them and operate with them, we wanted to show off a few tools that the community has already built with host process containers. The first one we're going to show is a tool that I developed that I solved the problem that I needed inside SigWindows. And so I'm one of the ones that maintain all the SigWindows tests. And we have occasional flakes that happen every 40th or 50th run. And we needed Windows traces, ETL traces to be able to collect and debug these things, because we identified that the bug was in the OS. Running a trace, these end-to-end tests take about an hour to or so to run. And running a trace for that long would result in a many gigabyte-sized file. Massive. And so I needed a way to be able to trigger when a specific test was running and then kick off the traces and then get them uploaded somewhere. So what I'm going to show you here is the tool that I built to do this. I've called it the trigger logger, which is not very creative here. And so the first thing we'll do is we're going to install the trigger logger. So it's just a YAML file. It is a host process container that's running in the background. And it has a config map. And that config map allows you to configure this tool. And the thing that we're going to look at is it has a trigger that runs on the name space creation. I know what that name space is that's going to be created in the test. And so every time that test kicks off, I'm going to run that. Next up, once that trigger triggers, I'm going to run WPR or Windows Performance Recorder. The Windows Performance Recorder is the thing that creates that ETL file. And then finally, at the end, once I destroy the name space, I'm going to upload that to the cloud storage that's available to me. So I've got this tool running. You'll see that it is using the in-cluster config that I mentioned before. So it's communicating to the API server. And it's using the server's account that I've wired that has access to list namespaces. It's listening to all the namespaces inside the cluster. And then the next step for me is going to... We're going to listen to the logs of the trigger logger and create that namespace. So on the left-hand side here, I'm just going to tail the logs. You'll see the same logs we just saw. And then now I'm going to create the namespace that it's listening for. In this case, I called it WPR CPU. It could be anything you want. And on the left, we'll see that immediately Windows Performance Recorder started running. It's built into all of Windows Operating Systems. And I'm collecting CPU, disk, file information. And then I'm going to delete that namespace. And once it's deleted, we'll see we're processing that event. And then we write the ETL file out. So once this ETL file processes, we then run off and start uploading it to Azure. So I'm going to cut this out. So I'm going to skip ahead a little bit here. Skip ahead. That's too bad. So I will upload this to YouTube later. But what happens next is it gets uploaded to Azure. And once it's on Azure, I'm able to pull that ETL file down, use Windows Performance Analyzer, and I can see the individual stack traces, how much CPU, how much memory is used on the node. And I'm able to identify exactly where we're having a performance problem or something else. And I've used this specifically to improve Cubelet from going from using about 3% steady CPU down to 1.5. And so it's a super powerful way to analyze and debug these things and fire them off on demand. So the next one, this one I won't skip through, is a networking demo. And so this one was built by our networking team and they need to be able to identify packets being dropped or manipulated throughout the VM. And so what they've developed is this component called WinContainerNetworkInspector and it's a daemon set that runs on the nodes and does some controlling of the various processes that are related to networking. And once that's installed I can connect to it using a command line tool called WinInspector and once I'm connected there, this tool will let me query various networking commands. And so I can do packet captures. I can do counters. I can query the HNS logs which is the networking configuration that's set up. And so here I've run that networking configuration and I can see all the networks that are created on a node. I can see all the load balancers that have been created and I can see all the mappings between those. So if something got misconfigured somewhere it's very easy to inspect and it's helpful in a large cluster if you have 100 different nodes and you're saying hey this node here is acting weird and I'm going to go inspect it. So the next step that I kicked off here is a packet trace. So I've got an IIS application running on that node. And with Kubernetes obviously most of the packet traces that I'm interested in are probably about a specific container. So when I so I can say I'm going to capture the packets for this particular pod within my entire cluster. Again, very powerful because I no longer need to capture all of the networking traffic across all of the stack happening on a particular node which could be very noisy. And so here I'm going to send the curl request and then on the right there's a lot of traffic coming in. If you know what you're looking here this is just telling you the packets going through the various components of the networking stack. This can be converted to a wire shark and so you can load this into wire shark and then analyze it from there. And we're using packetmon behind the scenes which is another tool that ships with Windows server in the latest releases and so I can filter down to individual components within the networking stack and just see those components. And the last thing I'm going to show here is sometimes you don't know what's going on and you know that maybe the packets are dropping but you're not sure how bad it is and so I can just quickly query against a node and it will give me the counters that are being seen on that node and so then from there I can narrow it down to something else that's happening. The networking team actually used this to identify some various bugs within some customers that we had experienced and this enabled them to identify an individual pod running in a 100 node cluster and say this is the component that is causing problems. Super powerful tools. These are all open source and the next part we're going to step into is just some additional resources. So since we have released host process containers for Kubernetes in 123 we've had a huge adoption of this across the ecosystem as you can see from all these projects. So that when Windows container inspect is in there Qproxy is in there Calico and I think one of the other really good ones is Windows exporter for Prometheus. So there's a ton out there, there's even more that we didn't get to list here and I think I want to call out if you are new to the Kubernetes ecosystem and you want to contribute this is a great way to contribute to Windows. There's a lot of examples out there that you can leverage and there's a lot of projects that either don't know this is available or don't have the Windows expertise and so you can go out there and make a pretty significant contribution that enables the ecosystem. So this feature and all of the things that we've demoed here were really developed in construction with SigWindows so we wanted to take a minute to highlight some other upcoming talks related to SigWindows. There's a Windows operational readiness talk tomorrow. There's a SigWindows maintainer track talk tomorrow and then there's interesting lessons learned from scheduling 20 million Windows containers that we'll talk on Friday. So if you're interested, please come support us. And before we get to the Q&A I just wanted to put up some resource slides here. Don't worry about taking this down just download the slides off-schedged but there's a lot more information about the CAP the discussions that went into eventually bringing this feature to fruition documentation on how to use it lots of examples, all of that. If anybody is interested in participating or getting more information here I encourage you to just go through the normal SigWindows communication channels the biggest one being the SigWindows Slack channel but there's also, we have a community guide on how to reach us and we have a community meeting every Tuesday at 12.30 PST so we'll hope to see more people there. Next we'll open it up to Q&A and at the same time I'll just leave this up if anybody wants to leave some feedback. One of the differences between container in Linux and host process container is that the container is running as a processing the host. I also know that there is no file system isolation so for cluster administrators that want to enable this feature what security recommendations do you have so that workloads cannot access, can't have the same access on the file system. It's a little bit of hard time hearing it because the speakers are facing all of you but I heard what kind of security considerations should administrators take when using these, is that correct? Particularly around the file system so since so much of this is controlled just through the normal Kubernetes constructs really the built-in security or security admission policies will help cover you a lot. I know if you're in the restricted policy you won't be able to schedule host that so we really recommend all the best practices about really not allowing host path volume mounts and that sort of thing and I think that should help get you kind of started but the rest is really just knowing what workloads are deploying honestly. Yeah I would say the part where Mark showed how to set up those user groups and restrict access to the file system from there you could create a user membership that didn't have access to most of the file system and then kind of opt in from there so that would probably be the best approach. Alright thank you. In line of that question are there any futures you can share about what you might do if you were to ever consider proper isolation on that level? I mean it's hard because you're giving root access away effectively so is there a future roadmap that you can share on that or? So I thought I heard is there a future for more isolated access to the host? Currently no. We're hoping that we just haven't had it planned but if there's some interesting use cases we'd like to hear it. Most of the use cases that we've highlighted required either pretty broad access to the host or we're allowing us to just restrict it with what we've demoed but if you have some use cases feel free to bring it to us. So the container's root of the file system is the node's root right so C drive is C drive is that correct? So there is some virtualization happening there so your container image will get mounted to a well-known location C call and HPC and then it will be there all of the C drive will get mapped in to that as well and then your volume mounts will show up just like they do in normal Windows Server containers so if you mount in bar log it'll show up in C call and bar log. Right but if in your example where you're using the init container to install something if I delete that pod it's still installed you installed it physically on the node and all I did was delete whatever the deployment of the container image was from the disk and then close the stop the process again. Correct all of those side effects are going to carry forward one-side pod stops. So just specifically in the CNI case there we copied the CNI binaries into the CNI location but the VIM that doesn't live on the host that was in the container and when the container went away it's going to be removed as well so it depends on where you put the binaries but if I go running MSIs or something like that I'm installing on the node. Yeah most likely and that was one of the kind of use cases we had envisioned for that too is like what if you want to apply your security patches in a staged update. Any other questions? One more? Probably the last one and then continue afterwards if needed make me run here. For that particular scenario is there going to be some sort of shadowing of what's mounted in the container so if my container defines a directory that is in the host this is going to be which one is going to be taken? So there's there's a cap and actually the PRs to do this have a lot of discussion around that too so I'll probably defer to that but the short answer is no we actually so if for whatever reason SQL and HPC folder exists on the node we clear it so that you won't get that the contention the same contention that you can get with shadowing but other than that it's there's not really much concern there. Right thanks. Last last one for real. Fabulous talk. Question for you I know that there are a lot of really exciting caps in flight around Windows stuff as well if somebody wants to jump in and start participating in some of the actual like the caps and other things like this that you're in the process of working on yeah this one is going GA that's great but what other ones are kind of a an exciting place people might get involved? Oh that's what our maintainer talk is covering tomorrow too so if you're interested in that too but as James mentioned host networks access to the host network compartment for regular Windows server containers is one and really following a whole bunch of the node the sig node caps to bring parity to Windows is that too. The one that we're working on right now is the cry API for stats which is a big change in the way that stats are listed from the node in Cubelet so that's another big one that you could get involved in. Also I mentioned I think James and I are going over to the Azure booth if people are interested and then there is the booth crawl at 6. We were just asking what time is that talk tomorrow that you're mentioning? 5.25pm. Wonderful. Thank you so much.


This lesson is about gossiping, bullying, rumors, well like a whole bunch of stuff really and it's based on a video called Message Sent. That's a video that was written and produced by a group of young people down in Cornwall and I was lucky enough to work with them to understand why they created the film and what they thought were the important questions that young people should be exploring and so I created this lesson with their input and their ideas based on what they thought mattered. I hope you'll find that it's stuff that matters to you too, that it helps you ask some important and interesting questions and then it gives you some ideas about how to maybe do things a little bit differently in the future. So let's start by watching the film. As you watch it I'd like you just to think about what's happening, why and how could things things maybe have turned out differently. Okay let's roll the film. Now you've seen the film we're going to re-watch some of the specific parts of the film and explore them in a bit more depth and try and understand what's going on here and how could things have been different. Okay so let's start at the end. So at the end of the film we rewind right back to the beginning and we see that actually things could have worked out differently so let's just refresh on that bit and I want you just to think about how things have worked out differently in this different scenario. Now we've had a chance to think about how things worked out differently in this instance. I want you to think about were there other times in the film where maybe things could have turned out differently if someone did or said something different when were those moments and how could things have been. Okay we're going to roll the next clip now this is the bit where the notes being passed in class. Now reflecting on that clip I want you to have a think about this from the different points of view of different people in the room how do you think the bully is feeling how is the victim feeling and how are the bystanders feeling and what could or should the bully, the victim and the bystanders have done next. The next clip is a really short one it's a conversation between Jackson and Grace who are the main characters that the film centres around. It's short but I think it's really important. How did you do that? You didn't do anything. So I want you to think in your groups now about how else could this conversation have gone between Grace and Jackson. What could Jackson have said or done differently and what could Grace have said or done differently here. And here's what one of the young people who was involved in the filming thought about this. I really think Jackson the character should have supported Grace a lot more through the tough time because he simply assumed that it was her fault rather than listening to her and he could have stuck by her when the other girls came to confront her but he let those rumours continue when he could have easily put them to rest and I think that he really should have asked her if she was okay at least and maybe apologised for assuming the worst of her but he just let her spiral into this kind of pit of despair and I think he was supposed to be our friend and I just think he wasn't there when she truly needed him to be. Throughout the film there are several times when there are bystanders so people who are kind of observing the bullying and the gossiping happening but they don't actually intervene so they're just standing by. So I want you to think now is there a difference between a bystander who's watching the bullying happening and the bully and here's what one of the young people who was involved in the filming thought about this question. A bystander can be as bad as a bully because they're still hurting the victim nonetheless but not directly, they're indirectly hurting them by seeing what's happening sometimes and not telling anyone and the first victim who's being bullied might see them and think oh this might get better but it never does. Thinking a bit more about the bystander thing why do you think it might be difficult for someone who is a bystander to intervene in a way that might be appropriate? What might stop them? Why is it hard to do the right thing? And here's what one of the young people who was involved in the filming thought about this. The bystander might not tell because they feel like the bully if they tell they might class it as snitching and they might start to bully them and then someone won't tell for them so they're scared inside not to tell. And finally on the theme of bystanders what is the right thing to do? What could or should a bystander do in this situation? What could you do if you were in this situation? And here's what one of the young people who was involved in the filming thought about this question. As a bystander you should tell someone you can trust maybe an adult or teacher who can help things get better or just try and talk to the victim and see what's going wrong and maybe talk to the victim's parents if they can speak to the bully's parents maybe to help them. As a bystander you could also step in to stop it before it comes a problem and help the victim even if you don't know them just to stop them from getting bullied. Also as a bystander you could go out of your way to find out why the victim is being bullied and what's happened. The film ends with this idea is it true, is it kind, is it necessary? What do you think is meant by that? Is it true, is it kind, is it necessary? How could you apply this in your kind of life? And here's what one of the young people who was involved in the filming thought about this. Rumours can ruin friendships very easily. I can't number the amount of times I've heard people in our year breaking up or using friendships purely because of a rumour. Sometimes when people mis-consume, misinterpret or take things out of context, issues it can result in people being mistreated or misunderstood. It can easily result in a broken up friendship purely because someone didn't listen or didn't understand or didn't check the facts. Make your speech truthful because it can be the most important thing in any discussion.  However, it's not kind, it's not productive, it's not helpful and it's not fair. Again, sometimes people misunderstand or take things out of context and easily result in friendships being ruined again. Whether or not it was deliberate people can misinterpret things and slacking off does nothing to help this. It is fun but it's not fair on the person who can't explain their point of view. Make your speech kind. Gossip can also be fun but it most likely doesn't concern you. In the majority of cases you've just found someone who's doing something wrong that you've heard about. Yes, point out things that are wrong in society and stand up for yourself and that always matters but not when it's small pieces of gossip because people again can be mistreated and misunderstood. Make your speech necessary. Finally, I want you to take a few minutes to think about what you might do differently as a result of watching the film today. We're going to use the structure of stop, start, continue, change. So what's something that as a result of the discussions in this lesson you might stop doing, you're not going to do any more in future. What's something you're going to start doing? Something you've not done in the past in the future? What's something you're going to continue doing? So something that you noticed from the discussions today that you already do well, that you're proud of that you would like to do more of in the future and then change. What's something that you're going to do still do but do in a slightly different way in future? So stop, start, continue, change. Have a think about which of those you can write something for as a result of the lesson today. I hope you found this lesson interesting and helpful. I think the pupils down in Chatharis did a great job putting together the film and then working with me to kind of raise some really good questions for you to explore in your lesson. It could potentially have churned up some slightly tricky stuff for you. Maybe you're worried about yourself or a friend. Your teacher can outline great sources of support for you available in school or locally but I can also recommend Childline, the Samaritans or the Shout Crisis Text Line as great sources of anonymous and confidential support should you need them. And remember if you are worried about yourself or a friend you can always talk to a trusted adult in school who will be able to support and guide you if you're ready to chat face to face. Thanks so much and remember is it true? Is it kind? Is it necessary? Okay, goodbye.


So beginning at verse 21, reading to verse 22, when these things were accomplished, Paul purposed in the spirit when he had passed through Macedonia and Ikea to go to Jerusalem saying, after I've been there, I must also see Rome. So he went into Macedonia, two of those, so he sent into Macedonia, two of those who ministered to him, Timothy and Erastus, but he himself stayed in Asia for a time. And so Paul has been ministering in this huge city of Ephesus. I had the blessed opportunity of going many years ago to this city and one of my favorite memories, and I thought I'll share that with you about that trip is my pastor at the time, Pastor Chuck Smith, who has since gone home to be with the Lord, had invited us and several of his, what he used to call his boys to join him on this, it was the seven churches of Revelation. And so I had the opportunity of going to Ephesus. Now when we went there during that time, it was raining, it was pouring, and so we were in the bus. And so several of us decided to go to the very back of the bus. And so I was back in the very back of the bus and I was with Ron Reese and Randy Walts and Xavier Reese and Ron Wilk and several guys that we've known for a long time. And so, because it's raining, we just started talking amongst ourselves. It was a huge bus. We started talking amongst ourselves and as we're talking amongst ourselves, quite a number of us have silly senses of humor and so we started laughing. And now we're laughing and carrying on like children in the back of the bus going through this tour and it's kind of like loud. And we're, ah, that's what we're doing. And so we had a great time. We didn't hear anything that they were saying, but we'd get off on the sites and we'd look at them, pastor would teach and we'd get back on the bus and we'd laugh. And then the second day we did it again. So we're in the back laughing and laughing with each other for the whole day. The third day, Karen Johnson, Jeff Johnson's wife comes through the back of the bus and she says, Chuck wants you up in the front. And she said it like we're kids in trouble. And it's kind of weird because, I mean, we're all older, man, we've got children, wife in churches and now we're all sitting up in the front of the bus and pastor Chuck's there and it was like we're in trouble with the principal. And so I still remember sitting there and it's real quiet. Now we're not laughing anymore because he has us up there with him. And then Raul opens up his Bible and he's sitting next to me and I looked at him and Chuck was sitting right in front of Raul so loud enough, obviously for Chuck to hear, I said to Raul, you haven't opened that book up in three days. I said, and now you're opening it so Chuck can think you're real spiritual, right Raul? And Raul said, now Chuck starts laughing. Before you know it, we're all laughing. He's turned around, we're giggling and laughing like school kids for three days. All this time we thought we were in trouble and later his wife Kay says to us, you guys weren't in trouble. Chuck could hear you laughing in the back of the bus and he wanted you up there so he could laugh with you. And so that's one of my favorite memories of Ephesus of all things. It was an amazing city, but it was just so much fun. But anyway, we're looking at Ephesus and the Ministry of the Apostle Paul there. So let me share a few things with you about this. God has been moving through the Ministry of the Apostle Paul. He went to this ancient city, it's called Ephesus. Now Ephesus at that time was on the coast there in Turkey. It had a population as I mentioned to you before of some 250,000 people. That is a huge, huge population in ancient times. And so Paul had gone to this huge city, his commercial city and it's filled with so many different things and he had preached. And God was moving through his ministry in a church. The church of Ephesus has been planted. We saw how that God was doing unusual things through the hands of the Apostle Paul.  They had taken these things and they had actually used them. God had worked through a miraculous way in some way and healings had been performed and even demons had been cast out. And it had caused a great stir amongst the people there in the city of Ephesus. Now the people of Ephesus were deeply superstitious people. So miracles had grabbed their attention and they became open to hear what the gospel message was. And so the name of Jesus is becoming well known in that area. During that time, there were seven sons of a Jewish exorcist by the name of Sceva who tried to use the name of Jesus whom Paul preaches to cast a demon out of a man. And instead of the demon leaving, the demon said, Paul, I know Jesus, I know Paul, I know but I don't know you. And he had attacked them and driven them out and that had caused a great stir amongst the people. Now all who heard this, well the scripture says fear came upon them and that included both the Jew and the Gentile and the result was once again an even more openness to the gospel of Christ. And many came to faith. In verse 20 here, it says, the word of the Lord grew mightily and prevailed. Now the word prevailed, it speaks of making a great impact. When it says the word of the Lord grew, that speaks of a continuous growth. There was an overpowering force is what's being spoken of here. None could resist. God's word was going out in a very powerful way. It reminds me of Isaiah 55 verse 11 where God said, my word that proceeds from my mouth will not return to me empty, will not return to me void, but it will accomplish what I please and it will prosper where I send it. And that's what's taking place there in Ephesus. God is moving in marvelous ways. And that's what's bringing us up here to the beginning of our study in verses 21 and 22 because it says when these things were accomplished, Paul purposed in the spirit when he had passed through Macedonia and Ikea to go to Jerusalem saying after I have been there, I must also see Rome. And so it says when these things were accomplished, what things is he speaking about? Well, the word is prevailing, a church has been planted and Paul knew that his work had been accomplished. It was time for him to move on. The gospel was being preached, leaders have been raised up. Remember, he's there in the city and you'll see this later in chapter 20 for three years and he's been laboring tirelessly. So in good conscience, he can now take his leave because the work has been done. Now in chapter 20, we're gonna see this when he meets with the elders of the church for his final goodbye to them and he says to them that I've accomplished my purpose. I have been faithful to what God has called me to do. He'll say it in Acts 20 verses 26 and 27 when he says I testify to you this day that I'm innocent of the blood of all men for I have not shunned to declare to you the whole counsel of God. So I'm able to leave you because I've given you all that you need. And so this has all been accomplished is what it's saying here. All of this has taken place. The word of the Lord has grown mightily, it has prevailed, it has made an impact, the gossels preach, the church is planted, leaders are raised up and it's time for him to leave. Well verse 21, rather 22 says so, he sent into Macedonia two of those who ministered to him and he names them Timothy and Erassus but he himself stayed in Asia for a time.  Now I want you to notice as he's traveling he was led by the spirit to go to Jerusalem because that's what he wants to do. He says after I've been there I must also see Rome. He goes first to Jerusalem but he wants to go into Rome also. So God is leading him and directing him as he's traveling and that's the way it works. You need to be led by the spirit if you're gonna be used by God and what he's doing is he's traveling but encouraging the members of the churches that he's visiting and he's also encouraging them to support the poor saints in Jerusalem but he wants to in his heart, his desire is to go to this huge city, a city called Rome. Now later he writes a letter to the Romans in chapter one verse 13 and he says I do not want you to be unaware brethren that I often planned to come to you but was hindered until now that I might have some fruit among you also just as among the other Gentiles. So I've been desiring to come and it says here after I've been there I must also see Rome. He's saying that he desires to see them but we need to remember that ministry is to be led by the spirit of God and I wanna share a couple things with you that might be practical and helpful. Let me develop this for a moment as we've been going through the book of Acts. We've seen how the Holy Spirit led the early church. We've seen that they would spend time in the Word of God, they would pray and as they were doing so the Holy Spirit would direct them. Now they desired to follow the commission that Christ had given to him to go into the whole world and preach the gospel and they wanted to do so in obedience to the Lord but they also needed his direction. Now we saw for example in Acts 16 verses six and seven how it says when they had gone through Phrygia and the region of Galatia, they were forbidden by the Holy Spirit to preach the word in Asia. After they had come to Missia, they tried to go into Bethany but the Spirit did not permit them and so all ministry must be directed and guided by the Holy Spirit and by God's word. Because it's God's Spirit who leads us as we seek him for direction. That's why if you have something in your heart and a desire to serve the Lord in certain way, it's a very important thing for you to take it before God in prayer so that he can lead you by his Spirit. In Romans 8.14 it says as many as are led by the Spirit of God, these are the sons of God being led by the Spirit. And so having this knowledge of where to go is gonna come to seek in the Lord in his direction and his word. His word gives us what he desires us to do and his Holy Spirit leads us into that. In Romans 15, verse four, whatever was written in the past was all written for our instruction so that through endurance and through the encouragement of the scriptures we might have hope. So Paul made sure that he was led by the Spirit as he served God. He didn't just go out, he prayed and sought the Lord in purpose in his heart to do that which the Spirit led him to do. He knew that if he made his own plans that he could move in the wrong direction. In the Old Testament book of Jeremiah chapter 10, verse 23 it says, oh Lord, I know the way of man is not in himself. It is not in man who walks to direct his own steps. Father, I need your direction. I need to know what you would have me to do. There are many needs out there but the urgency to meet those needs is not necessarily the calling to do that so I need to know what you want me to do and where you would have me to go and that's how Paul was. God's Holy Spirit continues to direct us today. It comes as we receive the word of God in our teaching. It comes as we through personal reading or seeking him as we pray and then we move out in faith and as Christians as we mature we learn to hear his voice as he directs us and that's what's taking place here. The Spirit is directing Paul. As so it says in verse 22 so he sent into Macedonia which was across in Greece, ancient Greece two of those who ministered to him and he mentions him. One is Timothy and the other is Erastus he himself stayed in Asia for a time. Timothy and Erastus. They were to prepare as he was to come but they're gonna go into the church in the church that's in the city of Corinth and prepare them for Paul's visit. Now why did he send them? Well we're told and I'll show you this in a minute. He sent them to prepare because he didn't want to appear harsh to them when he showed up. When you read your Bible and you read first and second Corinthians especially first Corinthians but you see it in both books. The Corinthians were, they had a lot of problems a lot of difficulties in the church and Paul had to actually deal with those things and he was gonna come and he was gonna bring correction and so he wanted them to be prepared. In first Corinthians in chapter four verse 17 he wrote to them and he said this. He said, for this reason I have sent to you Timothy my son whom I love who is faithful in the Lord he will remind you of my way of life in Christ Jesus which agrees with what I teach everywhere in every church. I'm preparing you for when I come because when I come I will be bringing correction. Now we know Timothy. Erastus we're not sure who he is and I'll just touch on that for a moment. He may have been the city treasurer of the city of Corinth and that would mean that he would have credibility with the Corinthians and all. Romans 16 verse 23 mentions him as the city treasurer and so he's speaking of these two and he says he himself stayed in Asia for a time well verse 23 and about that time there arose a great commotion about the way for a certain man named Demetrius the silversmith who made silver shrines of Diana brought no small profit to the craftsman he called them together with the workers of similar occupation and said men you know that we have our prosperity by this trade. Moreover you see and hear that not only at Ephesus but throughout almost all Asia this Paul has persuaded and turned away many people saying that they are not gods which are made with hands and so we're gonna see a great commotion. We already saw that there was a great commission. We're gonna see the great commotion that's about to take place. Notice it says at verse 23 at this time about this time there arose a great commotion about the way. Now the term the way I've already shared this with you but it's used about six times in the book of Acts in reference to Christianity or what we call today we're just Christians. Well the way was the way that they would speak of it during that time it's called the way because Jesus's message is an exclusive message therefore it's the way it's not a way it's referred to as the way. And that's what you see in the book of Acts. It's the core of all gospel preaching that Jesus Christ is the way, the truth, and the life. In Acts 4 it says in verse 12 salvation is found in no one else for there is no other name under heaven given to mankind by which we must be saved. There is no other name, there is no other way. Jesus said I am that way and therefore the people were upset because they called it the way because it was really an insult to them because they considered Christians to be ignorant and they had no regard for them. But the scripture made it very clear that Jesus is the way and so that's the way we follow the way of Christ. Well what's taking place here concerning the way? Well it speaks concerning this certain man named Demetrius a silversmith who made silver shrines. He made silver shrines notice of Diana. Let me share a little thought with you about that so you kind of know what's going on here. Diana was the Ephesian goddess of nature or fertility. Diana was represented by an idol with 20 breasts. Don't think about it. She was, she was the goddess of childbirth. Her temple in Ephesus was one of the seven wonders of the ancient world. It was 450 feet long. It was 225 feet wide. It was 60 feet high and it had 127 columns. Now this temple has been called her chief shrine. Demetrius sold silver shrines. Now a shrine it would be what is referred to as a portable sacred dwelling place. We call it mobile homes for the gods. That's what it was.  Pilgrims would purchase them. They'd take them home. They'd place them in graves assuring themselves of her constant presence in both life and death. And the shrines were generally recipients of adoration. Not for themselves alone, but because it supposedly housed the deity and represented that deity. Now God in his word forbids the practice of idolatry. Any work of man's hand would have necessity being perfect and inaccurate. You can never make an image of the invisible God. And even if we were capable, it would never be as perfect as he is. Therefore we are forbidden to do that. Anything represents him that we would create to represent him, demeans him and therefore is forbidden. Well, verse 24 says the sale of these shrines brought no small profit to the craftsman. The sale made the craftsman a great amount of money. And so what he does in verse 25 is he calls them together and he begins to speak to them. He riles them up. I mean, you know that we have our prosperity by this trade. Moreover, you see and hear that not only at Ephesus but throughout almost all Asia, this Paul has persuaded and turned away many people saying that they are not gods which are made with hands. And so he's upset. Now notice the real problem here. We're losing our wealth. You see these people exploited the religious sentiment of people and made themselves wealthy because of it. I was in Manila in the Philippines. I went to this particular church in Manila that houses what they call the black Jesus. It's an image of Christ that is black in color. I forget the reason why it was, but they have it there and they refer to it in that way. And I still remember walking in when I was there doing some ministry in Manila and in the courtyard, they had booths all through the courtyard of this church and they were selling magic potions. They were reading fortunes. They were doing things of that nature. And it would be like if you walked out of here right now and there are people selling you magic potions and talisman and reading your palm and all, that's what it was doing there. And it was, it's really just so totally wrong but what happens is that there is a taken advantage of the religious sentiment of people and that's what idolatry at the end does. Demetrius' religious sentiment is nonexistent. His real concern is very simple. Our pocket books have been touched but he's riling them up here. He says in verse 26, he says, you see and hear that not only at Ephesus throughout almost all Asia, this Paul has persuaded and turned away many people saying that they are not gods which are made with hands. Now Paul has been ministering in Ephesus for some time and he's had great success and Demetrius is well aware of his reputation. He was also aware of his message. Paul is saying idols are not gods. Well that is something that Paul said to the Corinthians in 1 Corinthians 8, 4 through 6 concerning the eating of things offered to idols. We know that an idol is nothing in the world and there is no other God but one. For even if there are so called gods whether in heaven or earth as there are many gods and many lords yet for us there is one God the father of whom are all things and we for him and one Lord Jesus Christ through whom are all things and through whom we live. So Paul does speak against the practice of idolatry and what he's doing and this is the key is he's bringing a message of life that is found in worshiping the living God. See the gods that pagans worship are not living gods or gods made with human hands out of stone or carved out of a tree.  And Demetrius is living by encouraging people to worship gods of stone. Now what's part of the problem? Well part of the problem is you become like what you worship. You become like what you worship. You're identified by what you worship. The things that make you what you are your friends and family and those who know your best know and you become like that. And it may be something you don't realize but it's true if you're a materialist your friends are gonna always be talking about the things you own.  You actually become what you worship. And that's part of how you're identified. And in idolatry that's what happens. Jesus made it very clear that you become like you worship when he said in Matthew 10, 24 and 25 that a disciple is not above his teacher nor a servant above his master. And he went on to say it's enough for a disciple that he be like his teacher, a servant like his master. So the whole process of Christianity is you become like Christ. And that's why we're called Christian. That like I said earlier the word Christian was used as a demeaning word for us. It literally speaks of little Christs and it was an insult because you became like him. See when you follow Jesus you become more like Jesus. But when you worship idols you become like them. In Psalm 115 verses four through eight the psalmist said it like this. He said their idols are silver and gold the work of men's hands. They have mouths but they do not speak. Eyes they have but they do not see. They have ears but they do not hear. Noses they have but they do not smell. They have hands but they do not handle. Feet they have but they do not walk. Nor do they mutter through their throat. And he goes on to say those who make them are like them. So is everyone who trusts in them. Eyes, ears, nose, mouth, throat.  Demetrius was like his idols. He had no spiritual eyes. He had no spiritual ears. He wouldn't hear the gospel. He didn't see Jesus and he refused to do so. Demetrius is in spiritual bondage. Rejecting and resisting the message. In 2 Corinthians 4, 3 and 4 Paul said even if our gospel is veiled it's veiled to those who are perishing. The God of this age is blinded the minds of unbelievers so that they cannot see the light of the gospel of the glory of Christ as the image of God. You can win an argument. You can present scripture and win an argument but that doesn't mean you win the soul because their eyes are spiritually blind and unless God opens their eyes to see the truth through the conviction of the spirit you're just arguing. Demetrius didn't want to hear it. Demetrius and he knew the message. He's saying that these gods are not gods which are made with hands, that they're not gods. And so Demetrius is aware of what he's saying but he's rejecting it.  Go to Israel and there are people there who want to go out and get water from the Jordan because Jesus was baptized in the Jordan and I was there standing at the Jordan River and these Italians who were Italians came and they had beer bottles and they're putting it in the Jordan River to take home so they could use it and they were calling it holy water and I said, interesting, putting holy water in beer bottles but that's what they were doing. When we were there, there's this place that you go for a baptism and Pastor Chuck's Church, Calvary Chapel of Costa Mesa actually built this baptismal scene and this site there where we practice baptisms and all and they had built it and so when we were there for a baptism on one of the trips we took to Israel, one of the members of our tour came up to me and said Pastor you gotta see this and I said what, so he takes me to one of the little shops there and they had bottles of Jordan water, Jordan baptism water with a picture of Pastor Chuck on it and it busted me up. Chuck would roll over in his grave if he saw that. They had pictures of Chuck Smith in this holy water but that's what they do and some people will be buying things like that. They buy their blessed wooden crosses or they'll get the holy olive oil from Israel.  People still carry that kind of thing, they're very prone to it and this is what he's doing, he's making his money off of their superstition but as he's speaking in verse 27, he says not only is this trade of ours in danger of falling into disrepute but also the temple of the great goddess Diana may be despised and her magnificence destroyed whom all Asia and the world worship. We're in danger of being without jobs. Not only is this trade of ours in danger, we're in danger of being without jobs as Paul is successful but not only that but the temple of the great goddess Diana may be despised so not only will our business end but our religion will be done away with too. If Paul's message is accepted, everything we have will be lost. We're gonna lose our job, our finances, we're gonna lose the goddess that we worship, she's gonna be deposed and it gets them upset. Notice verse 28, when they heard this, they were full of wrath and cried out saying, great is Diana of the Ephesians. The whole city was filled with confusion and rushed into the theater with one accord having seized Gaius and Aristarchus, Macedonians, Paul's traveling companions. They were filled with wrath, verse 28, and they're crying out. The city's in an angry uproar and they're crying without ceasing when it says they were crying out, it means they were continuing to do that. Now we've seen this kind of response earlier in chapter 14. We saw how there was a violent attempt made against Paul in the city called Lyconium and in Acts 14, also in verse 19, he was stoned by an angry mob in Lystra in chapter 16, an angry crowd that seized Paul and Silas and beat them in chapter 17. There was an angry mob that set the city of Thessalonica in uproar, Paul has been around this and it's getting worse. Now some of us perhaps have been around crowds that are in riot, close to riot conditions. I have on a couple of occasions and I can still remember that, that it's one thing to hear about that, it's another thing to hear the sound of thousands of people who are in an uproar and shouting. And I was in New York and they were having a protest and they were walking down one of the main streets there near the hotel I was in and you could hear the shouting and the anger and think about if you were placed in a position of having to control an angry crowd, how dangerous that really is. It's a very dangerous thing and there's an angry uproar and it's so much volume, so much anger and they're crying out, verse 28, great is Diana of the Ephesians. The whole city, verse 29, is in confusion and they rush into the theater. Well the theater, it has 25,000 seats, it's a huge theater and the numbers are growing and the city is in confusion and they're taking, verse 29, they took Aeus and Aristarchus and they dragged them into the theater. Well, as this is taking place, verse 30, when Paul wanted to go into the people the disciples would not allow him, that gives you insight into the courage of this man. When I was in a college, a secular college, many years ago now, I had taken a class in religion, comparative religion. It was not a Christian school and the teacher was not a Christian instructor, he was just giving principles of various religious beliefs and all and I still remember when he was attempting to teach something on Christianity, how he had said that the apostle Paul was basically, and I'm putting words into his mouth but this is how I heard it and he didn't use this particular word but that Paul was simply an intellectual with no heart and that's not the man that wrote first Corinthians 13. This man didn't know Paul but what he was speaking about was the fact that he was an intellect and I've always had a problem with that because he was the premier intellectual, there's no doubt but this is a man who had compassion and love and especially had courage. He's been beaten almost to death and yet he wants to go in to the people and the disciples wouldn't allow him to. This is a man who was willing to lay his life down for his friends. His immediate response was to get them out of danger and he would do so by laying down his own life because if he'd have gone in, the mob would have grown even more violent and that's why the disciples would not allow him to do it. In verse 31, some of the officials in Asia who were his friends sent to him pleading, they would not venture into the theater. These officials of Asia were men in charge of various religious activities as well as the athletic games. They were powerful men and they respected Paul's courage. So all of this is taking place in verse 32. Some therefore cried one thing and some another for the assembly was confused and most of them did not know why they had come together. It sounds like a church service, doesn't it? Confused, I don't even know why I'm here but that's what happened. The majority had been drawn by the noise but they had no reason for being there. That happened. Sometimes people can be gathered for any reason and they will follow the crowd mindlessly. Well, verse 33, they drew Alexander out of the multitude. The Jews putting him forward. Alexander motioned with his hand, wanted to make his defense to the people but when they found out that he was a Jew, all with one voice cried out for about two hours. Great is Diana of the Ephesians. Now Alexander is Jewish and you can see the Jews disassociate him from the Christians. They wanna separate themselves but they found out that he's a Jew and when they did that, they wouldn't allow him to speak. They cried out. Notice this for almost two hours and the noise must have been incredibly deafening. Paul had made it clear that gods are not made by men but instead of listening and reasoning, they just tried to shut that thought down. Now it says in verse 35 when the city clerk had quieted the crowd, he said, men of Ephesus, what man is there who does not know that the city of Ephesians, of the Ephesians is temple guardian of the great goddess Diana and of the image which fell down from Zeus. Therefore, since these things cannot be denied, you ought to be quiet and do nothing rashly. Now he's quieting them down but he's speaking about this and I want you to notice this. And he said in verse 35, the image which fell down from Zeus. The word Zeus there can be translated from the heavens, from the heavens, from the sky. So he's saying there's an image that fell down from Zeus or from the sky. It could be saying something in response to what has been said in verse 26 when it says, Paul has persuaded and turned away many people saying that they are not gods which are made with hands. Well, this meteorite or whatever that fell out of the sky was not made by human hands and he could be saying that. And so he's saying this for sure, everybody knows how devoted we are to Diana so calm down. So it seems that he was more fair-minded and tolerant of Christians. But he goes on in verse 37 and he says in verse 37, for you have brought these men here who are neither robbers of temples nor blasphemers of your goddess. So he's now reasoning, why are you reacting so violently towards them? They've done nothing other than disagree verbally with your beliefs. They're not robbing your temples nor are they speaking directly against your goddess. They are opposing your religious belief and the reasoning against it. And there's no evidence that they have blasphemed her nor is there evidence that they've insulted you on purpose or attempted to hurt you in a personal way hurt your feelings if you will. What they have done is they have expressed their disagreement with what you believe. And the fact is it's not a crime to disagree with you. There is no crime in attempting to reason and persuade the people to reject idolatry. It's not their fault that you decided to react in this way. So this shows us that we should use scripture and reason when opposing. We should think through why we reject something and give biblical reasons why. It's like what it says in 1 Peter 3.15, in your heart's revere crisis, Lord, always be prepared to give an answer to everyone who asks you to give the reason for the hope that you have. Do this with gentleness and respect. Listen, when you're in a dispute with somebody concerning faith and you may disagree with what they believe, it is never really a good idea to insult them. It's not a good idea to put down their belief. It's just not a good idea to attack them personally. Before I got saved, I had a friend who had started going to church at a Calvary Chapel professing himself to become a Christian. And he would talk to me on occasion and he would intentionally put down what he knew I had been taught and believed. He would argue with me and I was raised Catholic. So he would say things to me that made me angry not because what he was saying wasn't true, but because I took it as a personal attack. And sometimes when we who are so fervent and we want people to know the freedom of Christ, when we're trying to share with people, we may make the mistake of attacking their personal faith in a way that makes them defensive even if they're not practicing that. It's what they've been taught. And I had a friend who would do that with me and me, I was a doper. I was a drunk. I was everything that goes along with that. I didn't go to church. I didn't have any of that in me, but I did have the training that I had embraced that someday I thought I would actually practice. And so when that was being said to me and instead of sharing with me about the love of God, the grace of God, the things that Jesus did, things that I could listen to, unfortunately on occasion, he would say things that made me defend my faith. And it's just not a wise thing to do. It's not a wise thing to do. Because it got me into argument mode. I had a cousin, his name was Carlos. Carlitos, he called him. And he was raised Jehovah's Witness. And I was raised Catholic. And we would argue, we were cousins, we would argue. And I still remember the last argument I had with them. I was still practicing Catholic. He was a Jehovah's Witness. And we were smoking marijuana together, arguing about which religion was the truth. So, some of you know what I mean.  Before you know it, you're a real strong Catholic. You don't go to church, except Christmas and Easter, weddings, funerals, things like that. You don't practice. But if somebody's putting what your faith is and my grandmother taught this and would be, see my family has a long history of Catholic, it's a long history of my, my great-uncle was an archbishop in Jalisco.  And so, that was our tradition. And so what? You're gonna tell, so you just don't do that. You just talk about the grace and the goodness of God. And you speak the truth at love. And you do so because you want them to be set free. And we do it with gentleness. And we do it with respect. And that's how it ought to be done. But today people just seem to think that you need to argue about every single thing, all the time. You see, what Demetrius is doing at this time, we can see it in modern terms, is he's objecting to Christian hate speech. They reject it, what's being said. And they tried to get them to stop speaking. And part of their tactics is shouting down opposing views. And those tactics are utilized today. They're utilized in school board meetings. They're utilized on college campuses when people like Charlie Kirk and others will go and they'll want to engage people in conversation.  They're just trying to get them to be quiet. I see so much of that today. They're just using these tactics as yelling, yelling. That's what they did for two hours. They were yelling and yelling and yelling. And all of that, they're just trying to disrupt or like with Riley Gaines who opposes men swimming in women's events, opposes men being in competition, athletic competition, posing as women like we just saw this this last week where a guy playing on a woman's team and he's got facial hair and he injured a little girl playing basketball and people are quiet. I think the church needs to speak up about those things but it's not hate speech to point out the obvious. It's wrong. I have granddaughters, I have daughters. I don't want some big hairy guy knocking around on a court. I don't want them walking into the bathroom and I don't want them walking into the woman's locker room. They have no place in that and we ought to speak up and say that. There's no problem with that. It's true. It's just true. We're just, it's just the truth. But then you're a hater, right? You know, you bigot. No, I'm just saying and you're not.  We just need to speak. We need to speak the truth and we need to be careful not to be shouted down. We need to be willing to put our faith on the line but we do it with gentleness and respect. And though inside there may be a blast furnace of emotion, we have to harness that in order that we can speak reasonably because the world thinks and it does and it doesn't successfully. If there's two or three people who agree on the same thing and you're the one who doesn't agree, you've got to be wrong because we've got a majority here and in fact all three are wrong and there's only one truth. But we need to learn to do that. Demetrius and these others are using their tactics to shut down opposing views. It wasn't a crime for Paul to preach about being free of idolatry. Paul was giving them an opportunity to receive the gift of eternal life. It's interesting how in verse 37, he says, you have brought these men here who are neither robbers of temples nor blasphemers of your goddess. This can speak of impartial judgment on his part or even that he doesn't share their beliefs. But in verse 38, if Demetrius and his fellow craftsmen have a case against anyone, the courts are open, there are pro-consuls that them bring charges against one another. But if you have any other inquiry to make, it shall be determined in the lawful assembly for we are in danger of being called in question for today's uproar. There be no reason which we may give to account for this disorderly gathering. And when he had said these things, he dismissed the assembly. Let's close with a couple of thoughts. Verse 38 and 39, if you have a case, bring it before the judges, let them deal with it. Each of you will have the opportunity to present your case. But if you have any other inquiry to make, if you believe your case demands a more serious consideration, we'll take it to them. It is before the higher assembly that you should go for redress. You see, we're in danger of being called in question for today's uproar. If this takes place, Demetrius, you and your families will stand in question. You can be charged with inciting a riot. I need to ask you, is it worth it? Now, how serious is this? See, you're reading this, but how did Paul experience this? One of the great things about being able to cross-reference is Paul actually speaks about this when he wrote to the Corinthians in 2 Corinthians 1, 8 through 10. Now, close with this. He said, we do not, 2 Corinthians 1, 8 through 10, we do not want you to be uninformed brothers and sisters about the troubles we experience in the province of Asia, he's speaking of Ephesus. We were under great pressure, far beyond our ability to endure, so that we, the spirit of life itself, indeed, we felt we had received the sentence of death. But this happened, that we might not rely on ourselves, but on God who raises the dead. He has delivered us from such a deadly peril. He will deliver us again. On him we have set our hope that he will continue to deliver us. How did we feel?   We thought it was all over. It was a trouble that we were experiencing that was beyond our ability to endure we disparate even of life. But God showed us something. God showed us that he will deliver us. God showed us that he has delivered us. And God showed us that he'll deliver us in the future. He has, he will, and he will continue to. That we need to understand today. That we need to understand today. He has, he will, and he continues to do so. And you can despair even of life. You can be part of a situation where you're greatly concerned even in the midst of people being angry and all to the point where you could say, my goodness, Lord, am I about to go home right now? Paul was in that. Again, you're talking about thousands of voices screaming and anger people saying, don't go into that theater. It's filled with 25,000 angry people.  Don't, we despair of life. You Corinthians know that. But God showed us something. He delivered us. He will deliver us.  And should I not be delivered? What's the price? Very little compared to what I gained because I close my eyes here, but I open them there. And I get to hear the well done, my good, my faithful servant. So my God is able and he continues to do so. How did he feel at that time?  And God worked on our behalf. And I think I could ask people in this room, have there been times when you were thinking it's all over? And then God showed up and delivered you. What a blessing to know that he's delivered us in the past. What a blessing it is to know he delivers us now. And what a blessing it is to know that he will deliver us in the future because that's the God that we serve. That Paul in his ministry has reminded us, serve him and watch what he could do in your life and speak the truth in love to a world that is rioting against God himself. Speak the truth, don't be afraid, trust the Lord and see what God will do.