Hello everyone my name is Adrian and together with Victor we are going to present to you our five-year journey of how we leverage namespaces in a multi-tenant fashion in order to scale the adoption of Kubernetes at Adobe and also how we build a foundation for the Adobe's developer platform. Few words about me I'm currently a lead class of engineer at Adobe and I'm part of the ETOs team which is the team that powers the Kubernetes platform at Adobe. I'm also a member of the Kubernetes GitHub organization and currently I'm focusing on contributing as much as I can to the cluster API ecosystem and when I'm not breaking clusters I like seeking for big bikes as you can see on the slide. Victor do you want to introduce yourself and kick off the presentation? Yeah sure thank you Adrian. Hello everyone my name is Victor Varze. I'm technical leader at Adobe. I'm also passionate about open source contributions. I'm one of the organizers of Kubernetes community days or KCD in Romania which will be the first KCD event in the southeast of Europe and it will be organized next year in April. Together with Adrian we are the authors of Adobe's K-Tesh Redder and cluster registry. Two open source projects that we successfully integrated to our platform and about each we are going to talk today. In the first part of the presentation I'm going to talk about project ETOs, Kubernetes namespaces and capacity management and Adrian will continue with governance policies, multi-tenancy at scale and non- disruptive Kubernetes upgrades plus a live demo so stay tuned. Before we dive in I would like to share with you a nice quote by Martin Kagan which I found in his recent book titled Inspired. He says it doesn't matter how good your engineering team is if they are not giving something worldwide to build. In other words it is important what your engineering teams are building but also the target audience. At Adobe our Kubernetes platform called ETOs is used by amazing internal engineering teams which are working at Adobe products such as Adobe Photoshop, Adobe Analytics, Adobe Firefly, Adobe Experience Manager, Adobe Sign and so on. Project ETOs it's a cross-cloud multi-tenant Kubernetes based platform built through the collaboration between the Adobe's infrastructure teams and product development teams. The initial version of ETOs has its roots in 2015 and it was built with Docker and DCOS and it was first in production in 2016. It was a good decision at that moment to start with DCOS because we gain experience with containers, microservice architectures, multi-tenancy before Kubernetes became mature. We also built necessary abstractions so a developer can seamlessly deploy his application in production. This abstraction is called ETOs CASE or containers as a service. In 2018 we started a development of the next generation Runtime platform based on Kubernetes. We identified an opportunity within Kubernetes namespaces and add them as a new option for our developers. This offering is called ETOs CASE which stands for platform as a service. With ETOs CASE developers take ownership of the Kubernetes namespace and they can deploy their application inside. Of course we're using their preferred CI CD tool and this approach gives flexibility to developers and it is particularly valuable when your application serves as the core CI CD tool and can deploy other applications in Kubernetes. It is also valuable when your company is involved in acquisitions of other companies. So making my migration of the applications to your company's platform, it's a straightforward process using Kubernetes namespaces. In 2019 we started the full migration of the legacy CASE users from DCOS to Kubernetes and in 2022 based on the experience that we got with ETOs CASE and ETOs PAS we introduced a new flavor which is ETOs Flex. ETOs Flex is running on top of ETOs PAS and it is based on GitOps and Argo. So it provides a path way to deploy your application in production but also the flexibility of Kubernetes namespaces. Another big milestone was this year when we adopted cluster API and Argo for the infrastructure side for building and managing Kubernetes clusters. This is a ETOs Kubernetes platform from 10,000 feet and how it stands in Adobe. On the top of the slide we have the three main Adobe Cloud, Creative Cloud, Experience Cloud and Document Cloud. These clouds are powered by Adobe software products such as Adobe Photoshop, Adobe Firefly, Adobe Analytics, Adobe Experience Manager, Adobe Sign and so on. And together with the platform that they are using such as Sensei Machine Learning, Content Platform, Experience Platform, all together are running on top of ETOs and ETOs is basically the Adobe runtime for containerized applications. ETOs operates on three main cloud providers, Adobe Private Cloud, AWS and Azure. To better understand the platform scalability, let's talk about the pretty impressive numbers which are growing every month. ETOs holds more than 2 million containers encapsulated in 1 million pods and these pods are running in 41,010 namespaces, namespaces which are owned by the application development teams. We're managing more than 300 clusters deployed on 28 different cloud regions in AWS, Azure and Adobe Private Cloud. In terms of computing power, these workloads use around 35,000 compute nodes consuming approximately 2.9 petabytes of RAM memory and 800,000 virtual CPUs. The AI applications which are more and more present to our platform utilize almost 8,000 GPUs. Let's talk about multi-tenancy Kubernetes. How many of you heard about multi-tenancy architecture? And how many of you are using Kubernetes in a multi-tenant architecture? Okay, we have a pretty good number. I can count them. There are many definitions for multi-tenancy. At Adobe, we are using multi-tenancy architecture as a way to share multiple physical clusters with multiple teams from different organizations and different projects. And we have two types of clusters, shared clusters and dedicated clusters, also known as multi-tenant clusters and single-tenant clusters. Shared clusters are available for any internal engineering team in Adobe and are highly valuable for optimizing the cost and enhancing the overall platform reliability. Dedicated clusters, on the other hand, are used for two main purposes. When high security isolation is required, such as for applications that can run on the software. For instance, Adobe Experience Manager, which is a content management system solution, can run software written by Adobe customers. Another scenario is when a specific team requires high-resource demand for their application, which need the entire cluster resources. An example of this is Adobe Firefly, which is a generative AI content creation solution that requires a high-resource demand for the available CPU and GPUs inside of a cluster. In order to implement multi-tenancy, we rely on Kubernetes namespaces. And developers love namespaces because they provide flexibility, more control, and easy troubleshoot their applications. In ETHOS, we use a unique namespace name across the entire fleet. And we deploy a namespace profile template on the clusters. A namespace profile template is made by few Kubernetes objects in order to provide a minimum isolation within a cluster. First of all, we need a Kubernetes namespace object to group the objects for a single team within Kubernetes API. To ensure that only a specific team has access to a particular namespace, we are using role bindings that link the default Kubernetes cluster roles, admin, edit, and view. And Kotlin range play a crucial role in limiting and controlling resource consumption, ensuring fair resource distribution of the resources inside of a cluster. For network isolation, we are using both Kubernetes native network policies and Selium network policies. And here Selium network policies are useful for implementing DNS-based policies and other layer 7 policies. After the namespace profile is deployed on a cluster, the tenant can deploy his application inside. And the tenant application objects will be restricted only to a specific team, and the posts will be isolated by the default network policies. In a multi-tenant environment, capacity management is a key consideration because capacity issues may result in higher costs. By the way, who doesn't have cost concerns today when running an application in the cloud? We tend to take actions at three level. At the pod level, so in addition to horizontal pod auto scaling and vertical pod auto scaling, we are using a solution named automatic resource configuration. At the namespace level, we simplify quota management using the concept of baseline quota unit. And at the cluster level, we added capacity alerts. Let's go through automatic resource configuration. We know that in Kubernetes, pods are scheduled on the worker nodes based on their container resource requests. And they can burst up to the specified limits. So if the resource requests are lower, then smaller allocations are reserved for that pod. This allows for more pods to be scheduled on the node, which results in cost savings. And to achieve this, we rely on Prometheus metrics to get their historicalization data for the deployment pods. Then an OPA policy, it's applied to adjust the right size of the CPU and memory request for that specific pods. At the namespace level, in order to simplify quota management operations, we introduced the concept of baseline quota unit or BQ. A BQ is actually a quota definition. And every namespace quota increase, it's achieved by multiplying each of the BQ items. And for example, we have a BQ definition here. And if you want to allocate, let's say, 32 virtual CPUs for our namespace instead of 16 CPUs as we have right now, we just simply increased the namespace quota from one to two BQs. And the other BQ items will be multiplied as well. So we also have available for our namespace 60 pods to run. This approach simplifies the operations for both tenant owners of the namespace and cluster administrators. At the cluster level, we measure if a cluster is the capacity using Prometheus alerts. And how we are doing this. In ETHOS, the source of record for cluster information is storing an application named cluster registry, which by the way is open source and it is available under Adobe's GitHub organization. And there is a cluster agency client that runs in every cluster and accepts signals from other managers. And in Prometheus, we have multiple capacity subalerts that fire based on some specific metric thresholds. And yeah, for example, number of nodes or number of available IPs that can be assigned to a node or number of namespaces and so on. And one of the subalerts fires, the main capacity alert notifies cluster registry client. So cluster information is updated. And for example, namespace onboarding is disabled or even more namespace quota increase is frozen for all of the existing namespaces in the cluster. Now I'm going to pass it to Adrian so we can talk more about governance policies, multi-tenancy scale and non-destructive Kubernetes upgrades. Thank you, Victor. I would like to continue our talk about multi-tenancy but tackle it from an infrastructure perspective. And I prepared three topics today in order to cover the reliability and efficiency on one hand and scalability and security on the other hand. And I will start with the governance policies. As any company or business is governed by a set of rules, so does a multi-tenant Kubernetes cluster. Why are these policies mandatory and what benefits do they bring into the Kubernetes ecosystem? From our perspective, along with a security aspect, there are two main advantages when defining a set of rules inside a Kubernetes cluster. First, it is for safeguarding teams against inter-team collisions and second, for protecting the cluster stability so that a single development team cannot jeopardize the entire cluster. A few years ago, when we initially started building our platform, we had a pretty interesting outage. One day, two distinct teams created two different ingress objects in two distinct namespaces but pointing to the same FQDN. And it took us a while until we realized that these two ingress objects were conflicting with each other because there were no validating webhooks implemented by the ingress controller at that time except the CRD schema. And this was the moment when we decided that a set of governance policies were mandatory. And in order to implement these policies across our cluster fleet, we picked the OPA Gatekeeper framework. For those of you who are not familiar with, OPA Gatekeeper is an extensible admission controller which is already configured with all of the necessary Kubernetes API plumbing. And cluster operators can change the business logic of Gatekeeper by simply writing policies, which are regular queries as short as a few lines. And we will see in a bit such an example. But getting back to our outage, after that event, we created the validating ingress policy which denies the creation or update of ingress objects which attempts to use an FQDN, which is already in use by any other existing ingress objects. Some other example policies we are currently deploying across our cluster fleet. If I have to name a few, I will stop to the control plane toleration policy, which is a policy used to restrict the workloads that can run inside the control plane nodes. Crown job history, another policy, which is used to restrict the history of a crown job so that we are not putting unnecessary load on the ACDE side. Default ingress class, another interesting policy, which is used to add an ingress class on all ingress objects that are not explicitly specifying the ingress class they want to use. Nayspace limit, another policy which is used to limit the total number of nayspaces that can be created inside the cluster. External IP services, another policy which is used to deny the creation of external IP services. And many others. As you can see on the slide, we have a Rego snippet that's implementing the external IP services. And as you can notice, with only a few lines of code, we were able to define a pretty powerful policy, which is denying the creation of any external IP services. And what is it doing? First, it will check if the object from the request is of type service. Then it will check if the operation is creator update. And in the end, we'll check if the object spec has any external IPs defined. And if all these three conditions are met, we are rejecting the request and sending back a message to the user, stating that external IP services are not permitted, because there is a pretty high vulnerability found inside the Kubernetes code base. One thing to keep in mind here is that Gatekeeper, as any other validation or mutation web hook, adds latency to any API request it mutates or validates. Why? Simply because of the extra processing time needed to mutate or validate the request. So the more policies you define, the higher API response latency might be. Another story is about multi-tenancy at scale. As you saw the numbers at the beginning of the presentation, you can imagine we are running at a pretty high scale and challenges for such a big platform are diverse. Recently, we switched from our internally developed CI CD tool to the Argo ecosystem. I guess everyone is already familiar with Argo. We just had a Argo call a few days ago. But during our Argo CD evaluation process, one of the first challenges we encountered was the fact that a single Argo CD instance couldn't handle the reconciliation volume needed for our fleet. And to give you an idea, we are deploying between 70 to 90 admin components per Kubernetes cluster. And with a fleet of more than 300 clusters, you can imagine that the total number of applications needed to be synced is over 24,000, way higher than a single Argo CD instance can handle. And so in order to be able to scale the rollout of all the admin components across the fleet, we've come up with a pretty interesting pattern which we called Argo of Argos. As you can see on the slide, we are running a multi-tier Argo CD setup where tier 0 is used to reconcile the tier 1 Argo CD instances. And Argo CD instance and tier 1 Argo CD instances are used to reconcile the or to sync the cluster admin components fleet-wide. Sorry. Moreover, each tier 1 Argo CD instance is handling only a subset of the Kubernetes clusters that are part of the fleet. Also, all tier 1 Argo CD instances have the same config and have registered the same set of application sets so that we have consistency across the entire tier 1 Argo CD instances. And in this way, we accomplished the flexibility when it comes to scalability of the continuous delivery system. We can always add more tier 1 Argo CD instances or remove them based on our platform needs. And the last story for today is about non-disrupting cluster upgrades. As our platform evolved and started onboarding more and more teams, the diversity of the workloads running on top was also increasing. Some teams started running stateful apps like databases or distributed event streaming apps that, as we know, are pretty sensitive to disruptions. And after we had few outages caused by cluster upgrades, it was clear that we needed to develop a new strategy while doing cluster upgrades because the poor disruption budgets alone were not enough. And we were looking to have a high enough velocity while rotating the worker nodes but still maintain the client's apps availability and infrastructure costs at some reasonable thresholds. And so we came up with what we call the park nodes upgrade strategy. And this strategy is implemented around K Shredder, which is a Kubernetes controller developed in-house at Adobe and then open sourced. It is available under the Adobe GitHub org and you can scan the QR code from the slide in order to get access to it. How does our non-disruptive cluster upgrade procedure work from a high-level perspective? During the full cluster upgrade, we are draining in batches a percentage of the total worker node at the time while adding new worker nodes. Also, we are coordinating all the existing worker nodes so that no new pods can be scheduled on them. And for the sake of the example, let's assume we have a cluster with two worker nodes, which we are going to upgrade to a newer Kubernetes version. Once the upgrade process begins, as I mentioned earlier, we add a new worker node running a newer version of Kubernetes and then start draining the old nodes. Evicted pods will be moved to the new worker node since the old ones were already cordoned at the beginning of the upgrade process. As the upgrade is progressing, more pods are moved to the new node until there is no capacity on it. And if we are running out of resources, we are simply just pinning up new worker nodes to accommodate all the pods that are evicted by the draining process. Okay, if during the configured drain timeout, not all the pods are evicted, the upgrade process will label the worker as parked and add a TTL or a time to live for it. Also, all the old ones that were successfully drained and which don't have any running pods on them will be recycled by the cluster autoscaler or by the upgrade process eventually. And with that, this is the moment we consider the cluster upgrade as finished. And once the upgrade is finished, development teams that are still running pods on park nodes are getting notified so that they can take all the necessary measures to move their pods out of these park nodes before the TTL expires. And once the draining process is finished on all worker nodes, then case shredder is taking over the process. What is it doing behind the scene? First, it will identify all the park nodes and then for each of them will grab all the running pods and for each of these pods will run a set of eviction loops. Initially, it will periodically try to soft evict all the running pods on the park nodes while respecting the PDBs. And most of the pods will be successfully soft evicted by case shredder after a few eviction loops. But some of them won't be able to but still case shredder will periodically monitor the TTL of the park node. And if after the configured park node TTL there are still running pods that couldn't be soft evicted, then case shredder is taking a pretty aggressive measure and will just force evict all those running pods. And once there are no more pods running on the park node, cluster autoscaler will just recycle this park node. And with that, all worker nodes from the cluster are running the new version of Kubernetes. Putting all these steps together, you can notice that the process is pretty smooth and eventually all worker nodes will be running a newer version of Kubernetes. Okay, let's see it in action. We prepared a live demo for today where we are going to simulate a full cluster upgrade in order to see how case shredder can help us clean up the running pods from a park node. We already have a cluster running with one control pane and two worker nodes and we are going to park one of these worker nodes. In the upper left terminal we are going to start labeling and coordinating a worker node and on the upper right terminal we are going to watch the pods that are running on the node we are going to park using kubectl get pods and the watch command. And on the bottom terminal we are going to watch the case shredder logs so that we can get a feel about what it's doing behind the scene. Let me restart the case shredder so that we can have some clear logs. Okay, case shredder started. Let's see the running pods. Yeah, so we have a bunch of pods running on the node we are going to park. Pods from different A species coming from a stateful set. Pods with bad PDBs, pod with allow eviction, that allow eviction pod that doesn't allow eviction and so on. Let's park this worker node. We added a TTL of just one minute so that we can see a fast iteration of what shredder is doing behind the scene. As we can see, shredder already reacted and noticed that there is a park node in the cluster and started the eviction loops for all the running pods and as you notice many pods were successfully soft evicted by the shredder during the first iterations but some of them won't be able to but still shredder will periodically try to soft evict them until the TTL of the node will expire. These pods couldn't be soft evicted because they have bad PDBs configured or because the tenant explicitly disallowed eviction and after one minute we should see, yeah, K shredder is also able to perform rollout restart for a deployment or a stateful set that are that are behind the running pods and once the TTL expires on this park node we will see that K shredder is taking that aggressive action and will just force evict all the running pods from the park node and with that we can see that we don't have any running pods on the park node and cluster autoscaler can chime in and safely recycle the worker node. Okay, this was the demo and with that I'm going to pass it back to Victor for the conclusions. Thank you Adrian, very good demo and this time didn't fail. Let's wrap up our few takeaways of five years journey of running Kubernetes in a multi-tenant architecture. There is no silver bullet while building a multi-tenant developer platform. You should always align with your product development teams in this process. Every company is different and it has its own needs and vision regarding to the multi- tenancy architecture and here Kubernetes namespaces are feasible to build the boundaries. And the last thing and also the not the last but not the least challenges while working at scale are different comparing with small or medium-sized platform. Thank you for your attention. I think we have time for questions. Anyway, we will be also available for the next 10 to 15 minutes for offline questions if you have. Also please scan this QR code so we can provide us some feedback. Thank you and yeah, do you have any questions? I have one question on the chargeback model. You have various teams using the shared Kubernetes clusters, right? So how does a chargeback model to these departments work like the Photoshop team or EM team or various? Yeah. Do you have anything in process or the second question is how do you focus on optimization? Some teams just over provision, right? Like don't set the right resource limits. How do you optimize that? Okay. Yeah. So for the first question, how are you charging back our users, right? We're using a solution called Kube cost for this and with some algorithms we provide them what is the actually cost for running their application in our namespace or in our clusters because we have also users that use dedicated clusters. They basically use the entire cluster. And also we are adding labels on the namespaces like service ID, the team that's running inside that namespace and we can easily correlate the pods running in that namespace with a specific team and so that we can easily charge back them. Yeah. Thank you. We tried that. So I'll definitely explore that. The second question around the optimization of the resource limits. Yeah. So for the resource limits as I show in the presentation we have a project called automatic resource configuration. It's an internal one but we are thinking to open source it. So basically based on the Prometheus metrics you calculate how what is the right size of the CPU and memory cost that the pods should have. Then we label the deployments then an OPA policy will hook when the pods are created on the cluster and just at the moment we optimize the right CPU request the memory request for that pods. Yeah. One mention to your question is that we are not changing the resource limits only the resource request because the scheduling is done based on the resource request not on the limit. That's why we can over commit on worker nodes. Hi. I had two questions also. One question is you showed the sort of the namespace profile and all the namespaced objects that get set to control things like the quota and the limit range and role bindings. I'm assuming the developer teams don't set those because they kind of constrain what the team can do so how do those get there in the first place and how do they get updated when there's like a new standard for that. Yeah. Very good question. So actually we have an automation that five years ago it was a script and we provision namespaces using jara tickets and then we added into an automation an API and those profiles are static are controlled by us and they are deployed on the cluster by the by the user. So it's a self-series mechanism to deploy the namespace profile in the cluster but they don't control the profile actually we we are controlling the profile and depending on what we are changing on the profile even us update the profile on the cluster but if it's something that can impact an application like network policies we delegate to the end user to do the update. Yeah and one addition here is that tenants are not directly talking with the API server when they want to create a namespace they are talking with our Itos Kubernetes on boarder it's the application and that application is talking with the API server when creating a new namespace and that tool is also adding this namespace profile all the network policies and all those stuffs. Yep. Okay and the other question is you mentioned cluster API at the beginning but where does cluster API fit into this whole picture? It doesn't fit in our presentation but I just mentioned that it's a milestone that we should mention that we for the infrastructure are actually adsopted cluster cluster API and also Argo to building and managing Kubernetes clusters Yeah it's just a mention to Is one of the Argos in that two-tier picture a part of that infrastructure piece? Yeah. Okay. Thanks. We can take offline the discussion because we finished the time. Thank you very much again.


Live from Las Vegas, it's theCUBE. Covering Dell Technologies World 2018. Brought to you by Dell EMC and its ecosystem partners. And welcome back to Las Vegas as theCUBE continues our coverage here of Dell Technologies World 2018. So glad to have you along here for our day three coverage along with Stu Miniman. I'm John Walls, it's now a pleasure to welcome David Comrell with us. David is the Senior Director of Client Technology Services at the Wharton School of Business at the University of Pennsylvania. David, thanks for being with us. Oh, no problem, glad to be here. Yeah, thanks for sharing your time with us. Absolutely. So first off, let's just talk about scope of your work again. You take care of all the obviously IT needs for the largest business school faculty in the world, right? So no pressure on you there, but talk about just kind of day to day those responsibilities. As you mentioned, my title is Senior Director of Client Technology Services essentially responsible for providing the support and services to four very distinct user groups that we happen to have at a university. And that's of course our wonderful faculty, our staff that make everything happen, our incredible students, and of course our alumni group, which is about 100,000 people strong at this point, just Wharton alums that are again very important, get back to the school, provide mentorship and job opportunities for our graduates. Again, very distinct needs for each of those four groups. And again, we provide a high quality and all the buzzwords, secure, safe, efficient, highly available services to these groups, and that's kind of what I do all day. So one of the cool things, I love acronyms and not that this industry doesn't have a few as you know, Stu, but whoopee. Yes. Which I absolutely love, making whoopee, but not what you might think, but walk us through that and what it stands for and what you did and then it really was ground breaking. Hey, you're putting me on the spot with this one. So yeah, so whoopee is the Wharton, if I could get this online, Wharton appear performance evaluation engine. So one of our incredible faculty, Pete Fader came up with this idea and it's no secret that grading is kind of bad. Faculty grading students, there's all kinds of challenges. There's, well, it's tedious. There's inherent biases when you're, the larger the class and when you have to grade 80 papers or a hundred papers or 200 papers, you know, it's really hard to keep consistency across when you're grading paper one through paper 100 through paper 200. Plus when you start giving up the work between TAs and different faculty teaching the same class, again, fraught with bias. So a number of people, you know, again, Pete Fader's idea to come up with a, basically an algorithm that helps the grading process. And basically what happens is, is students are grading themselves. So they basically, what we do is we'll give them five papers or five projects to grade and they don't actually grade. All they do have to do is rank it. You know, this is the best one. This is number one. This is the worst one. This is number five. And then there's this magic behind the scenes that, you know, that runs in our local infrastructure and our cloud infrastructure that basically runs an algorithm. And that algorithm is a secret sauce that, you know, some of our statistical geniuses at the Wharton School of which we have many came up with and it has all kinds of cool features. You could say, well, you know, this batch of five papers might be harder. I might have the five best papers in the class. So that's not fair that, you know, they still have to rank one the worst, right? You know, five. You can't say these two are the best, you know, and this one's third. So again, you actually, the students have to read the paper and just rank it. You know, I like this one the best. I like second, third, fourth, fifth. The algorithm takes into account difficulty of batches of papers. So again, you could literally have the five best or the five worst papers in the class and that's still going to provide meaningful data through the algorithm. So when you have, you know, 50, 100, 500 batches of five, you know, they all start to figure it out and the algorithm will actually figure out what the best paper is in the class and what the, you know, maybe again at the Wharton that they're not so great, greatest paper in the class. But not the worst, just not so great. Yeah, so again, because our students are brilliant. And it basically goes on the fact that if you do a quality paper, if the algorithm says you're the best, your weight means more than someone who might not have done such a good job on the paper, and you're considered a better grader, you know, and it's weighted towards the better grader. So again, there's all kinds of really cool stuff in there that we think is going to change, you know, get rid of some of that bias I spoke about before and help provide. And the data we've seen is, frankly, the students like doing it, you know, they don't like the additional work involved with it, but they, we're seeing some empirical evidence and some in-person interviews that they're learning more. They're reading five other students' papers. They're getting five other perspectives.  You know, my paper was much better than theirs, but again, that doesn't necessarily matter when we start running the ranks. And again, we're getting much better, much, you know, better grading, which is hard to quantify. But you know, again, the folks that are on the academic team that are doing that have some really great data in the data. Yep. So, David, one of the themes we keep hearing in this show is about transformation. It's change happening, talking about how IT, how it's working with the business more and more. So, bring us inside just the university life in general and specifically, you work with one of the ancient eight. Yeah.  That's really interesting. I do have a couple of thoughts on that. So, my boss has a picture in his office of a Penn classroom from like, I think it's like 1908 or 1910.  There's a faculty member standing up and there's a candle-powered projector, which I didn't know was a thing, but it's in the picture, projecting an image onto the wall from over 100 years ago. What's different about our classrooms today? Everything's the same except the projector is now an LED or a LCD projector.  I think what we're seeing now and probably the previous 10 years from now until the next 10 years is education's probably going to change more in those 20 years that it has in 2,000 years since Socrates was standing around with a stone tablet or whatever they were doing. So, things like globalization, online courses, the MOOC space where, you know, Wharton is huge in the MOOC space, Wharton online programs where students can take, not even students, anybody, if you're in China or Africa or South America, you can take an introduction to Wharton, introduction to marketing class from a Wharton professor for free. I mean, there's also, we're a business school, we sell some of that content as well. Again, but you can get verified certificates. So we're seeing a lot of stuff change. The students today expect more. We can get into, we won't, well you can get into the whole millennial issue and short attention span and all that kind of stuff, but students today expect their faculty to be technology savvy. They expect content to be online. They expect to use devices. They expect to use, you know, we got tablets and laptops and phones. They want to be able to consume this content on multiple devices. So again, we're seeing significant transformations in education, again, which is, again, hasn't necessarily changed much in 2000 years or even 200 years, right? Yeah. So there's that. Now, speaking specifically about Wharton, one of the things I really thought is interesting is, you know, I've been there 13 years now. When I first started working there, you know, I'm going to make some generalizations here. A lot of our students wanted to go work in i-banking. They wanted to go work for the big banks. They wanted to go work for Goldman Sachs and things like that. You know, in the last five, seven, 10 years ago, they wanted to have a new, they wanted to create their own company, you know, to start up their own company, be entrepreneurial, have their app, have their big idea, start the next whatever.com, you know, and be successful that way. Now, in the last two, three, four years, we're seeing a lot of our students, you know, analytics, we're putting analytics, you know, with everything, you know, companies, businesses, organizations, no matter what you are, we have huge amounts of data available. How can we make meaningful decisions based on that data? So our dean, our new, I guess I can't call him our new dean, he's been there three, four years at this point, you know, really wants position Wharton as the analytics school. And again, every company in the world is trying to hire these kind of people and there just frankly aren't enough of them out there. So we, you know, the thing we're trying to teach our students is, one of the many things is how to analyze data, how to make meaningful decisions based on that data.  And again, working with our trusted partners like Dell and Nutanix, you know, we can, you know, provide that seamlessly in the back end. And again, they don't necessarily know, is it in our data center? Is it in the cloud? And they don't care. And they shouldn't care. But again, as they're collecting huge amounts of data, you know, running these reports and creating, you know, going back to whoopee, creating these algorithms to do incredible things and these secret sources, you know, we need the infrastructure to run that kind of stuff. And that's, I think, one of the greatest things that Wharton Computing provides, you know, the Wharton School of Business and their business, which is creating and disseminating knowledge. Yeah, well, David, I think you encapsulated something that I've been hearing from lots of users over the last year or so, is the vendor sometimes, it's private, it's hybrid, it's public. And from the user standpoint, it's like, no, well, we have a cloud strategy that we're working on. Can you bring us inside a little bit? What led to, how did you get to where you are today? How do you choose who you're partnering with, at least to some of those decisions? So, I love the word partner.  You know, one of the great things about working at Wharton is we get to have these awesome partners. We, I want someone, when we're going to make an IT spend, we want someone who cares about our business.   And again, and I can truly say that Nutanix is a fantastic partner of ours. You know, Dell Nutanix are great partners. Dell's a great partner of Wharton and Penn as well. So again, that's what we really look for. Someone who is willing to invest, you know, their time, their smart people, their, you know, you know, tell us about the new features and functionality that are coming out.  It's sort of, it's not just the little things but those little things really mean a lot to us as we're picking an IT partner. Because again, you know, working for the best business school in the world, we need to, you know, having the best students, the brightest faculty, the best, hardest-working staff, you know, we want to provide them a very, very high-quality IT support. And again, we need high-quality partners and not just, you know, vendors who care about the transaction. So that, again, that's really the bottom line for us when we're choosing our, again, our partners. Yeah, when you were talking about analytics and Wharton being the school of, you know, data analytics, what are your measuring sticks? In terms of what are you looking at? You're talking about four very separate groups of constituencies. And so what are you doing to evaluate your performance and what's critical in that respect? I think it all comes down to what do our business units think about us, right? You know, we're a service organization.  If the business units aren't successful, you know, they don't need an IT department. If we're not providing them a high-quality IT services, we're not going to get the best faculty. We're not going to get the brightest students. We're not going to get the alumni engagement. Again, they want to be, I guess, wowed by their IT support. So providing, again, that's a big part of my job is providing that quality support and helping train and, you know, technology breaks. How do you deal with the problem? Again, nobody runs that rock solid 100% infrastructure. You know, Murphy's Law always comes into play. Problems always happen. How do you deal with the cracks in the armor as they come up? And I think that's what our business units want, again.  You know, they're very well thought of, hopefully, by our clients, and that's how we're measured is by their success, right? Again, we want to help them, empower them to do their job at the highest level. Because, again, we are playing in pretty rare air when it comes to, again, the faculty, staff, students, and alumni that we attract to Penn and Wharton. Again, we want to keep doing that. You know, one of the things I love best, and I tell our wonderful faculty when we meet with them, is, you know, don't tell me we did a great job. Here's what I want you to tell me. I want you to say, hey, yeah, three years ago, I was at, I'm not going to name drop schools, but I was at this school and I asked them to do this thing that you said, sure, no problem to, and they couldn't do it, wouldn't do it, didn't have the ability, the infrastructure in place to do that.   Again, all the, you know, again, tying it back to why we're here today is our partners and our technology partners that help us provide scalable, flexible solutions. You know, again, that's how we're measured. Well, higher learning. Higher learning. Absolutely. David, thanks for being with us. No problem, it was great. Share the Wharton story. David Conroe from the Wharton School of Business, University of Pennsylvania. Back with more live coverage here from Dell Technologies World 2018. We're at it for this break. You're watching theCUBE.


Hello and welcome to the session. In this session we discuss the concept of HCF and LCM of polynomials. First let's discuss the HCF of polynomials. By HCF you mean highest common factor. So HCF of polynomials would be the highest common factor of the polynomials. Now HCF that is the highest common factor of two polynomials is the polynomial of the highest degree greatest numerical coefficient which divides both the polynomials exactly. So when we are given two polynomials and we are supposed to find the highest common factor or the HCF of the two polynomials then the HCF of the two polynomials would be that polynomial which has the highest degree and the greatest numerical coefficient and it divides both the polynomials exactly. We can write the highest common factor as HCF as GCF also which is the greatest common factor. So the highest common factor and the greatest common factor is one and the same thing. Now we discuss the HCF of monomials. We know that monomials are the polynomials having only one term. In finding the HCF that is the highest common factor of monomials we will follow certain steps. The first step would be the HCF that is the highest common factor of the numerical coefficients of the given monomials. Then in the next step we find each of the variables to all monomials. Now consider the variables which are not common. Then in the next step we multiply the reverse step one common factor or you can say the HCF of the given monomials. Let us now consider an example in which we have to find the monomials y2 z to the power 5 then the next monomial is 35 x to the power 10 y square z to the power 10. So the third monomial as power 4 y to the power 5 z to the power 5. So we have to find the HCF of the given three monomials. From the first step first we will find the HCF of the numerical coefficients of the given monomials. We will find HCF of the numerical coefficients which are 5, 35 and 40. Now let us find the HCF of these three numbers. 5 can be written as 5 multiplied by 1, 35 can be written as 5 multiplied by 7 and 40 can be written as 5 multiplied by 8 or you can say 2 raised to the power 3. Now as you can see that 5 is the number that divides all the three numbers exactly. So we can say that HCF of the three numbers 5, 35 and 40 is given by 5. Next step we find the highest power of each of the variables common to all monomials. The highest power of the variable x common to all the three monomials would be as you can see that x square is common to all the three monomials. Then the highest power of the variable y would be y square since it is common to all the three variables. Then the highest power of the variable z which is common to all the three variables is z to the power 5. So if we multiply the results of the previous two steps so x square into y square into z to the power 5 this is what we obtain after multiplying the results of the two previous steps and so we can say that this is the highest common factor or you can say the HCF of the three monomials. So this is the answer. Next we shall discuss to find the HCF of polynomials which can be factorized. For this again we will follow certain steps. First of all we factorize the given polynomials of the numerical coefficients. We find of the given polynomials we multiply the results and three when polynomials. An example to find the HCF of two polynomials given as plus 7x plus 6 factorize the given polynomials. So consider the polynomial. In the middle term we get x square plus x we get x into x plus 1 the whole plus 6 into x plus 1 the whole. Or this could be written as the whole into the given polynomial x plus 1 the whole into x plus 60 whole. Let this be result one. Consider the second polynomial which is x cube minus. Let us now factorize this polynomial. x is common to all the three terms of this polynomial. So we take x common. So here we have x into x square minus the whole. We can split the middle term of this polynomial. So this is equal to x into sxx minus 6 the whole and we get this is equal to x into x into x plus 1 the whole minus 6 into x plus 1 the whole. So we get this is equal to plus 1 the whole into x minus 60 whole. Therefore the given polynomial x cube minus 5x square minus 6x is equal to x into x plus 1 the whole into x minus 60 whole. Let this be result two. Now after we have factorized the two polynomials we will find the set of common factors of the two polynomials. And as you can see the x plus 1 is common to both the polynomials. We have the common factor of the two polynomials. Therefore we can say that the hcf of the given two polynomials. So this is how we find the hcf of the two polynomials which can be factorized. Let's discuss the LCM of polynomials. By LCM we mean this common of polynomials as the nearest degree all the numerical coefficients will be divisible by the given polynomials. We discuss how to find the LCM of monomials for this of the numerical coefficients of all the monomials. Then in the next step the common multiples of the variables of the variables is the variable which is exactly divisible by each of the given variables. Next step we multiply the results and the products would be monomials. Now consider an example in which we have to find the LCM of the monomials 5x squared y2 z to the power 5 45x to the power 10 y squared z to the power 12 and 40x to the power 4 y to the power 5 into z to the power 5. Now in this case the first step would be to find the LCM of the numerical coefficients of all the monomials. Now in all the three given monomials as you can see that the numerical coefficients are 5, 35 and 40. The LCM 35 on finding the LCM of the numbers 5, 35 and 40 we get that its LCM would be equal to 5 into 7 into 8 which is equal to 280. Next we find the common multiples of the variables of the given monomials and see in all the three monomials we have the variables x, y and z to the power of something. So common multiple x to the power 10 and x to the power 4 would be equal to exactly divisible by each of these. Then the common multiple of y2 y squared y to the power 5 would be equal to y to the power 5 as again this would be exactly divisible by each of these. Then we have the common multiple z to the power 5 z to the power 12 would be equal to z to the power of 12 be exactly divisible by each of these. Then next we multiply the results obtained in these two steps. So we get 280 into x to the power 10 into y to the power 5 into z to the power 12 and this is the LCM given. So when we have to find the LCM of the monomials we would follow these steps. Next we find the LCM of the monomials which can be factorized. For this we would follow certain steps. In the first step we factorize the given polynomials. Then in the next step the remaining and the product of the common factor would be the LCM of the polynomials. That is now considered two polynomials x squared plus 7x 5x squared minus 6x and we need to find the LCM of these two polynomials. Factorize each of these polynomials which we have already done while finding the HCM. So x squared plus 7x plus 6 can be written as x plus 60 whole into x plus 1D whole. Let this be result 3 then the other polynomial x cube minus 5x squared minus 6x can be factorized as x plus 1D whole into x minus 60 whole. Let this be result these polynomials we will find out the common factors. So the common factors two polynomials would be equal to x plus 1. So we write here x plus 1. Maining factors and the C factors which are not common. The two polynomials would be equal to x into x minus 6x plus 60 whole. The given is would be equal to the product of the common factors and the remaining factors. So this would be equal to x into x plus 1D whole into x minus 60 whole into find the LCM of the given two polynomials. In the session we have understood how to find the LCM and HCM of the polynomials.


Today we're going to talk about the 10 things that I think that you need to think about or be aware of before you consider moving to the U.S. especially if you're a New Zealander because there are totally different ways of doing things and you may be surprised by a couple of them. So here we go. We are a family of six. I have moved to New Zealand from the U.S. and have been here for seven years in this channel. We just share what we've learned, our journey and if that sounds interesting to you, subscribe below and hit the bell and you'll get a video every week. I also want to say thank you to Emma Sleepbed for sponsoring this video. If you guys are looking for an amazing night's sleep, check out the Emma Sleepbed. So I've been getting a lot more clients lately asking, they're from New Zealand and they're moving to the U.S. and they want some feedback and some help with that. And so I thought I'd make this video because it really kind of brought up a lot of topics and I kind of summarize it into 10 things that I think that you need to think about and things that are going to be quite different moving to the U.S. And so the first one that we talk about and of course it all depends where you move. So generally when I meet a client I'm like, where are you moving? Because it's every state is different. It's the United States but they're also very different in how they're run and there's pros and cons of each one depending on the topic that we're talking about. So when you're moving to the U.S., what I say to New Zealanders because I understand the culture here is that don't plan on your kids scootering to school, walking to school. Plan on driving them and picking them up from school unless they take a bus. And of course that varies depending on where you are in the U.S. So it's hard to generalize the U.S. because it is a very big place. But I think culturally, like as a New Zealander going there and just thinking that it's okay that they walked on the street or that you can take your eyeballs off your kids, not a good idea. Just generally as a general rule of thumb, not a good idea because it's just not the same. It's just not the same. The safety level isn't the same. It's just, you know, like you don't put little kids on like public buses or not that they do that too much here, but like a school bus is fine. But like public transportation is different. Just know that you're probably going to be driving your kid and picking them up and then running them all around to sports and extracurricular activities because a lot of the stuff that's done in the schools here are done as extracurricular outside of school. And so as parents, generally as American parents, you will run around a lot more taking your kids to things, picking them up to things then I've noticed living in New Zealand because a lot of things like sometimes their music lessons can be done during school or their drama lessons done during school, which doesn't really happen too much in the US. And of course, this is a generalization and this is just my experience. I'm from Wisconsin and yeah, it's cold there too. So we'll talk about that as well. So that's my first point.  We all know New Zealand's expensive, but one of the most shockingly expensive things when I first moved here was how expensive your beds and mattresses are. So since then, I've been on the hunt for a really decent mattress at a reasonable price. So I've checked out the Emma Sleep mattress for you because a lot of you are moving here and it's just better to probably buy when you get here or if you're looking for a decent bed here is my honest review. In addition to the prices being so good for this mattress, we also love the 120 night free trial that you get to test it out and the 10 year warranty on a mattress, which is amazing and free delivery. When my husband and I first tried it, we thought it was a little bit firm, but then as time went on, it kind of conforms to your body and you literally wake up with no aches and pains, but you can order a topper for the mattress if you want it to be a bit softer. I also love that my husband can move around and get up and I don't feel a thing. My community gets an additional 5% off the already sale prices online for both Australia and New Zealand. You're going to want to check it out today. In point number two, kind of going on the concept of driving, you just expect to drive a lot more. Now depending on where you live in the U.S., there is public transportation, but it's not widely accepted like it is in New Zealand and known as a very safe place. So many times when I say that my child is taking the bus home or taking the train home, my family members in the U.S. are like, what? Because it's more dangerous there to do things like that. And the public transportation can be dangerous, especially if they're young. So you definitely would have put a middle school or primary school kid. They're teenagers that might be different. And of course, depending on what city you're in, it doesn't mean a school bus is okay. But just, I guess my point is just plan on driving a lot more. Traffic is a lot worse, you know, depending on where you are. And you just, I just think you're going to need a car. Like I think that people can get away with just taking public transportation in New Zealand, but not the same. Things are farther apart there. And you just driving more often or there's a lot of traffic. So even though it's maybe five minutes away, you could have 20 minutes of traffic if you're in Chicago, for example. So I think that that's quite different. I love that the public transportation is an actual option. Like for me in Wellington, I can take the bus, I can take the train, I can take the ferry across to the city, not quite the same. But depending, certain cities in the U.S. are going to be better. But overall, like for example, if you're from Europe, it's probably a lot better for public transportation. But just in the U.S., not great. So definitely check it out, whatever city that you end up moving to. Number three. Okay, number three, let me explain. There's so many situations, so I'm not going to be able to highlight all of them, but you're going to notice that you'll have limitations because of the liability issues in the U.S. So because it's more of a suing culture, there's a lot of liability, which means people aren't allowed to do things. So like you'll find that kids' parks are quite boring because they can't do a lot because somebody might fall off and break an arm and that's heavy liability. So then therefore the liability insurance is really expensive and then so we don't have it.  That like if you were like climbing a building and yeah, that's not going to go over well because that causes huge liability issues for the owner of that. And so I'm just making you aware, like what you might just think is normal is just not going to be okay. So you're just going to find that there's just a lot of limitations on what you can do. Like even when you go to fun places like an amusement park or Disneyland or whatever, like you can't do that, you can't do that, can't do that because of liability issues. So and number four, you will be inundated with politics, whether you want to talk about it, whether you want to hear about it, you will be inundated on the TV, on the radio, on the conversation with people, people will be passionate, people will be mean, people will be all of these emotions that will kind of shock you about politics. So there's no getting around it. And it adds a whole another level of frustration and stress.  And you just, it's just a, it's a cultural thing that I can honestly say I've lived in New Zealand for seven years is not the same. Like you could choose to talk about politics here, you can't choose there. You're going to talk about it. It's going to be a part of something. People are going to want to know what you think. There's good luck. Maybe some people have figured out how to get around it and it just kind of, and it just kind of is this like heavy burden on you because it's just like it's always there and it's, there's a lot of negativity around it. There's a lot of people saying all these crazy things that comes can stress you out. So just be aware that there's no avoiding politics. And number five, and I hate to break it to you, but you're not going to have a lot of time off at work. The work-life balance, not valued. Work, valued. Time off, not valued.  You don't, you get whatever the company is that you are working for gives you. And some of them do give really good holidays. It's not everywhere, but it's the small majority does it well. The vast, the small minority does it well. The vast majority does not. And so just be aware of that. It's a big, big, that's a big cultural difference. And like expectations at work, I could probably do a whole video on that. So I won't touch on that, but the expectations totally different. Like they'll say your job is from nine to five, but then like you leave at five and everybody else is still there and they're all looking at you and you're like, what's happening? Yeah, cause you're expected to probably work till seven, but you're only paid till five. And if you're late to work, not okay. They're not reasonable.  And like here, that's all reasonable there, depending on your job. Sometimes it's fine. Sometimes it's not. So just be aware of that. They're just much more, you know, losing your job is a common thing as opposed to a very uncommon thing in New Zealand. So just, it's just, there's so many things I can probably talk about this, but let's just talk about time off. Time off, you're not, you're going to get maybe two weeks and you're not really expected to use them. Okay, number six, similar to the time I kind of hinted on this is like, they're not easy going. They're not relaxed about things.  That's the attitude. So it's just like, so what that does is like, you can't be late, you can't miss the deadline, you can't, you know, and so it puts this whole extra stress. So here, like I remember once being late for work in New Zealand, they're like, oh my gosh, oh my gosh, I was in traffic and they're like, oh, no worries. And I'm like, wait, what? You know, and so life happens and it's not all situations, but in general, like I know how laid back New Zealanders are, and it's just not going to be that way. It's going to be very fast paced. People come and go really quickly. Let's say they come over to your house and they're going to leave in a half hour. They're not staying for four hours or overnight, you know, like kiwis are very hospitable and very, you know, just stay and enjoy and share and things don't have to be perfect and it's not quite the same. So they're just not easy going. There's so many scenarios I could talk about about that, but not easy going. And number seven, the stress is a lot higher. So with the easy going and not easy going, then the stress is a lot higher. And it's a lot of things. It's the negativity of the news. It's people carry guns. There's guns around. That's stress. Some states have open carry and you can just see it. What you're hearing is a New Zealander in the news in terms of school shootings. There's a lot, right? But there's way more that actually happened that you know when you live there. And so you're just kind of in this constant state of like, am I going to the movies and going to get shot up? Am I, you know, am I going to go to this big concert and like there's actual worries about that happening or even running a marathon? Like so many situations have happened. And so it causes this whole, whole level of stress that I honestly don't experience at all here.  So, and that's a big one. Like my clients are like, that's number one reason why they want to leave because they're having kids and they're now having to send them to school and like, are you serious? Like there's an actual chance they go through active shooter training even at, you know, daycares. You know, like it's very, it's this whole another level of stress. So that's definitely something to think about. And like, yeah, just having guns, I think that that's going to be a big shocker for New Zealander is just seeing people with guns all the time. And it's just, it's a different world. Okay. Number eight, be prepared for a lot of holiday craziness. Okay. And it will happen months before the holiday happens. So right now, what are we in February? So there's a, there's, you know, Valentine's is ending. We're, we're gearing up for St. Patrick's Day in March and then, you know, Easter stuff is already out. Like we are, we're already out. So it's so many things. So we're gearing up for every holiday and there's just stuff that you can buy to put in your house for every holiday. And everybody goes crazy about the holiday, which actually causes a little bit more stress because there's now there's expectations that we do something or that we buy something or that we participate in something. It's just be prepared for holiday craziness. It's just up a couple of matches compared to New Zealand. And number nine, be prepared for the food to taste quite different. And there's going, there's literally a lot of ingredients and very common snack foods in the US that are literally banned in Europe, banned in Australia, New Zealand, like not good for you, but somehow, you know, they're okay in the US because I'm going to get me started anyway, but just plan on the food. Tasting different produce will taste different. Eggs taste quite different. Things are going to taste different. And when you go out to eat, it's huge quantities, lots of salt, very sweet. I mean, good. Don't get me wrong. Like it's good, but not always good for you. So just be aware of that. Everything is going to taste quite different to you in the US and just probably become very aware of what's in the food there. And you actually have to care about that. Like in New Zealand, I don't really care about that. Like everything's, everything in New Zealand is relatively organic compared to like what you're getting in the US. Like if you go to Walmart or whatever, it's not.  Um, so just become aware of that to educate yourself and the additives that are all put in a lot of the snack foods in the US and that anywhere else in the world. In number 10, I have to mention this. And of course this isn't the case everywhere in the US, but you need to be aware of how cold it can get depending on where you live. Like, and what I mean also is that people function in that coldness. Like they're going to school, you're going to work, you're driving in the snowstorm. You're, you know, it's just, it's very normal. People don't stop doing things. It has to be pretty bad. But if like you're in Florida, which doesn't get snow and then they get snow, then they'll freak out because they don't have, you know, the machines and the resources to handle it. Like you would expect in the Midwest, like, man, it's cold. It's cold. It's cold. And when you have, if you live in parts of the country that have four seasons, it looks quite different than New Zealand. Like New Zealand is green all year. You can, perhaps all year, all different flowers, all amazing gardens all year. That's not the case. Um, if you're in the colder parts of the US. And so depending, think about that. But know that your house will be warm. Okay. Your house will be warm. It's not like New Zealand, the insulation, the heating systems, because it's really cold, really cold. And like all the stuff that you need to get your kids on to go to school or to go anything, it's a, it's a whole thing. Or even when the snow melts, it's, oh, the spring is crazy. So yeah. So be aware of the cold and be prepared for all of kind of the stuff that you need for that. So, you know, I can help you with that if that's the case. Really, I can help you with any of this. So like if you are finding that you're moving to the US, go ahead, book an appointment with me. I'm happy to talk about it and give you some insight because I really think that would help. It always helps to have, you know, a little heads up in going, so there's so many things that are new. But in order to function and to do really well, I can definitely help you.


When the Narcissist hits rock-bottom many people experience rock-bottom Where they are forced to recognize the existence of something Where they are forced to accept that if they don't change their crisis is only going to continue and They don't do it because someone else is telling them to They do it because they know that they need to it takes a lot of work But gradually they will recover from this Narcissists also have their own rock-bottom. They are addicted to attention. They are driven by validation and admiration They will do whatever it takes to get it They will be very angry or depressed if they can't have it and Yet they will deny the existence of this addiction They will attempt to explain or justify their behavior Or they will blame everyone else They are very impulsive They do things without thinking Because they're only thinking about themselves They have no regard for the feelings or desires of other people They have a poor ability to manage their emotional responses They will often experience sadness, anger, irritability and frustration They are far more miserable than the average person They are far more unhappy and uncomfortable Their lives are filled with anxiety They cannot deal with criticism They have a fear of being abandoned They have a fear of being exposed They have a fear of losing their power. They are constantly worried tense and afraid But they are always trying to fight against it They are always trying to defend themselves against their own anxiety Their defense against their own anxiety comes out as grandiosity They have to be impressive and opposing in appearance or style They have to display a pompous superiority and pretentiousness It also comes out as entitlement But they have to believe that they are inherently deserving of privileges or special treatment They will be arrogant They will experience violent uncontrollable anger And this is all designed to protect them It's very difficult for people to deal with And it is also very unpleasant for the narcissist It causes some discomfort and unhappiness Which is why they are so unfriendly and inconsiderate Narcissists are very vulnerable people But they cannot be vulnerable with you Instead it comes out as rage It just makes them really angry Because their own vulnerability being displayed makes them feel disgusted It triggers them to reflect on their shame It is not uncommon for a narcissist to hit rock bottom Many of them end up in prison Many of them lose their jobs Or their relationship hardly leaves them This is the narcissist's idea of hitting rock bottom Where they can no longer charm their way out of it But the reason why they engage in this behavior for so long Is because there wasn't any consequences There was no one welcome or unpleasant result or effect of their actions They were given chance after chance People believed in what they were saying People trusted them Narcissists are also more likely to hire a lawyer To allow them to escape from a difficult situation So even after all the bad things they've done to people They always find a way to get away with it They always find a way to dodge the consequences When they do something wrong They always find a way to shift the blame onto someone else They always come out with an undamaged reputation In spite of scandal or misjudgment They always find a way to convince people to believe in something Or they will force them into submission Until everyone believes that someone else is responsible for the narcissist's behavior But there are situations Where there is no amount of money or power that can help them There is no amount of lawyers that can save them from the difficult situation There is nothing they can do To get them what they want most And what they want most is to be a part of a family They want to have the perfect career They want the perfect image and reputation But many narcissists do hit rock bottom Where all of this goes away Some narcissists who hit rock bottom Will try to make meaningful changes While others will spend the rest of their lives Being bitter and resentful Feeling as though they have been treated unfairly They will be mad at the world They will play the victim role And they will be full of rage They end up alone With no friends or company Where they are very angry They have minimal contact with other people They burned all the bridges So unless there is money involved People don't want anything to do with them But there are also a very small number of narcissists Who hit rock bottom Who do become self-reflective They gain the capacity to introspect And learn more about their fundamental nature and essence They recognize the problems that they have created They recognize the problems that they have created They recognize that they are the cause of it They become more modest and humble They are able to lower their view of their own importance They accept that they are not better than other people They become more responsible And they may genuinely want to put things right They may want to correct the mistakes that they have made They may not feel the need to be the center of attention anymore They may not be as superficial as they were before Instead of worrying so much about their clothes or hair They may be more focused on what really matters They may be more focused on making connections And strengthening their character They may not spend as much time on social media They may give you more time to talk They may listen to you when you speak And they will begin to find pleasure in the little things in life That they never noticed before They will become more appreciative They will be more grateful for what they have But to do this They have to understand the importance of empathy and compassion They need to understand the importance of showing concern For the sufferings and misfortunes of other people They need to want to help people who are sick, hungry or in trouble Rather than looking down on them Rather than treating them with contempt They need to be able to regulate their own emotions They need to be able to self-soothe Even if the narcissist does hit rock bottom It is highly unlikely that they are going to take a direct course To mean it on purpose If you are with a narcissist Do not waste your time waiting for them to hit rock bottom In the hopes that they may change If they fall They are going to take you down with them They are not going to drown alone You cannot confront the narcissist You can't tell them that they are arrogant and entitled You can't tell them that they have no empathy Even if you try to confront them on this The word salad would go on forever Their monologue would go on and on for the rest of the day When you confront the narcissist on anything All you are going to get is unintelligible, extremely disorganized speech Because they have a mental disorder They cannot use logical reasoning You will find yourself trapped in another emotionally driven conversation Where they are dismissing everything you say Or trying to shift a blame onto you They are never going to look at themselves long enough To make any positive changes So don't waste your time confronting them Don't waste your time waiting for them to hit rock bottom They might hit rock bottom at some point But that doesn't mean you are going to get the result that you want They might just try to take you down with them They might blame you for their fall Thank you for watching I hope this video resonated with you Please like, comment, share and subscribe If you would like to donate My PayPal link is in the video description Coaching Inquiries You can email me at coaching.noxify.uk Thank you for watching and I'll talk to you soon


So, last time we were talking about linear programs and I showed you that I said I defined a linear program as simply this minimizing a linear function over a set P which was a polyhedron, P is a polyhedron. This sort of problem takes the form in general takes the form minimize C transpose X subject to AX less than equal to B. So, the constraints that define the polyhedron are these. So, the set P is X such that AX is less than equal to B. Now, this is what is called the half space representation of a polyhedron, half space representation what does that mean? So, if I give you a poly the way I am defining for you a polyhedron is through the half spaces whose intersection if I take gives me the polyhedron. So, this is for these are for example, this is my poly I have drawn the polyhedron and these are the half spaces that define.  Now, the thing that I want to show you today is that actually there is another way of representing a polyhedron which is the another way of representing the polyhedron which is which came which we saw we saw that actually through what is called the Minkowski Weyl theorem right. What did the Minkowski Weyl theorems say Minkowski Weyl theorem said that P is a polyhedron this is equivalent to the claim that saying that P is a polyhedron with at least one extreme point that is equivalent to saying that P is the convex hull of its extreme points plus plus the cone generated by its extreme rays extreme points of P and the extreme rays of P. Now, if I if I if the polyhedron is bounded then this term here which we comprise of the cone generated by the extreme rays this term is just a 0 and then P is simply the convex hull of its extreme point. So, if a polyhedron if you have a bounded polyhedron that means you have a polytope and a polytope is simply can be described as the convex hull of its extreme point. So, this set here the way is actually a poly is actually a polytope and it is every point in it can be written as the convex combination of these 5 points these extreme points right. So, so this now this way of representing a polyhedron or a polytope more specifically this way of representing a polytope as not through the half spaces that define the polytope, but rather through the extreme points these extreme points, but this way of expressing a polytope is what is called the vertex representation. Now, what I will show you now is that if you had the vertex representation of a polytope the problem linear programming would be very easy it would be very easy to know what the optimal value is and come up with at least one solution for your problem. Now, if you the so what that would mean is that the challenge in linear programming is that we do not is in coming up with the vertex representation right. So, you are given usually a problem that is in the half space representation you know the polyhedron is defined using the half spaces that that that form the faces of the polyhedron that is the and for and what we do not know is where the vertices lie they have to be computationally discovered as part of the solution method is clear. So, the all the so solution method is effectively trying to find or enumerate the vertices of the poly extreme points of the poly that is. So, let me let me just show you why this is the case that if you had the work place representation or if you more generally if you had a representation of if you had a description of all the extreme points and the extreme rays of the polyhedron then linear programming would be trivial to solve. So, let us let us just look at this. So, this basically so in order to talk about this let us first let us just get an intuitive picture first. So, I will just draw a neater diagram of the same thing here. So, I have suppose a polyhedron like this is this is my polyhedron and I am optimizing a linear function over it. And now let me plot. So, this is my polyhedron it is in some space say let us for simplicity here it is in R 2 I what I am going to plot is the contours of the linear function that I am going to optimize. So, I am going to plot contours that look better of the form that so this this contour here this is some C transpose x equal to k x is such that C transpose x is equal to k for a fixed constant k. So, what this means is take any point on this contour and the value of the objective on that for that point is k. Now, you can draw this contour for these kind of contours for various values of k. So, you have this is this is k dash this is k double dash etc etc. Now, what do you what can you observe about a contour like this. So, let us keep our focus on this one let us look at this contour what can you observe about. So, it intersects the feasible region that means the polyhedron over which you are optimizing it intersects the feasible region here. These are in this this is the interest. So, these are all the points that are in the polyhedron and give you objective value k. Now, question is are any of these optimal can any of these be optimal the the one can any of these give you the minimum value of k. Say if you think about it a little bit you will realize that it cannot be optimal. I do not need to tell you what the value of k is for that whatever be the value of k these cannot be optimal. The reason is because this is a linear function it should be that the function either increases in this direction or in this direction. So, nearby here either to the north of the function either above this contour or below the contour you should be able to find a value that is that is either greater than k or less than k. So, you should be able to get values k plus minus delta for in you know small enough delta in the by perturbing this contour a little bit and by perturbing the contour a little bit you are not going to lose feasibility you are going to still be inside you are still going to have points in in p. So, what this means is a contour like this cannot comprise of optimal solutions. So, suppose for example, since I am talking of decrease minimizing the function that is let us suppose that the function is decreasing in this direction. So, this is the direction of this is the direction of decrease of the function C transpose. So, which means that if I as if I look at a contour here or a contour here etc as I go in this direction I will keep getting lower and lower values of k. So, what this means is in order to optimize the function I need to search in this direction. So, I need to look for a smaller contour with a lower value of k and a further lower value of k and then finally it should happen that I eventually get to a point like this. What sort of point is this? This is the point where the contour just passes only through my extreme point right the contour just passes through only my extreme point. Now, if I if I look for a value of k that is even lower even lower than this then I will not I want the contour will not even intersect in the the feasible region right. So, then you are that is that is the value that is not even feasible. So, below this if I look for a contour that has value less than this is not going to intersect the feasible. So, what is this observation tell you that this observation tell you that that there must be a solution of this linear program of minimizing C transpose X over this polyhedron right. If you look at that linear program where you are minimizing C transpose X over this polyhedron there must be a solution of this linear program on an extreme point of P right. There must be at least one extreme point of P that is the solution of this linear program. Now, it can happen that there can be multiple for example you know it can happen that the contour is shaped in such a way that you know when it actually passes say for example let me draw it here the contour has a is the slope is such that it when it passes through this extreme point it actually coincides perfectly with this phase with this edge here right. And then therefore it will end up passing through this extreme point as well. So, in that case both of them will be optimal solution. In fact, all of these will be optimal solution that can also happen, but there will at least be one which is an extreme point and an optimal solution right. The main lesson here is that the thing that we expect from a linear program is that let us say consider the case where you have only optimizing over polytopes that means you have over bounded polyhedron that the kind of the nature of solutions that we expect is that there is going to be a extreme point that is that the solution right. So, now come back to this way of representing this thing that I mentioned which is representing a polyhedron using its vertices or using its extreme points alone. So, if someone gave you not these constraints like this not the constraints Ax less than equal to b, but rather a vertex representation that means a list of points that are the extreme points of your polyhedron. Then optimizing the linear function over that would be trivial. You would have to just check go through the list, enumerate the values of c transpose x for each of those extreme points output the least that would have that would have optimized the right. So, the challenge in linear programming comes down to precisely this issue that we do not know where the extreme points are and they have we do not know means that we know them implicitly we know that they are extreme points of this sort of set, but the exact formula for them or the exact values of them have to be discovered by doing some calculations and some on top of this these constraints right given these numbers right. So, they have to be discovered as part of the from the problem data. Is this clear? Any questions about this? So, now let me answer let me address the more general case suppose you have not a poly tau, but you know a general polyhedron which is which could also be unbounded and okay. So, let me address that and so let us try to let us just write out a theorem here. So, let p be a polyhedron at least one extreme point consider the linear program minimize since minimize c transpose x, so the x less than equal to b and suppose the optimal value of the LP is finite, we are talking of an LP where you are minimizing the objective. So, the optimal value of this LP is finite means that effectively it is not minus infinity. So, it is definitely greater than minus infinity that is what it that is what it means right. So, you cannot keep getting lower and lower as low value as you like that sort of thing is not possible. So, that is the sort of case we are considering. So, let p be a polyhedron with at least one extreme point and we are considering an LP whose value is finite. Is this clear? Then there exists at least one extreme point right to write p is there exists at least one extreme point of p that is an optimal solution of the LP.


This is a supine cadaver. I'm standing on the right side. The camera person is on the left side. Just to bring up the speed, these are the two kidneys. This is the inferior vena cava. This is the abdominal aorta. And we have cut the inferior vena cava here where it was entering into the liver. The classical teaching is that the renal arteries arise from the abdominal aorta just below the level of the spherymesic artery. But here we see that the renal arteries are different. So let's start at the right side first. I have lifted up the right kidney. And we can see, first of all, this is one renal artery arising from the abdominal aorta. This is number one. When I lift up the inferior vena cava, you see yet a second renal artery. This is the second renal artery coming from the abdominal aorta. And we see a third renal artery also coming from the abdominal aorta. So we see three separate renal arteries coming from the abdominal aorta and entering into the kidneys separately. So let's trace them once more. This is the first one. And we can see it is coming across and it is dividing into two branches. The second one is this one. It started from the abdominal aorta just below the first one. And it went across and it went to the posterior surface of the kidney here. And it is also giving this branch which is coming to the anterior surface of the kidney. And this is the third one. The third one is something unique. We can notice that it is running behind the ureter. The traditional teaching is that the ureter is supposed to be the most mysterious structure, the pelvic calcium system. But here we notice that the third renal artery is behind the ureter. Furthermore, the renal artery as we know once it enters into the kidney, it divides into five segmental arteries as shown in the accompanying angiogram. And the segmental arteries are as follows in a normal circumstance. We have a superior which goes to the upper pole of the kidney. We have an inferior which goes to the lower pole of the kidney. Then the anterior branch divides into an anterior superior, anterior inferior and then we have a posterior segmental artery. So this is the traditional five segmental arteries. This is the right renal angiogram to show the five segmental renal arteries. Let us see how those five segmental arteries relate to this distribution because we have already seen there are three separate renal arteries. So therefore this first renal artery, this branch corresponds to the superior polar artery. This one corresponds to the anterior superior branch. Then the main renal artery that we trace from here, this goes as the posterior renal artery and it is going on the posterior aspect as we can see here. But it is also giving this branch here. This corresponds to the anterior inferior branch. We also notice that the main renal artery which we mentioned, this one is giving this branch here. This is the right superior glan. This is the artery from the renal artery going to the right superior glan. And the last artery that we picked up here which we said goes behind the ureter. This corresponds to the inferior branch which goes to the inferior pole. So this is how we can relate. The kidney as a kidney ascends up during embryonic development. It is the posterior most structure and therefore the renal vessels, they are all located in front and the pelvic system is located behind. But the fact that this renal artery, the ureter is running in front, it indicates that this particular renal artery and this portion of the kidney developed in a different way. And this is in a strictly speaking a postulate. Now let us take a look at the vein. As I mentioned, this is the inferior vena cava. And we can see that the inferior vena cava is giving rise to this branch here, which is the main renal vein. And the renal vein immediately is dividing into two principal divisions and it is dividing further and it is entering into the hyalum of the kidney. And finally, as I mentioned earlier, this is the renal pelvis and the chelicis. This is the hyalurotrophic kidney, therefore the pelvic chelicis system is hyalurotrophic. And we can see the very widely dilated renal sinuses and these are the pelvic chelicis system converging onto the renal pelvis. And this is the pelvic uretric junction and we can see the ureter is running in front of the lowest branch, the renal artery. So this is what we see on the right side. Now let us take a look at the left side. Left side kidney is also hyalurotrophic. We will start with the left renal vein because the left renal vein as we know is longer than the right renal vein and it is located in front of the abdominal aorta. So this is the left renal vein. The left renal vein is dividing into three branches. One branch has been broken here because it was thrombosed and we can see the other two branches which are entering. We notice that the left renal vein is receiving this vein here. This is the vein from the left suprarenal gland and we know that the left suprarenal vein drains into the left renal vein and it also communicates with the left inferior phrenic vein. We also notice the left renal vein is receiving these two veins. These are the gonadal, in this case the disticular vein. There are two in this particular cadaver. Having mentioned the renal veins, now let us come to the renal arteries. So again, let us start from the abdominal aorta. We see this artery. This is the main renal artery and the renal artery as it comes towards the kidney, it divides into two branches. One branch we can see is this one. This is going on the posterior aspect and this is the anterior branch which we have cut which supplies the anterior surface of the kidney. Then we notice yet another branch coming independently from the abdominal aorta and it is this one here. This one is arising from the aorta approximately at the same level as the artery on the other side. And it is going again behind the ureter and it is going to the lower pole of the kidney. And this one we can see is accompanied by a completely independent renal vein. Part of that is visible here. So therefore again to trace the segmental arteries, this being the main renal artery, the anterior branch. This is the anterior superior. This is the anterior inferior. The posterior division, this portion is the superior polar. And the rest of this is the posterior branch and this branch independently is the inferior branch. So that is what we can postulate about the segmental distribution on the left side. And finally again to conclude, we can see this is the pelvic keli-steel system and this is the renal pelvis formed by the union of the major and the minor keli-sis and this is the pelvic ureteric junction. And again on this side also we notice that the ureter is running in front of the lowest branch. The clinical significance of this is that because the right kidney is receiving three separate renal branches, if one or more of these branches get blocked or there is any pathology, there will still be blood supply from the other branches. And the embryological significance that we postulated is also another possibility that we should keep in mind. So these are the findings which I wanted to show to you on the renal sinuses and the renal hyalum on both the sides.


So you're Raiden's brother? We are partners in Earthrealm's defense. Are you also partners in incompetence? Fight! The future of Lama Enforcin'.


I bet you didn't know that there is a big easter egg for the next DLC, the Teal Mask in Pokemon Scarlet and Violet, and you can go see it for yourself in the game right now. Open up your in-game map and head over to Medali. Once you are there, go to the front of the building where you battle Larry. If you look on the building, you will see the exact same poster that was shown in the Pokemon Presents trailer for the game DLC. The top mask represents Fezendipity, the middle mask represents Monkey Dory, and the bottom one represents Okidoki. You can also see another picture of Japanese-style lanterns that match the theme of the first DLC, like this picture of the trainers here. Describe and let me know what other DLC easter eggs you can find because...