Hey everyone, this is Ohm and happy to share that I am speaking at Open Source Summit Latin America 2022 about the Kubernetes operators and how it is used for the deployment and management of the application in container con. Let's have some small intro about me. I am Ohm from India a software engineer at JFraw from RND team. I am also certified Kubernetes administrator and I am core contributor and member of CNCF incubating project Litmus Cures. I am a sporty guy, I am an international related chess player, so feel free to ping me for chess after this talk. When I don't contribute in Open Source, I work for the JFraw and I am happy to share that one of 10 from attendees have a chance to grab the JFraw t-shirt. So scan this QR code and register yourselves and winners will be contacted through email post event. So let's come back to our talk. Let's think about the era, how era is changing, how we used to install our applications, how we used to deploy our applications in earlier era when physical servers was there and now how we are deploying our applications in today's era in containerized form. So we have changed a lot, right? So earlier days like physical servers then we came to VMs, now we have containerized. So let's talk more about this. Are you ready? Let's fasten your seat belts and let's come. So what are the containers basically? Container is a unit where we package our code and all dependencies for our code and we keep it or we push it to some registry. So it's more on the unit where we keep all our required files to run our application and there are platforms also like Docker which is used for the shipping and running our applications. So we have containers now, we have platforms to run it, to ship it. Now let's talk about more like to next thing which is orchestration. What is orchestration? Our container orchestration is automation of much of the operational efforts required to run our containerized workloads and services. It's more on the automation configuration on top of the containers. So we can see there are n number of tools we have now like Kubernetes which is a core CNC graduate project. We have also the Docker swarm, mesos and many others. So Kubernetes, everyone is aware of the Kubernetes and it's one of the booming topic like it's one of the booming technology in today's era. So let's talk more about it and like next thing. So let's see this picture. What do you think from this? There are a few hands, there is a ship, there is a crane and small boxes like we can call it as containers, right? So they are arranging that containers, they're putting it in some crane and crane is shipping it to big ship and ship is moving around. So let's think like in Kubernetes where now Kubernetes boxes they get as a containers that crane is like scheduler, ship can be, we can think of the nodes now. And it's more on like application installation, right? The way that the containers are orchestrated like the configured and how the flow is going on is it sounds good, right? So taking one step next that how Kubernetes create or modify our instances of the boards that holds the standardized application, it holding and taking it to next thing. So there are many ways to do this, to make it install, to make it modify. So for that we can have some manifest where we can pass this actual configuration metadata specs for this application. So there are a couple of ways through which pass or we can install to make it install. So earlier days, let's think about that. Yeah, earlier we used to have some YAML file, right? Even if we can see some we have now also we have the YAML files which we we add some specs, some configurations in that like board spec or deployment spec or stateful set spec. We add that and we just apply it or we created that and once it get applied it creates some resources like boards or deployment stateful set, right? So this is one way to install this. If someone says that I have a simple application with one port, one service or some with some volumes and all. So yeah, it's very easy and very straightforward to use the YAML files to install that application. Now someone says that I need some customization on that. I need some manifest on the top of that so that I can patch that configuration into single YAML and it can be get installed. It's more complex from YAML files, but yeah, it's requirement basis like they can use the customized thing. Now someone wants to have their own configurations in that. We don't want to directly take things and apply it to the manifest like so they want some configurations on the top of that so that that and once application get installed, they wanted to do some upgrade and all with that configuration. They can go like you may say like, yeah, Helm is the good thing. Helm is the best option to use that. Yes, but still we have many issues. It's more on like the requirement perspective. It's more on the requirement perspective, but still if some upgrade case came up where the DB schema changes. Let's take example that DB schema changes and we need to upgrade the version of that and in the new version there is some breaking change. We cannot go for the YAML customized or the Helm thing. There we need some operations should be get done with the configuration. So there where the operators comes in the picture which solves actually the complex problems. Might be there is migration, upgrade thing, some breaking changes there. Operator will easily handle that because operator has the reconciliation loop where we can write our own logic. What we wanted to write to get the upgrade things. So using that we can have the more control over the word installation and management of the application. So in this topic, like let's move. So in this topic, like we will more talking about the controllers, operators, Kubernetes operators, how we deploy it and deep dive into the capabilities of the Kubernetes controllers. So are you ready? The Kubernetes operator, which is a controller application specific controller that can help us to package, deploy and manage a Kubernetes application, which is extending the Kubernetes APIs and enabling it to configure our applications application resources using some of the structured and proper way. Let's let's take example that we have a stateful set, right? What's the use of actual stateful set response? What is the responsibility of the stateful set resource to run the stateful application, right? So same that like the same way using the operator, we are going to create our own resource. So if we do the kubectl get stateful set, we can get the stateful set objects. So now we have like own, own resource where we can define our own kind on the specific that under space of stateful, stateful set example. So we can do now kubectl get our own kind name. So there it will reach out our own resources. It will have we will have own custom resource definition as well, where which holds all definition and once which creates the API for our own resource. So let's talk more about this now. So some of the use cases of our operator is like we can deploy and manage our applications with very seamlessly. It's very good at having flexibility and it actually improves the consistency. We can automate as per our need as we discussed like that. It actually helps the upgrade cases and much edge cases where actually the helm and every other installation where it fails, the operator can solve that. And it has having many capabilities and many features which can we can actually use for the operators and to build our operator for our installation. It's it's it's been always a sound that it operators sounds bit complex. There is a noise but earlier what used to happen everything was like it's more like to write writing everything from scratch is a right different thing. Now we are so lucky and thanks for the many frameworks which actually abstract the internal working of the controllers and which provides us some functions where we have to just write our own functionalities inside that. So that is where we call it as a recon seller which frameworks provides us where we have to define like we define our own functionalities on if the application is not installed. And we can write the logic of our first installation logic. If already application is installed we can write our own upgrade logic for that. So it's more on like whatever we want we can we have the complete flow control over there. In demo we will see we will see the code exactly where the recon seller comes and where the CRD CR and we'll talk more about that. So this is more on that. So there are frameworks like there are some frameworks which actually provides us the HDK for the operator like operator framework which is also incursive incubating project. We have the Q builder Kubernetes operator framework. One more on one more thing that cube builder also getting integrated like integrated with the operator framework. There are a couple of Pias code much there. We will see what could be there is adding the point. Let's talk more about the flow of the operator now. So one side let's take the desired state one side let's assume that the user is sitting and other size the let's think about the cluster we have some application installed right. The current state is there. So let's see let's take example of the state full set in state full set what we do we add some configurations in the YAML file and we apply that YAML file some pores come up right. So same way some internal configuration is that which takes the configuration for the YAML and updating actually and creating some pores with whatever the state full set features have like suppose persistent volume claim template has provided on the top. It will take that and it will create volume volume amount like and will actually use that volume and other features also other specs also whatever it is there. So same way in when in operator also we write our own logic own reconcile logic where this operator reconcile comes where user applies their changes in the manifest custom resource. Just think like example as a state full set resource where we update and we apply it creates a pod even if we next time we update some image tag or if some some if we update that state full set with the new console. We have a new configuration and we apply that it actually takes the new parts comes up with the new configuration right. So same way in operator also in our resource also we have a custom resource where we keep we have kind their own kind we have their own specifications which we define in our operator. So this specifications we have to pass and we have to apply that that once we apply that our reconcile loop will run and it will update our current state. If it is a fresh install it will create if it is already installed it will update that. So it's similar to other Kubernetes resources we are creating one more resource in the Kubernetes with our own requirement with our own feature with our own kind. So when let's talk about the reconcile loop how it is called and when it is called so reconciliation basically in operator internally what it is doing. So once the user applies our custom resource that custom resource get specs get updated into the ETCD database and we have the watchers on the event if some event occur in the ETCD database or watchers observes and it reconciles the loop. There are multiple ways where reconciliation happens if there is some error throughout the reconcile loop occur it reconciles again. If some desired state change or some also the existing resource where we set our owner reference which is owns if they even if there is some change some failure occur in the current existing application it reconciles or if something changing our resource like our kind resource. Then also it reconciles on changing the desired state and also there are some default values also after that it reconciles its default is train our in some case it might be different if some options are set. So this is the reconcile loop where we get that there are operator SDK we are more talking about the operator SDK thing we have taken that as example while demo also. Operator SDK has the like levels different levels where they support for the Helm Ansible and Golang Helm support the basic installation Helm operator. Support the basic installation and the seamless upgrade where Ansible and go actually supports the all five stages of the operator SDK of the wherein first we have just the basic installation. In second we have the seamless upgrades in third we have the life cycle of our application even if the backup failure recovery and these features comes in the picture. In fourth level we have the deep insights on the basis of the matrix we text and which is some some resource example as a resource got exhausted we for support we scale it as a horizontal or we perform we do some operations. It can be any type of operation and fifth one is the autopilot thing where like it's horizontal vertical auto configuration auto tuning abnormal detection scheduling tuning and many more comes in the picture. There is one question around like we have customers and we is it possible to is it running on every distribution because someone uses the Azure Kubernetes engine someone uses the GKE KS and many other way. So is it running out yeah it's operating to get set up wherever the Kubernetes run operator will run there let's have the demo time now. Are you excited. We just have the GitHub link up. We have created like work on the portato head operator portato head is the CNC projects to understand the microservices so I have written their operator on the top of that. So this is the CRD which is the actual holding custom resource definition actual holding the definition of our CR which we mentioned which we define that definition in V1 alpha one. This is the default generator templates like default generator files directory and all where we have to update and some directories I have created so V1 alpha one API. So here we have to define our type what all things we have to take in our kind like our resource. So we have like specs status in status we are currently I have mentioned this many things. So this is the place where we actually write our specs type and we we run some commands like make generate which actually creates the deep copy update that which which helps during the runtime. Which which validates like the types what we have written and there are we after that we run the make manifest command which actually updates our CRD which is under this conflict CRD basis. So once we run the make manifest command this manifest get updated suppose some tag we have added in the types.go with some flag with the string so that definition get adds here and it keeps a list of all our definitions. Which is which we have defined in our types what are the comments are there it will be reflected there and that gets done with the help of there is a control agent binary. So and this is the actual the controller folder. This let's go to the main file where where we define our controller the manager and leader gets initialized and this is the controller where we set to the manager. So here the just sometime back we were discussing about the two things one is the force and one is the ones for is the resource to whom the controller will be primarily watching and owns is the resources which during this reconcile during this things we create and we set our owner reference to that resources. Same like if you see the replica sets like replica sets owner reference to the ports similar way now the data SDK sets the owner reference to their created resources earlier we earlier it used to support some functions on the like on the basis of suffix or prefix we used to get set our reference. Now we have owns and this is the reconcile loop which keeps on calling on every change every desired state change or some error occur or some change in our force and owns on the basis of force and own change and also there is a default time there we did get calls and it get rerun. So here we write our own logic create resources and manage resources currently in demo we have so the installation will be like first is CRD definition installation second thing it comes to since we are building this operator and we are building a Docker file on top of and we have to install this. So in this controller we are playing with the Kubernetes resources like suppose we wanted to create one stateful set and one config map. So we have to give this permissions we have to authorize the container in the word authorize our processes inside the containers to create or delete that resource. So that all authorization has been done using the service account so that all back when we roll back success control we create where we have the service account rolls and roll binding if it is on cluster scope we have the cluster roll and cluster binding. So let's apply this thing now it was already there it just configured that now let's create the I'm using the operator name space so it has created now we can see the operator content is getting created so this file we have a Docker file here yeah it is running now we can see it is running. Now let's apply our CR which is a custom resource let me show you this so we have a kind our own we have defined our own kind we have defined our API version group version and version. This is a metadata this is spec we can see like for other things suppose example stateful set we have been taking that so in stateful set we also see the similar kind of structure. We see API version kind metadata spec so here also we have defined that in that way and we have defined our own specs now whatever the specs what we want. So once we apply this thing we can see that once we apply this CR that reconcile loop call in and their functionalities were there to create these resources. So it is called and see we can see that like all ports are up and running. So let's have some test like check against the upgrade case how it will behave in upgrade so we have the same CR here also so here the version is 0.1.0 let's let's change it to 0.1.1. I have changed it everywhere and let me apply this let me confirm that so we have our own resource now we have we saw that like let's describe this resource to check the version. Yeah it is already 1.1 so it is because of that it didn't get updated let's let's move to 0.1.0 and apply this now. Let's configure now let's see the ports so older ports are going and like new ports has become new ports has been coming. Let's now new ports are up let's get our old description describe our old describe our CR custom resource so we can see our version is 0.1.0 and our ports are also up with new version so it's more like seamless and it's similar like we can write our own logic as many as many as the features what we want we can write that something breaking change we have added the logic for that change. And if let's take example like if the application is running and something failure happen we have we have updated the manifestation we have applied this in upgraded case and something is fell in that. Image only and it's not coming up and running so what is in that case so we can write a logic in that case so that if something fails there it will it will again take the older version and again install that or it continues with the older. New polls if there is some failure or it will come go down and older will stay so that way our application will be application will don't will not have a downtime so this is more on the radar so looking forward for more questions and answers. Yeah someone wants to test locally they can clone this repo and test locally and if there is something they can raise the peer as well. Thank you so much they can scan one more time and feel free to contact me on Twitter link in GitHub dev.to looking forward to connect with you. Thank you.


President of the United States. Thank you very much. Thank you. Please, sit down. Good afternoon. I learned in public speaking once that you were never supposed to open any remarks with an apology. But I also found out in this job, nine times out of ten, you have to apologize for being late. And so I apologize for keeping you all waiting. I'm delighted to see members of Congress, mayors, and the other local officials who are here in the White House this afternoon. It's good to have you in the house that belongs to all of us from every city, county, and town. Like millions of Americans, I grew up in a small town. Back in Dixon, Illinois, government officials and the citizens they were serving knew each other. They were part of the same community, lived next door to each other, and went to the same high school football games and bumped into each other at the grocery. Dixon officials knew what the people of Dixon needed, and they were able to meet those needs with efficiency and imagination. Local government meeting local needs, that's a fundamental principle of good government. Many government workers here in Washington are diligent and dedicated. I found that out. And yet they can't know the American people as well as you or congressmen or mayors, county, and local officials. If those at the grassroots are to get their jobs done and get them done right, we must give them the resources they need. And this bill will send $4.6 billion from Washington back to our cities, counties, and towns. The money will not be spent as Washington dictates, but as local officials choose. It will support police and fire protection, libraries, street maintenance, and other basic local services. And since less than 1% of the total will be used for administration, the general revenue sharing program will set a superb example of government efficiency for other federal programs. It took a lot of doing to hammer this bill together. But funding the program at this level will enable us to continue our partnership with local governments without fueling deficits. My heartfelt thanks to all who helped build the wide and bipartisan support that this bill enjoyed. For my part, signing this bill represents a great personal pleasure. I pledged my support for revenue sharing to the United States Conference of Mayors back in 1980, and since then I have repeated or restated my support before the National League of Cities, the National Association of Counties, the National Association of Towns and Townships, and many others. The federal government never spent money more wisely than by devoting it to general revenue sharing. And today I'm delighted to reaffirm my support with a pen, two pens. Pens only write one word, government pens do.  Thank you, yes? Well, thank you all for being here.


People feel like that's where you're gonna be just because you're from the hood. Boy, you could also be like, look at Nipsey Hussle, bro. You know what I'm saying? Like he was all hood, crib until the day he passed away, bro, and he still made it out. Yeah, we on boss talk, one on one. Sorry, what I can't stand about the hood or being raised in the hood is the fact that a lot of people make you feel like you're gonna either be on the streets in prison, you know, like. Or dead. Or just because of the environment, like there's nobody good, but I've met people who were raised in the hood, still had a single household, all of the statistics, and still came out whether a doctor, a lawyer, I mean, actually rose above it. And you know, so why do people feel like that's where you're gonna be just because you're from the hood? Boy, you could also be like, look at Nipsey Hussle, bro. You know what I'm saying? Like he was all hood, crib, until the day he passed away, bro, and he still made it out. It's cause a lot of people in the hood is talented, it's just lost talent. And if one person comes in, like he was giving, like he, I know he helped a lot of his homies come into the music scene, you know what I'm saying? And go forward with it.  You know, trying to do the same thing. I have the lights, so I have a lot of homies around me that is talented. And once you, it's like, that's what it's hard to get is to make it in the music industry. That's the hardest thing. Once you're in there, then you go forward and you push and you grind. You know what I'm saying? It's the work you put into it. You know, you can't put music and you're not going to the studio. You can't be like a rapper. You're not going to the studio laying down on tracks. Right. One of, out of, maybe you put out like 100 tracks, but every one of them is a hit. You just need one hit. You just need one shot. I see the Lupe 46th Street, the crib, 46th Street crib. How did you end up even in, how did you get in? How did that happen? I just, you know, when I came to the hood, bro, I came to the hood, bro. I went there when I was 19. I started hanging out with them and then, you know, I became. How long did it take for you new that you was a part of it? Not too long, bro. Maybe about like six months. Really? Can somebody be hanging with them and not actually join? Well, I was, I was like, I did, you know, you got to do certain things. Right. Right, to be initiated. But can you like say, I don't want to join, but I also want to just hang with y'all. We got, we got some homies that, that are not, yeah. I didn't know if it was allowed or not allowed or whatever. It's, it's like, even some homies from, from different states that they're not from there, they just hang out, you know what I'm saying? They do certain things, you know, they might help that what we need. And then, you know, they, I think some people feel like I don't have to join, but I'll be protected if I just hang out. I know it's not that it's cause a lot of them are like grew up there, they were born there. So like they, they grew up with everybody. Yeah, they grew up there. So it's like then they're like, basically they're like their family, you know what I'm saying? They become part of it, but they're not. All right. You know, so they, they, oh, they're always there. They're not, they're always going to be there when we have parties or, you know, we have funerals. Oh, you know, they're going to be there, bro. Don't boss talk one on one.


Welcome to Toffy TV, it's the math reaction. Don Caster Rovers 1, Everton 2. We got there in the end but not a good performance from Everton at all, a shocking performance really considering the opposition without being disrespectful to Don Caster where they are in the league. Everton made very, very tough work of it. The manager made some changes to the start and line up. Michael Keane, Ben Goffrey came into the back four, Vitaly Michalenco backing it left back in midfield. James Garner played in the centre of midfield alongside Amadou Omnana and D'Corey. The manager went with Lewis Dobbin on one side, Anna Danjima on the other and Shimitty, use of Shimitty getting his first start for Everton and the start of the game was absolutely atrocious from Everton. Messing around with the ball, Michael Keane then drove and picked for them, give Don Caster two opportunities in the space of about a minute. One of them was a really good opportunity, which was the waste of the free header, which the lad, I don't know whether it's come off his shoulder or not, but it was a great opportunity for them, which was the blue. You hope that that would shock Everton into picking the game up and really taking it to Don Caster, but the reality was we didn't. They were much the better side. Everton, I don't know, there was no plan. The way we play, they were all over us. It was way below par. Everton managed it after the game talking about a tough night for some of the young players. It was everybody. You can't just say how the young players have got a lane. It's part of their development. It was everybody. Everybody was way below par tonight. A team that is bottom of the Football League, which they are, it's not like they're flying on confidence as well, and yet McHann had them fired up. It wasn't like Don Caster were flying into tackles. They were rough on us up or it was a hostile crowd. They just played their game. They seemed to have a game plan. They stuck to it. They put us under pressure. They worked it and they got the goal and they saved it. It was offside. VAR would have ruled it out, but it was offside and a ball back in. It's a free header from inside who was offside, but it was poor play from Everton. We didn't get out there. They'd already passed up a couple of opportunities. He's once swept over the bar and Jordan Pickford pulled into action at 1-0, would have been 2-0. Everton had their best. There was two moments before the break. One with Anna Danjumar, a little one-two, should have gone at it with his right foot, went at it with his left foot and screwed it wide. And then, go play for him on Anna, into Tumit. He could hold up play, laid it back and I'm going to do on Anna. I struck the goalkeeper when he probably should have done better. Went in a half-time 1-0 down. Everton had had one or two touches in the penalty area at this stage, which was appalling. The manager made three changes at the break. Brought on Beto for his debut. Brought on Ashley Young and Brought on a drizzler Garnagay. All three made a difference. Garnet put to bed any nonsense that he shouldn't be in evidence midfield. He was evidence best midfielder in 1-0-9. James Garnaw went to right back, Nathan Patterson didn't have a good half. Garnaw done well at right back and Beto was a real handful from when he come on. Just showed Everton, he is a bit, when I say raw, I mean like it's such a technical ability. He's a bit scruffy, but that's fine cos he's such a handful. He's pace, he puts himself about and he demonstrated that. He got in a couple of times, he put them under pressure. He was a real target laying things off, but Doncaster still dominated. After 70 minutes I think it was David, 14 shots to evidence 3. But Everton did step it up and picked it up and Beto got the blues level of ball from the court. I played through and Beto runs on and a lovely finish, a lovely finish past the goalkeeper to level things off for Everton. And Everton took over, then he crashed the header against the post after a lovely cross from James Garner. And then a good goal from Arna Danjuma, a good ball in. I think it was Neil Mopai with a lay off. Good little touch across the keeper into the far corner to give Everton a true one. He'd already hit the crossbar Danjuma before that. Beto had the ball in the net again, but Garner had hesitated he should have played an earlier ball which he didn't. And Everton in old truth, if we're looking at it honestly, Everton have got out of jail tonight. It was a poor performance, it was improved in the second half and it was much improved in the final 20 minutes. We've even seen Neil Mopai come on and play in the 10 and link some of the play and got himself an assist, but that wasn't good enough. I don't think Sean Dytill kid himself, I don't think the players will kid themselves. It wasn't a good enough display by Everton, but he won the game. That's all that matters I guess. And our reward, a trick to Aston Villa, which is probably one of the toughest games you could have been given. This cup isn't for Everton, it never has been. It's a horrible cup and the look of the draw is very rarely with Everton. There you go, but that is for another day. We've won the game, we scored some goals. It's a debut goal for Beto, which is an excellent Danjuma's first goal as well. And now it's a big 48 hours for the football club. They've got to get bodies into this club. Two or three need to be in by 11 o'clock on Friday night. It looks like it could be on the way out as well. Alex will be off to Fulham, so more movement in that. It's going to be interesting. That's for sure. But tonight Evan have won Man of the Match Beto, although I think Idrithi Ghaniggei made a huge difference when he come on. But Beto is my Man of the Match. He was the game changer for Everton and they march on to the next land. Let me know what you think in the comments section below. Give the video a thumbs up, subscribe if you haven't. Thanks for watching. See you later.


Making $10,000 a month is super easy. Everyone thinks that you have to put in so much work to start making that amount of money per month. But the truth is, right now, it's easier than it's ever been, especially with tools like automation. Let's say you have your own e-commerce business and you're dropshipping certain products. Well, you can start implementing automation into your business so that way you can automate the entire process. From finding best sellers to importing your products and even fulfilling your orders, AutoDS will automate the entire thing so that way all you have to do is focus on growing your business and finding more best selling products so you can keep making higher and higher profits. This in turn is going to help you start making $10,000 a month consistently. And the best part is, you don't have to start at just $10,000 a month. That can keep growing.


In my book, How Not To Die, I suggest we try to center our diets around whole plant foods, but some plants are healthier than others. For example, you can apparently live extended periods, eating practically nothing but white potatoes. That would by definition be a whole food plant-based diet, but not a very healthy one. All plant foods are not created equal. The more I researched over the years, the more I've come to realize that healthy foods are not necessarily interchangeable. Some foods and food groups have special nutrients, not found in abundance elsewhere. For example, sulforaphane, the amazing liver enzyme detox boosting compound, is derived nearly exclusively from cruciferous vegetables.  It's the same with flax seeds and the anti-cancer lignan compounds. Flax may average 100 times more lignans than other foods. And mushrooms aren't even plants at all. They belong to an entirely different biological classification and may contain nutrients like ergothionine, not made anywhere in the plant kingdom. So technically, maybe I should be referring to a whole food plant and fungus-based diet, but that just sounds kind of gross. It seems like every time I come home from the medical library buzzing with some exciting new data, my family rolls their eyes, sighs, and asks, what can't we eat now? Or they'll say, wait a second, why does everything seem to have parsley in it all of a sudden or something? They're very tolerant. As the list of foods I tried to fit into my daily diet grew, I made a checklist and handed up on a little dry erase board on the fridge and we'd make a game out of ticking off the boxes. This evolved into my daily dozen. The checklist of all the things I tried to fit into my daily routine. By beans, I mean legumes, which also include split peas, chickpeas, and lentils. You know, while eating a bowl of pea soup or dipping carrots into hummus may not seem like eating beans, it certainly counts. We were just trying to get three servings a day. Serving is defined as a quarter of cup of hummus or bean dip, half cup of cooked beans, split peas, lentils, tofu, or tempeh, or a full cup of fresh peas or sprouted lentils. Though peanuts are technically legumes, nutritionally I've grouped them in the nuts category, just as I would shunt green beans, snap peas, and string beans into the other vegetables category. A serving of berries is a half cup fresher frozen or quarter cup dried. While biologically speaking, avocados, bananas, and even watermelons are technically berries, I'm using the colloquial term for any small edible fruit, which is why I include cumquats and grapes and raisins, as well as fruits that are typically thought of as berries, but actually technically orange, such as blackberries, cherries, mulberries, raspberries, and strawberries. For other fruits, a serving is a medium-sized fruit, a cup of cut-up fruit, or a quarter cup of dried fruit. Again, I'm using the colloquial rather than the botanical definition, so I place tomatoes in the other vegetables group. And cruciferous vegetables include broccoli, cabbage, collards, and kale. I recommend at least one serving a day, typically a half cup, and at least two additional servings of greens a day, cruciferous or otherwise. Serving sizes for other greens and vegetables are a cup for raw leafy vegetables, a half cup for other raw or cooked non-leafy vegetables, and a quarter cup for dried mushrooms. Everyone should try to incorporate one tablespoon of ground flax seeds into their daily diet, in addition to a serving of nuts or other seeds. A quarter cup of nuts is considered a serving, or two tablespoons of nut or seed butters, including peanut butter. Chestnuts and coconuts, though, don't nutritionally count as nuts. I also recommend one quarter teaspoon a day of the spice turmeric, along with any other salt-free herbs and spices you may enjoy. A serving of whole greens can be considered a half cup of hot cereal, such as oatmeal, cooked whole grains, or so-called pseudo grains, like amaranth, buckwheat, and quinoa, or a half cup of cooked pasta, or corn kernels, a cup of ready-to-eat cold cereal, one tortilla or slice of bread, half a bagel or English muffin, or three cups of air-popped popcorn. The serving size in the beverage category is one glass, 12 ounces, and the recommended five glasses a day is in addition to the water you get naturally from the foods in your diet. I explain my rationale in my video, How Many Glasses of Water Should We Drink a Day? Finally, I advise one daily serving of exercise, which can be split up over the day. I recommend 90 minutes of moderate intensity activity each day, such as brisk 4 miles per hour walking, or 40 minutes of vigorous activity, such as jogging or active sports each day. I explain my reasoning for that in my video, How Much Should You Exercise? This may all sound like a lot of boxes to check, but it's easy to knock off a bunch at a time. In one simple peanut butter banana sandwich, and you just checked our four boxes, or imagine sitting down to a big salad, two cups of spinach, a handful of arugula, a handful of walnuts, a half cup of chickpeas, a half cup of red bell pepper, and a small tomato. You just knocked out seven boxes in one dish. Sprinkle on your flax at a handful of goji berries and enjoy it with a glass of water and fruit for dessert, and you just wiped out nearly half your daily checkboxes in a single meal. And then, if you just eat it on your treadmill, just kidding. Do I check off each glass of water I drink? No. In fact, I don't even use the checklist anymore. I just used it initially as a tool to get me into a routine. You know, whenever I was sitting down to a meal, I would ask myself, could I add greens to this? Could I add beans to this? I mean, I always have an open can of beans in the fridge. Can I sprinkle on some flags or pumpkin seeds or maybe some dried fruit? The checklist just got me into the habit of thinking, how can I make this meal even healthier? I also found the checklist helped with grocery shopping, although I always keep bags of frozen berries and greens in the freezer, and if I'm at the store and want to buy fresh produce for the week, that helps me figure out how much kale or blueberries I need. The checklist also helps me picture what a meal might look like. I mean, looking over the checklist, you see that there are three servings each of beans, fruits, and whole grains, and about twice as many vegetables in total than any other component. So glancing at my plate, I can imagine one quarter of it filled with grains, one quarter with legumes, and a half of the plate filled with vegetables, along with maybe like a side salad and fruit for dessert. I happen to like one bowl of meals where everything's mixed together, but the checklist still helps me to visualize, right? Instead of a big bowl of spaghetti with some veggies and lentils on top, I think of a big bowl of vegetables with some pasta and lentils mixed in. Instead of a big plate of quinoa with some stir-fried vegetables on top, I picture a meal that's mostly vegetables, and oh look, there are some quinoa beans in there, too. But there's no need to be obsessive about the Daily Dozen.   To help track your progress, volunteers created Dr. Gregor's Daily Dozen apps for both iPhone and Android. You can download and use them both for free, no ads, no cost. My hope is that the checklist will just serve as a helpful reminder to try to eat a variety of some of the healthiest foods every day.


Hey, this is Brett with Summit Auto and Fond du Lac Wisconsin. You're new and use Jeep and Jeep Cherokee headquarters And today I'm super excited to show you our very first 2021 Jeep Cherokee latitude Luxe in spitfire orange This vehicle has the 3.2 liter v6 pentastar motor which pumps out 271 horsepower It's gonna get you 27 miles per gallon on the highway 22 average and 19 in the city and Spitfire orange is the color the paint coat is pf2 if you're curious We shoot all of our videos in 1080p 60 frames per second So if you have HD capabilities on your computer tablet or smartphone device turn them on right now Because it is definitely your best way to check out the looks styling and color of the vehicle before seeing it in person So I like doing the videos We just start off with a full walk around there and then we'll get up and close to it and get you all The options on this particular vehicle So this one comes with the 17 inch painted alloy rims And if you want to check out all the photos on this Jeep in the upper right-hand party screen as a link to our website Click that and check us out there. They're a firestone destination le tires These are 225 65 hour 17s and you can see the tread pattern right there Really like the spitfire orange. This is the first orange. I can remember on a Cherokee since mango tango On the trail Hawks a couple years ago You can see it has the LED running lights the LED projector lamp head lamps And then you get LED fog lamps down there You get the chrome-trimmed grill and the chrome-trimmed Jeep logo on the front Part of that latitude luxe package This one does have the heated windshield Or windshield wiper heaters You get the chrome trim on the Cherokee lettering on the side. This one has the enter-and-go system We'll take a quick look at the original window sticker I'm not going to go over go through everything but feel free to pause this if you want to check out All the options on this one. So this is a 2021 latitude luxe 4x4 spitfire orange is the color black interior You get the 3.2 liter with electronic start-stop the nine-speed automatic transmission Everything on your left hand side is your standard equipment for the latitude luxe You can see that this one does come with the Jeep wave membership Ford collision warning plus advanced brake assist and lane departure warning plus All part of that package standard You also get blind spot and cross path detection the Jeep active drive one system The start stop capabilities and everything else that's on there Interior seats or interior features you get the premium leather trim bucket seats heated front seats heated steering wheel remote start Apple CarPlay Android Auto Sirius XM for six months And the 3.5 inch cluster, but that's all your standard equipment And you can see you also get those bi-functional led projector lamp headlamps But now the optional equipment That you get is the spitfire orange clearco, which is 245 in the comforting convenience group, which is 11 95 So that gives you a couple different things the dual climate control the automatic dimming rear view mirror the seven inch TFT color display in the instrument cluster. You also get 115 volt power outlet power lift gate premium air filter security alarm and the 8.4 touch screen You also get the universal garage door opener and the humidity sensor total msrp is 35 30 And if you want to get your summit price in the upper right hand party screen Is a link to our website with all the rebates and incentives on this particular Jeep So click that and check us out there three or 36 000 bumper to bumper and then five year 60 000 powertrain warranty As promised 27 miles per gallon on the highway 19 city an average of 22 Jeep Cherokees very safe vehicles Five and four stars up and down the board I'd feel very safe hauling my family around in one of these and I've actually owned three different Jeep Cherokees, so I recommend the Cherokees highly one of mine was actually orange mango tango capitalist view fill Always a nice feature you get four wheel disc brakes on the Cherokees You get the led tail lamps. You also get the roof rack or roof rails. I should say up there You get the dual rear exhaust with the chrome tips with the v6 You also get the backup parking sensors part of that blind spot and cross path detection led tail lamps This does have the power lift gate so I can do it right from the key fob here, which is nice Plenty of storage space back here. You also get those fold down seats, which is nice. You do get the Spare tire and jack tools back here Which is Really nice as well that it's because you're getting the four wheel drive And then you get the power button for the gate right there It'll beep at you three times and then begin its descent actually beeps at you a total of four But on the third one it comes on down And down this side you get a really good look at that spitfire orange color It's kind of a flat orange. It doesn't really have any metal flake in it But good looking color so it has the entry and go system. So basically If the vehicle is locked and you have the key fob, I just put the key fob in my pocket You just have to Put your hand in the door. It'll automatically unlock Which is pretty sweet and then inside you get the premium leather trimmed bucket seats Both of these front seats are heated and you get a power driver seat with lumbar factory floor mats auto headlamps tilt telescopic steering wheel power windows power locks and power mirrors We will hop inside So you can check out the instrument cluster and everything And the radio you get the seven inch tft display um You got range to empty you can put miles per gallon time compass anything you want in those corners It's all configurable And then you also get the digital speedometer there as well You get the heated leather wrap steering wheel cruise controls on the right bluetooth and information center controls on the left and Audio controls on the back of the steering wheel. So the steering wheel is the same as they've always been in the jeeps Which is nice. There's not a big learning curve. If you go from one Model year to the next here's the 8.4 4c radio a mfm and serious xm radio capabilities on here You also have your climate controls right here. You can you do get the dual climate controls You can do your heated seats and heated steering wheel here And you can also check out your backup camera Those grid lines are dynamic meaning that they're going to turn as you turn that steering wheel And then if you were ever to put a hitch on this vehicle that center line would line right up with it You also can connect that bluetooth to your phone And then you can also do your projection manager where you can project your phone To the screen through android auto or apple carplay So if you've got a navigation system on your phone, you can project it to the screen use it through there And it's like you have nav right on the screen. We actually did a demo on android auto If it's in the upper right hand part of the screen If you want to check that i'll click that and check us out there But it's nice that this radio doesn't have nav, but you can put nav on it through your phone Pretty easy Parking sensors lane departure warning Down here your more tactile climate controls as well as a volume and tune control knob And then you have stability control and your start stop capabilities. You can turn those off and on at any time Down here your auto snow sport sand and mud select terrains, and that's part of the active drive one system So as you change it up there or down there you can see it changes in the evik up there So pretty cool stuff And then you get the nine speed automatic transmission Um, you get the remote start power lift gate on the key fob Up here you get your auto dimming mirror map lights and your home link buttons for garage door security systems and lighting systems We'll take a quick look at the back seats And then we'll do one more final walk around on the vehicle with all the lights on so you can check out those led head lamps running lights and fog lights Back seats plenty of room back here You do get the latch child safety system for any child car seats. You also get cup holders in the center console here factory formats And then you do get a 115 volt 150 watt plug-in two usb's and two usb c Plug-ins back here as well These seats go down really nice and flat And you can see that there's a cover here so nothing's going to fall behind there And then you do get side curtain airbags as well child safety locks on the back doors And like I said, we'll do one more final walk around with all the lights on here Spitfire orange Really a cool color I honestly didn't know they Had this color until we got one in dealer trade Um a couple weeks ago And it was sold so I wasn't able to do a video on it, but this is our first one in stock In spitfire orange and uh really a good look in color. Hope you enjoyed the video. They're those led head lamps running lights and fog lights Remember to like subscribe and share on this video and all the videos on our youtube channel And to see more pictures of this Jeep or one of our other 450 new and used cars trucks scvs minivans wranglers Cherokees grand cherokees Compasses you name it. We got it go to our website right there www.summitauto.com Full pictures and descriptions of every single vehicle from two locations all at summit auto.com And if you'd like to check out more hd videos, you can go to youtube.com slash summit auto Remember to like subscribe and share on this video and all the videos that you see there In fact in a second you will see a link to subscribe to our youtube channel in the upper left A link to more Jeep Cherokee videos like this one in the upper right a link to this vehicle on our website In the lower left and a link to our latest youtube video on youtube in the lower right click those check us out And we're super excited to help you with this brand new 2021 Jeep Cherokee Latitude luxe four by four in spitfire orange clear coat. Thanks again for checking out the video


Taking care of each other one of the best ways we can contribute back to the community back to the project I'm going to have a couple of stories here and I'm going to show you some words on the screen If everybody that can identify with any of these stories or these words, raise your hand for a couple of seconds It's not going to be for 10 minutes So you're struggling to get everything done.  So you get depressed You work from home or you work in a cubicle farm like me But you just work so much you feel isolated overwhelmed and exhausted you Put things out in the WordPress community to try to help everybody understand more things about it and Yet you don't feel like anything you're doing is right.  I mean, these are all primal words. These aren't WordPress words but desperation anxiety anxiety right now Fatigue I mean we all get fatigued. You can only work so much. You can only think so much Imposter imposter syndrome. I think a few of you heard me talk about that and Change I'm up here trying to change myself and change the WordPress community last year at work camp Europe met Molo leg put a challenge out there to put forth five for the future and It was directed. I think more at the agencies But it was taken as everybody everybody should put five percent of their energy Towards WordPress towards giving back towards the project That's great. The project needs that project needs you to contribute to it You should get involved. You've seen this slide a few times this weekend. I'm on the community team I'm a community deputy. I help work camps happen looking at Kathy there. I And it's important. It's all important But it comes at a price So while we're all giving five for the future and helping make WordPress this amazing platform that it is and We're doing everything we can to really just I Mean nothing can compare to it We're kind of losing sight of some very important things We're not investing in ourselves. We're not contributing back to ourselves Without us as contributors back to WordPress and it doesn't matter. It could be one simple patch It could be the core team. I mean all the way up to Matt Mullenwijk and all the way down to somebody that Went to a word camp once we all contribute back to this community into the project But we need to take some energy Back from the project and start investing in ourselves You do that by stopping for a moment and you stop and you think and you take take a deep breath you catch your breath Trust me they help sometimes you need to have some a married band of Crazy fools that help you through it. I've got a front row here of some of them and You know, they help me get through the day and they help me event some are here some aren't but you know these really strange people That I identify with and this is just a handful of people in my work WP morning crew slack chat and we talk every day usually and They are the the basis of what stop laughing Dan And it's it's so important to me because they are my outreach the WP morning crew came about because of something and It started at the end of last year Oh wait, I'm sorry. I'm skipping and my presenter notes aren't on here We do have fun sometimes the morning crew this was us getting ready to walk into the convention center this morning So yeah, yes, I we need a little laughter. So this was us coming down the escalators You know those four big escalators. We do things as a group. So but Not to bring everybody down, but all of this my little support team here came about because of Kim Kim Parcell if you didn't know her we lost her a year ago The world lost a very special person I'm lucky to have called Kim a friend Kim was one of those people that made sure everybody else was okay Hashtag WP mom you see it up there. That was her hashtag Andrea Renek referenced it yesterday the two of them kind of teamed up on that and Every so often I do still see the hashtag, but it really hasn't been there And so when we lost Kim besides some of us personally that knew her and even if you didn't know her She still impacted you. We lost a big part of our heart One of the impacts Kim had was helping us all help each other and ourselves And I'm I'm here to tell you that we need to get that back We need to remember what Kim stood for and Helping ourselves and helping each other I remember when Kim won the MacBook Air last year right before WordCamp San Francisco And I was one of the first people to tell her about it and when I saw her at WordCamp San Francisco She was just so excited like Rich look here it is She was just so happy and she made sure everybody else that she knew was happy, right? I mean is that who here knew Kim Parcell and can say anything, but she tried to make people happy I Want that back. Yes. WP drama it exists. It always will exist. You can't get away from that We are an intense community that has so many important things to talk about but take away the drama Take away the negativity Let's start spreading some love.   So We need to take those breaks throughout the day Stand up walk around talk to somebody just look out the window at your cat Call a loved one. It doesn't matter and then after you've done that for yourself Reach out to somebody else, you know in the community Especially if it's somebody you know that might be having a rough time and talk to them Now if you're not on Twitter the hashtag isn't a symbolic to you, but if you're doing this stuff tweet about it, I Want to see hashtag WP mom come back I want to honor Kim and everything she stood for everything that was important. I Want to see it become more than just one person or two people? I want to see all of us become Kim and Look out for each other talk to each other help each other Find a way to make that happen find a way To share your pain and share your growth tweet about it use the hashtag Take care of each other Where all the project has? Okay, please it's important. I've personally been going through some personal crises these last couple weeks It's been rough and I haven't reached out to a lot of people You know some of my crew know I you know don't yeah I know and I don't I don't ask for help and they've reminded me I've had people from all over remind me rich, but just ask Don't put yourself in a hole whether it's personal professional wordpress whatever we are all a family Even if this is your first word camp this community is beyond anything. I've ever seen anywhere So please take care of each other help each other Don't wait to ask somebody you know that might be in trouble. I say that cautiously, but you know If you think they're just stressed just reach out to somebody tweet about it put WP mom Don't embarrass somebody Don't you know this isn't what it's about. It's not a shaming thing. It's a growth thing So that way at any point next Thursday somebody decides to look and search the hashtag WP mom on Twitter We can see interactions between each other. We can see Somebody reaching out to me and go rich. How's this going? How's that going and vice versa vice versa me asking somebody else? Hey, how's your day going? Did you eat breakfast yet?