Alright, let's get this started. My name is Joe Thompson, and today I'm asking you to stop writing operators. Relax, what I really mean is stop writing operators by default for managing Kubernetes apps. Now, of course, when I say something like that, naturally people wonder, who's this guy? Although some people use a different word than guy. And why do I care what he thinks about operators? As a roundabout answer to that question, here's some basic info on me, and that QR code has my contact info embedded in it as well. In a nutshell, I've been involved in somewhere or another with Kubernetes since 2015. I've worked at Red Hat, CoreOS, Capital One, and Mesosphere, and I'm currently a solutions engineer for HashiCorp. But before I got involved with Kubernetes, I was a system administrator and IT consultant for about 15 years of my 20 and IT up to that point. In short, I've been around long enough to see some operational patterns emerge multiple times. And a quick note, it looks like I'm not the only one who thinks the operator pattern may be getting a little overused right at this point. I submitted this talk this past July. In September, Devon Goodwin at Red Hat wrote a blog post called When Not to Write a Kubernetes Operator. Then later that same month, the new stack published an article titled Kubernetes When to Use and When to Avoid the Operator Pattern, which extensively quoted several people about why writing an operator is more of a last resort than a preferred solution, and what distinguishes operators from other things. And then a week after the new stack article, I got the notice that this talk was accepted for KubeCon. To paraphrase the term William Gibson used about the invention of the steam engine, suddenly it seems to be operator skepticism time. And result, I'm recording this talk in October with a lot less apprehension than I had when submitting it, because nothing cures your imposter syndrome about something in Kubernetes, like finding out the co-founder of Rancher agrees with you. So you're writing or adopting an app to deploy in Kubernetes, and you need to have some way to manage its operation. This is where a lot of people start asking themselves questions about operators like, what functions should my operator perform? What API permissions will my operator need to perform those functions? What framework should I write my operator in? I would like to ask you any time the concept of an operator comes up from now on to ask yourself these questions first. Should this operator be written at all? And should I write it? The rest of this talk is going to sound really dogmatic. First of all, if nobody leaves here thinking I'm completely wrong about something I said, then I'll feel like I didn't challenge the status quo enough. But even though I phrased things very emphatically here, I understand there are cases where people will write operators I think are unnecessary. For what might be good and sufficient reasons if somebody sat down and said, look Joe, we had to write one because A, B, and C. Or maybe just because your boss said write it or you're fired. Although if they did that, I hope you send an emergency signal on your communicator and we can beam down and rescue you. I don't want anybody to leave thinking I'm saying the operator pattern is garbage or anything like that. I actually think exactly the opposite. It's a highly useful pattern in the right circumstances. But you can have too much of a good thing or have a good thing where it doesn't fit. Now let's start by distinguishing between an operator and things that are not operators. Back in 2016, CoroS put up a blog post introducing what they called the operator pattern. By which they meant, and I'm quoting here, application-specific operational knowledge encoded into software that leverages the powerful Kubernetes abstractions to run and manage the application correctly. CoroS applied this concept specifically to stateful apps because those are the ones that typically need this kind of hand holding through their life cycle. I want to really grind this axe for a few seconds because I've had conversations with people where they talk about wanting to write an operator for something I don't think needs one. And when I dig a little bit, they're using operator to mean any controller. Prior to operators, there was already a concept of domain-specific management of apps using extensions to the Kubernetes API called a custom resource controller. Now some of what I'm saying in this talk will indeed apply to stateless CRD controllers as well. But mostly I'm going to be talking about stateful application operators and what a quagmire they can be. So I wanted to try to reset the conversation for an instant and bring some focus back to a useful distinction that's starting to fade a bit, but is very relevant here. So first question, should an operator for a given application exist? I think in several cases it shouldn't. The mental model I use to think about these cases is operators are sort of like an adapter that you use to plug old VGA displays into new monitors that only have digital inputs. Sure it works, but it's not as efficient or functional as it could be.  And I'll be up front here and say I have a bit of a professional bias against the whole idea of a dedicated manager process like an operator. Not things like cluster leader nodes, but components that don't serve workloads directly at all and are there strictly as things like install managers. It's a common model and there are places where it makes sense or is necessary for practical reasons, but I always prefer to have my resources available to benefit my workloads rather than reserve for managing them. Now when do you not want an operator? There are basically three sets of circumstances worth talking about here. Case one, there's no state that needs managing. Either the app is not stateful or everything stateful about it can be properly managed without outside intervention using the available Kubernetes primitives. There's really nothing for an operator to do here. You might go ahead and write a CRD for it to make everybody's life easier, but Kubernetes and the app together can handle everything that needs handling. You might not even need a CRD controller, just a well-written Helm chart. It's a judgment call there, it's really up to you. But there's a retrospective case that's worth mentioning, which I'll go into later and it has to do with that clause I snuck in there about available Kubernetes primitives. So you may in fact end up writing an operator with my approval here. And really, isn't that the only approval that matters? Next time you want to write some code and your scrum product owner says no, tell them I said it's okay. Case number two, the app has complex functional needs related to statefulness and you maintain it. In this case, creating an operator is a needless and I think a harmful abstraction. Your app knows and can act on its own state better than anything outside it can. If you maintain the app and it needs to grow new capabilities to deploy on a platform like Kubernetes, then by all means give it those capabilities. But do it directly, build that code into your app. Splitting it out into an operator is just making life difficult for yourself as a developer, as well as for anybody that has to actually run and manage your app. Fundamentally, it's one more thing that can fail. Some people would say, well, this is just a component of my app. It's a microservice. But I think there's an important distinction between operators as usually conceived and microservices. You can pick any of various technical definitions, but the basic idea is that microservices typically are discrete components that interact using standard interfaces. The internal details of microservices aren't relevant to each other. This is a useful abstraction. As long as the microservice I'm talking to is talking back to me using an API I understand and performing the functions I ask it to perform, I don't care what its internal state is or how it performs its functions. Loose coupling is part of the point of microservices to begin with. Operators break that abstraction wall down and tighten that coupling. There's also another aspect to consider, security. And this applies to any CRD controller, whether it's an operator or not. Controllers need API permissions to do what they do, which my friend and former co-worker Eric Chang pointed out back in January means if you have to pass a security audit at some point, you just made your life that much harder with every CRD controller you use. And even if there's no auditor looking over your shoulder, you still have that much more attack surface to worry about. If you're writing the app, you have the latitude to eliminate or at least minimize that attack surface. That leaves everything else. The app is stateful with complex functional needs related to its statefulness. You don't maintain it and none of the available alternatives for managing it inside or outside Kubernetes are viable. But before you jump on this, let's look at what some of those alternatives are. Okay, what can you do instead of writing an operator to make managing your application deployments easier? Well, trivially, you can write a CRD controller. Remember, a basic CRD controller doesn't try to manage anything statefully. That alone eliminates a lot of destructive failure modes. But as noted, a lot of the above advice applies equally well to CRD controllers. So saying write one of those instead isn't where I want to stop this section because it doesn't address most of those things. Probably the most effective option in a lot of cases is the default, nothing. Don't write anything or at any rate, if you have to write something, write as little as possible. This would be the case, for example, if what you're dealing with is a bunch of one-off issues that you never see twice, or if what you have is so lightly touched that it would take longer to automate its operations than to just do them. There's an XKCD cartoon for everything in tech, and this is a great one to keep on my wall that details this in chart form. If you expect to have to do something once in two years, and it takes you 10 minutes to do, it's probably not worth spending a week to automate it and test the automation unless you're compounding the time savings over an extraordinarily long lifetime. And consider, all code is a liability. It has to be written, it has to be tested, it has to be maintained, it can have bugs, and those bugs can lose your data, or worse, compromise other people's. If what you're automating is a routine change, a popular model for Kubernetes change management is the GitOps model. This was first described in detail by Weaveworks. You manage your cluster by applying an as-code model to it and to everything running in it. In a cluster external development environment. In the most trivial case, this could be just writing a Helm chart or other templated artifact to deploy and maintain your app. Then maintaining and using that as part of your CICD workflow. You can add layers of other management as well. For example, using Terraform to manage both the deployment of your Helm charts and changes to the clusters you deploy them on.  You're still instantiated, essentially, as management by static artifacts, rather than live code. There are now several frameworks that take a no-code approach to writing operators, like Kudu. Generally, these are some kind of top-level controller that implements operator primitives. In that sense, it's the actual operator rather than the code you write. Then you write a config file of some kind to implement your specific application operations. These may be a happy medium for you, a sort of operator-light option that lets you farm out the hard parts of writing an operator to people who've made that their actual job. Just make sure the primitives you need are all there before you start. You can also have a live management process of some kind running outside the cluster. At first glance, this sounds like just writing an operator in a different place, but there are real problems with end cluster operators that this solves. One of the issues I mentioned with Kubernetes operators is, since they're running inside Kubernetes, they take resources away from other workloads in the cluster, but they're also limited themselves by the cluster's total resource availability and by the inherent scale limitations in representing things as CRDs and storing them in LCD. You can end up needing to scale up your cluster not to handle additional workloads, but just to give your application operator breathing room. Move that operator outside and not only are you no longer limited by running in the Kubernetes cluster, you now gain some additional flexibility in your manager. The one caveat is that now you've got something outside the cluster that needs to have credentials of some sort to authenticate to it. So you have to take due care with how you handle those credentials and that authentication. Alright, we've talked about when an operator isn't needed and what you can do instead. When is one needed, I hear you asking? Two primary cases. Case number one, when you don't maintain a stateful app and you have to manage its statefulness on its own behalf inside Kubernetes. Not the ideal situation to be sure, but sometimes you just got to do the thing. Get real familiar with whatever system the app maintainers use to raise issues because you'll be using it in proportion to how complex the app is to manage. In fact, if you just need one or two state handling features, you should try to engage the maintainers and see if they're receptive to adding them in the app. It may turn out that they can do that for their own code faster than you can write an operator for someone else's. Case number two, when you do maintain a stateful app and you want to either start taking advantage of Kubernetes features that are in development but not released yet or you need to backport an app to versions of Kubernetes that don't have some statefulness management it needs. In these cases, the operator is a temporary shim that you're using to match up what your app wants with what the targeted versions of Kubernetes can do and you expect to discard it piece by piece and eventually entirely when you no longer need that support. Okay, you had the meeting or you cashed in your write one operator card or whatever and the answer to the first question is yes, we need an operator. Okay, get to work. No, no, wait a second. Remember there's still one question you need to answer. Should I write this operator? And I mean that not just in the sense of you the individual contributor but more broadly your entire organization. If you're just bound to do it, I can't stop you but I want you to go into it with the idea in your head that I mentioned earlier that all code is a liability. Okay, let's talk about why you shouldn't write an operator or possibly even some non-operator automation that needs writing. Reason number one, you don't have a good grasp of the operational need. That's a really abstract statement so let me put it in heuristic terms. You should not write an operator to handle operations that you haven't spent at least as long recovering from failure or absence of as you realistically estimate it would take to write and thoroughly test the operator for and be very, very liberal with that coding time estimate. Why do I say to measure time recovering from failures specifically? Primarily because failure is where we learn what not to do and that's one of the most important things to know when automating anything. It's where the smooth surface of a third party app that you can't see inside of has cracks and through the cracks you can see a little of what made them and maybe how to keep your automation from falling into them. It's also where you find out what the failure modes of your own apps are in complex, unanticipated real world conditions. Bugs can be destructive and one of the most destructive things to have is a bug in is automated management. One of the best illustrations of how hard this part of operators is ironically is the XCD operator CoreOS wrote to introduce the concept. It turned out that running XCD in Kubernetes in an automated fashion was so complex and had so many hard to anticipate and hard to recover failure modes that one of the hope for goals of the XCD operator to make XCD in the Kubernetes control plane totally self-hosted was abandoned. Eventually the operator itself was abandoned by CoreOS as well. This is a floor, not a ceiling by the way. I'm not saying when you hit that break even point, it's time to fire up your code editor and get to work and if you get there and you realize you don't feel comfortable with your understanding of something in the app's behavior, of course I say you definitely should not write that operator. Somebody out there is thinking but I have these rune team tasks that I need to automate. I don't spend a lot of time recovering from failure of them, but I do spend a lot of time doing them. Shouldn't I automate that with an operator? I'm not saying you shouldn't ever do that, but I think if that's all you're doing, you shouldn't automatically look to an operator as the default way to do it. The other options I covered earlier often work better for routine changes like that. Reason number two, you shouldn't write a needed operator. The app itself is not stable in a compatibility sense. Operators are not something you want to be writing for 0.x versions of things with no forward compatibility promises. You can end up in a situation where you have to update your operator every time the application updates, and that's less useful than just adding the code into the application itself and maintaining it there. It might be a third party application that you can't just do that with, and we'll talk about that in a minute, but in general, avoid, avoid, avoid writing operators for non-stable apps. This is a minimum, not a maximum again. If that app is at 1.x, it doesn't mean it's actually stable because not everybody out there is following this number, and not everybody who claims to be actually is. Trust your gut and take anything that looks like a compatibility violation seriously when deciding how you feel about it. Reason number three for you not to write code that needs writing. It's someone else's app and you haven't engaged with the team that maintains it yet. The app maintainer will generally know best what the dependencies involving that app's statefulness are, and this is critical information you need to write an operator well. You may also find out there's either one already in progress or there are features coming that eliminate the need for an operator entirely, in which case your best move may be to sit tight, stay engaged with the process on that code, and wait for that release. Again, as noted above, you may end up forced into writing an operator in any of these situations by circumstance, but they're all to be avoided whenever possible. Let's say you've looked at all the reasons not to write an operator and all the things you can do besides write an operator and you still need to or just want to for whatever reason write one. What does the landscape look like and what should you do when you write it? The first thing you need is a good understanding of CRDs and controllers and to have a look around at the operator building landscape. The Kubernetes documentation has lots of good info on this and even links to some frameworks for building your operator. The ancestral custom controller frameworks are KubeBuilder and Metacontroller. More recently, operator framework and Kudu have arrived on the scene to some considerable fanfare, and there are other frameworks both older and newer that you can look at. I'm not going to try to give you a flow chart of which framework to choose or none based on criteria A, B, and C, but I will offer some general guidelines for evaluating any framework for fit. Does the framework allow you to write in a language you know well? It would be very skeptical of trying to get started on both a language and a framework at the same time. The tools you know best will tend to be the tools you do your best work with in most circumstances. Many frameworks require you to write in Go, and if you don't have a lot of Go expertise, that's a recipe for bugs and extra stress. Does the frameworks model of the world make sense to you and fit in with the rest of your operations? For example, Metacontroller is a little unusual in that it has you write your custom code as web hooks it can call. If this is how you already do everything, or it feels right to you and doesn't conflict with other requirements, great, Metacontroller may be a good choice. If not, things may change later, and another operator you write may be a perfect fit for Metacontroller then. Are there ecosystem services the framework's maintainer provides around it that you want to take advantage of? For example, consider the Operator Framework operator hub.io here. Although strictly speaking, you don't have to write your operator in the Operator SDK to get listed on the hub. Doing so does make passing the criteria for getting listed basically automatic. If you want to provide an operator for your application to the public easily, these kinds of services may make a difference to you in choosing which framework to write it in. Lastly, when it comes to actually sitting down and writing your operator, I want you to keep three things in mind. Maintain loose coupling. You should not need to update your operator for every update of the application it manages. It's fine if the app gains major new features that need to be managed in the operator, but there should not be a routine need to update the operator as part of an app upgrade. Less is more. This is what, the third or fourth time I've said you should write no code whenever possible? That's because I really, really mean that. Not only should you seek to write a little code in the operator as possible, you should actively push code out of it whenever you can, either in favor of leveraging new features in Kubernetes that make it unnecessary, or into the operator managed app. Write what you know. It's not just good advice for novelists. It's good for programmers too. This means not only writing in a language and framework that are familiar and understandable to you. It means beginning with automating the processes you understand the best and have the biggest impact. As you work out these cases, you'll learn the application's behavior better and you can add other, lesser used operations more confidently. But don't forget what I said in the last point. Only write what you need to in the operator. This slide has references and further reading. I know you can't click on the links in video, but don't worry, there will be a link to these slides coming up. And with that, thank you very much. This is the link I promised or you can scan that handy QR code right there. And I believe we now have some time for Q&A if anyone has questions.


Flamingos are the mean girls of the animal kingdom. They pretty much act just like high school kids. Scientists have been studying flamingos and it turns out they love to roll with a click and only gravitate towards birds with similar personalities. There's the introverts, the aggressive ones, and the plastics. They can't sleep with us!  And this new finding just might be the key we need to improve the welfare of animals and captivity.


This paper investigates the problem of energy consumption prediction in public buildings. It uses data from a university campus to test two different models, non-linear autoregressive, NR, and non-linear autoregressive neural networks, NRX. The results show that both models can be used to accurately predict future energy consumption, however, adding exogenous data can further improve the accuracy of the model. This article was authored by Luis Gonzaga Baca Ruiz, Manuel Pagallajar Cuellar, Miguel Delgado Calvo Flores, and others.


Hello everybody! Watch this video to find out how to install or upgrade to Windows 11, how to install the operating system without a TPM module and secure bread option, and what to do if the installer says your computer doesn't meet the minimum requirements. Hello friends! If you need to recover deleted data, view or restore removed browser history. Hetman Software products will help you. Follow the link in the description, download the necessary program for free, install it and analyze the disk. The utility will show you the data you can recover, so you will be able to view it or get it back. In our channel and blog you will find solutions to any problem, from installing an operating system or configuring it to fixing possible bugs and errors or optimizing mobile gadgets. Our specialists will answer any questions you ask in your comments under the videos or articles. The first build of Windows 11 is already available to members of the Windows Insider program. However, most computers fail to meet the minimum requirement for the operating system as they like the TPM, trusted platform model compliant. This model is used for data encryption, user authentication, hardware antivirus protection and so on. Most likely, Windows 11 uses the TPM features to encrypt the computer's hard disk and protect your data reliably against unauthorized access. If you are thinking about installing Windows 11 on your computer, keep that in mind. When you try installing Windows 11 to a computer without TPM version 2.0, you will see this error message saying, this PC can't run Windows 11. But even if you got this error, don't worry, I'm going to show you a workaround that disables the TPM and Secure Boot Check. Let's start with the simplest things. For the first method, you will only need an ISO image on Windows 11. We are going to disable the TPM and Secure Boot Check in the registry before actually starting the installation from the pre-installation environment. Modern versions of Windows usually boot a minimal version of the operating system known as Windows pre-installation environment. It loads a set of drivers required for a particular computer and then launches the main installer. At this stage of installation, you can edit the registry so that the installer will never check the computer for TPM and secure boot. Here is how you can do it. Make sure you have an empty drive to install the operating system. Select your computer from a Windows 11 bootable pad drive. You should have no difficulties in finding an ISO image on this operating system on the Internet. If necessary, you can watch a video on how to create a bootable pad drive with Windows 10. The steps are absolutely the same, and the only difference in your case would be the ISO image name. Output the link in the description below. When the pad drive is ready, you have to add a rag file which is supposed to disable the TPM check. Right-click on your desktop and create a new text document. Name it as you like, and then open the document. Type this code. This rag file is used to add to the registry the keys which help you pass the TPM 2.0 and secure boot check. After that, you'll be able to continue with installing your Windows as if nothing happened. Save the document, and then change its extension from TXT to REG. The file extensions are not shown. Open the File Explorer. Click on the View tab and check the box next to File Name Extensions. And then all extensions will become visible. The reg file you have just created should be copied to your bootable pad drive containing Windows 11. And you can copy it right to the root folder. At this stage, after booting from the installation USB drive, press the key shortcut Shift-F10 to start the command prompt. One more thing you will need is to start the Notepad application. Do it with a simple command Notepad, and the program window will open immediately. Click File. Open. Select all files in the File Type menu, and then give the pass to the rag file which is on your USB drive. Right-click on it and select Merge. In the warning window, click Yes, and then OK. After that, close the Notepad window, the command prompt window, and go on with the installation. Also, this can be done manually and without creating a separate rag file. In the command prompt, type rag-edit to open the registry. Then follow this path – H key, Lock on Machines, System, Setup. Click on the Setup folder, New Key, and give it the name LabConfig. Open this key, and on the right side of the window, right-click to select New, Deword Value, and name it as Bypass TPM Check. Open it and set the value data to 1. Then click OK. Create another value with the name Bypass SecureBootCheck, change its value data to 1, and click OK. Now close the registry and continue with the installation. Click Next, and then Install Now. After that, a standard Windows installation process begins, and it looks the same as if you were installing Windows 10. This is when you are asked to enter a product key and activate your Windows. If you have no key to use, click I don't have a product key. Select the operating system version, and click Next. Accept the license agreement. In the next video, select the installation time. Choose the disk where to install Windows and click Next. The installation process starts. When it's over, reboot the computer. After that, settings will be applied and the installation is finalized. Select your region, country, and preferred keyboard layout. If necessary, you can add more layouts later. Now, wait a bit while the operating system is checking for updates. At this stage, select the configuration to be applied to your device. It's either for personal use or for work in school. If you already have a Microsoft account, sign in. If you don't, it's a good chance to finally create one. Otherwise, select Sign in options below, click on Offline account, and skip for now. Then type the username and the password, and then click Next. Then the operating system will finish with the settings and boot. This is the last step of the installation process. If you are trying to upgrade to Windows 11 from the company Windows 10 that you are already using, and you get an incompatibility warning, there is one final to be replaced in the ISO image. To have things done, you need a Windows 10 image first. Open the bootable drive with Windows 11 that you have previously created, and open the sources folder. Open a folder with the same name in your Windows 10 image. For your convenience, it is better to have it opened in a new window. Copy a DLL file with the name appraisers.dll to the source folder in your Windows 11 image, and agree to replace the previous version of the file. After the replacement, run setup.exe and upgrade your Windows safely. If you did everything right, your upgrade to Windows 11 will run smoothly without having to check your PC for TPM and secure boot. And that is all for now. Hopefully, this video was useful. Remember to click the Like button and subscribe to our channel. Push the bell button to receive notifications and never miss new videos. Leave comments to ask questions. Thank you for watching. Good luck.


The contemporary issues on racism are no different to the historic issues, in the sense that racism as a system is designed to make certain people, those it is directed towards, to be less human. Racism is a system that invests in itself and in its own reproduction. So one is up against those very entrenched interests in maintaining the status quo. Its form has changed. It's not as overt as it used to be. It's more entrenched in the kinds of day-to-day culture and practices. We can all sit at the table. The fact that we are all seated at the table shows that there is equality. However, at that very table, there are some voices that tend to be more acknowledged and louder than others. We must revisit some of our discourses and the assumptions that underlie our anti-racism work. Give more voice, give skills, give opportunities, but eliminate the barriers that create and foster racism. So I think the voices that need to be heard the most when it comes to racial discrimination or any kind of anti-racism work are the people who are experiencing the oppression. Young people in particular need to be heard. Women, particularly women in rural areas, women in informal communities. But on the whole, I think it's a country that's crying out. There's a cry by all citizens to be heard. The biggest tool that young people have are the access to the networks that we have built. Young people are ahead of the older generations and they have a much greater sense of why it matters and how they fit into these issues. Equitable representation needs to be something that is non-negotiable. It matters that we have diverse groups of people who are deliberating and making decisions that are affecting people. I think South Africa is a very different place compared to what it was in the 1990s. I don't think it's anywhere near what we had hoped it to be. I fight racism because racism is the antithesis to equality and equity. Because my own humanities at stake. Because it's the only way to ensure a better future for all. It is an unjust reality that nobody deserves to live through. And fundamentally robs us of our full human potential.


Marco, a disappointing result today. Yeah, very much so. We got punished for a slow start, simple as that. What did you make of the performance after that? Very good. You know, we had two unbelievable chances. One on one with the keeper. And we didn't take either one of those. So it's certainly a game that, you know, I didn't think they were better than us, that's for sure. Missed opportunities, slow start. One goal in four now, struggling to score. Concern or because you had those good opportunities today, it's not a huge worry. One goal in four. Where'd you get that step from? Is that right? Is that wrong? No, it's wrong. But anyway, yeah, it's not a concern, mate. Injuries today? Any injuries? I haven't been with the medical team yet, so I don't know. How do you feel? Are you pleased for Brisbane next week? It'll be okay, you know. It's an opportunity to turn things around from today. There's a lack of intensity. As far as I was concerned, which shocked me the most, you know, we've got a very strong culture that we've created. And the intensity wasn't there for whatever reason, but we need to understand why that is. Still sitting second in the table. How tight is this competition at the moment? Yeah, I don't look at the table. Certainly not at this time of the season. Irrespective of where we are on it, for me it's about the process and continuing to build week in, week out and improve. So it wouldn't bother me where we're sitting right now. It's very early still in the season as far as I'm concerned.  What did you make of what happened there? I wasn't here last night. What did you make of it? I've been away. I won't be coming home last night. It's got nothing to do with today's game. I think enough people have had enough to say about it. Okay, thanks.


is waiting for the manifestation of the sons and the daughters of God.  We're here on Hope Today. I'm Amy Schaefer here with Jay and Boy Jay. The world is waiting to hear what you have to say and this topic and guests. Yeah, I'm real excited, ladies and gentlemen. Listen, ladies, get all the men together.  Bring them all together because we have Mark Cook in the house and he's got a phenomenal book called The First Hour.  Men are truly important to set the standard. I would say like this, Pastor Amy, that men are the thermometers, I'm sorry, the thermostats and women are the thermometers. And also men are the head, but the woman is the neck. That's right. I mean, we can go on and on for days. Men are for Mars, women are for Venus, but I know one thing for sure is that there is no woman that does not want her man to be a mighty man of God leading the family, leading in the home, leading the marriage, leading in the church. So today it's a great word, not only for the men but also for the women. And even maybe what is our part in that story? Yeah, for sure. And you know, masculinity is under attack in a way that it never has been before. And it's so important that men rise up, you know? One of my favorite friends, Neil Kennedy, who's been on this show several times, he's been to our church. He is a phenomenal guy that just really empowers men. And we need to see men.  Men need to set the tone. And that's what the first I was all about. So it's gonna be good. Oh, it's gonna be good. And here to represent is Moa in pink and Pastor Jay in blue. No, we did not plan it, but we are ready for Stump the Host. Pester Jay, I can't believe they're trying to stump us. Here we go. What did Moses throw into the bitter water to make it fit to drink? The bitter waters of Mariah. Do you remember that? I just read this. A stick. A stick. Yeah. No, not as right, just a stick. Stick. Yeah. Stick, final answer. Yay! Yes, yes, yes. A piece of wood from Exodus 15, 25. I need more makeup after this, I'm sweating already. Which king had Daniel put into the den of lions? Darius. I think you may be right. I'm gonna say final answer. King Darius. Woo! Ah! You representin', you might've stopped me on that one, I'm not even sure. That's good. Okay, there's a lot of kings in the Bible. I'll just say that. Okay, last question. Which of the Gospels traces Jesus' family all the way back to Adam? Matthew. Matthew. Yeah, I wanna say Matthew. Final answer. Luke, final answer. Oh no! They said... John. Oh. Roman. Great. Luke, oh man. Luke, oh the doctor. Of course the doctor would do it. Two out of three. You know, I think they got me with that one before. You guys do that on Purpose Day. They got me with that before. We oughta have all the producers here and then we throw them the questions. You know, we should've known that one. We definitely should've known that. What's done to the producers? Well, you know what? We gonna get it next time. Two out of three though, that's better than what we've gotten in the past. We're still winning. For sure, we sure are. Well listen, we need men to win as well and we all need God in our daily lives and in order for Him to guide us and to live out the plans He has for our lives, we need to spend quality time with Him. Mark Cook is a speaker, author, and Hollywood film producer and in his book, The First Hour. He shares how we can give God an opportunity to fulfill his dreams for our lives. Mark, it's great to have you with us on Hope Today. Thank you, I'm honored to be here. Well, Mark. Thanks for staring at me in that old game in the beginning. Thank you.  We'll give you time next interview that we have with you to come on and see if they can stump you.  I mentioned this before we got on the show. And so Mark, we're gonna see what. I got two of them. I got two out of three right. Two out of three ain't bad, right, like the song. So you're right with us and we're pastors, so it's all good. It's all good. Well, hey, let's jump right into this, Mark. I'm real excited to talk about The First Hour. You know, masculinity is truly under attack in this day and in this hour. Why did God put this book into your heart and how important is it for men to lead in their families? I'll tell you, it's all. And the mission statement for this book, The First Hour, is if you heal the man, he can heal the family and the family can heal the nation. And as we all know, this world's a mess. I mean, this country's a mess and it all stems really down to fatherhood. And it's interesting that I think over 90% of all the prisoners in a federal prison, men's prison, are from fatherless homes. So it all stems from the man. And it's all about being spiritually of the house but being a great father, if fatherhood. And I had a great dad growing up and I tried to be a great dad. I wanna start out by this, it's funny, the Holy Spirit always wakes me up like at 3.30 or 4.00 a.m. Can't be at 6.30 when I'm doing my prayer time. And I get these acronyms all the time. And because we're talking about dads, the last acronym that I got was dad, D-A-D. And you know how the Holy Spirit works over and over in your mind, these thoughts. And I always write it down and he laid on my heart, there's three types of dads. And the first one, dad, okay, is drunken disorderly. And we have plenty of those. The second one is distracted. And the third one is doing above duty. And that's what I strive for and that's what us men need to strive for. And I think most of the Christian men these days fall between one and two, distracted and disengaged because they feel they don't have enough time to spend with their kids because they're providing and they feel okay, but we gotta go above duty. We need to be dads doing above duty and love on our kids, pray with our kids and become that role model for them because they watch everything we're doing. You know, Mark, I've heard you talk before and in your book you mentioned about how this book was a template that you lived. Explain to the people that are out there on how this book really isn't like a journal per se or a devotional, but it's more of a handy guide for men to have some handrails to get them along to kind of set the standard for something. Can you share a little bit about how God led you through that process and how it turned into this book here? Sure, it's a check off list. And you know, when people say speaker, author, I can definitely, yeah, so I can speak, but author I am not. And once again, the Holy Spirit woke me up one morning, 2005, so it's 18 years ago. And I was a new Christian at the time. So I was really struggling with the up, down, up, down and just seeking God. And woke up at 555 a.m. and once again over and over in my mind, get up, give me your first hour, give me 30 minutes of prayer and 30 minutes of reading my word. And that's how you know it's the Holy Spirit that Mark Cook didn't write this, because I'm thinking 30 minutes of prayer. I'm a new Christian. I'm, what am I gonna pray about for 30 minutes? And was repeating into it, and then that time to go into the whole craziness of how these prayers came about, but there's 18 prayers. And it's interesting because the first three prayers, I call them three keys to unlock powerful, effective prayer. And there's another acronym there. It's war, W-A-R, and we are in a war. In our war, Ephesians 6, 11 says, put on the full armor of God so that you will be able to stand up to everything the devil throws your way. Which to me meant, if you don't put the armor on, you won't be able to stand up. So the first three prayers in this book, the first one, W, you get up in the morning, you wash yourself with the precious blood of Jesus Christ and repent. Second prayer, A, armor up, okay? I say armor up or get slaughtered. And the third prayer is a refilling of the Holy Spirit, which equals war. Those three prayers now, not only are we righteous through Christ, first thing in the morning, but we're sinless. And approaching that throne and reaching out to God, there's something just supernatural or anointed about giving your first fruits, your first waking hour to God. And that radically changed my life. So after that real quick, I said, okay, 30 minutes of reading the word, what am I gonna do? I'm a baby Christian. And I grabbed my NIV and I said, well, there's 240 pages of the New Testament divided by 30. If I only read eight pages a day, which is only four pages, I've read the whole New Testament. So God put me through this check off with seven steps. And 30 minutes of prayer, 30 minutes of reading the word. And here's kind of funny that I said, well, there's 30 proverbs because I had time left over after reading those first eight pages. And I didn't realize there was 31 proverbs till day 30. So this was not intentional. This was inspired by the Holy Spirit. The seven steps, get up early. You have to work out, pray, read the word. But the key is you have to spend 30 minutes with your children and bedtime prayer and an hour with your wife, phones off guys and bedtime prayer. And that has been radically transforming marriages, because how do you spell love, T-I-M-E? And so many women just want their husband to man up, become that godly leader. You know, Mark, in your book here, the first hour, I think it's so vital. I think the title says it all. Men don't always realize they're called many times to lead while they're bleeding. What happens to a man when he doesn't take that time with God, if he's not initiating that time and prayer in the world? And then the word, what will happen in that family dynamic, in his dynamic, if they don't get in the habit of developing that first hour of consecration with God?  I call him Junior. And he's there to rob you of your joy. And he can't steal your joy. You gotta give it to him. And I can tell you from experience. And there's been, in the beginning, especially, there's been days that I didn't give my first hour. Didn't even give the first five minutes. And that whole day's different.  You have to lift up that shield of faith against all those fiery darts that come at you. And he's there to rob your joy. So it is imperative. You know what's interesting is that in the Bible, the only thing we're allowed to test God on is tithing. And we're supposed to tithe the first fruits of our income. I think, and I'm just saying I think, because I've had a lot of pastors get on me about this. So don't get on me, Jay. I think him being our father, that's probably just important to him that we tithe our time.  And I'll tell you, when you give God, seek ye first the King of God and all else will be added. There's not a bigger blessing in the world than joy and peace.  You can't. It's a radically transforming habit. And we got to just get its life changing. Mark, I can't think of one woman, married woman that doesn't want her man to be a great man of God and a great leader in their home and family. What do you suggest for the man that isn't stepping up or isn't taking the initiative? How can we as women gently encourage them? Well, I'll tell you, my wife, and that's one of the other reasons I knew there was a God, because we just had our 30th anniversary on January 22nd. I got that right for once. I've said it a few times on national wrong date. 30 years, she stuck with me. And my testimony, promise keepers came in and did about a four minute testimony, which is on thefirsthour.com. It's called lost in space. Well, it looks like we're experiencing some technical difficulties here. And until he comes back, I want to go back to something here. You mentioned about how important it is for- Out of a frame. Oh, are we back? The power of a frame right by Stormman and Mershin. I was a mess. I mean, I was in the Hollywood A-leaders. I wasn't a Christian. I was partying. I'd tell her I'm going out to the store and I'd come back three days later. I put my wife through turmoil, but she stuck with me. She prayed for me. So women out there, you gotta pray for your husband. You're okay. It's just acknowledgement and just respect. And you can do this. Come on, you can get together. You're encouragement. So the women, if they could just encourage their husbands and guys out there, I've, we've had, we've given away over 400,000 books. We have testimony after testimony. And a lot of them come in, women saying, my house changed. If you meant commit out there and give, start this 30 days, okay? And it's not easy.  But the women are a real, real big factor of just encouraging their husband and above all, praying for. Well, you know, Mark, I'm so glad that we had this opportunity to be able to chat with you on the first hour. Thank you so much for your time. And thank you, ladies and gentlemen, you need to go and get his book the first hour. Ladies, it's, I heard that 60% of all the people that were buying his books at one point were buying it for, but were by women and they were going to get that book for their husband. It's a phenomenal guide and blueprint to help men get on the right path.  So we are gonna be back in just a moment because we've got a scripture and some ministry for you. Stay tuned, we'll be right back right after this. Are you tired of just getting bills in your mailbox? Find inspiration instead by subscribing to the Cornerstone Television's Hope Today newsletter. Each month, we'll deliver good news about what God is doing in our region and world through CTVN's ministry. We'll keep you in the know about our latest special programming and our full program guide will keep you connected to all your favorites. You'll also find a new Dashing Dish recipe every month. As you read our Hope Today newsletter, stay encouraged knowing your generosity and giving to CTVN is making a difference and building God's kingdom. We can't do it without you. Sign up today to receive your inspirational, free Hope Today newsletter every month in your mailbox. Go to our website at ctvn.org slash news or call us at<PHONE_NUMBER>. Thank you for being a part of our Cornerstone Television family. Hope happens here. Hope does happen here and we all have hope no matter male, female, whatever situation you're in, we all have hope because the word of God is the truth and we always can find the victory and hope in the scripture. Let's go to Psalm one versus one through three. Blessed is the man who walks not in the council of the ungodly, nor stands in the path of sinners, nor sits in the seat of the scornful, but his delight is in the law of the Lord. And in his law, he meditates day and night. He shall be like a tree planted by the rivers of water that brings forth fruit in its season, whose leaf also shall not wither and whatsoever he does shall prosper. Woo, listen, if you want the victory, if you want the breakthrough in your life, just chew on that grouping of scriptures for just a while. You know, we're talking, Jay, about men leading, about strong men and this scripture specifically addresses but he who delights himself in the law of the Lord.  Like he said, I just have a checklist in this book of what to do. This scripture to me is a checklist. Okay, delight in the law of the Lord. Don't walk in the council of the ungodly. Then you'll be like a tree. It's just a checklist of what we can do to find the victory, to find the freedom, to walk in the fullness of it. Then your life's gonna overflow if you do these things. So I think it's a great checkup today. Like what is my life producing? Yeah.  Well, you know, when you mentioned that scripture said bless this man that walketh not in the council of the ungodly, nor standeth in the way of the sinners, nor siteth in the seat of the scornful. So you gotta ask yourself, are you sitting or are you planted? Ooh. There's a difference between the two. One is planted in the word of God. The other one is sitting in things that they shouldn't be sitting in. So when you're sitting, you're not producing in your life. You know, stinking about your husband, a great man of God, how important is, I mean, you've raised your kids, or you have one more, I think they're still graduating, correct? But all of them are serving God. What, well, how important was it for a pastor buck to set the tone? Because the men are the seed bears. And that's why I tell women real quickly. That's why I tell women all the time. Before you get married, always inspect a man's seed because you can only multiply what he initiates. No matter how much you want, you can pray, you can fast, you can do all that. But if that man does not set the tone in that family, nothing happens in the family until the man initiates it. Not that you can't pray for him or anything along that line, but man, it is so important. How important was it for pastor buck to set the tone in your family? Well, here's the deal. Before we even got married, I myself was such a strong woman. I mean, I knew, yes, I knew. I knew I have to marry somebody stronger than me or I will lead them. I knew that. I thought I would date a guy and thought I would like roll my, I could lead this guy anywhere. I just knew he wouldn't step up to the plate. He wouldn't make the call. I would be leading the charge. And I just somehow knew. I'm not saying I had it all together. I just thought I want a man. I want a guy that's going to lead, that's going to buck the system, that's going to follow God no matter what it costs. He's going to do what's right. And it doesn't matter what the kids say or the wife says or, ah, no, I don't want it. It's like, no, this is what we're gonna, this is the direction for the money. This is the direction for the children. This is the direction for the church. And I'll tell you as a strong female woman, it just, it thrills my heart when he leads. I want him to lead. I want to put the pressure on him to lead. But here's the thing. If he steps back and doesn't lead, I'll step up to the plate, you know? And I think that that's so interesting. I don't think it has to be quiet, wife, just no voice, no platform, no vision. No, no, we are co-laborers together in this thing. So I think it's strong man, strong woman, strong children, strong families. You know, Jay, our family dinners, we literally need cameras in the room. The conversation is so spirited. It is so feisty. It's so vigorous. I can't explain it, but we bring it all to the table. And we're challenging dating life. We're challenging what the Bible says. We're challenging how dad dealt with this. We're challenging how mom said this. I mean, we're, it's invigorating. And I thought, you know what?  And I think that is what a strong male leader does. He doesn't oppress the family. He lists the family by following God. I have a follow-up question, ladies and gentlemen, for Pastor Amy here. Strong woman, I see all of that. He's a strong man. What do you say to strong women that are out there when a man is trying to lead? How does she still keep her strength but still use that cuss word submit at times she needs to honor that man? What would you say to strong women that are out there that have a strong man in their life that are trying to lead? I would say it's really scary if you're not working together that you submit therefore one to another. Here's the deal. If he makes all the decisions, he's gonna make a mistake. If you make all the decisions, you're gonna make mistakes. Like there's an element of nobody's going to get it right 100% of the time. So it's like there's a, you wanna weigh in your voice on these subjects and really important directional things for the family.  And it's not like that. That's not the way it is in the kingdom. It's not like we talk with him. We walk with him. We work with him. We're in fellowship with him. We have trust with him. We have faith in him. So things have to be brought to a table of mutuality and mutual respect for one another. But if you, I don't know, there's a lot to be said about this. It's very multifaceted. There's the nagging one. There's the one that's always talking. There's the one that's always trying to domineer. The one that's always trying to initiate the inter- Well, I think that's the most important note for a man though. That's why I think as a man, as a husband, my wife is a very strong widow. I tell her, she may be tiny, but she doesn't get it twisted. She will ride, and I'm glad that I have that. I want a woman like that in the foxhole with me. But it takes a secure man that can look at his wife and say, baby, you're right. You know, and there's plenty of times I say, baby, hey, you're the one that has the right decision there. There's times in my own ministry. There are times that I'll be like, we should move in this direction. And the Holy Spirit will say, she's got the direction. Or maybe I went in this direction and it was her way instead. So we also men have to be willing to give our wife the ability to not only lead and speak into our worlds at time, because as you said, to submit to one to another. But we also have to admit when we're wrong. We have to be willing to come in and say, you know what? You were on point. You were right there. And so I think that's so important. And then in ministry, you know, it's a whole other facet because you both are pastors as well. But I think it's so important though that men establish that leadership. They have to have the courage to do that. Let me ask you this question. One thing, because I want to get it from a woman's perspective. I know I'm not interviewing you, but I am. What do you say to a woman out there that's a strong woman or a woman that wants her man to lead? What could she say? What do you feel she should say to a man that needs to step up? How does she encourage him to take on his role? Oh, that's easy. Put the pressure on him to lead. Whatever you want, babe. What do you think, man? Yeah, right, right. Come on, what do you pick for dinner? What do you think we should do with this $10,000? This is what's happening with the children. What do you think? I mean, just keep putting the pressure on him to lead. And I believe that it is in him to lead. Actually, it's a reflection of Jesus and the church, his love for the church, that the man is the head of the home and the family. And Jay, to your point, the scripture says that he brings out the best in her. That's right, that's right. I mean, so talk about a secure man.  When she's running that business, helping in that church, leading, that's a compliment to you, sir, that you have allowed her to flourish in your presence, that part of your seed that you mentioned earlier, your fruit is flourishing around you. Talk about a huge compliment. So, I mean, I just pray right now for the body of Christ. For that we're not in competition with one another. We are, we're complimenting one another. We need both male, we need both female. We need strong men, strong women, strong kids, and strong families in this day. Culture and the world and sin and anxiety and depression are trying to oppress the family, that unit that God created. Before He established the church, He established the family. And I love to think about, you know, when it talks about Jesus returning, it says, as it was in the days of Noah, so shall it be when the coming of the Son of Man. And back in that day, in the days of Noah, God used a family to rescue and to save His people. So I believe today, God wants to use your family. Man, it's time to man up. Woman, let's be a blessing, let's be strong, and let's see people have hope today. On Tomorrow's Hope Today, discover why God uses the least likely of people for His purposes. Bible teacher and author, Tamar Miller, examines the lives of five different women from the Bible to showcase that God's grace redeems lives. Don't miss Tomorrow's Hope Today. Cornerstone Television wishes to thank all our faithful viewers whose consistent prayers and financial support have made this program possible.


It's going on everywhere. I saw your message Hobbes. That's funny Sam here blatant sports cards rip in 23 for any black football hobby six box half case break number 15 pick your team style read off the list of our names and our teams Right W Eagles and Colts. We got Chris S for the Bears drew B with the Panthers Edward G Falcons goo H Packers Jeffrey H Rams John W. Titans Josh H. Browns Justin C. Chiefs Justin K Steelers Mark O. Cardinals Matthew W. Broncos Matthias S. Niners Michael G. Bucks Michael a with the Ravens Neil M Seahawks Phillip S. Patriots Rich Seed Lions Rory C. Raiders Sean OB with the Cowboy Sean okay bills and Texan Shandy W Jags and Giants and the Commanders Tim D with the Jets bangles Todd C. Vikings Troy F. Dolphin Saints in Udo S. With the Chargers Let's do it. Are they loose? Natalie selling us out for the night. Thank you Natalie. Let's go Good stop guys. Thank you. Thank you. Thank you. That's awesome in the Notre Dame loose. That's awesome They lose the Louisville in the bill That's the most about oh wonderful, dude See, I don't I don't really I don't have like a personal vendetta against Notre Dame or anything but the how like baby they are by the Voting the College Football Council or whatever is so annoying, dude That's AJ Brown to 75 like you have to everybody has to admit they're always over ranked I just won their Eagles and anytime they make the playoffs they get smoked that is a DK white knight going to the Seahawks Congrats Seattle on the case hit Very nice.  They look so good. It's got Seattle. He's got Seattle I can't find them. Oh, oh Neil M. Congrats Neil get that into a map for everybody Got a King Henry Vaughn whoa Vaughn to same box What the hell going to the Titans John w one last seems taken picking up a case hit Vaughn to Wow, okay Do that sure Michael Meyer on the Jersey card to 99. Oh This is gonna be so nasty. I bet This is so sick Going to Green Bay is gonna be Jordy Nelson on the Smoke show signatures five of five Congrats on that Packers. That's nasty five of five Where's that? They're so cool dude. Yeah, that was quite the box right there for sure We've got Kendra Miller to 25 for the Saints Yeah, that was that was the best box. I think I've ever opened the black for sure Chase Claypool base Now a short lived on the Bears now with Alton Aiden O'Connell Jersey card to 99 futuristic for the Raiders futuristic Yeah, nice one here for the Patriots Christian Gonzalez 20 of 25 hopefully he comes back healthy He was actually very good. Yes. Very good Congrats Pat's and then going to Lions. Mr. Sam La Porta 95 of 199 Congrats Lions. Very nice Cmc to 35 for the Niners Rookie of Isaiah Foskey going to the Saints. I know it's too bad the commanders don't have any I think the Ravens do either. Let me look unless they have a ray and I'm gonna be pissed if they do because I'm gonna need it smoke show Alan T. Law Hurts Purdy Henry Watt to a golf cup Hill Brown J Jettas Nelson Chancellar waddle at Echler Herbert Eli here James Harrison. We dope Much as I don't like the guy that'd be really sick Yeah, that's a cool one, dude We've got a Roshan Johnson 7 of 25 three-color patch Rookie out of for the Rams is Zach Evans to 199 Congrats. L.A. Good buddy and Roshan Johnson.  That's nasty shite That's so cool. Yeah, he was in flawless collegiate this year, which is really cool. It's cool to see him again Yeah, why not dude like absolute collegiate legend Heisman trophy winner. Yeah, right CMC to 35 for the Niners Chris Jones base Yeah, he's a good analyst. Yeah, he's I enjoy him as an analyst. I agree Futuristic Jersey to 150 Bijan for the Falcons We've got Cedric Tillman on the rookie out of the Browns to 35 Congrats, Cleveland. Nice one there and then go into the Raiders Michael Meyer 121 out of 199 RPA Silverink Silva Congrats there Raiders How did this start? 35 did he start out? Yeah, to a base. Yes Rookie influx to 99 is Devon Achan the Dolphins fantasy legend right now Thank God for him. Dude's Vaughn 9 of 50 nice one there Sean going to the Cowboys Yeah, I missed the Ryan Tannehill that is to 25 for the Titans on the orange. Bless you And then a Jalen Hyatt to 99 Jersey patch auto for the Giants. All right, last box of black here everybody. It's the one Vaughn you didn't have yet. Let's go dude.  So hopefully we get some sort of cool auto in this Looks like we are going to get some sort of Cool auto in this Start here with a Justin shorter rookie. Got Jersey starlight materials to 99 Trevor Lawrence AT Perry to 75 There you go Saints, this is kind of nasty going to the Packers one of 50 Jaden Reed He is kind of a stud congrats on that Green Bay That sleeve patch and then really nice one here capstones 45 of 50 T. Higgins That is from last year's Panini black. He is one of the guys in the update Congrats on that bangles Yeah, it's almost like too little too late though 90 deficit But no good to see he's doing a little bit better Trevor Lawrence, that's Michael Meyer Devon Devon Achan Bijan, Aiden O'Connell, Roshan Johnson, we had the T. Higgins Cedric Tillman, Deuce Vaughn, Zach Evans, Sam Laporta, Christian Gonzalez, Jalen Hyatt, Michael Meyer, Roshan Johnson, Jordy Nelson to five, Jaden Reed, and then two K-sits, White Knight of DK Metcalf and Vanta of Derek Henry That will do it for the break guys. Thanks again for the film. Coming up next is number 16