Hi for the beginning. I want to say that this presentation will be about clean architecture with for me is really really Exciting and I think that Uncle Bob's book about architecture is also so exciting. It's like criminal book for me I'm a nerd. Yeah, so let's begin Okay My name is Gregor Scotland and I'm from Poland If you find my name difficult to pronounce, I'm from the city of Łódź have a luck But for simplification make life easier. You can call me Greg Eight years of programming in Python is a great advert for me And I'm really happy that I met Python as a first commercial programming language for me Currently I'm working at HDT and I share my free time in by creating local IT community MiGavky IT and dancing modern dress with my wife My goal is to keep commonplace stuff to a minimum While sharing as much as of my experience as possible That's a lot of slides. So I will try to be as painless as possible Now you're going to see this symbol from time to time I Use it to mark the parts. I think are most important that are most important for me So when you see it just wake up for a second For a little warm-up will begin with what's new in Python Anyone using type annotations? Yeah, I love those hands. Okay, great. So for the initiated Python annotations were introduced in Python 3.5 Initially, they only work in function declaration Here you can see that we have our input parameter integer and return type dictionary But let's take a closer look to that return type using dictionary type We can ensure that we won't call an incorrect function Incorrect method on the return value But what does that say us to us from the business point of view? Frankly, nothing. We have no knowledge what to accept from this dictionary and This is my pro tip number one With typing be precise not use to general type annotations how For example with aliases if you have been in previous talks about typings. Wait a second Here you can see order alias are just a dictionary of string key and string or integer values And we can use it as a return type of our function While you gain your doubly tea what is most important for me that we know what is inside this dictionary unordered from Python 3.6 onwards we gain possibility to Annotate variables So we can say that our order name for Europython is a string type Also, we can use our type annotations aliases To annotate order as you can see it is still a simple dictionary initialization nothing changed only the type is set and This is how fully typed function in Python 3.6 looks like However, this sole function definition tells us nothing about The fields inside this order We need to investigate the function body to find out that it has ID and name fields How do we buy past that? With Python 3.7 which places the cherry on the cake for typings. Do you know what it is? data classes Data classes as name implies our classes designed for storing data We only need to define what to store in them nothing more. We don't need to define unit functions We don't need to define string representations that's all you need and We can use instead our alias dictionary this data class as our return type and to create order variable inside this function And this is pro tip number two data classes work very well with type annotations Now we are super precise what we are doing There is no chance that by accident someone will forget a required field and This is terrible this now is fully automatically typed checked and verified Okay, that was that common play stuff that I want to keep to a minimum now. Let's talk architecture Let's begin with the big question how to design architecture With the idea of maintaining it for the next 10 years this is really important because Usually we change our job every few years and we forget that those applications will be still developed by other people and Keeping that in mind is important because maybe just maybe we'll get lucky and those karma came back up to us So how to achieve that? with clean architecture Clean architecture puts the application domain in the center of our application not the database It considers Database a part of the outside world. So what is application domain? It is where we implement our business logic and how we want to communicate with this outside world nothing more So let's see how to do that. It's time for coding We create a simple microservice with free responsibilities free use cases create order view order list and last night, but least our most important Fisher Fisher cash cow adding existing item to order I Like you to show the code that I will that I prepared for the demo. You will see later and this code is based on real production application and Those are steps that I take to prepare this code We'll begin with data definition or entities, which is data that we'll be working on First we implement base entity, which is not much as you can see But when we create our first real entity data class client it will inherit from our base entity But there is a small difference between the earlier data classes and this one Here we add frozen equals true parameter What does that do? For instance if we create me Gregor and someone will try to say hey Gregor now your name is Alice Python will protect me and say frozen instance error or no So this is called immutability an instance once created cannot be modified and Is it difficult? Oh, sorry And is it difficult to use frozen data classes? No, is it It will be useful in our demo also not so Why? Well Because immutability can be handy when our project gets bigger and bigger and we want to add Multi-processing or trading so concurrency Then immutability solves a lot of problems And for now it is important for you to remember that adding immutability to existing code base is really difficult It is far easier to start it from the beginning Okay, but let's go back to our entities We can add product definition also a frozen data class and the most complex one Order ID created Client as you can see we can use our order other Data classes as our type Total cost here. You can see how to define default value and items What can we say about our items without type? Not much Usually we need to dig through the code to find where and how it is initialized to find out It is a list or a dictionary or some other class instance and what methods we can run on it but By having well-defined types like this one We know for sure that this is a list of product class instance instances And if you want to say if you want to set an empty list as a default value We need to use field default factory like this one. Okay, that's all about entities Let's move on we'll implement some business logic called use cases Our order logic class Have three methods free use cases Create order for client ID and return order instance search for client orders and return them in a list and Finally our most important feature that earns us money add product order and return updated order instance But those are operations on a database. So should we start using database? It's a time to introduce Any guesses no an abstraction and This is pro tip number three Each time you have to communicate with outside world like database use an abstraction for that As you can see between our application and database We have an adapter and inside domain as I mentioned at the beginning We can define only how it should look like nothing more everything else is outside So in programming we create application Interfaces Sorry abstraction we create by creating interfaces like this one So we have a class I client repository where I stands for interface with two methods create and get and Both of them returns client data class To mark them as interfaces in Python views ABC package, which is a part of the standard library and Interface does nothing. So those function bodies are empty in exactly the same we implement prepare our iProduct repository and Of course at the end our order repository create Get and for the first time save we want to store some data and search With optional argument client as you can see we must strictly mark that our client's Argument is optional only by doing so we can pass non-values to it and We are returning of course list of orders that was found Okay, we define how we want to communicate with this outside world now We can go back to our logic or the logic class We need to pass all those interfaces in our init function So we can use them later But to mark to make our life easier. I use inject decorator Which is a part of injector package? that Does that for us? This is pro tip number four When we add an abstraction to our prior project It is good to be able to manage it somehow. This is the injector for This injector use dependency injector injection well known in type word and By using it we can configure how we want our instances interfaces to be created So we don't need to do that manually each time injector will do that for us So each time you want to create order logic instance injector will pass all those arguments and This is quite simple example with only three interfaces But imagine what will have what would happen if we will have over a dozen of those interfaces Creating all of the your instances managing them manually would be a terrible terrible Believe me, you don't want to be in that place Okay, so we have our interfaces we can now implement our first method search first we get our client from client repository and then We use it in orders repository to search and that's it search is ready create We've created we do the same get client object and search by client in and Create an order in order repository And as usual at the end our most important that product we get an order We get an order and product from these repositories and We want to add product to an order But what does strange construction fear as you remember we marked our data classes as frozen So we cannot modify them But we can replace them and we can do that with replace function first argument is our old instance And in quirks we pass only those arguments that we want to replace in our case we are adding new item and increasing total cost And of course at the end we want to use save to our new replaced order Okay, we did a lot of work wrote a lot of code added abstractions we use our dependency injections strange things in Python and All of that just to add single item to an order Why bother? Why do that things? Let's write some unit tests to find out We have our test name test at product increases total cost and This is pro tip number five use expressive names of tests Write them in a way That after reading all of them they will create a story a story Comprehensible for newbies and ignorance There are many benefits of doing so We are forced to create smaller test We can see where we made mistakes by only looking at failed test report and we create a living documentation of our application and To add product we need our interfaces. So using pie test. I create a fixture that returns static repositories And they are returning always the same object As you can see the return type of this couple are those repositories and I use alias for it and Passing this terrible Tappel to 20 or even more test would be a terrible ID You will start hating typing if you will do so. So aliases are made for such situations when we have such complicated tappels that we want to return or other complex objects and This is my pro tip number six. Aliases really works here. Well Okay, but let's go ahead and write this test already. I Personally hated writing test When I have to write three hundred lines of code just to test three or five real code Of our application of my application. It was a terrible nightmare. And if you heard someone says that he hates Units testing it is probably because he never see a test like this one Bump three lines of code That's all you need when you do clean architecture the right way First initialize logic Second call the logic and third validate the result We need a bunch of those to cover all corner cases of your application and other use cases This is really really easy and really nice to write Okay, our cases are written and well tested So now we need to implement our interfaces. We need to work on data So is it already the time for a database? No, no, no, no It's time for a repository and Wait for it memory Now we will literally prepare our own database implementation sounds easy We'll do that in a single class named RAM storage. It has internal storage type, which is a simple Dictionary Here you can see some strange type in construction when I first seen that my head went kaboom and So let's go step by step to figure out what it's going on First we declare T Which is a type variable so we can put some variable in place of T then we create storage type with integer keys and T values and Finally we inherit in our RAM storage from generic T What does that mean? When we create an instance of RAM storage like this one We'll replace all T in the first instance with client type and for the second instance with order So for the first insight inside this internal RAM storage We can only put variables of client type. We cannot mix them These guys this gives us a great control over what we are storing in our simple database and To be honest that was the scariest part of this talk, so I'm happy that you are still with me In our database, we want to implement such methods add Add an item to dictionary. You know how to do that, right? Get get an item from a dictionary for a given key search filter dictionary values Remove remove an item from the dictionary all return all values in form of a list and That's neat and that's all you need to create our own database implementation in Python basic dictionary operations So now using this simple storage we can implement our repositories reds. Let's start with product repository we have internal RAM storage of course, we mark them as product types and Inside get we just call RAM storage get get and Check if the result exists if it does return value if not rise product not found exception That's how we can implement all of our repositories But as you can see it is quite boring. So we will skip that part But I will provide you the link for the github repository so we can preview all of this later Okay interfaces check Now we'll expose our business logic to the world. We will prepare an API and And for this we can choose our framework and This is slide number 77 and protip number seven originally not now and The pro tip is don't choose your framework at very beginning now We know how our application looks like we know our use cases We know how we implement them and we can make an informed decision of what framework to choose My decision was flask and connection You probably familiar with flask, so let's go take a closer look at connection With connection you can use a young file to describe how your API will look like Here you have order search, which is a get method and it will be handled by operation ID our package and point search of course, we can have More description in here like input parameters response template and by doing all of that We can preview our API in a form of a nice UI Like this one in connection. We define how our API will look like Now I will show you the whole implementation of our endpoints in One slide. I only skip the imports nothing more Okay Search first argument logic second client ID. We want to return list in the order return Lodzy logic search client ID equals client ID. That's all Create first argument again logic here. We have second argument body This is how you received put and post body JSON data and body Logic create client ID equals body client ID Again, that's it and finally add product Again argument and return logic at product order ID product ID. This is the whole implementation of That connects API with our business logic Those more familiar with flask probably wonder where this logic Come from this order logic type because usually in endpoints. We received arguments that are passed from request Well, this argument is injected by injector To make our life easier. I use additional small package called flask injector It wraps all of our endpoint functions with inject decorator. So we don't need to do that manually To configure it. We need to pass our application and modules modules are a list of configurations of injections to configure such configuration of injections we need to inherit from modules from injector module and Overwrite configure method Inside it we use binder to bind order logic to order logic That's an easy case. So Let's take closer look to a more complex one Hey injector each time I Ask for a client repository place kindly give me an instance of client repository and Of course, this is our implementation in memory. So we want to share the state So we say The binder set the scope to singleton. So the instance will be created only once and That's it The second freaky freaky thing Is return type of each function in flask? We need to return data that is series a series Serializable dictionaries strings integers simple types order data classes Are not serializable. So how does it work? We do response serialization automatically Generally we can do that by inheriting from JSON encoder and Usually we are using that for saying that our date time instances or date instances Should be converted to nice ISO format So we can do the same with our data classes. For example client Each time We receive our client object will convert it to the nice dictionary Of course doing such thing for all of our entities in production application will be terrible So we can do that in a smart way only once Do you remember all of our entities inherits from base entity class that does nothing? but we can use it now and code code out our all of our entities in one place and convert them easily Okay, at the end we need to also remember to Call the default implementation because serialized serializers are called recursively Okay, that's all about API When we go back to this picture there is still One piece missing Borders Each color change is a border a border that's need to be protected We run tests to check if our code works we run black to check if our code code looks good and We also make do something to protect our borders and this is pro tip number 8 do it How? We can protect our borders by creating project structure that supports that Here our domain logic and interfaces are in the shop directory interface implementation and RAM storage is in RAM DB and finally flask in API But that's not enough. We can easily import from around DB or API in our shop in our application domain so we can go one step further and Create a package for each of those directories Now we have separate dot pi and what's most important separate requirements We can call them microlips so now we have 100% sure that no one will import the flask or RAM DB inside of our shop inside of our domain Of course, we can still add something to our requirements But adding Modifying requirements should be always considered as dangerous. So we usually keep Pay more attention to that But installing so many microlips in Dev environment can be painful. So that's why we can create Generic setup dot pi that can install them for us automatically and I will not show you that but you can also preview that in the github repo It is also there will be also a link for article where you can find how it was invented Okay, it is time for live demo. I hope it will go. Okay Small change Okay, this is our swagger UI that you seen before Here like a real backend developers. We can click and see how our response was defined and we can set client ID click try out and see that our URL was Executed and we have response body. We can see that Guido is one of our customers and he has one order With no items and total cost zero So now we can add some product to his order We have order ID one product ID one try out and Bum Guido has now a phone we can call to him Also total cost was updated as accepted and When we go back to our get and call it again, we see that this order is updated also here So we can try to add another product product ID to And we can see that we have also bought a nice new graphic card, which is quite expensive But what's most important that total cost has increased and simple math in our project works. That's great but what will happen when we try to break something like Real good testers Let's try something like this Hmm Response code 400 nice JSON message product not found element not found. How does that happen? As I promised, I was showing you all the code as you can see here are endpoints only Imports were missing but here is everything like in slides When we go to our ad product logic, it is also look familiar injector in it function ad product But when you go deeper In product to product interface one thing becomes apparent the return typed Thanks to spending some time on designing this architecture I design that all of those interfaces must always return an entity So inside the implementation If our product is not found we rise product not found exception. You see you saw that on the slides So how to convert this? Exception to nice json message. So we need to go to the our mine file where we define and Configure our flask API our flask API Here you can find the connection. We are adding this young file that you describes how our API look like Here we configure flask injector and the json encoder But one thing is new Here you can see error handler That code that checks if one of our endpoints doesn't end with element not found exception and if it does It convert it to nice connection problem object that renders this nice json message so That's it. The application is works. What are benefits? First of all business logic independence Hmm, we don't care probably about that but this implies very important thing to us is of technology update and change and This one give us the power to maintain our application over next 10 years We can easily update our framework. We can easily change our database as you can see We don't even have a database and it works So we don't need it. We can change it. You can update it. We can do everything we want with our technology Clear and secure borders and that's give us a power to maintain our ease of technology update Technology chosen based on knowledge as I mentioned We choose our framework at very end and we make conscious decision of what framework to choose Fast prototyping and proof of concept. I was creating this for like this second time this up This such kind of application and it took me like two hours only to prepare this demo and it works We can test it. We can prepare front-end for it and what is most important? We cannot send it to production Because if we run it in production and restart it with all begun because as you can see We have running the bugger here If we restart application If works and we refresh and it doesn't work client ID try out nothing the state was restarted So we cannot deploy this the production ease of testing you see three lines of code and We only installing the required Packages so this is important for example when we have workers we have API and We don't want our API to be installed on worker docker image or our worker Libraries in our API we can split them easily and to sum up for me architecture is a set of conscious decisions and Clean architecture is a way to import to Delay those important decisions further reading If you want to learn more about clean architecture, there's a great book by Robert C. Martin clean architecture and there is a Micro-lib article on medium that inspired us to create borders with If Python and I have one question for you, can I make some selfie with you? That's okay okay Thanks, thank you very much That's it for me One more thing if you have any suggestions won't ask me some question privately you can mail me you can tweet me I really will respond and please give me a feedback It is really helpful for the next presentation and here is this the link for the PDF with Slides and also the code Okay, thanks Thank you. Great Do you have question? So you say You start with with model and in the Python code and And then you choose your framework. Do you think Django will kind of go that way and integrate that Into its language and I mean after all one day Python 3.6 will be obsolete and then we can focus on 3.7 and do the same thing here And we have the choice. I mean we can go directly with Django and okay. It's nice to have flask in the end, but Yeah, what I mean could be the same solution with Django right away. Do you think that will happen? So two answers first of all, I don't start with model It is really important to remember that entities are Totally different thing that model For example, we had one entity that was saved in two different databases so we have one table and one Some kind of data table that were used to store only one single Entity so entities are not our models. It is different thing and for the Django part Well, it is difficult to use clean architecture in Django, but it is not impossible Well to prepare clean architecture in Django, you need to do some conversion between objects and Django or M models and you need to do the do it many times, but it is possible But it's not very easy Django is not Well prepared for that, but we have a bunch of other frameworks Not only flask, but also for example new framework fast API that looks really great and support sniping Hello, thank you for a good talk. I have a question about the order of your designing. I Would personally start from the API points and then Make any thoughts about that. Can you repeat because I didn't hear what middle part? Oh, yeah, so you started from designing Entity types and business logic. Yes, I would personally start from an API and points and if I'm not wrong this connection library can even define types of Input and output and validate them so maybe you can skip the Python typing part So that's why I mentioned the fast API framework because it do it nicer way You don't need to define your YAM file to define how your API will look like you will do that only by using type annotations So this is really cool feature that I like. I didn't try it yet but when I go back home, I will do that for sure and This will be much easier why I didn't start from creating an API is because it is easier to break rules of architecture when you start from API It is easy to break some borders So that's why we start from creating our business logic because we create it only using Python and nothing more We use injector, okay, but nothing more and we didn't use any extra requirements for that So there was no issue that for mistake. We import some global state from flask on etc The question is there a reason you don't put any methods on the data classes I mean you had this order class and then order logic but if you just like I don't know then you have product and product logic and As long as that does not get too big some small like like if it's only a couple of methods Do you usually put that there or well this this this is my personal experience? Why I didn't use any methods in data classes. I Had a really bad bad experience when we put a lot of logic inside our SQL alchemy models And it ends up really badly when we couldn't modify anything in our application And what was worse when we decided to move outside of SQL and to use some non SQL Database so it was really painful back then So we decided to also create this small border that we will not put any logic to our models it's because When we do so it's sometimes We sometimes want to do some hacks and add some extra methods Astrologic to to data classes because it's easier right now, but but but after Doing so we can end up with Very familiar with us leg legacy code That's how we create legacy code by Creating more methods in our data sets Time for a last question. Okay Hi does object not found exception exists in swagger declaration It by connection Now this This you ask about this. Well, this is the exception that I wrote and all the other Exceptions inherit from it. Yeah, and it is exist in swagger declaration. No, no, no, it is also it is in defined I believe in Yep, this is also defined in domain. So how our Exceptions are is this also the part of the mind domain and it's not connected to connection at all Okay, thanks Thank You Greg We can proceed with


Hooded Copper Commander 788 here and it's been a while since we've done one of these mid week videos and I just kind of missed doing it so I thought I would throw a quick shot up for you. Also we've looked at a lot of late 80s and 90s figures so I wanted to go back to 1982 and look at a figure from the first series of three and three quarter inch GI Joe figures that I've not done a full review of. This is Zapp the bazooka soldier from 1982. I have the 1982 straight arm version and the 1983 swivel arm version. Now this figure hasn't gotten a full review yet and it may take a while to do that because I have some decisions to make before this is ready to review. The problem with this figure is in the plastic. This light green plastic was some of the most fragile plastic they ever used on a GI Joe toy. It is almost impossible to find a Zapp especially a straight arm Zapp that is unbroken. The hands on my straight arm Zapp are broken. I would normally like to have an intact figure for the full review. However unbroken straight arm Zapp action figures have become so rare that the prices on them have really skyrocketed. He had accessories variants and those accessories were also made in that light green plastic so they were fragile as well. He had three versions of his bazooka the thick handle version and the thin handle version and the two handle version. Now I have the thick handle version of the bazooka intact. It is fine but the only example I have of the thin handle version has the sight broken off and the two handle version I have the front handle broken off of this one. This one has both handles but it has the back end of it broken off so I have the accessories variants but those accessories are broken. On my straight arm Zapp he also has a thick handle bazooka but since I can't put it in his hands I've just used mounting putty to stick it to his backpack. Zapp also came with a helmet and a backpack. This is probably the most frustrating figure to collect from that 1982 series. The figure itself is rather plain it has no original parts it is done entirely in that light green plastic and that color is okay but not the best. It reuses the same head as the 1982 grunt and grand slam but this figure has black hair instead of brown hair. I think I will have plenty to say about this figure when I review it but it was not my favorite figure from that year by any stretch. I can't really even do anything with this figure. I can't put it on a figure stand because that will crack the heels. I can't put the accessories in the hands because that will break the thumbs off. This figure has some merit and I do look forward to reviewing it but I have to decide if I want to find an intact figure and intact accessories variants I'm not sure. This figure will get a full review someday but for now that's just a quick look at the 1982 bazooka soldier Zapp. I hope you enjoyed it. There will be a full review going up this Sunday. I hope you stick around for that. Thank you for watching. Thank you for watching all my videos. I really appreciate it. I'll see you next time.


Our next speaker will be Dr. Gretchen Schwarzie, an associate professor in the division of vascular surgery at the University of Wisconsin in Madison. Gretchen attended Harvard Medical School, followed by residency at the Mass General, and a fellowship in vascular surgery here at the University of Chicago. She then completed the McLean Ethics Fellowship in 2003, 2004. Like far, Gretchen was also a Greenwall Faculty Scholar from 2008 to 2011. At Madison, Gretchen is on the ethics committee and the ethics committee of the American College of Surgeons and has published widely on surgical communication and decision making, informed consent, and end of life care.  Please join me in giving a warm welcome to Gretchen. Since we're conveniently behind. Thank you very much. It's just a delight to be here. I'm going to start by showing you some empirical data. It's primarily observational, which is a little different for me, because usually I come and talk about some interventional studies that I've been doing. Einstein said that if he had an hour to save the world, he'd spend the first 55 minutes trying to figure out what was wrong with it and the last five minutes trying to figure out what to do. And so I want to show some observational data initially so that we can then think about how to target some interventional strategies to change the problems that we see in real time. So as many of you know, I was interested in this thing called surgical buy-in. And as part of my studies of surgical buy-in, I went on to audio record surgeons and patients talking about major high-risk operations, valve replacement, neurosurgery, cancer surgeries, big vascular repairs. And my former chair of surgery, Bing Ricker, said, you know, the acute abdomen is like Christmas morning. You never know what you're going to do when you open it up. And that, I have to say, is the same about qualitative data. So I went after these conversations to try and figure out if surgeons were having this buy-in conversation. And I did learn something about that. But the things I found in addition to that are actually far more exciting. So I'm going to try to explain those things to you right now. So as we were listening to these conversations, we noticed that surgeons used words like fix it. And they said these words over and over and over again. And we noticed that the pattern of preoperative decision making was actually incredibly robust. It looks much like this diagram here, that the surgeon started first with an explanatory phase. This is your problem. And this is the operation I have to fix it. Now you might imagine, since all of us are pretty well-versed in the tenets of informed consent, that this is the surgeons trying to do their best to solve that first tenant. Patients need to understand their disease and the proposed treatment to take care of their disease. So this is what that first explanatory phase looks like. The surgeon says, you know, your artery should look nice and smooth, but see here, it's bumpy. It's rough. Your ventricle, it's pumping the chamber in your heart and it's failing. Or your valve, it's actually both leaky and tight right now. So they used a lot of language around how people were broken. And then they went on to propose a treatment to fix it, meaning that your valve is getting smaller. So I can take it out or put another valve in. We're going to have to remove this part of your heart that's not working or build a bridge around the obstruction or just create a tube out of your stomach to take your esophagus out and then replace it. And this fix it language, I worry, sets patients up to attribute their own possibilities of what surgery might do for them. Because first, the surgeon talks about your problem and this opportunity to fix it. Joanne Lynn noticed this a long time ago and had a brilliant paper about mental models for decision making. And she was quite concerned that our notions of health and health care follow this mental model, where health is being normal. And then when you're ill, that's something that is broken. And the goal of health care is to fix it. And while she says that works perfectly well for strep throat or appendicitis, it doesn't work well for most of our patients, particularly our patients with chronic illness. We too worry about this when we think about how surgeons talk to their patients. Now you might say, well, gee Gretchen, this is just 50 conversations between surgeons and their patients. And I understand that this isn't the kind of data we're used to looking for with large data sets that are generalizable. But in qualitative data, what you're looking for is something called resonance or transference. And I have to say, I think that this mental model for decision making is very robust and very ingrained in our culture. For those of you who haven't seen this YouTube video, this YouTube video, if you Google orthopedics versus anesthesia will come right up. It's got over a million views.  And the orthopedic surgeon says to the anesthesiologist, I have a fracture. I need to fix it. And the anesthesiologist says, where is the fracture? And the orthopedic surgeon says, it's in the emergency room. And it takes them quite some time to find out the fracture is in a 98-year-old woman who, oh, conveniently, has something that orthopedic surgeon has never seen before. A systole. So I think this notion of this fix-it model is very pervasive and it really challenges patients when they go to try and make a decision about surgery because surgery is presented as a way to fix their problem. I have to say, in these high-stakes decisions, our surgeons actually back off from the fix-it model pretty quickly in what we see as this deliberative phase, where they're really trying to debate in front of the patient whether surgery is valuable to the patient or not. And I think that this is sort of where informed consent probably has done a good job, but maybe a little too late. Maybe it's a little too late to come and deliberate about whether surgery is valuable once you've already told the patient that the patient has a problem and you have an operation to fix it. But let me show you how the surgeons attempt to do this. So first they say, well, maybe your problem cannot or should not be fixed. Perhaps it's too broken to fix. Your valve has been such a problem for so long that even if I fix your valve, your heart's not gonna be any good. Or maybe it's not broken enough to fix. Sure, I can see this abnormality on imaging or in other places, but that doesn't necessarily mean that this is the right time to do it. Or clearly there's a problem that we can see here, but I'm not actually sure that this is the problem that is giving you the symptoms you've come in to see me for. In addition, surgeons go to great lengths to talk about complications. And they say, sure, I can do this, but you may never be the same even after I do it. There's some terrible complications that should occur. And even though I can fix this problem, the outcomes of surgery are variable. Not everybody feels better after surgery. Not everybody lives longer after surgery. And finally, even though you may have the best outcome possible, that's never like you were before because honestly your stomach is actually not that great a replacement for your esophagus. So what are the patients thinking in all this? What do they do? So this is one of our neurosurgeons and I would say he's just fantastic, right? He's going through all of these risks that we're supposed to disclose as surgeons. You could have a stroke or damage to your visions. And very appropriately he says, what questions do you have for me? And the patient says, well, I wanna know if I can wash my hair. And the doctor very appropriately responds to that. And then the family breaks up questions about stitches or staples, asking logistic and technical concerns. When really this was a moment to have a conversation about whether surgery was valuable for the patient. And I worried that this pattern of decision making that we set up really sets patients up for failure about really understanding what they're getting into. The second part of our qualitative study is we did another 50 conversations but then interviewed patients before and after surgery. And we found that there were some real gaps. Patients misunderstood what was happening and had some major questions that were not answered because sort of they didn't know what questions to ask. So this is what patients said to us. They felt that surgery had to be done. There were no other options. They didn't have a chance to decide. They saw the test and the heart surgeon said, well it should be done. There really weren't any other options. Which if we know about informed consent there are options, right? There's always an alternative not to do it. Patients were really surprised that recovery was so arduous. They said the surgeon told me there could be complications but I didn't know it would be like this. And finally there was very little conversation about advanced care planning. What would we do if things went wrong? You can see this one wife we interviewed after her husband died from her surgery. There was no pre-operative to conversation about limitations of life supporting treatments post-operatively. So we took all this data to a group of stakeholders and started to ask them how could we change this? What kinds of questions would be more important and how could we change this conversation in a way that patients would make better decisions and feel more informed? And they brought up three things that were lacking. Three things that when patients ask questions about washing their hair and if you're gonna wave stitches or staples they don't get to the answer that they really need to think about. They don't understand the implications of surgery. They said we really need to talk about choices. We really need to talk about expectations and finally complications. What happens when things go wrong? How are we gonna manage this? So this is my observational data from patients from stakeholders and from actual surgical conversations. And now I wanna talk for just a few minutes about interventional strategies that might change the way we talk about surgery. So the first idea is this idea about changing the frame. If every time I go into the room I say, you know, you have a blockage in your leg and I can do a bypass to fix that it's gonna be really hard to have a conversation about whether we should have a bypass. And a better strategy might be to show up and say, you know, it's really bad news to have a blockage in your leg. I'm worried that you could lose your foot, but let me tell you today we have a choice to make and the choice is about whether we should do surgery or not and this is what we might expect. I also really love Joanne Lynn's solution to this problem. She says rather than talking about the problem and how to fix it and focusing on each individual problem and not the whole of the individual she says we should tell stories like books off the shelf. If we're gonna talk to patients about treatments we propose, we need to tell the story that goes with that treatment. I love that idea. I think this best case worst case intervention that my lab has been doing really tries to model that. Another issue is this idea about listening preferences. I think when we ask patients what questions do you have for me that's done in an honest way we've been taught to do that and we've also been taught to sort of ask them to choose after we disclose risk but I actually think it's far more important for us to find out what patients are hoping for and what things are too traumatic for them. What treatments are too burdensome or would make them unwilling to pursue surgery. So questions from the surgeon about what are you hoping for or what might you fear could change that conversation as well. Finally, I love the idea of intervening on patients. I've spent a lot of time doing physician mediated interventions and they're really, really hard but it's actually really a lot more straightforward to work with patients to help them achieve the care that they want and so patient mediated interventions where you intervene on patients before they come to the surgeon and prepare them for decision making might be a far better strategy and a far more easy thing to accomplish. One thing to do is something called a question prompt list where you feed questions that my stakeholders identified. Will surgery help me live longer? Will surgery help me feel better? These are the kinds of questions patients could ask that would allow them to inform their decision making. I think decision aids actually go a long way to prepare patients for a good conversation with their physician and finally actual patient navigators could be really helpful. So we are actually testing something called a question prompt list in my lab right now. This is a study funded by PCORI. It's really silly. I can't believe the government gave me $2.5 million to test a paper brochure but indeed we've now enrolled 310 patients in this multi-site randomized clinical trial where patients are sent a brochure before seeing a surgeon who performs high risk procedures. And this allows patients to ask the questions they might need to ask to understand whether surgery is right for them. So hopefully I've done a little bit to get us back on time and I'd be very happy to answer questions. Thank you very much. And the question makers want to keep us on schedule too. Gretchen? Gretchen, you're going to like totally delay us. No, I don't want to. Marshall, Shen, University of Chicago. Wonderful presentation. You referred to Joanne Lynn. So let me think like a lot of things you mentioned are have parallels to life. Culture of surgery perhaps may be even hard to change. As hard as it is to change the culture regarding end of life care in some ways it seems to be such a unfortunate sort of dichotomization between I think what you describe as state-of-the-art principles and then the stereotype of how surgeons are trained. So I'm wondering as you think about that broader context of your surgical world then how do you start proceeding ahead? So you mentioned like these patient oriented interventions for example, but this one that's broader culture of how surgeons are trained. So unless that's addressed also I wonder how far it can go. So what are your thoughts about moving ahead? Yeah, I mean so I love the surgeon mediated interventions because then you're not putting such burden on the patients to change things. There is no doubt they are harder. I have to tell you I've been running around the country like sort of bashing informed consent and how bad it is for decision making. And I want to sort of step back from that and say at least it does something. And the fact that surgeons already have this idea that every time I walk into a room I need to have a conversation that includes some of these elements if not all of them is actually a great starting point. For example, for the last year I've been working with nephrologists who are lovely and their patients adore them but they don't actually see dialysis as a decision point nor do they use informed consent. And so trying to intervene on that conversation and insert shared decision making there is really, really hard because they don't have a platform for which to do it. So my surgeon mediated intervention which is called best case, worst case. Like the surgeons like they picked it up like this and they love it. And that enthusiasm is a bit of a blessing in a curse because they think they do it awesome and they don't. But at least they're excited about it. Whereas the nephrologists are like why would we have this conversation? Like that doesn't make sense to me. Which is not nephrologist bashing it's just to suggest that informed consent does something which it inserts this hard stop on the conversation and then allows you to build from something that was inserted a long time ago. And I think in settings where that hard stop doesn't exist already, the barriers to intervention are actually quite a bit higher. Yeah. Thank you.


Do you worry about having enough money to last throughout retirement? Give Reed Potter at Raymond James a call. Reed has 26 years experience helping folks enjoy their best life in their retirement years. On Saturday, December 9th, Pikeville police, firefighters, and dispatch were at the Appalachian wireless arena for Christmas with a first responder. With this year being the largest yet, over 80 local children were given a hot breakfast, food boxes, and some Christmas presents. Pikeville police chief Michael Riddle tells us more about the event. Even though we call it Christmas with the first responder and that's taken in police, fiery, a mess, and dispatch, it's become more of a community event than anything. We're relying on the community to help us with the fundraising and help us with the donations. And we've got great community partners that helps us with McDonald's as our provides breakfast, Save a Lot stores helps us with putting together food boxes. Every family that comes leaves there with a food box. So it might be called Christmas with the first responder and you know we get to show up there and have the fun with the kids but there's a lot of people behind the scenes in this community that helps us to pull this off and make it bigger every year. Christmas with a first responder has continued to grow with each passing year, helping as many families as possible. Pikeville's first responders are already making preparations for next Christmas. It is more than doubled from a couple years ago, I know that. So yeah I know it's going to be bigger this year coming and it's got, I think the program itself has such a reputation and people know that when they're given you know where it's going and the way that it's put back into the kids and the community and back into the schools and I think it'll be much bigger next year than even what it was this year. Reporting from Mountain Top News, I'm Nick Colum.


The coronavirus pandemic has no parallel in modern history, it is our defining moment. Those are the words of Klaus Schwab, head of the World Economic Forum, in COVID-19 the great reset. People assume we are just going back to the good old world which we had and everything will be normal again in how we are used to normal in the old-fashioned. This is, let's say, fiction. It will not happen. At the latest World Economic Forum meeting in Davos, Schwab set the tone for the conference with his glowing introduction of the opening speaker. We now welcome his Excellency Xi Jinping, President of the People's Republic of China. Xi laid out his vision of a coordinated global economy. Major economies should see the world as one community and coordinate the objectives, intensity and pace of fiscal and monetary policies. This ideal of a united globe with a coordinated economy managed by experts captures Schwab's vision of the post-COVID world. We have to redefine our social contract. These grand proclamations, the ominous book titled and Schwab's odd personal style have led many people to speculate that the great reset is part of a conspiracy of global financial elites and politicians to depopulate the planet so they can more easily institute one world government or even that COVID was engineered to that end. Remember the stated goal by these people. Billionaire transhumanist elites, the globalists that all get together every year is depopulation of the planet. A transhumanist revolution to make people chronically sick that results in the death of the vast majority of the world population and out of that cataclysm a new super race. I don't buy it. Imagine the amount of coordination and airtight secrecy needed for these kinds of far-reaching conspiracies of global domination to succeed. They'd be exposed and fall apart, especially in the age of the internet. Instead of spinning our wheels searching for a secret agenda, let's just look at the one that's right out in the open. I think we are moving from short term to long term from shareholder capitalism to stakeholder capitalism. What China, the World Economic Forum and Massachusetts Senator Elizabeth Warren have in common is that they favor so-called stakeholder capitalism which is the euphemism for making companies answer first to special interests. They want to reorganize corporate boards to include representatives from labor, environmental and social justice groups. Warren proposed a bill to require 40% of large corporate board seats be elected by workers. In China, the state simply owns or controls a majority stake in most of the country's largest firms. The World Economic Forum and many state leaders believe global coordination and global governance is essential to manage global problems, climate change, international financial instability and future pandemics. A crucial flaw in Schwab's great reset is that it puts too much faith in the ability of governments to re-engineer society in a way that better serves the needs and desires of all citizens. He wants a rethinking of capitalism that escapes the tyranny of GDP growth so that companies create goods and services for the common good instead of maximizing profits. The phrase common good points to his fundamental misunderstanding of capitalism, which is nothing new. Central planners were using this idea to maximize their own power at the expense of individual freedom back in the 1940s when Nobel Prize-winning economist F.A. Hayek wrote The Road to Serfdom, which would go on to sell over 2 million copies. The welfare and happiness of millions cannot be measured on a single scale of less and more, Hayek writes, and depends on a great many things that can be provided in an infinite variety of combinations. Every single one of the billions of people who populate this planet have unique goals and desires that are impossible to reduce to a unified whole. Whether that's GDP or whatever supposedly holistic metric the WEF wants to replace it with, profits are a signal to entrepreneurs that they are satisfying the disparate needs of their customers. One of the great lessons of the past five centuries in Europe and America is this. Acute crises contribute to boosting the power of the state. It's always been the case and there is no reason why it should be different with the COVID-19 pandemic. Schwab is right that the war is the health of the state, as the writer Randolph Born once put it. And the government's response to COVID has been similar to military conflict in terms of the cost and the chaos it's engendered. World Wars I and II and the Great Depression ushered in a powerful modern welfare and warfare state that irreversibly altered America and the world. But I'm more optimistic this time. Thanks in large part to the power of technology to provide everyday citizens with an exit. Instead of the great reset in which sclerotic 20th century institutions accumulate even more power, I think we're entering the great escape. This is possible because technological progress is outpacing the ability of the state to control and regulate it. Governments will have no choice but to abandon their efforts to construct physical and metaphorical walls. Technology can be designed to facilitate decentralization, in which the flow of money and information can't be controlled. Ideas emerge from the bottom up. Expecting governments and international bodies to orient every large company towards some widely agreed upon common good assumes that many of the very institutions that bungled the COVID-19 response can competently handle the planet's most intractable problems. My hope is that after witnessing the colossal failure of governments in the face of a global crisis, many more people will be looking for a different approach. There's evidence everywhere of the great escape. The US population shift away from expensive restrictive and poorly governed states and cities spurred on by the rise of remote work, the exodus from government-run schools, the growing use of cryptocurrency, the popularity of encrypted private communication platforms, and the expanding reach of independent voices in our increasingly decentralized media. Hayek called central planning the fatal conceits, writing that the curious task of economics is to demonstrate to men how little they really know about what they imagine they can design. And Schwab even touches on this idea, writing that complexity creates limits to our knowledge and understanding of things. It might this be that today's increasing complexity literally overwhelms the capabilities of politicians in particular and decision-makers in general to make well-informed decisions. He dubs this quantum politics, but never quite explains how policymakers will realistically overcome this dilemma. Maybe there's record low trust in our institutions because the people running them are attempting the impossible, planning the future for billions of people. Humiliating to pride as it may be, Hayek wrote in the Constitution of Liberty, advancements of civilization are often happy accidents, and policymakers could and should be more focused on securing the freedom that allows such decentralized experimentation and accidental progress to occur. The fear of a great escape of losing control is understandable because there are systemic risks that could destroy human civilization, including future natural or man-made pandemics, runaway inflation, and ecological disaster. Small boats may not survive a storm, but a giant ship is strong enough to brave a storm. But if we're all stuck in the same large ship in the same storm, we're all going down with it when the winds finally get bad enough. Concentrated power itself presents an existential risk. A bad intervention applied to economies of the entire world at once can bring down the entire system. But the distributed power and humble trial and error of markets and decentralized governance brings progress in fits and starts with less risk of total ruin. What Schwab, Xi, and central planners around the world miss is that when securing the rights of the individual comes first, the rest tends to follow. The great escape from the 20th century is underway, and there might be nothing they can do to stop it. The question is, do they make getting there easy or does it happen the hard way?


What's up everybody takedown here welcome back to the channel today. I'm going to be doing a quick little story time of Uh an accident that happened last year something serious. This happens at least a year ago 2017 I think it was around spring And it happened on the day. I was leaving work At the time I would walk home if my ride wasn't there And uh, I put my earbuds in listen to music on my way home. That's just how I did things So I left work at 8 o'clock that night Um And across a world where I worked was Canadian Tire next to us was mcdonald's Police station was in front and there's a little grocery store across the street as well So everything was kind of close there Um And when I went across the street, I always looked to my left looked to my right looked to my left And then cross and then I literally just walked down a street and then straight home I went across so I looked to my left and I seen from the grocery store There's an employee leaving on his motorcycle at the time He was just got done work too. So he was just leaving work. Looked to my left seen him He was just about to pull out onto the road. I looked to my right Looked back to my left and in just the time that I looked away from him looked to my right and looked back Um, that's when the accident occurred And the person that pulled out didn't connect with his motorcycle, but Cut him off to the point where he flipped So in that one split second that I looked away and looked back He was midair Flipping I knew kind of right away. That's this is serious. This just happened right in front of me And when I seen it after it kind of kicked in that this is serious. This just happened I literally sprinted over now. I'm not one to sprint. I'm not one to run But I think that day I went the fastest I ever went and I just sprinted over I had a backpack on with just my water bottle in it I had my iPod with music going And I just literally sprint as fast as I could overdo them to make sure he was okay I didn't know at the time whether or not he was injured whether or not he was perfectly fine or other than that He was dead as he's rolling in midair He was getting up and he was yelling at the vehicle to stop and he was yelling and screaming curse words at him He was kind of his adrenaline going The guy that cut him off actually took off. He never stopped while I was running up another vehicle That was I guess at my workplace at the time. They must have just purchased stuff the last customer They were leaving and they seen it happen. So they sped over as fast as they could They got there before I did they got out started to help him as I got over I helped him up And me and the guy just looked at each other With the facial expression of did this just freaking happen? But uh, we didn't really know What was wrong with him at the time his bike however was Totaled it could be repaired but it's classified as totaled handlebars all smashed scuff marks everywhere If he didn't have a helmet on he would have been dead because his helmet was literally cracked literally cracked in two Made sure he was okay. His family member at the time. There's two bikes going by they were related to him They stopped asked what happened. We told them Other people came to make sure he was okay. We told them Um, and we called the police now at the time. I didn't have a phone I wasn't able to call home. So my parents I guess were worried because it was half an hour late getting home And they came looking for me. So dad came out um at the time It took a while for the police to get there now as I said the police station is right across the street But I think I was pretty sure this is a friday that this happened.  It should be 24 7 but in a small town. I guess I understand There's not many funds there So they had to come from a couple towns away the nearest one and it got there Pretty late. It got there about 45 minutes Um, we're talking to the police at the time when dad showed up And he literally was circling around the block a couple times when this happened because he didn't know if I was the one that was Hurt or injured. So he was in a panic Then I ran over to him and said no Here's what happened gave him my stuff to go home and he was more worried of anything But he knew I couldn't call home regardless So I guess he was he wasn't mad at me. He was just mad that it happened Which is understandable for the police arrived. He started to complain his arm is warm Another person came from his family to check on him. They heard what happened His arm he started to say got was starting to get warm and starting to tingle Usually when it starts to get warm, that means you've broken it. So they were worried he broke it He didn't want to go to the hospital, but he literally had no choice Um, so his family drove him to the hospital did not call on ambulance. This came got all of our questioning done We stayed with everything his family stayed They were going to take the bike and so the truck came for the bike And we told the police what happened and the police literally took off to the hospital to get his opinion and his statement And we looked over across the street where the mcdonalds was and there's a car wash and had a camera on the outside So we knew they're going to be able to use that camera to get a glimpse of what happened Maybe even see the person's license plate to help held them accountable for the situation But it's just one of those scary moments He turned out. I don't know if he dislocated or broke or whatever But uh, I've seen him a couple weeks later in the grocery store working. This is at least a month later actually And uh, he thanked me now I didn't do this to be thanked or be awarded or be praised that I helped him out Because I was one of the first to the scene But it makes me feel good to know that my actions were recognized more than anything. I'm happy that he was okay But I'm gonna leave this quick little story time here of the accident that occurred last year I hope you guys did enjoy if you did please leave a like I don't have really serious story times like this anymore because nothing has happened since But I will see you guys in the next video. Please take care peace


11 Surprising Facts About Scottish Fold Cats. Scottish fold cats are known for their trademark folded ears that make for an adorable look. They have round faces and big round eyes, and their folded ears make them appear even rounder. In fact, they're often compared to teddy bears or owls. Because of their cute appearance and sweet temperament, they're very sought after and beloved by many. Their ears are their signature feature, and they're completely fascinating. But there are other interesting facts to know about these kitties. How much do you know about Scottish Fold Cats? 1. They all have one common ancestor, named Susie. While cats with folded ears date back to the 1700s, Scottish Fold Cats first came about in the 1960s. In 1961 in Perthshire, Scotland, a kitten with folded ears was discovered in a litter of non-folded cats. This kitten was named Susie. Scottish Folds were first imported into the United States in 1971. By the mid-1970s, they had been recognized by most cat associations in North America. They can be outcrossed to American short hairs and British short hairs. She was bred with other cats to develop the breed, and subsequently, all Scottish Fold Cats have her as a common ancestor. 2. The Fold is due to a mutation. According to the International Cat Association, the folded ear is a spontaneous mutation and comes from an incompletely dominant gene that results in both folded and straight-eared cats. This trait is caused by an incomplete dominant gene that resulted from a spontaneous mutation. It affects the cartilage in the kitty's body. While the Scottish Fold's ears are the most visible sign of this abnormality, the rest of its body is also impacted. In particular, Scottish Fold cats may have cartilage abnormalities. The Scottish Fold breed of cat is a very popular pet in the USA, due to its affectionate and gentle nature and distinctive appearance. 3. They're born with straight ears. Scottish Folds are born with normal, pointy ears. They don't develop their trademark look until they're around two to four weeks old and the ears begin to fold. A cat's ears might also stay straight. These kitties are sometimes called Scottish short hairs. However, this CFA and other cat fanciers associations only allow cats with complete ear folds to compete in shows. The Scottish Fold's ears once weren't as dramatically creased as they are now. Their ears folded from about halfway up, tilting forward and down. Decades of selective breeding are responsible for the double or triple ear folds of modern Scottish Folds, which cause their ears to lie completely flat. 4. Scottish Folds are never bred together. Scottish Fold cats are never bred together for ethical concerns, as offspring may be born with degenerative issues. Scottish Fold cats are usually bred with either American short hairs or British short hairs. Since they're always bred with other breeds, not all kittens in their litters will have folded ears. Subsequently, Scottish Fold cats remain rather rare. 5. There are three degrees of folds. Their ear folds are categorized into three types, single, double, and triple. According to MIT, today's folds have your folds ranging from the loose single fold to the very tight triple fold which is seen in the show quality cats. A single fold is just a slight fold that only involves the tips of the ears. A double fold ear has a more prominent bend than a single fold ear, with about half of the ear bending downward.  Scottish Fold cats didn't always have sharply folded ears, they have become a fixture in these cats through years of selective breeding, with breeders choosing only cats with double and triple folds. 6. They sit like humans. Scottish Folds are known for their sweet personalities and fun quirks.  They also famously sit like humans, which Scottish Fold owners have lovingly dubbed the Buddha Sit. Scottish Folds are known for sitting, standing, or laying in a variety of cute and comical human-like positions. They'll sit on their haunches in a Buddha position, they'll stand on their hind legs, and they'll flop, stretch, and twist themselves into other unusual poses. Hello! This video is sponsored by Beemix Pets. Are you looking for high quality cat collars at an affordable cost? Check out, BeemixPets.com. Use coupon code KittenLife, to get 20% off. 7. They need a gentle touch. While Scottish Fold cats aren't necessarily delicate, they do require gentle handling, particularly in regard to the tail, which can sometimes be stiff. When purchasing a Scottish Fold cat, it is wise to test the flexibility of their tail, but it's imperative to be gentle. If they're handled too rough, it can cause serious pain. There are plenty of ways to connect with a Scottish Fold that won't cause it any discomfort. When in doubt, always be gentle with them. 8. They're the only Folded-Ear cats that can show. While Scottish Fold cats aren't the only known cats with Folded Ears, they are the most established breed with Folds. A number of Folded-Ear cats of Chinese origin have been recorded, but unlike Scottish Fold cats, they have not been developed as a breed. Presently, only Folded-Ear cats of Scottish lineage are permitted in the show ring, says the Cat Fanciers Association, CFA. More specifically, only Scottish Fold cats with triple Folds are deemed show quality. 9. They're T-Swift approved. Pop star Taylor Swift isn't the only famous one in her household, her two Scottish Fold cats have become fan favorites too. Named after primetime drama characters, Meredith Gray and Olivia Benson are always by Swift's side. They've even been featured in photo shoots and commercials. Early in 2019, Swift adopted a third cat named Benjamin Button. He's not a Scottish Fold, he's a ragdoll, but he seems to be fitting into the crew just fine. 10. Scottish Folds aren't popular in Europe. The GCCF, the UK's largest registration body for cats, originally accepted Scottish Folds for show in 1966. However, by 1971 the organisation had stopped letting pet owners register the kitties because they were worried about physical deformities, ear mites and infection, and deafness. These concerns ended up being unfounded, but to this day the cat still isn't shown in Europe. In 1977, Scottish Folds were given provisional status in the CFA, over the decades they've become a highly sought after kitty in America. Today, cat lovers who want to own a Scottish Fold might have to be put on a waiting list, and pay several hundred dollars for a kitten. 11. Scottish Folds once had a different name. Since they look a bit like lop-eared rabbits, Scottish Folds were once called lop-eared or lops, until the breed was registered and its official name became the Scottish Fold. If you enjoyed this video, kindly press the like button. Also don't forget to subscribe with notifications on, so that you don't miss out on videos like this. Thank you for watching.


Hi, I am Natalytest and today I am going to tell you about our development kits in the field of IO-Link application based on the P-nucleium-IoD-01M1 master side, the P-nucleium-IoD-01A1 and the new P-nucleium-IoD-02A1 both on the device side. Using these kits you can evaluate the integrated circuits for IO-Link technology like transceivers, microcontrollers, sensors and to develop your own specific IO-Link application as fast as possible. Let's focus now on the kits and their main features. This demo represents a basic free-level industrial installation using ST solutions for IO-Link applications. Here you can see there are two IO-Link sensors. In the middle there are two IO-Link master ports and there is a F7 discovery board acting as a system controller. The discovery board controls the LCD display where the data collected from the sensors nodes are shown. The management of the IO-Link protocol is requested to the IO-Link master and IO-Link device. The P-nucleium-IoD-01M1 is an IO-Link master kit composed of a Nucleo F446RE and up to four ST-VAL-IoD-001V1. The Nucleo F446RE has an ST-M32446 microcontroller which runs a version 1.1 IO-Link stack developed by our partner in the concept. Each ST-VAL-IoD-001V1 represents an IO-Link master port based on the L6360, an ST transceiver for IO-Link master applications. In this example two ports are used and the P-nucleium-IoD-01M1 act as an IO-Link master bridge translating the commands from the F7 discovery board into commands compliant with the IO-Link protocol. Master ports are connected to IO-Link sensors which are here our P-nucleium-IoD-01A1 and the P-nucleium-IoD-02A1 boards. The P-nucleium-IoD-01A1 includes a microcontroller board, Nucleium-L073RZ, a sensor board, the X-nucleium-IKS-01A1 and the transceiver board, the ST-VAL-IoD-003V1. The microcontroller board runs the software, the ST-SW-IoD-01. It is based on a full IO-Link stack library developed by our partner in the concept and it can be downloaded from ST.com. The sensor board includes environmental, temperature, humidity and pressure and MEMS, 3D gyroscope and 3D magnetometer sensors. The transceiver board integrates the L6362A, the ST-SINGLE channel transceiver for standard IO and IO-Link sensor applications. The new P-nucleium-IoD-02A1 is very similar to the P-nucleium-IoD-01A1 but the running firmware is based on the X-cube-IoD-02 and the transceiver is on the X-nucleium-IoD-02A1. The P-nucleium-IoD-02 include a demo IO-Link stack developed by ST software designers, source code ready for the most common integrated development environment and can be downloaded from ST.com. The transceiver board is the X-nucleium-IoD-02A1, it is based on the new L6364-Q, the ST dual channel transceiver for standard IO and IO-Link applications. So, as you can see we have a very complete solution that is readily available for you to get started developing your IO-Link based industrial application. This video was to give you a quick overview. For more detail you can check out these IO-Link products, P-nucleium kits and reference design board on ST.com.


Powder-based additive manufacturing techniques such as selective laser sintering and inkjet 3D printing are being used to create complex tissue engineering structures with minimal tooling costs and time. These techniques can produce parts with desired geometries and are particularly useful when working with powders. Updating the current knowledge about these techniques and their effects on mechanical and biological properties of fabricated tissues and scaffolds is necessary. Parameters need to be set up effectively, biocompatible, bioactive materials need to be developed, and the mechanical, biological properties of laser-sintered and 3D-printed tissues need to be improved. This article was authored by Saeed Farid Saeed Shirazi, Samir Garakani, Mehdi Morali, and others.


Consider the following situation Shinji while he's traveling is staying on the sixth floor of his hotel building while in his hotel room he looks out the window and observes on a tall building across the street that there are window washers doing their job and he's curious how high are these window washers above me or how high are they above the ground given that Shinji's on the sixth floor of course and so he tries to estimate how high up those window washers are all right so what Shinji first does is he estimates that the the distance between the two buildings is going to be 50 feet which would be the distance between Shinji and the other building as well looking upwards from his window to the window washers he estimates that the angle of elevation would be 80 degrees and then looking down towards the street level at the base of the other building Shinji estimates that the angle of depression would be 50 degrees so using these measurements how high up would the window washers be by Shinji's estimates okay so you can see that with our diagram there's going to be two right triangles coming into play right here because we can assume that these buildings are perpendicular to the ground the first right triangle is going to be based upon Shinji's his angle of elevation so we estimate the angle of elevation was 80 degrees and as he is 50 feet away from the other building we get 50 down here as the adjacent side of this right triangle we need to estimate the h2 here would this would be the height that the window washers are above Shinji and so we could estimate this using a typical tangent ratio notice that tangent of 80 degrees would equal h2 over 50 clearing the dollar as we get h2 is going to equal 50 times tangent of 80 degrees that would be this vertical distance right here but likewise there's a second right triangle in play this one that came from the angle of depression and so if we look at that right triangle Shinji's measurements gave the angle of depression as 50 degrees he also has that the distance here is still 50 feet and so then h1 here would be the opposite side associated to that so by a similar calculation using the tangent ratio we get that h1 is going to equal 50 times tangent of 50 degrees and so the height above the ground of the window washers is going to be h1 plus h2 which this is going to equal 50 times tangent of 80 degrees plus 50 times tangent of 50 degrees for which as 50 is a common factor of both we can factor it out and get 50 times tangent of 80 degrees plus the tangent of 50 degrees now it might be very tempting here to try to add together the angles like just take the take tangent of 130 degrees but tangent doesn't work that way we can't add the angles together we actually have to compute tangent of 80 plus tangent of 50 and so if we need an estimate like Shinji does here uh we should use a calculator so Shinji's just going to pull out his uh his smartphone which has a calculator app on it and so making sure the calculator is in degree mode here Shinji or ourselves would type in tangent of 80 degrees plus tangent of 50 degrees equal and then times that by 50 and then the calculator would tell us that the height of the window washers would be approximately 343.2 feet above the ground


Scrapped like when we found you on YouTube was like really gold mine Amazing was like oh my god like this person knows what he's talking about and like every work break We was like watching you and we just even the secret sauce is like I've really really like them because it's just it's nice Like seeing the other side of like a restaurant and like getting to know like what helped them and what they went through when their secret So it's it's amazing really and like when we found you was just like he's the guy And to be honest, we've never ever like bought a like a web course like not not to the cost of what yours is But like we just knew like okay, you know, we really had it in our head Okay, this year we need to lay some solid foundations to be ready to you know Take these next steps and then when we knew that that like when we you know Jumped on whatever it was that the call prior and you went through the details of what actually was on the pro Academy Just like this is everything that you know, we needed in like one kind of package And I think like for what you're doing like the value in that just that one little like Weddling because that's all it is really like with all that amazing content It's just like I don't know. It's just this body of work obviously you're gonna keep working on and keep growing and I don't know man I feel like just that it's just insane value that can give to people like you say about that lady in Ethiopia like Everything on there if she was to like be able to apply all of it just bit by bit even if it takes us three four years like Chat completely changed already changed exactly. So yeah, it's crazy. It's brilliant. Thank you Thank you.  What has it helped you guys with like after taking the course like do you guys find any benefit in that? Yes, so first of all, we haven't finished the full course We've still got a little bit left to finish and we want to finish like the bonus modules But in terms of like what we have already gone over I think having like a groundwork like like, you know a bullet pointed list of like This is what you need to go through in terms of your why and you know understanding your brand and just to have That physically down on paper I think that's you know one of the the real beneficial things because you can read like a thousand articles and each Everyone will say something different and it's good to do that like you know build your own But I think like just having every to know okay if I do everything in this course Yeah, it might it's not gonna be a hundred percent of everything I need to do obviously But even if that's a good fifty percent, it's or even just even if it's just the foundations It's to know that okay We're on the right track and I'll be honest with you awesome like a lot of the stuff that we went over in the course We were already aware of but it's just re remembering and Making us go back over to like actually get a little bit more firm in our ideas Like I think that was what was important because you start a business and you it's never when you in the first stage of business Like your ideas are gonna change as you as you move on and progress So I think it was like Good for us to go back. Oh did at the first stage to now because obviously everything had changed and I think I personally really liked the finance part and the marketing part I think the finance part just made us realize okay These are the things that we need to be checking and these are the things that we should Be looking at all the time and I felt like that was a really good part Yeah, and the marketing because I think if anything what I'm trying to say is like let's say I don't know. There's a hundred things that you need to be doing to run a good a successful restaurant And then say we're only doing like 20 or 30 to be able to watch that and be like this is at least 90 of the things And then you're gonna point out like I don't know 70 or whatever that you're not doing to be able to you know Look at this in real right.  You know, we're released on a bit more on the right track. So yeah Sure Awesome, I've that's the last thing I want is for people to not get value and I'm glad you guys find it valuable I'm glad that you guys are able to actually actually do the stuff that I am showing you guys because at the end of the day What makes a coach different and and someone that is doing it is the fact that we can actually pinpoint what matters Ultimately, let's say for example anyone that goes into the gym They can pick up a dumbbell and then can do their curls What is what what distinguish? Why are people paying hundreds of dollars for a personal trainer? It is because it's the minute items and the minute Things to really pay attention to that makes all of the difference Right, just like when when we were building a business we can actually we already know everything like it's not rocket science It's not like there's a secret sauce. However, there are the little minute things That we need to pay attention to the items that are moving the needle and when you focus on that That's what's gonna make all the difference for you guys and for you guys I know it's made a really great impact in your business So I'm really really happy to be able to help you guys out on that note as well


This week's EKB TV Game of the Week features the Pikeville Panthers and the Eastridge Warriors in a 59th district matchup as the regular season winds down. The Panthers currently leading the race in the 59th district at 6-1, that one loss coming from Eastridge earlier in the season. The Warriors currently stand at 3-2 as we get underway from Pikeville High School. Michael Kahn known to drive inside, basket is up and in, and then the Panthers with the same idea, Kyle Watkins in control with the ball, pass to Connor Reisner and the Panthers answer. Next Eastridge possession, pass is deflected and Wyatt Battle will take it all the way to the house. Panthers on the move, but Michael Kahn flying past defenders, he's so fast, over the head no look past to Justin Potter. What a move. Warriors tie it at 7, and then just before the first quarter is up, Wyatt Battle breaking ankles, poles up and the Panthers take a two point lead heading into the second quarter. Wyatt Battle ending the night with 21 points, Pikeville's fans section with some moves tonight. Check out those jeans shorts moving to the second quarter, coming out firing from the pocket Kyle Watkins Warriors. Quick to respond, Chris Bevins from the opposite pocket, basket is good, but then Kyle Watkins feeling comfortable from the pocket and the Panthers take a 7 point lead. Back and forth, it's Eastridge's Chris Bevins again with another three pointer, this time from the top of the key, and then with every basket or I should say three pointer, there was an answer as the Panthers grasp a steady lead and they hold on to it. Final score, Pikeville 72, Eastridge 38. In our EKB TV Game of the Week, this week you can remember to watch the replay of the game tomorrow at 6.30 and Sunday at 9.30 a.m. and 4.30 p.m., right here on EKB TV or EKB TV dot com. Now heading to Johnson County for a 57th district matchup as the Painesville Tigers host at the Johnson Central Golden Eagles, leading the region at 20 and 6. Eagles move on up. Jacob Rice pulls up for the basket, but the Tigers know how to respond. Mason Moore driving down court sends it to open Ryan Moore for the basket, but Johnson Central's Mason Blair a scoring machine for the Eagles. The ball bounces around at the rim, but it finally goes in and Johnson Central will gain a steady lead. Cole Crase trying to maneuver around the defense. Ball bounces off his foot, saved by Mason Moore and Seth Williams will take it to the house, but Johnson Central's Mason Blair was there to answer three point baskets, nothing but net as he pulls up. Eagles win it. Mason Blair scores 47 points tonight. Final score, Johnson Central 106, Painesville 77.


If you grew up in the 80s or 90s, you may notice it's harder to sit through a movie without having to get up to go to the bathroom halfway through. Now, some of this could be attributed to the fact that your body's once youthful age has now gotten old and completely useless. But it's also because movies have in fact gotten longer. And today I'm here to talk about it on this episode of Harry Potter and the Deathly Bowls. That's a working title, only on Guru Hub. Let's kick things off with some Q&A. I find that knowing completely meaningless information about things helps me get through the day. Question, what is the longest movie of all time? Logistics. It's an experimental art film that runs at a breezy 857 hours. Or 35 days and 17 hours. It's a roller coaster of a movie following the production of a pedometer. Looks like we both know what you'll be saving those vacation days for now. What is the longest best picture winner? 1939's Gone with the Wind runs at a swift 238 minutes. Just shy of that coveted four hour mark. What is the shortest film nominated for an Oscar? Fresh Guacamole was nominated in 2012 for Best Animated Short Film. And it's an extremely charming watch at only 1 minute and 40 seconds. It's also far more creative and enjoyable than what you're watching now, which begs the question, why are you even here? I don't know. It's the longest amount of time someone sat on their phone at the movies. During Tomb Raider, I clocked a dip on his phone for 35 minutes and 26 seconds straight. I thought maybe someone near him would say something, but why would they? Why would they say something? It's just accepted now. Long movies is not a new concept. It's happened throughout history. You'd see movies that three hours or longer, such as Cleopatra. It's just that the average now is going up quite a bit. But there were films like 1959's Ben Hur. 1962's Lawrence of Arabia. 1974's Godfather Part II. 1982's Gandhi. 1993's Schindler's List. 2001's Lord of the Rings. And 2013's The Wolf of Wall Street. These movies all required a lengthy viewing, but they were damn good all the same. In the last few years, far more bad movies are asking for that same time dedication. I think most of that has to do with the huge rise in comic and book adaptations being made. I'm not sure what Michael Bay's excuse is. Transformers Age of Extinction is two hours and 45 minutes long. In what f***ing world do you need more than 15 minutes to flesh out a Transformers script? Optimus Prime should be able to save the day in an hour 15 tops.  Superhero movies in general seem to be in a competition for who can run the longest. Batman v Superman is over two and a half hours long with an ultimate addition pushing over three. Why anyone would want a longer version of that film is beyond me, but different strokes I guess. Pearl Harbor isn't a new film by any means, but it clocks in at three hours and three minutes. When in reality, it should have never been made. Let's do a review. If you aren't watching The Lord of the Rings extended edition trilogy, like you're just simply doing it wrong, make a day of it and watch all three in their entirety back to back to back. This will set you forward 11 hours, 15 minutes and 37 seconds. That's time well spent. Hell, you could double down and toss the Hobbit trilogy into the mix first. It's not as good, but it's a nice starter entree before the main course. That's a full day's worth of Middle Earth magic filled to the brim with amazing characters, a rich world, beautiful music, incredible direction and some of the most memorable moments put to film. And dare I say it, yeah, I think I dare, it's the best movie trilogy of all time. And it's definitely worth taking days off your life for. I give it a 10 out of 10, precious. You have my sword. And you have my bow. And my axe.  It was a break halfway through the picture where you could get up, stretch your legs, buy a concession, talk to the local farmhand or doctor in the town of 36 you lived in. And then you would go back and watch the rest of your movie. I need to bring this feature back because honestly, how are they expecting people to sit through a two hour film of monsters breaking buildings anymore when they can't even stay off their phone for 15 minutes?  It also provides the elderly with an opportunity to go to the bathroom. I asked the kids on Twitter what movie they thought was too long. They had some things to say. Colin goes with the Scorsese picture, The Wolf of Wall Street. Asking the question, how many hookers snorted coke lines in Leonardo DiCaprio monologues do you need before it becomes too long? I guess not enough, LOL. Jack goes with what he considers a controversial pic, The Dark Knight Rises. Saying he likes it but two hours and 40 minutes? It's a long, kind of boring but still great movie with an awesome send off to the Nolan trilogy. As long as those trim down scenes don't include Bane, I'm okay with that. Then you have my intermission to die. Thanks for watching the never ending movie. That's a working title.


Okay, I will tell you this, it was like 15 of us in one house, in a three bedroom house, and it was like three beds.  When we get up in the morning, if we eat breakfast, we're not sure about lunch, we're not sure about dinner. Going to school was a task because there was no one there to provide for you every day to say, hey, here is someone in to go to school, here is this a payer your way through school. There was no opportunity like that, it was hard, you know, it was hard even getting up and knowing where you're going to sleep the next night, because you don't want to go into the same bed where four or five of you got to sleep on, you know, it's on comfort heavily. I've known Specialist Powell a little over a year, like 15 months. He's a hard worker, he always strives to bring others up around him. When I first met him, he was a PFC, but he always took charge in the absence of love in the NCOs. He always led in PT, he's a strong cadence caller, even when he was at the rank of PFC. In the Army, it's diverse because you have different people from different nations, different parts of the world coming here to join this Army, you know, you're not going to get along with everyone that you meet, you're not going to be friends with everyone you meet, you're not going to be buddy-buddy with everyone that you meet, it's just what you make of it, you know what I mean, you've got to learn to separate your job, your friends, and you know, your personal life from all of this. He's very loyal, very disciplined, if you give him a task, he's going to stick to it, and he doesn't need much guidance, he's always been able to take charge. I got an article 15, but I didn't let it get me done because I've seen people come here and get an article 15 and get chaptered out, but that's just a learning process. You get an article 15, it's not the end of the world, it's not the end of your military career. It depends on what you do, I bounce back from it, I learn from it, I use it as a stepping stone, I use it as a platform to build on, and to build on, and to build on, and to build on.


This is the VOA Special English Education Report. Millions of students have been taught a formula that has nothing to do with chemistry. The formula is for how to write a five-paragraph essay. First, write an introductory paragraph to state the argument. Then, add three paragraphs of evidence. Finally, write a conclusion. Linda Bergman is director of the Writing Lab at Purdue University in Indiana. Her job is to help students, including international students, improve their writing. Professor Bergman has worked with many students who learned this traditional five-paragraph formula. She says international students sometimes have difficulty with this formula if they learned a different writing structure. But just knowing how to write a five-paragraph essay is not going to be enough for a college student who has to write a longer academic paper. As Professor Bergman points out, the formula is too simple to deal with subjects that require deeper thought and investigation. In her words, essentially, it is way too simplistic to handle more intellectually sophisticated topics which involve actual inquiry. Karen Goschik is executive director of courses in the Institute for Writing and Rhetoric at Dartmouth College in New Hampshire. The Institute has an extensive library of online writing materials on its website. So what are the qualities that make up good writing? Ms. Goschik says there are no simple answers except maybe for one. That is, there is no formula that students can follow to guarantee a well-written paper. She says, what we try to teach students to do in college is to listen to their ideas and that the idea should be able to tell you what form it needs to take. She says moving from secondary school writing to college-level writing can be difficult, but students should not be afraid. American college students are usually expected to state their thesis at the beginning of a paper. In some cultures, students organize their paragraphs to build toward the main idea at the end. And while students in some cultures use lots of descriptive words, American professors generally want shorter sentences. For VOA Special English, I'm Alex Villareal. Tell us about your own experience with academic writing. Go to voaspecialenglish.com and share your stories. And before you write that next paper, check out two links on our website. One is for the online writing lab at Purdue. The other is for the Institute for Writing and Rhetoric at Dartmouth.