Hello, and welcome to theCUBE's coverage of ISC High Performance 2023. We're covering all the things HPC, machine learning, AI, high performance analytics, quantum computing and more. And one of the most important topics in the HPC community is next generation cooling and energy efficiency. And we're joined here by David Hardy PowerEdge, Cooling Product Manager at Dell, Tim Shedd Engineering, Technology's Office of the CTIO, and Mohan Kumar with an Intel Fellow. Gentlemen, thanks for joining me today. Thank you, good to be here. Thank you for having us. So the big topic is power and cooling, but how do you get more power with to power all these CPUs, GPUs, processors to get the power that's needed and at the same time sustainable? We'll start with Dell. Well, I'll start as a Product Manager for PowerEdge. You know, one of the biggest challenges is bringing sufficient power into these systems really to support these high performance processors, both CPUs and GPUs. Luckily, it's more than worth it. The performance gains relative to the increased power make it a no-brainer to go with the next generation systems. And the other piece of the equation is from a efficiency perspective, how do we cool it? Luckily, generationally, we keep improving how much we can air cool. We've got liquid cooling options that make everything run very efficiently. So again, it's more power consumption to deliver this high level of performance, but we can do it more efficiently this generation compared to past. What's the innovation behind this next generation if you had to put the finger on it? What was the key aspects? Well, actually, it's not just one thing. It's a bunch of incremental improvements and a variety of areas, be it power delivery, be it the designs of the system so that we can more efficiently move air through there. It's the way that we bring cooling to the chips as smartly controlled fans so that we're only moving as much air as needed at any given time, reacting dynamically to a workload inside the system. It's a lot of refinement. It's continuous improvement generation over generation that adds up to big differences at the system level. Well, and what are we talking about in terms of power that we're going to be seeing that can maintain the cooling and also the sustainability requirements? There's a lot of green action going on, sustainability goals. This is a big part of this new metric. Absolutely. So the processor, as David mentioned right now, our processor consume on the high end about 350 watts and the GPUs can consume close to 1000 watts as we look into the future and you need to have a efficient solution at all levels to cool these solutions. And when we talk about cooling solutions, especially, it's not about can you cool with air or can you cool with liquid? The question is, can you cool economically and sustainably with any given solution? That's what you're looking for. And so this is where the right solution for the right problem, right? So at some point when you can, you can always come up with a cooling solution, but the problem is the power of the cooling solution is going to put a dent on your pocketbook. And that's the point where you cut over into technologies like liquid cooling, which would be cold plate or immersion cooling, various things. So we're always driven by what we call PCO, total cost of ownership, right? What is the optimal solution for your total cost of ownership? If it is air, it's air. If it is cold plate, it's cold plate. If it's immersion cooling, it was immersion cooling, right? And you have the spectrum covered so we can hit all points, you know, as we go, as we increase the power of the platform, increase the efficiency of the platform, we're able to do that. And one additional point here is that since you brought up sustainability, even if there was no power issue to dealt with, a lot of folks are looking at liquid cooling solution simply because it's more sustainable because in general, liquids like, let's say take water for an example, it's an order of magnitude more efficient. It's conducting heat away compared to air. So that gives you the efficiency that then translates to reduced power that contributes to your sustainability value. How does the liquid cooling solutions today compare to previous generations? So, you know, liquid cooling has an interesting history that goes back to, I believe the first patent was somewhere in the fifties for cooling capacitors on the street transformers, right? And then it moved from there to the supercomputers which were in liquid nitrogen baths and in the good old days in the seventies. And so we keep in technology, it's a very interesting phenomenon. We keep it reinventing things. So it's not that, so the domain shifts over is basically what happens, right? So what used to be in the domain of capacitors moved over to supercomputers, now it's moving to mainstream servers. So what we are doing now is taking those principles that have worked effectively elsewhere and we are applying the same thing to cooling chips and server platforms. Yeah, we hear a lot of people talking about direct liquid cooling compared to just other cooling solutions, especially in the racks. What's the advantages of the direct liquid cooling? Can you just quantify that or give commentary? I'll jump in. So for the direct liquid cooling, what we're doing is we're trying to match the heat load to the cooling system, right? So that's, if you go back to engineering and thermodynamics, that's the best way to be efficient. You don't wanna overpower your cooling. If you don't need it, you wanna match that well. So when you are placing a cold plate, which is just a little box, typically with a copper base and you're running water through that, you're putting that really effective cooling right on the heat source. Everything else in the chassis can typically be cooled pretty efficiently with relatively low-powered fans and so you're able to significantly decrease the total energy required to cool while enabling what we see is enabling chip powers, well past 1,000 watts. We don't see a real limitation right now from the silicon vendors as far as the roadmap and being able to use DLC to cool it. What's the role of the industry playing on standards? Is there a lock-in? Is it open? Can you guys share? It's been discussion around, worried about lock-in, from a particular cooling solution or provider. What role does the industry standards play in the cooling area? It seems super valuable, especially when you have racks exceeding more than some of the numbers you guys are quoting there when you have more GPUs and CPUs. Yeah, again, I'll offer this and just at this time, there's not a lot of standard that exists. Every system tends to be kind of a one-off design from the chip to the facility water, but there are efforts going on from the Open Compute Project through in the United States, ASHRAE, the American Society of Heating Refrigeration, Air Conditioning Engineers to AHRI, which is the American Heating Refrigeration Institute. They're all involved now in developing liquid-cooled equipment standards that will open up the ecosystem and make it a lot easier for the components to be interchanged. The idea is to open up the ecosystem for innovation and for more competition in the ecosystem, which we anticipate will also make the technology more affordable. We're migrating towards standards, but we're not there yet. It's definitely really important to be able to enable the type of scaling that we see is necessary to support the computing innovations that are coming. So hitting the levels now, you can support the heat now. What are some of the reuse benefits? There's been discussions around position assault from these challenges, lower the T-cases. What are some of the most effective solutions out there? How do we do this efficiently? So I think you covered a couple of points there. So let me talk about reuse first, right? So one of the reasons, especially like immersion cooling is very interesting to folks is because it allows you to have an outlet temperature that's much higher. And you can utilize that outlet water temperature that's much higher for today. What we do is essentially we pay for removing the heat and then we pay for rejecting the heat, right? You pay twice. So what they want to get to is that once that heat has been removed from the platform, you want to take that heat and make it do a useful thing. Like, if you're in a building, maybe heat up the building in mid-latitudes in America, they're using it for greenhouse. Essentially they're pumping the heat into a greenhouse where it's maybe 30 or 40 Fahrenheit. So you can grow vegetables there. And in other countries where they have heat water loops that supply to the homes, they're using it essentially to supply heat, hot water into the homes using the data center. So data center is essentially, instead of you paying to reject heat and causing an environmental impact in that you're actually benefiting the society through the data center business, which is an amazing thing, transformation to happen. And that's real efficiency. Talk about leverage there. I mean, that's benefit to society, green and turning it into societal benefits. What about the other challenges around effective solutions around higher TDPs and lower T cases? Yeah, so one of the benefits of going down this path is that it allows us to go for a higher TDP, a thermal design power. So, which means we can deliver higher performance. And if you can deliver higher performance in a smaller footprint, then you need your overall volumetric space in which you're delivering the performance basically goes down. So it's a lot more sustainable solution for you to have. And then having more efficient cooling solution means you can go for a lower lower TKs because you're able to, you have the ability to reject that heat essentially. And that plays into essentially higher, once again, into higher performance that you can deliver to the customer. Dave, let's bring you in here. You're the PowerEdge cooling product manager. You got to make it all work with the products. Yeah, I was going to say, I'm sitting here with these technologists that they're experts in this field. They, I'm sure, have excellent vision into the future on how the different technologies work and how they scale. I work with the customers today that are trying to take these great ideas, but how do they map back into some of the constraints that our customers face today? When they may have had a data center built 20 years ago. So, we do work with our customers to make sure that transitions to take advantage of these latest liquid-cooled solutions. And there are a variety of liquid-cooled solutions. As a standard, we offer direct liquid cooling, but we also support immersion cooling in other solutions. You can do it at the system level, you can do it at the rack level. There's a lot of ways to apply liquid cooling. And so we work with our customers to try to figure out what works best for their constraints, what works best for their budgets, what works best for their timelines. And we're really at the beginning right now of deploying processors that are stressing that air-cooling threshold. So for a lot of customers, they're still air-cooling. They're going to continue to leverage that equipment in their data center. And they see that their next step is when they're going to have to start considering liquid cooling. Others are already there. They're comfortable with it. It's running well. It's accomplishing the goals and they're developing a skill set and how to manage it. So every customer runs at their own pace. And it's important that Dell and Intel, as we work with customers, help our customers at the pace that's comfortable for them. Tim mentioned, and Mohan also had a comment on this other side. Tim mentioned the power per racket should go exceeding the numbers. Mohan talked about the future of powering new use cases where there's benefits that come out of the heat reuse and water cooling. The customers have a lot of racks. They could have old racks. This is what performance per rack, power per rack comes in. What's the innovation around the racks? Whether they have to have old racks or new racks. How are people stacking up their data centers? Because we're seeing more and more data centers being deployed, not only for the hyperscalers, but for everybody. I mean, we've got edge coming around the corner. You're going to have a lot of footprint challenges with the intelligent edge coming. So this is a real going to be a power and cooling challenge as you get more density. Yeah. Yeah. I mean, that's a great question. And I would say very roughly, if you were to break this into helping customers who have existing data centers, and they're used to working with certain rack footprints, power distribution schemes, it looks like incremental improvements and we try to make the latest technologies digestible in bytes that work. Customers that are starting with a green field, oh, clean sheet of paper. There are a lot of opportunities to be creative to start with. Starting with getting power distribution oriented around density from the very beginning. High power, high voltage power distribution, tall racks, you know, plumbing water into the data center for every rack position from the start so that your future prove. But again, it gets back to customers move at their own pace. We have to give them options. Yeah. One of the things I want to ask you on the product side because Dell is well known for modularity, interchangeability, increased innovation or every year, lower costs. I mean, come on, that's the Dell formula. What's the benefits for the end customer on this area? Because this is a very important area. They got to get the more power and there's a sustainability targets they want to meet too. What are the key benefits to the customer? Well, jump in. One of the innovations that we are driving is in partnership with members of the Open Compute Project. We are actively supporting the DCMHS along with Intel. It's a data center modular hardware systems. This is, you know, at its core, allowing that flexibility, allowing OEMs like Dell to be able to incorporate the latest and greatest silicon into a standard format that then slides into a rack with desegregated power. So that's where instead of having PDUs, vertical PDUs in the rear of the rack, we now have power supplies in power shelves that are spread throughout the rack and then we distribute DC power. This offers a lot of advantages, both in terms of more space in the computer platforms for doing compute, but also in terms of efficiency and sustainability because now we can have these optimized power supplies that are available to provide power to everything in the rack. And so that also goes to the cooling is now we can have these manifolds in the back of the rack that the service can just slide right into. All comes back to standards, of course, and the ability to be able to slide compute nodes in and out easily, but this provides a promise of modularity, affordability and interoperability for the future. Now that's not a today's statement, but it's certainly publicly known that we're working together with Intel and others to develop these sorts of modular and efficient systems. And by the way, the open compute organization is a phenomenal group. We covered their inaugural event many years ago at theCUBE and just they've had a great track record. So congratulations is super important for the industry, this area of sustainability and network efficiency. Mohan, I have a question for Intel. You got the Intel, Dell relationship, well documented, successful over many, many years and generations. Question for you, what is Intel doing to increase the performance being mindful of the cooling challenges around sustainability? And how are you working with OEMs such as Dell to create efficient cooling solutions for these new hyperpowered processors? Thank you, John. So first of all, we have offerings that kind of target these markets. So we have a QSQ that's targeted towards immersion. We have optimized heat sinks that target liquid cooling based solutions. And above all, we have this know what left behind approach to solving the performance problem. So we want to maximize the performance at the optimal power footprint for you. So in every generation, we try to make our processors more power efficient. We have built-in accelerators that's give you, you know, 10 to 15 acts. Yeah, energy performance improvement for you compared to the alternative. And we have the right solution for the right problem, right? We have not just processors. We have GPUs and AI solutions. So put it all together. We try to cover all the bases in there. As far as our partnership with Intel, a few of them were not talked about earlier, right? So we worked with them closely, directly, as our podium partner. And also with them in these public forums, like OCPE and GreenGrid and ISRAE and so on, to make sure the right standards are in place for us to take advantage of the liquid cooling, immersion cooling sustainability efforts like DCMHS that John referred to in here, right? So we have an approach to essentially provide them the solutions. We partner with them closely when we go in because these type of solutions are not 1% problem. These are definitely, we need the OEM partner. They need us and we need them. And so we work tightly together to give them customer a solution that they can utilize as opposed to giving them ingredient pieces that they have to put together. Yeah, and the needle's been moved on the sustainability side. You guys doing a great job. PowerEdge, great name. I'll always love that name. More power, saves power. Next generation, you got a great product there, David. And thanks for coming on. Tim, I'll give you the final words since the engineering technology at the office of the CTIO, which stands for Chief Technology Innovation Office. What is going on there? What are you most excited about right now as you look out? You got the standards bodies coming together. You got a real momentum accelerating into the efficiency and energy savings, sustainability is looking good. People are all on point, not just mailing it in. There's some real action. What are you most excited about? Yeah, that's actually really true. And that has been one of the most encouraging and exciting things that I've seen recently in Dallas as we are developing these new high performance platforms employing the OCP, you know, RV3 racks and DCMHS. Also upfront, front and center is sustainability. How are we accounting for that? How are we best taking advantage of the power saving features that Intel is providing us? How are we taking advantage of the power saving features in these new power supplies, in even network cards and so on? And it's been really exciting to be a part of this and to see how we can enable really the compute solutions of the future in a way that our consumers can really benefit from our customers can really benefit from while also being completely cutting edge, high powered and sustainable. Well, gentlemen, thank you for your time. And we did a full interview without talking about AI. So we can't leave it there. We have to bring it up as the final question. We did a survey to our CUBE alumni network, technical network of infrastructure, cloud and on-premise friends and we had about 50 people. We asked, are you using AI? Most of them said they're going in for low hanging fruit around helping around automation, cost optimization, network optimization and these low hanging fruit use cases. Just final question for each of you. Are you seeing AI coming in to help with some of the hard, heavy, undifferentiated, heavy lifting in the area around getting more efficiency out? I just thought I'd throw that out there as a lightning round. Anyone want to take a shot at that? I'll start with that simply because the focus for my team is to enable people to use AI more than how we're applying it to our product planning today. There's a lot of good new accelerator based solutions to support customers in every industry to leverage AI and the efficiency factors and cooling these high power systems is my maniacal focus. Well, they eat the power, they want more power.  Yeah, so on the AI, it's a two-fold answer. I would agree that with David that our job is to enable these solutions that AI can play in, but we also see that AI has got a tremendous role to play where as a platform and a server system, we have capabilities and then there are data center that has cooling and systems that are typically tend to operate independently. And there is a way now for an AI to come in and essentially say, oh, I see how these systems are being cooled. And on the basis of this cooling, I can change the temperatures, I can move the needles on the various things and I can improve your performance. I can give you better sustainability. So various knobs that it can turn and to that extent, machine learning can be applied in those spaces. It's an exciting place to be. Yeah, it's exciting. Okay, Tim, man, take a shot at that. Any AI comments on the air end? No, I'll support that. I would say, if you've heard recent comments from our chairman, Michael Dell, basically if you're not using AI, you're leaving ideas and performance on the table. And so we are aggressively supporting our customers in the space while exploring how we can best use this to improve our products at potentially a faster pace and provide the sorts of efficiency gains and sustainability gains that Mohan just outlined. Absolutely, it's part of the game now. You guys are right here in the center of the action. You're on both sides, you're enabling more AI to be smarter, faster, cheaper, and at the same time you can use it to make efficiency on the sustainability energy side. So super, super cool, pun intended. Thanks for coming on theCUBE, appreciate it. Gentlemen, thanks for your time. Thank you very much. Okay, this is theCUBE's coverage of ISC High Performance 2023. We're covering all things HPC, machine learning, AI, high performance, analytics and computing. I'm John Furrier, your host. Thanks for watching.


ALS was the first neurological disease discovered, and what happens in this disease is that people lose the function of their arm or their foot and it keeps spreading until where they can no longer move a single muscle in their body and they can only communicate by blinking their eyes. The protein that causes the disease carries a copper atom in it. Our research showed that a lot of the protein was missing copper, so a natural experiment to try was to get copper into the brain. The problem is the copper is quite toxic and the brain does everything it can to keep copper concentrations very low. So the compound we tested is unique in that it delivers copper very effectively into the brain. One might think you could treat the disease by just taking copper supplements, but that would be a mistake. Copper is very toxic and it does not get into the brain and it's not going to help. We're really excited about the prospects of moving this drug into human trials. The response in the animals has a lot of people shocked and in disbelief because no one's been able to develop a drug that's this effective in 20 years. One never knows if it's really going to work in a human being. There's a lot of safety issues and a lot of other considerations, but we're working through those at this point and working as hard as we can to be able to get this into human patients hopefully within the next few months. We're working with a company called Procipa to get this drug into the clinical trials through safety and talking with clinicians about how to properly do these studies. We're also investigating different modifications to the drug that may make it work better and other ways that might make it even safer or more effective. We've made huge gains in the past 20 years of understanding what causes the disease and that lets us find new ways to treat it. I'm just enormously excited that we've stumbled upon one approach that worked far better than we dared hope and I'm praying that it will translate into human studies.


So which one should you buy? Should you buy the Sterret double square for $80 or should you buy two double squares from iGaging for $32? Hola woodworkers, Paul Carlson here, small workshop guy. I wanted to get a double square. I had dropped mine a number of times. It wasn't sliding well and it was a little banged up. Anyway I got these and then I just started losing sleep. I started thinking why how can Sterret possibly want to charge me $80 for a single one of these, double square with a hardened blade they call it. When this set only cost me $32. It ate away at me, it ate away at me. I finally said you know what I need to do a comparison for my 15 subscribers. So I went ahead and I bought it. Now before I do the comparison let me mention that I've got a new patreon link and I'm looking for still my first handful of patrons and at the end of September I'm going to look at who all of my patrons are, all one, two or three of them. I'm going to do a random drawing of in that small select group for this Richard Kell honing guide that's from England. I forget what I paid for it somewhere around $50, $60, $70 and it's very nice and so somebody will become a patron maybe for a dollar a month and be one of just a handful of patrons and when this I would also like to announce that I there's a group that we've started called Small Workshop Woodworking Community and that's on Facebook and that's a new group. I realize there's many woodworking groups on Facebook already why I have one more. I wanted to have one that focused on the small workshop layout, economical tools, ideas, builds that people might do, questions people might have. So anyway I've started that group I think there's two of us so far. If you go there and sign up that won't cost you anything and we'd like to have you participate if whether or not you have a small workshop and at the end of September I'm going to go to however many people are in that group and it may only be five and I'm going to do a drawing a random drawing and give away this set of double squares. In the middle of September I'm going to give away this my tech honing guide. It's an inexpensive one but maybe somebody trying to do it freehand like I was and does not work the out well and they'd like to have an economical guide meaning free. So that'll go to whoever signed up by September 15th of 2019 in the small workshop woodworking community group on Facebook. Should you pay $80 for a really nice double square from Sterrett I bought it so that I could kind of really look at it compare the two and decide for a normal person in a small workshop maybe a hobbyist does it make any sense at all. I do like the I do like the the ruler here I like the kind of shiny but non-glary it makes it easier to see the little marks those marks man those are those are really really well done and I'm suspecting that they're not going to wear off and stuff and they're very precisely done. The eye gauging one isn't good it's all the same dimensions 164th 132nd 116th and then 18 and you can set those up to use whichever one you like. Now with my eyesight I can't see 164th anyway you told me to set this thing to 61 64th I wouldn't be able to do it even though they laid these out really really well so that's of no value to me and both of them have that. I pulled these rulers out put them back in I unscrewed these all the way they both have a little leveler in it so that's no difference. They seem to weigh about the same. The Sterrett certainly slides very smoothly and locks into place very nicely but the eye gauging if you release this slides pretty smoothly too and locks into place doesn't lock into place quite as well at least with my arthritic hands so after all the study that I could do and looking at them and actually using them both in the workshop I have concluded and I will guess I will never be sponsored by a Sterrett. I'm not sure I'll ever be sponsored by anybody but I have concluded that it definitely is not worth the money to get the Sterrett this one or maybe the bigger combination square when these less expensive but still high quality alternatives are available. Now because I did spend the money I am going to keep the Sterrett rather than give it away. I get a certain amount of psychological value out of knowing when I grab a tool oh that's that one that's a really nice one from Sterrett that's not a cheap one so I'm gonna keep it for that reason but I'm gonna as I said I'm gonna give this away to on September 30th to somebody randomly that signed up for the Facebook group small workshop woodworking community it'll come in a nice little case that's all I have to say on that subject be safe in your workshop small workshop guy signing off


Are you feeling blah, disconnected? Like you're kind of just going through the motions. In this video, I'm going to give you three steps to step back into your power so you can start enjoying your life again. Hello, love bugs, and welcome back to my YouTube channel. If you're new here, I'm Sarah, and I help teach people how to find inner happiness through fitness and spirituality. And today, I'm going to share with you how I personally stepped back into my own power using these three steps. First, what I want you to understand is that what you're going through is completely normal. It's something that as human beings, we all go through, including myself. The last few months, I have been feeling disconnected, lost, and because of that, I've been feeling very frustrated. I'm finding myself overthinking everything, unable to sleep at night, anxious all the time, and all around just not feeling fulfilled. So the first thing is that you want to figure out what exactly is making you feel this way? Is it your finances? Is it your relationships? Is it your health? It could be anything. What's one word that defines the issue that you're currently dealing with? Let me know in the comments below. And yes, it can be multiple aspects of your life, but right now, I want you to concentrate on just one. One thing that just seems to be taking away from your life, something that is making you feel lost and confused and just all around down, because the thing is, if we try to do everything at once, what typically happens is that it seems impossible and it seems overwhelming, and so because of that, we don't take any steps to make a change. So I want you to choose one thing. Comment below, what is that one thing that you want to change in your life, the one thing that you want to concentrate on throughout this video? So let's use the example of your relationship. Now it could be anyone, it could be your friends, your family, your spouse, your coworkers, your colleagues, it could be anyone, but let's use the example of a relationship. You want to dive deep into whatever it is that's bothering you, because the bottom line is, if after being around someone or speaking to someone is making you feel down or drained or frustrated, it can be fixed. So you have two basic options. The first option is the one we're not really gonna talk about because it's just kind of straightforward.  Goodbye, sayonara, see you never again, okay? And if you felt a certain way with me saying that, if you felt triggered, then the person that you're thinking about probably does need to be cut off. Now the second way is what we're really going to get into today. And the second way is fixing this issue or fixing this reason or perception of why this person is making you feel this way. Now, this is going to take some work. You need to understand this isn't going to happen or change overnight. And it's going to take some time. It's going to take some patience and it's going to take perseverance. You need to be dedicated to the process of fixing this relationship and fixing this situation and all around understanding yourself. And that's really what this is going to be about. A lot of times it's really easy to blame the other person or in other aspects to blame outside circumstances for whatever situation that you're facing. But in reality, you can't fix outside circumstances. You can't change the fact that the world's shut down right now and you can't change the fact that your partner doesn't listen to you or you can't change the fact that you're not getting credit at work if someone, your boss isn't giving it to you. So what can you change? You can change you and your thought patterns and the way you think and the way you view things. You can change internally so that your external world changes along with it. So the first step is awareness. Sounds easy, but it's not as easy as just the word explains. I mean, you really have to catch yourself in the moment and kind of do the work when it's unexpected. You're not like sitting down and being like, okay, I feel this way, blah, blah, blah, blah, blah. It's like, it happens in the moment, you know? For example, you know, if you get cut off or if you're getting frustrated driving behind someone on the highway, which happens to me all the time, you have to stop yourself in that moment when you're frustrated, when you're angry, when you're annoyed and do these exercises I'm about to share with you. The first step is to identify when your mood shifted. What happened? Where were you? What was said? What was the exact moment that you can trace back where your day went from being a decent, good, positive one to a negative one? What moment pivoted your mood? And then once you pinpoint that, you wanna ask yourself, well, is this a one-time thing or is this a reoccurring event that tends to happen over and over again? Most likely it's a reoccurring event. So let's dive into an example. So we're gonna use relationships, we'll use a romantic partner, okay? You can identify, you know, maybe you're on your drive to work and you're feeling not happy but you woke up in a good mood.  What shifted my mood? What exact moment did I start feeling uneasy or negative or whatever the mood is that you're feeling? My mood shifted when I noticed my partner checking out another person at the gym. Great, you've identified what the issue is and at the moment that your mood changed. And then you wanna ask yourself, number two, why does this bother me? And the trick is you can't take the easy way out. You can't say because it just does or because that's who I am. That's not going to fix the issue. Those statements are not diving in deep. So then you wanna ask yourself, okay, well, why did that change my mood? Why did that bother me? And then you can ask within and say, okay, well, watching that happen made me feel insecure. Then you wanna go even deeper. Okay, why did it make me feel insecure? And you gotta get real with yourself. You're never going to fix things and change your life if you don't get real with yourself and your thoughts and what happens internally. So you can say it made me feel insecure because it made me feel like I wasn't good enough. Try going deeper one more time. Why did it not make you feel good enough? Ask yourself, what is my true fear in this particular situation? Then you could say, my fear is that my significant other isn't happy or satisfied with me and therefore is looking at other people because they're looking for someone better than me. Boom, you just figured out an underlying fear that you have that snowballed and evolved to this surface feeling of insecurity or jealousy or a mood shift even. And then the next step is you want to identify where did that fear come from? Why do you even have that fear? Has this person ever done anything in the past to make you feel this way? If the answer is no, then you have to figure out why do you have this fear? Is it something you witnessed?  Maybe you were cheated on in the past and in a past relationship and it really hurt you. So let's say, let's go with the latter. Let's say my fear is due to a past relationship where I was cheated on and it really, really hurt me. So in actuality, it isn't just a mood shift. It's a deep-rooted issue that's making you feel this way because of something you experienced or witnessed in the past. So we just covered three things. When did my mood shift? Why am I feeling this way? And what is my deep-rooted fear that is stemming out of this? The deep-rooted fear that's making its way through me through this mood shift.  Your partner might not even know anything's wrong. How could they know why you're upset if you don't even know why you're upset, right? And the last step, once you figure out those three things, in this specific situation, you have to have the courage. You have to step up and put yourself out there and have that conversation with your partner. They have to understand why you have this fear and why you have this pain. When to them, it could be something super harmless. It could be something they don't even think twice about because they're so in love with you.  And meanwhile, nothing's even wrong. And the thing is, guys, you can do this with everything. You can put this method through any aspect, any facet of your life. If you just take the time to do the work, ask the questions, have the awareness, you can fix everything in your life. How can you expect to enjoy your life and to be happy if you don't even know the things that are taking away from your life? You don't even know the things that are causing you pain and hurt and fear, then you can't fix it. Even though it can be easier to push the blame on external circumstances, the beauty within all of this is that you have the power. You have the power to change it. You have the power to face your fears. You have the power to design your life and your thoughts exactly the way you want them. It just takes some work, it takes some time. And sometimes you're going to face some ugly truths and dig up things that you didn't even realize were issues or fears. But the thing is, is once it's surfaced, once you've identified these problems and fears, you can fix them. Take your power back. Write power in the comments right now, affirm it.  Thank you guys so much for spending time with me today, I loved making this video. I hope it helped you. If it did, please don't forget to subscribe and like this video, it really helps me with the algorithm on YouTube. I'm really trying to grow this channel. Let me know if you like content like this or let me know in the comments below what you'd like to see next on this channel. I love you guys so much.  You can do it. I love you so much and don't forget, be limitlessly yourself.


All right, let's start. Last couple of talks for the day. We have a talk from Dimitri, senior engineer at Twitter. He's going to talk about oversubscription and how they did it in the production quality way at Twitter. So let's start. Thank you. So I work at Twitter Compute Platform Team, who is basically responsible for running Aurora and Mesus on Twitter clusters. I'm going to introduce our solution to idle resources oversubscription, which we used to try to improve our cluster utilization. This is still work in progress. It's not deployed in production, but we thought that this would be interesting to the community that we share our challenges and the solutions. So a little bit of background on Twitter clusters. We have a cluster of more than 30,000 nodes. That's a really huge cluster. And it basically runs two types of jobs. That's production and non-production jobs. Most of jobs are, of course, production. And they have about 80% of allocated CPUs, while non-production jobs at the moment are about 10%. And cluster and P95 of CPU utilization is also different for those jobs. Productions jobs are more effective, like utilizing more than 30%. And non-production, just 20. Non-production jobs and production jobs have different SLAs for we are more flexible about non-production jobs, like we can pre-empt them and do some other things. While production jobs are more critical, so we treat them in the proper way. So we are focusing here on non-production jobs. We want over-subscribe production jobs. So although it's just 10% of CPUs allocated, given the cluster size, even if we manage to get a few percents from that number, it's really lots of hosts. Our most limited resource is CPUs. We're not so much bound by network or disk space or memory. And the problem is that both non-production and production resource allocation is growing. So in order to keep up with this growth, we either have to add new machines to the cluster or try to find some other solutions, like oversubscription. We also have an observation that many non-production jobs are actually idle, like CPU utilization is really, really low, somewhere near zero. So what we did, we collected some statistics about the jobs, non-production jobs, and found that many of the jobs are not using CPU. And there are some jobs which have occasional bursts in CPU utilization, but basically almost any of those non-production jobs are idle. This kind of jobs is development, testing, or some batch processing, which is not so much critical. We also found some utilization metrics for all the jobs. We didn't include short-lived jobs because we cannot win much from them. We're just focusing on long-living non-production jobs. And that's about 80% of CPUs allocated for non-production jobs. Here's an example of idle tasks. This chart shows CPU utilization of some service, which has four CPUs allocated. But in reality, CPU utilization is less than 10% of that. And you can see some occasional bursts. But even with these bursts, it doesn't achieve the really allocated number of CPUs. Here's another statistics. This shows cumulative distribution of all jobs and CPU utilization. So basically, this means that 60% of all jobs with use only 25% of CPU when we use different metrics like P95 here. So it means that 95% of time dropped is basically using CPU less than 25%. So we can see a small spike near 100%. This just means that there are really, really very few jobs which ever reach the allocation of CPUs. So if we zoom into the left side of the chart, we could find some interesting insights. So P95 CPU utilization of 10% is actually reached by less than by 50% of jobs. So basically, if we use such metrics and detect idle jobs based on this metrics, we can win large amount of machines that can be used to run another non-production jobs by using oversubscription. So what we try to do is to detect underutilized CPU resources based on the metrics that we collect. Then we offer these resources for oversubscription to non-production jobs. We also separate how we run production and non-production jobs. So the production jobs will use non-revocable resources while non-production jobs are going to use just revocable resources. And we need some kind of intermediate stage when we are moving from current state when non-production jobs are using non-revocable resources. So potentially, we could have non-production jobs which are using both revocable and non-revocable resources. We also have some limitations and constraints. So non-production jobs must not affect production jobs because, well, production jobs are mission critical. We cannot preempt production jobs. However, we can't preempt non-production jobs. What it means is that we can kill a job, move it to some other node, and relunch it there. We also expect some impact on performance of non-production jobs because we need some time to detect that there is a contention between non-production jobs. And this could take some time to collect the metrics, see that there is a contention. And during this time, we can have an impact on non-production jobs. But non-production jobs must not impact production jobs. So Mesas have, for quite a while, Mesas have a solution to oversubscribe resources, which is basically represented here. This is taken from Mesas documentation. So the two major components here are resource estimator and QS controller. Resource estimator is responsible for estimating the amount of available resources for our subscription. And QS controller is basically monitoring the state of the jobs, of the processes, and decides that it needs to take some action to ensure the quality of service. For example, currently, there is just one action that support it is killing a job. Both of them can consult resource monitor to obtain statistics from the container, like CPU usage, memory usage, and all that stuff. When resource estimator obtains some value of available resources, it sends it to agent. Then it goes to master. And master can offer these resources to framework as revocable resources. This is the interface of resource estimator is defined in Mesas. So basically, there is an initialized function which accepts a function which can be used to obtain resource usage. And also, there is oversubscribable function which returns available resources. QS controller is very similar. Same initialized function. And corrections function, which should return the list of corrections. Basically, that's action to take on which container. Also, frameworks must opt in to receive revocable resources with declaring capability, revocable resources. By default, the framework will not receive it. There are also some parameters on agent which should be used to specify resource estimator, QS controller, and two parameters to define intervals which Mesas uses to query resource estimator and QS controller, which by default is 15 seconds. So we came up with the idea of resource, idle resources, oversubscription, which is, in Mesas model, can be presented like this. So for resource estimation, we detect unutilized CPUs by non-production jobs. That's basically allocation slack, like resources which are not allocated to any type of job. And we add underutilized allocated resources used by non-production jobs to that. QS control is responsible for killing non-production jobs if there are not enough available resources. This can be due to different cases. For example, we detected that non-production job is idle. And sometime after that, it became active. Like it started using CPU proactively. So there could be a case then that there are not enough resources now. So we should kill some of the jobs to make sure that there is no contention. And also, since we have an important job to keep production jobs safe from contention, we must use isolation and isolate all non-production jobs in a separate group. So the basic rule for detecting idleness is like this. So containers idle if p% of samples over some window with duration shows CPU usage less than threshold. In other words, if we see that during a window of, for example, one day, some containers shows that it's only using p95 metric of CPU usage less than 10% than the job is idle. It can have some bursts, but basically p95 covers this. Based on our data, we made some estimations. So using different metrics, we found that we have more than 50% of tasks idle. And using different methodologies to estimate idle CPUs, we came up to this 30% to 50% of idle CPUs. So the lower bound is based on summing integer rounded to integer number of CPUs. Because basically, if we can have 0.8 CPUs available, it's almost likely that no job will be able to use it. Because people tend to use integer numbers like 1 or 2 CPUs. So that's the lower bound. And the upper bound is just some full CPUs available. So let's see how we detect available resources. So first of all, we always ignore resources allocated to production jobs. They are not available for over-subscription. If there are no non-production jobs running, then all available over-subscriber resources are equal to allocation slack, means not allocated resources. Then if we launch non-production job, location slack is reduced. And we make this available as over-subscriber resources. If we detect that the job is idle, then we can offer unutilized resources as over-subscriber. So we just increase that amount of resources. Let's see how case corrections work in this case. So suppose we have an idle non-production job running using revocable resources. And we launch another production job. So that means that our allocation slack is reduced. And we have to reduce amount of over-subscriber resources. So in this case, we see that non-production job is no longer having enough resources. Basically, it's starving. So we need to kill it and to relaunch somewhere else. Another use case is when a non-production job becomes non-idle. So we have two jobs. One is idle, one is not. And then that first job becomes non-idle. Again, we now don't have enough resources to have them both on the same host. So we should kill one of them. Our case correction strategy is to kill non-idle jobs and preserve idleness. This might seem counterintuitive, because why would we kill non-idle job if it's doing something right? The reason is that if we kill idle job, it will be rescheduled somewhere else as non-idle. So in the end, we will have two non-idle jobs running. But if we kill non-idle job, then we will have one idle job and we will relaunch non-idle job somewhere else. This also requires some taking care of recovery to preserve idleness, because we wanted to start with idleness window of one day or maybe one week. And that's a long time. Like, we need to update agents on the hosts. Many different things can happen. So if we don't preserve this information, then each restart of the agents will cause restart of the jobs, possibly. So instead of checkpointing all the samples obtained from the job during one day, for example, or one week, this could be a huge amount of data. So instead, we checkpoint statistics and a few timestamps. When agent restarts, we recover the samples. So this can be illustrated on this graph. Suppose that's CPU utilization over time during some period of time. How statistics is obtained? Basically, we sort our samples by value and then take the metrics like p50, p90, p95 maximum. When we try to reconstruct, we do this conservatively. So we don't have any data about samples between metrics. So we just assume that the CPU usage was at possible maximum. Then we just convert from statistics space to time space to receive samples. And there's one more thing that during agent downtime, we need to shift the samples by this time. Here, we just assume that while agent was down, the CPU usage remained constant, and it was our maximum obtained sample. So this overestimates, tends to overestimate CPU utilization, but it's conservative. It means that non-idle jobs will remain non-idle. Due to the way it's reconstructed, idle jobs may become non-idle, but that's OK. We will just, if there are enough resources, they will keep running. If not, then we will kill the job and relaunch it somewhere else in the cluster. And also, after this reconstruction, because we rearranged samples from lowest value to the maximum value, it means that the job can remain non-idle for more time after such a construction. That's also fine. So we implemented this using Mezos model and found some difficulties that didn't work well. So first of all, there was an issue with decreasing our subscriberable resources. This happens because there is a delay between killing non-production job and update of the resources. There is an interval in Mezos which is used for QS corrections and for oversubscription. So if scheduler manages to get into this between those two actions, it can launch a task using old amount of resources. So more details on this. So when resource estimate is called, it must return additional amount of oversubscribable resources, not the total amount. That's one of the issues. So here in this case, we have production on production job and we use allocation slab to return oversubscribable resources. When we launch another job, so basically, here, the amount of oversubscribable resources is negative because those containers, CPU allocation overlaps. But we cannot return negative value from oversubscribable function. So the best we can do is return 0, meaning we don't have oversubscribable resources anymore, then make a QS correction to kill a container. But now there is a delay between killing a container and Mezos calling oversubscribable method. During this time, master is not aware of change of resources. And it can offer it to framework, framework and offset resources, and launch another job. And basically, we end in the same situation and we make a loop when we should kill job, hope that resources to make the runs before the framework and so on and so forth. So the workaround that we came with comes from a resource estimator and QS control interfaces. So they return futures of resources and QS corrections. We don't have to act immediately. Like if we're requested to return oversubscribable resources, we don't have to go estimate it right now and return. So what we're doing instead is we make a promise to return resources and basically do nothing. When we see that there is a change that we must react to, we then complete these futures. So our reaction is immediately as soon as we detect the change. We don't have to wait another cycle of requests from Mezos. So this way, we control resources estimating and QS correction, resources estimation and corrections by completing future at the right time when we detect the change. To detect the changes, we need to hook executor and task lifecycle events to react to those changes. And we must also adjust how Mezos works by setting intervals to zeros. This basically means that when we complete the future, Mezos immediately requests the new value, which we can hold on till we detect another change. We also found that there was duplicate work between resources estimator and QS controller and really high coupling between them. So instead of having two different modules which run independently, we came up with this structure where oversubscriber is basically a combination of resources estimator and QS controller and combines both of them. There is oversubscriber factory to ensure that we create only one oversubscriber and that this one instance is used by both resources estimator and QS controller modules. From this point, it's pretty much standard for Mezos when we have an interface in the process, lip process process, which is responsible for handling the requests. So here, I'd also oversubscriber just dispatches requests to I'd also scribe a process. And we also added hooks implementation to catch task transitions. This makes configuration a little bit weird because we have to collect all parameters in a hook module just because it's created first. And then just have names for QS controller and resources estimator without any parameters. Actually, their parameters are in hook parameters. We also implemented isolation. This picture shows current implementation of isolation in Mezos. It doesn't differentiate between jobs running on revocable and non-revocable resources. So in this case, when we run too many tasks using revocable resources, there is a potential for contention between production and non-production tasks. We wanted to avoid this. So we introduced a revocable C-group. We just groups all non-production containers underneath. So even if all of those non-production containers become non-idle, due to C-group limitations, it won't be able to affect production containers. We limit revocable C-group by location slack. So this ensures that production containers have their share of CPU time. This has some issues because if we have too many non-production containers running, there could be a contention but we might not be able to detect it just because there are not enough resources for all of them to become non-idle. This can be solved by using some techniques to detect contention based on how much CPU is throttled and so on. Or just ensure that we don't launch too much containers, non-production containers. There's also limitation that enabling revocable isolation will take effect only on new tasks. So we would have to restart non-production tasks to make sure that they are isolated. That's fine because currently our tasks that are running on our non-production jobs that are running on non-revocable resources, they just cannot be oversubscribed. So another issue is disabling or downgrading where we basically have to restart all tasks to make sure that they cannot affect each other. We also made scale tests of the implementation and found some issues. One of them was increased frequency of agent resources updates, like resources to meter, monitors active tasks, idle tasks, and re-estimates amount of available resources. This causes agent update, which is reported to master. Master then rescins offer and sends another offer to the framework. And it happened that Aurora, which we use as a scheduler, received too many rescinded offers and was using old offers to launch another task. So we saw many issues like schedulers trying to launch a task on old offer. So what we did is we just added tolerance. If changing available resources is minor, then we just ignore it and do not report it to the agent and the master. This significantly reduced the traffic and amount of lost tasks. So we also changed Aurora to make sure that rescinded offers are handled as soon as possible. Before that, there was one single queue for processing offers and rescinding offers. Now it's out of order. If there is a rescind, then it's processed with highest priority. Another issue is that scheduler is unaware of revocable and non-revocable resources relation. It basically means that if we launch some task, for example, production task, we know that this would reduce location slack and therefore it will reduce amount of our subscriberable resources available. Scheduler doesn't know this. And potentially, it could launch production task and non-production tasks on an offer. And just non-production task will be killed because location slack was reduced. So the current state that we made tests on our scale test cluster, which somewhat simulates our production cluster, it's not in production yet. We still have to fix few issues. For example, that scheduler unawareness of revocable and non-revocable resources relation. And our deployment plan is to fix the issues and then migrate non-production jobs to revocable resources. It's pretty easy to do with Aurora because we just have to do is to change tier configuration and just configure it to use revocable resources. So new tasks will automatically launch on revocable resources. The tasks that are running, we basically have to restart them. So that's it. Any questions? Production versus non-production, that's a pretty broad brush to categorize, which may be applicable, which is fine. But I'm curious, have you felt the need to have even more finer granularities? Or do you think that adds complexity and that's the reason you're not looking at a finer granularity? Well, I don't think that we need finer granularity. Basically, production jobs, mission critical jobs, which have quotas and all that stuff. Non-production jobs, it's usually development or testing jobs or some really some jobs that do not require that high level of SLA, which is required for production jobs. So maybe when we start over subscribing, we will find something different, something else. Any other questions? Can you repeat the question? I was just wondering if you ever observed something that made all the idle jobs spike at the same time and then maybe even fail because they weren't able to get the resources they needed in a short period of time, just because there was some external thing that makes them all spike at the same time. Well, this shouldn't be an issue because of the isolation. So we grouped all revocable, all jobs running on revocable resources in the same C group. So they have limited amount of time and they cannot impact the production jobs. But if they all spike at the same time, well, there will be contention. We're fine with this contention for some period of time. So it's acceptable to have this contention. But when we detect this, we will reschedule some of the non-production jobs. Only the other hosts when we'll have probably better situation. How is your experience with the QS controller?  Do you see the kill happening when the system is actually not under heavy load? Have you looked into that aspect? Sorry, could you repeat, please? Like the QS controller, like the killing of the job? Like how's your experience?  Like is it killing too many kind of containers? Well, based on the experiments, I don't think that the rate would be too high because, well, the statistics shows that really many jobs are idle. And this keeps for a very long window. So the kill only can happen if we launch a production job. That's the issue that we have with the scheduler, which is that it's not aware of relation between revocable and non-revocable resources. So this can be fixed on scheduler level, that it would prefer to launch production jobs and non-production jobs on different hosts, like basically it's trying to launch jobs from different directions, if you see what I mean.  So I don't think that, given the current situation, we would have too much preempted jobs. How do you detect it's pick-up site as non-idle? How do you detect what is your detection mechanism? Is it like per container? Sorry, can you please? I'm sorry. So for like, how do you detect the system is like the container is idle versus non-idle? So do you have per container kind of, you're looking to the SLA for that per container, or is it based on the complete system level statistics? So idleness is basically, is this rule. So we collect metrics for each container. Mesos API allows only collection of such metrics on container level, not turn each individual process. So we collect this on container level and the parameters, P, D and through short, are the same for all non-production jobs. Any other questions? So you applied this only for CPUs as a resource, or have you applied it to other resources as well? And would the strategy, if you've not applied it, would it work as well, or would you need to tweak it for oversubscription of other resources? So currently we only apply this to CPUs. Potentially there is an issue with network bandwidth. Like if we started with subscribing CPUs, then we would also oversubscribe the network. But since we are not currently network bound for most of the jobs, we believe that this wouldn't affect jobs in any way. For the memory, there is no oversubscription, obviously. And if there is memory shortage, then we just wouldn't launch non-production jobs on these jobs. And then maybe I missed it. Given this new method that you use now, what kind of CPU cluster utilization improvements did you achieve? We don't have this in production yet. Our estimate is that we would be able to reclaim at least 50% of CPUs used. Not 50, but 30% to 40% CPUs used. OK, cool. Thank you. Any other questions? So going back to the memory oversubscription, like the Linux home controller provides mechanisms to kill a particular task, have you started looking into the memory oversubscription, or you don't have in the plan, the memory oversubscription? So memory oversubscription, we do not consider this? You're not planning. You don't have in the future plan or something? No, because we're not memory-bound right now. Our main issue is that CPU allocation is quite high, and there are still idle resources. So we can postpone hardware, buying more hardware to run the cluster. But for memory, there is just no need for now. Any other questions? Cool. Thanks, Dimitri. Thank you.


Alright guys, we have some brainstorming to do Larry's own two in his last two weeks and the shareholders are getting pretty restless So what do we do? Can't we give him one more week after all he started the year 4-0.  We can't leave this up to chance anymore I don't know.   If you just murdered Bubba, you're right P.F.T. Apologize to Bubba for murdering him so we can please move on.   Nobody here has better hair than I do Great now we don't have anyone to record the podcast and we still don't know who Larry's picking this week I think we should call the cops cops don't know shit about football.  No way. They're playing against the Jets Todd bulls is the top 10 coach We're not betting against them. Well, whoever we pick we need to take Larry back after this and get a new one Did you bring Larry downstairs with you big cat? So he's been there listening to us the whole time Bubba Larry we're so sorry. It was just kind of a fun prank. We were playing You think whoever you like Jets are the bears Jets Pick the bears pick the bears pick the bears Larry pick the bears Larry we're taking the Jets. I'm still alive. Here we go J E T S I got your back Larry we're taking the raiders just like you instructed me. Thanks Bubba


Haing Banki community has organised a Unity Cannibal in Kaduna State. It's in collaboration with the Global Peace Foundation in Nigeria. It's part of efforts to seek a lasting solution to lingering communal crisis in Kaduna State and the country at large. It is also to foster peaceful coexistence across different religions and ethnicities in the communities. Cabila Dorofai, father in this report, is presented by our studios. Haing Banki is one of the largest communities that enjoy a relative peace in Kaduna State. People from different ethnicities, cultures and religious backgrounds live as brothers and sisters there. This peaceful coexistence is worthy of emulation by other communities in the state. However, recently, things have fallen apart with religious crisis and communal violence. Therefore, this Unity Cannibal became necessary. The Country Director Global Peace Foundation of Nigeria, GPFN Rev. Dr Joseph Hyab said the aim of the Unity Cannibal was to bring people together and restore peace. He noted that peace is the bedrock of growth and development in any nation. I'm so happy that both their leaders, the youth, religious leaders, the women and all other stakeholders are collectively in this effort. If all communities will begin to start projects like this, then together we will fight evil and defeat evil.  He stated that there is need to come back again as one family that is irrespective of cultural backgrounds, religion and ethnicity, adding that we are better living together than separate individuals. Also, the Waqeilein Mataasai Hyen Ibanki, Joseph Tanko also said different religions must come together as one to build the community and the entire state with message of peace. They called on governments to provide jobs to the team in youth in the communities and the nation. Our main target is to pass the message to the entire nation, but we have to start where we are. So that is the essence that the faith that we are built of. So we have to build it, let the local government coffee in the way of the state and the nation together. Because I'm making a small Nigeria, every tribe, many religions were together here because of the different balance that we are together since. 40, something 50 years back is not how our parents stay. Our parents stay in peace and harmony. These politicians have to turn our minds, most especially the youth. They have to turn the youth men together so that to cause crisis between Muslims and Christians. That is why we want to bring the unity back. In attendance at the carnival were traditional rulers, religious leaders, security agencies and other critical stakeholders in the community as well as youths and the men groups.


Hi everyone, Joe for Jaspy's CaseGrakes.com coming at you with 2020-2021 Panini Prison Basketball Cellopack Break No. 256. Big thanks to this group for making this happen. Appreciate it. And thanks to the teams. Let's roll it. Randomized names and teams. Four and a four. Hard eight. One. Two. Three. Four. Five. Five. Six. Seven. And eighth and final time. Different dice roll for the giveaway part as always. This is just for the break. Four and a four. Eight times for the teams. One. Two. Three. Four. Five. Six. Seven. And eighth and final time. David B saying if Tatum shows up, Celtics can win. I think they start off the fourth quarter pretty nice. One on top. Everyone see that Dodger's part owner and then I think like Phil Knight of Nike. I'm trying to buy the Portland Trailblazers. I'm trying to keep them in Portland. There's the first half of the list right there and the second half right over here. Let's just print this out and see what we have in the pack and then we'll re-randomize that list and see who's going to win those spots. And a rookie RJ Hampton. I'll take a rookie Silver, Precious Achua, Devon Vaselle, Caleb Martin. So nothing too crazy there but who's going to win those mystery crate spots. That's going to be crazy. Let's gather everyone's names again. One through thirty. You dice, new list and let's roll it and randomize it two out of three. Five times. One. Two. Three. Four. And fifth and final time after five. From four on down. Sad times. But thanks for trying. Nick very close. Not quite though. Appreciate it. But there can only be the top three in the mystery crate. Nick's over. You made it. Joshua's in and Harry. I was worried for Nick there for a second. But no, you still got in. So I take back my sorry's. Got a spot. All right. Congrats. I'm Joe. Time for the next one. Bye.


I'm really, really loving this setup. Having a longer desk makes a huge difference. I'm telling you, I'm loving it. What is going on everyone? Welcome back to my channel. My name is Jossi Linjaye and in today's video, we're gonna be talking about how to become a full stack developer in 2020. To give you some brief history about myself and why I feel like I need to make a video like this, I worked as a full stack developer as an intern for three summers and I also worked as a full stack developer for I think a little bit over a year and a half full time. So what do you do as a full stack developer? Everything. No, literally you do everything. When I was a full stack developer, there were some days that I was literally programming and C-sharp for some server side stuff, coding and SQL to make sure that the database tables are updated and then I also could be coding and TypeScript for the actual application that the user interacts with. It didn't always happen, but it could depending on what you were trying to accomplish in your sprint. Full stack development refers to the development of both the backend and the front end of an application. As a full stack developer, you'll probably be working in a dev team. So it really depends on what story you assign to yourself. As a full stack developer, you'll be working on the functionality, algorithms and business logic. When I was a full stack developer, we worked in agile. So we had a scrum master, a manager. We had about four developers and we had two quality assurance testers and a product owner. And my job as a full stack developer was to translate the business requirements from the user story into working code. Let's say you were working on an application and you assigned a story to yourself that had some business requirement that says, hey, we wanna be able to add users to a list. As a full stack developer, you're gonna work on that whole page. You'll make an API call to be able to get users, create users, update users and delete users. So you'll implement an interface, probably a few classes. And then you'll also work on the view that gathers the information from the API call and populates it to the interface. This is a great way to become a better programmer because you'll be able to experience a solution from end to end. So you will know the application better than anyone else. You'll understand the front end, you'll understand the backend and you'll understand how you store information. I really enjoyed working on stories where I would work on a whole webpage because I loved not only building out the user interface but I also loved understanding how the HTML elements interact with the backend of the application. Those of you who are wondering who should become a full stack developer? Everyone. I know some of you all are interested in just pursuing backend development, maybe databases or front end development, but my recommendation, even though it's a pain, my recommendation is to do full stack development. The reason being is because you'll actually really appreciate the life cycle of software development. You'll also learn a lot and become very viable. A very viable asset to the company you're working for and a viable asset to other companies. I knew I wanted to become a front end developer because as a full stack developer, there were a lot of days where I was just like, I just wanna play ping pong or make any excuse to go on a chocolate milk run. But if you find yourself really enjoying or really excited about building an application from the ground up so you wanna know everything about the application, you wanna build every part of the application, you're really interested in that, then full stack development is perfect for you. And since we are on the topic of how to become a full stack developer, let's hear a word from our sponsor Skillshare and how they can help you become a full stack developer. Skillshare is an online learning community where millions from all around the world gather together to take the next step in their creative journey. There are thousands of courses that Skillshare offers so you best believe there are tons of full stack courses. Class topics including illustration, UI, UX design, film and video marketing, and of course, software development. Skillshare classes are a combination of video lessons and a class project. So you'll be able to take the skill sets that you learn through video and apply them to a project. And from there, you can take those projects that you've created and finished and put them on your resume. For example, I'm taking a course called ViewJS, Fundamentals for Beginners with Examples by Bombsheet, this is a great course. I'm learning everything from events, data binding, two-way data binding, the difference between methods and computing, which are properties within a ViewJS instance. Learning a JavaScript framework like ViewJS, Angular and React is great to have on your resume, especially when it comes to applying for full stack development jobs. And when you have a solid understanding in a JavaScript framework, you're even more appealing to employers. The first 1000 of my subscribers who clicked this link that will also be down in the description box will get two free months of Skillshare premium. And for those of you who wanna take the next step in your creative journey, you can get a Skillshare annual membership for less than $10 a month. Thank you to Skillshare for sponsoring this video. Now let's talk about more ways of how you can become a full stack developer in 2020. For those of you who are on the fence or those of you who just have zero desire to become a full stack developer because you just think it's a pain and that you know where, here's why you should learn full stack development. You'll get experience in both the back end and front end. Since you understand the full spectrum of the code base, you can be a one shop stop, not only for the company you're working for, but you could be a one shop stop for your own personal projects. Also, full stack developers are in high demand. Full stack software development is also a really stable job because you know the product better than everyone else. So not only can you help from a technical side, but you can also help from a product vision side and even business side. And if you are a computer science major, most computer science majors get jobs as full stack developers, you'll probably feel more comfortable doing full stack development anyways, unless you have some external experience as a front end developer or just front end development in general, maybe as an internship or through passion projects, full stack development. Full stack development is really similar to a lot of the software development or programming that you do as a computer science major, especially when it comes to business logic, functionality and algorithms. And as a full stack developer, you're like the bridge between the front end and the back end. Also, when it comes to looking for jobs and let's say you're a full stack developer, you're very desirable. Whether you want to become a back end developer, a full stack developer or a front end developer, you have the option of all three because you have experience. So how do you become a full stack developer? Well, if you go the traditional path of majoring in computer science and software engineering, that's probably the easiest way to become a full stack developer solely because you are exposed to algorithms, data structures, time complexity, and you get all the necessary skillsets that you need to become a software developer or software engineer. You want to learn the front end and the back end. Not necessarily an expert in both. I would say when it comes to full stack development, you definitely want to be better as a back end developer than a front end developer. The reason being is because when it comes to your actual technical interviews, they're really gonna ask you any front end questions. More than likely you're gonna be sent some sort of like lead code question to figure out or you're gonna take some sort of technical assessment before they even call you or even get to know who you are. So it's important to understand algorithms and how to solve technical interview questions. Your front end skillsets will actually separate you from your peers who are applying for the same position. Knowing the front end and having a really nice website or portfolio that hiring managers or recruiters can visit will make you stand out and that will get you the interview. So then you wanna actually understand back end development, algorithms, data structures, time complexity to do very well in your interview to get the job. And if you're someone who is a back end developer or a front end developer and you're interested in pursuing full stack development, then ask to be assigned to projects or tasks that require you to program in the front end part of the application and the back end part of the application. So that concludes how to become a full stack developer in 2020. Leave a comment down below of what type of software development you're most interested in, what projects you're pursuing or what type of software development you want to pursue. Give this video a thumbs up if you liked it or if it was helpful at all. Share it with someone who you think might benefit from it. Subscribe if you haven't. I love for you all to become a part of the community. And once again, thank you to Skillshare for sponsoring this video. As always, have a blessed rest of your week. I'll see you all soon. Peace.