Hello. Hi everyone. I'm Sanjay Gupta. I welcome you on Sanjay Gupta Tech School. So this is Monday and we have day number 53 today. And today I'm going to start a new session for you and this the topic of the session is as in Kronos Apex. So in this week, all the topics which we are going to discuss, those are related to as in Kronos Apex. And in today's session, I'm going to cover future method. Right. So one more time, welcome everybody, those who have joined and those who will be watching the recording. Welcome to them as well. So I can see Vida, Ajay, Naina, Feroz, Jayashree, Anuj. So hi everybody. Welcome to the channel. And I'm just waiting for more folks to join. And then we'll be starting the session with full energy. And I hope you've gone through the test classes sessions. If you have not attended those sessions live, and you got plenty of time last week to practice. So I hope you are doing lots and lots practice so that you can understand the concepts. Right. So moving forward. So those who are watching this video for the first time. So please go through this slide. It will tell everything about myself, what I'm doing, what I have done and why I'm conducting this bootcamp. So actually, I'm helping students, freshers and professionals to ramp their career in Salesforce ecosystem. So that's why I decided after creating lots of recorded videos, let's do live session throughout this year. So admin flow, these two are done. Apex is almost done. And now we are on as synchronous Apex. So this week, everything related to Apex will be completed. And next week we'll be doing visual force. Okay. So those who joined late, like by two, three minutes. So welcome them as well. Now let's discuss these virtual learning best practices. So these are important. So today, like I post one, one post on LinkedIn, which says like I completed 52 sessions live and free on YouTube and 50 more will be going on. So I think whenever we do anything, so we need to do things with proper focus, right? So I'm doing that with proper focus. And I'm assuming like you are also learning with proper focus. You like I am not sharing you the slides for notes. So you need to take notes for future reference. You can ask doubts. You can watch the recordings if you miss any session. Then number five is important like practice each session. So I just want to show you this session tracker. So many folks basically are not able to find this session tracker. So this is a complete session tracker where all the bootcamp related things are available, like all the session recordings you can find over here. And if you want to get the link of this session tracker, so it is available in the description of the video. And here you can see we have Salesforce exercise sheet link, right, which is highlighted here. So if you click on this link, so here you will find day wise exercises. If I take you here, so you can see number 53 exercises available here. You will see lots and lots exercises that you can practice, right? So these two documents are very much important as if you are following all the sessions of this bootcamp, right? Now moving forward. So keep doing everything on daily basis so you can understand things and consistency is the key. So I already told you 52 sessions are done. Every week I conducted maybe two, three or four sessions, right? And I know everybody who are following these sessions, they are learning as well. So consistency is the key. So please do regular practice so that you can understand the concepts and whenever there will be openings like lots of openings in the market, so you will be utilizing this knowledge. So you can see the practical example like we never knew like there will be a free certification voucher available that will be viral, but it was there, right? So those who started their Salesforce journey with me in January and in April, they found that free voucher and with the help of that free voucher, they are now able to give their first certification that is associate certification, right? So opportunity can come anytime. You should be prepared for that, right? So right now we are half in this bootcamp and soon all the things will be delivered from my side and you will be getting every knowledge, right? So like if you have proper knowledge and there will be opportunity in front of you, like you need to appear for interview. So like for that also you can prepare side by side. So here you can see after each section you will find interview question and answer. So you can go through with the document. So if you go with this document, so here you will find interview question and answers playlist. So we are all the videos are available. So I think if you prepare well, so you will be paid well as well, right? And if you want to follow telegram group where you can ask questions, so you can just scan this QR code and you can be part of that group. If you are already part of that group, you might have experience like people are asking questions and like answering each other so that like proper learning and sharing platform is there. And that telegram group is not having any paid promotions. In telegram you will see there are lots of groups available where people are doing paid promotion but Sanjay Gupta Tech School Telegram group is a unique one where no paid promotion is available. Everything is totally free for the community, right? And you can see we are in week 15 where we are going to discuss various topics related to S and Cronus Apex. So there will be total four sessions this week and in four sessions every day I will be covering particular topic. And you demanded like we need to know basics of visual force that I will be covering next week. And after that week, week 17 and 18 are dedicated for integration related topics. Okay, so if you want to receive timely notification, if you don't want to miss anything, so just follow Sanjay Gupta Tech School on these platforms, right? So like recently last week I announced one more bootcamp that is related to C and C++. So I was getting lots of queries from the beginners like we are not able to learn development properly. So then I decided like let's do a bootcamp on C and C++ so that I can target students, freshers, those are related to BTEC background and the professionals who want to start their journey as a developer because C and C++ are the basic programming languages that everybody should know so that you can understand the concepts of logic building and then after learning C and C++ you can directly jump on to the Apex, right? So that bootcamp will be starting from the first week of June, right? So there is one telegram group created so link is already shared in the main Sanjay Gupta Tech School Telegram channel and if you need more information so let me know in the chat I will share the link with you as well. Okay, so let's start this topic now as in Cronus Apex and if you have any question, whatever I discussed so far, so just throw your question in the chat. After a few slide explanation, I will be taking your questions because first I'm going to give you introduction about as in Cronus Apex and before starting explanation of future method, I will take your questions. So if you have any questions, so feel free to post those questions in the chat. Okay, so now we need to understand what asynchronous processing is, right? So basically, whatever we have done throughout the Apex programming, so we implemented the code and we executed that code immediately so that we can receive some results, right? So that Apex processing is basically known as synchronous processing, right? So whatever we have done so far that is known as synchronous processing, right? Now we need to understand asynchronous processing. So it is also very easy to understand, right? So an asynchronous process executes a task in the background, right? So you need to remember first thing, asynchronous processes never execute immediately. They runs in the background, right? So user doesn't have to wait for the task to finish. And you can use asynchronous Apex for these many tasks like for integration purpose, we need to connect Salesforce with any external system, right? So what we need to do we need to create call outs, call outs to external system that is part of integration. So for example, if you are integrating Salesforce with any external system, and that external system is not available at that moment. So what you can do instead of implementing a synchronous process because in case of synchronous process, if it is not executing at that moment, so all the following processes won't be executing. But in case of a synchronous process, if you are not able to access particular resource at current time, so your asynchronous process will be processing that later stays, right? And at later stays that the task will be processed. And the following tasks, those are aligned with that asynchronous process, they will be executing immediately. So in reality, basically, we create combination of synchronous and asynchronous processes, right? So synchronous processes runs immediately an asynchronous process runs in the background at later stays whenever resources are available. So in integration, basically, we prefer asynchronous processes, then operations that require higher governor limits. So in that case, also, you can prefer asynchronous process and code that needs to run at a certain time. It means if you want to schedule your apex code. So for that also, you can leverage the functionality of asynchronous processing, right? So these are few, these are few factors or few areas where you can use asynchronous process, right? So in interview, like interviewer can ask like differentiates synchronous and asynchronous process. So for that, whatever I explained right now, you can say, and you can take these three as an example, right? There are lots of example that we'll be discussing later in the session. So these are some benefits of asynchronous processing. So you can see, you can use your resources efficiently, because if resource is not available at same time, so what you can do, you can, you can like schedule some processes that will be running at particular date and time, right? And if you, if you want to run that process in the background, whenever resources are available. So like that also can be done with asynchronous processing. So these, these are basically used to increase your efficiency, right? Then scalability with asynchronous processing, you can scale your system scale means you can enhance functionality, right? Because asynchronous process runs in the background. So whenever resources are available, they can initiate their execution, right? So the current processes won't have to wait if you have asynchronous processes. And we get higher governor limit so that we'll see later on in the slides. Now, after understanding brief about asynchronous process, now we need to understand how many types of asynchronous processes are available. So generally, there are total full types of asynchronous processes available. And this is also one of important question. If we focus on interviews, right? In interview, generally, this question is being asked, like what type of asynchronous processes are available in Salesforce, right? So you can see first one is future method that we are going to discuss today. Second is batch epics that we'll be discussing tomorrow. Now, why we use future methods. So if you want to run anything in the background as a separate thread. So in Java, those who have gone through Java, so in Java, there is a concept which is known as multi threading, right? So if you want to execute your code immediately, so that is basically known as synchronous process. Now, with that synchronous process, if you want to run a code in the background, when certain resources are available. So in that case, you can implement a future method. So future method will be running in a separate thread. So your immediate action will be running in a separate thread. And your like your asynchronous process will be running in another thread, right? And in the background, and it will start whenever resources are available. So generally, for web service call out for integration purpose, we prefer future methods. If you want to connect your Salesforce or with any external entity, external service. So for that purpose, we can write our code in future methods. So whenever that resources are available, then your process will be executed automatically, right? And it is very simple, like you just need to use at the rate future annotation to convert your method into future method. Okay, then we have batch epics. So batch epics basically run large jobs that would exceed normal processing limit. So a simple example is like if you want to do something on your existing data, if you want to do something on your existing data, so for that purpose, we need batch epics. batch epics never works on the newly created updated or deleted data. If your data is already available in the org, right? And you are doing nothing. Still, you want to query the data and you want to apply some process on that existing data. So maybe for data cleansing or archiving purpose, so you need to remove some records, those are no longer required, or you want to populate some value for large number of records. So those you can do with the help of batch epics, right? So next, third is cueable epics and fourth one is scheduled epics, right? So cueable epics is extension of future method. So future method has some limitations. Future method is basically having some limitation. To overcome those limitations, we have one more feature that is known as cueable epics. So cueable epics is similar to future method, but it provides some additional features. For example, it provides job chaining, right? So you can call one cueable epics through another cueable epics that is not possible with future methods. So job chaining is possible like if one cueable epics process is completed, so it can call another. So in a sequence, they can execute, right? And it can allow more complex data type to be used. So basically, when we use future method, so future method basically receives primitive data types as a parameter. Primitive means like integer, double string, ID. So these type of data type, your future method can use. Now, if you want to pass complex data type like S objects, your custom and standard object types, so in that case, you will be using cueable epics, right? So it depends on the requirement whether to go with the future method or to go with cueable epics. So if you want to perform sequential processing operation with external web services, so in that case, you can prefer cueable epics. And you want to perform any one operation, then you can choose future method, right? Then we have last one is scheduled epics. So it is similar to schedule triggered flow. So in flow, we have a type which is known as scheduled flow. We can schedule a flow that will be running at particular date and time. So similarly in apex, we have scheduled apex. So schedule, you can schedule your apex class that will be running at a specified time. So if you want to run a job on weekly or daily basis, so in that case, you can schedule your apex class, right? So these are four types available. And all these types you need to remember because these are very much important if you are appearing for an interview. Okay, now let's discuss about governor and execution limit. So asynchronous epics provides higher governor and execution limits. So in case of asynchronous epics like then as you get higher limits with async, also those governor limits are independent of the limits in the synchronous request that cued the async request initially. Okay, I guess there was some network issues. So I am just going to explain these again. So basically I was discussing about governor and execution limits. So asynchronous epics basically provides higher governor and governor and execution limit, right? So it means like if we talk about a SOQL. So in second point, you can see a SOQL basically having 100 limit in case of synchronous processing. But in case of asynchronous processing, it is having limit as 200, right? So that you need to remember. And if we talk about heap size and maximum CPU time are similarly larger for asynchronous calls. Okay, so this you can understand with the documentation. So let me just search for governor limits. So if we search for the governor limits, so here we have a document for epics governor limits. And if you go through with this, so here are the limits. So you can see, so go through with the table. So you will be able to understand the limits properly. So few limits are same and few are having some differences. Right? So let's say you can see heap sizes six MB and here for async, it is 12 MB CPU time is also different, right? So I'm going to share this document with you in the chat so that you can go through with this. So this is important to understand governor limits. So for few areas like governor limits are different, but for few they are same. Now last point is also important as you get higher limits with async. Also those governor limits are independent of the limits in the synchronous request that queued the async request initially. So what does it mean? If you have a synchronous process and if that synchronous process is initiating any asynchronous process, so both will be having separate governor limits, right? So this you need to remember. Okay, so moving forward now next is async processing challenges. So there are a few challenges as well like how we can ensure fairness of processing. Like if we have more asynchronous processes queued, so which one will be executing first so that we cannot decide. It is totally dependent on the system, right? Then we have another challenge which is ensure fault tolerance. Like what if your process is failing in the background? What will happen? How you will be getting to know like your processes failed or what you need to do? How we can overcome? So these are some challenges which are available with asynchronous processing that you need to remember while implementing these. Okay, next we have like how async process works. So basically first step is and queue like your whenever you are initiating your asynchronous process so it will be queued and then it will wait for the resources so that step is known as persistence like if resources is available then process will be started and when that process is completed. So in that case your process will be dequeued. Okay, so these are three major steps which are available with asynchronous processing. So now we need to discuss about future methods. So like future method I will be demoing you how we can implement. Before that let me take some questions that you have asked in the chat. So I am jumping here. So Direndra is asking I just seen your video today and really appreciate efforts. Thank you. But I have one question that I have never seen your previous video. So should I start with day one or yeah, you need to start from day one because you joined from the middle you won't be able to understand. So here we have a sheet where all the sessions are available. Right? So here you can see sessions links are available and the link of this sheet is available in the description of the video. So you can have it from there. And I think internet is causing some issue. Going to take next question now. So case so Jenna like integration topics will be taken by some experts. So I will be sharing details about that soon. And so didn't I already answered your question? I think internet is not working properly. I hope you are not able to see it clearly. Let me just change. Okay. Now I think it is clear. Okay. So next question is apex is multi threaded. Yes. So for synchronous we can have separate thread for as in course we have separate thread. So you can say it is multi threaded. So Chandan is asking what our resources and archiving of records. Let me just switch the connection again. Okay. So sorry, there is some internet issue. So yeah, so I'm just fixing that. So now I think it will be visible to you. Okay. So next question is what are resources and archiving of records. So resources means the like memory or external services that you are using. So in integration we connect Salesforce with other systems. So those are will those will be known as resources and archiving means like if you are removing some records from the org that is basically known as archiving. So each session is for one hour. So accordingly you can do the calculation. So there is one more question schedule apex and batch apex are same. No, they are different. So when I basically for some asynchronous processes you won't be able to set particular date and time. But for few like for batch you can schedule but for future and cueable they will be working whenever resources are available. So Jenna like this process will be working in the background and like for external resources we will be using these processes and they will be working on the bulk data. So that's why limits are higher for asynchronous processing. Yes, Archana, we need to write test classes as well. Yes, we can use triggers with as asynchronous like future methods you can call from as synchronous process as well. So for us if you want to call. So initially like in the last release there is one feature through flow you can do callouts. So with the help of that callout you can just implement as synchronous process and flow as well. So Shrivali is asking only future and cueable are when we integrate with external system and do integration rest to batch and schedule are within the system. Yeah, so generally batch and schedule we use for the internally. So we already shared the link where government limits are available. You can go through with that. So again, the thread means a process. So basically as synchronous apex are important. So triggers basically execute immediately. But as synchronous process runs whenever resources are available or you can execute them at particular data and time as well. Right. So that's why they are important. No Archana as synchronous process doesn't affect order of execution because they are not executing synchronously. So they don't affect order of trigger execution. So Sudha interface and class both are different. And in case of asynchronous we will be implementing some interface. So by the end of this week you will be able to understand. So submit if you want to find some module. So like on trailhead you can search and you can do few. Otherwise I will try to list few for you. Okay. So I just explained a whatever question I saw in the chat. Now moving forward and sorry for the internet actually there is some lag today. So quality is not up to the mark. So I'm just moving forward and explaining future method. So this is the first type of asynchronous process. This this this type is basically used when you want to like call out external systems through Salesforce. So in integration basically we prefer this future apex. So in future apex basically we implement future methods. So future apex basically runs process in a separate thread and at a later time when system resources become unavailable. So you can use future annotation to create future methods. So it is important. So we need to use adderate future. So if you use adderate future annotation so you can create the future method. So it is simple like you just need to create an apex class and in that apex class if you annotate your method with adderate future so it will become a future method. And in synchronous processing all method calls are made from the same thread. And no additional processing can occur until the process is complete. So this is the drawback of synchronous processing. That's why we need asynchronous processes. So in a single transaction if you want to initiate one initiate one sub transaction so that you can do with the help of asynchronous apex. Right. So Rajiv in real time situation they will be executed automatically. We don't need to call them through developer console. So Sandeepa like resources means here if you are interacting with any external system other than Salesforce so that external system will be treated as a resource. So Rohit I already answered like in case of future and cueable if you are interacting with the external system so that external system will be known as resource and resources available means when you are trying to connect your Salesforce with that external system. So maybe due to network issues or any other reason you are not able to connect with that external system immediately. So in that case your external your asynchronous process will be waiting until that resource is available to connect. Right. And other processes you can run synchronously. So this is the basic meaning of resources are available. Yeah. So Sunil let me just explain these one by one then I will be showing you the all the best practices related to future. So generally we call future method through triggers batch schedule and cueable. So we never mix them. Right. So if you want to call future from cueable so we never do that. You can call cueable from cueable. So we never mix everything because all are for different purposes. So moving forward next we have like whereas in future method methods run as synchronously in its own thread this unblocks user from performing other operations. So the operations which you want to run immediately those will be part of synchronous thread and the process which you want to run in the background those will be part of the asynchronous process and it provides higher governor and execution limits for processing that we already saw. So this is the basics about future method. Now if you if someone asked like when to use future methods. So first is call out to external web services that we already discussed. Then the process that needs to execute in a separate or own their own thread in that case also you can use future method. And sometimes we have an error like if you are working on different as objects and you receive mixed DML error. So in that case like if you are in a single method if you are processing two objects and you find mixed DML error. So what you can do in that method you can process one object and through that method you can call your future method and in that future method you can process your second object. So your process will be same. Initially your process will be same. But that synchronous process will be initiating a asynchronous process. So they will be executing in two different threads. So your mixed DML error will be resolved with the help of future method. Okay. So this is a syntax like how you can implement your future Apex class and future method. So name of class can be anything then you need to use at the rate future annotation then public static void that we used already then name of the method it can be any name. Then here you can receive primitive data types only. So primitive types and their collection only primitive and their collection. You cannot work on S objects here. Right. So this is a limitation of future method. And whatever data you are getting here. So basis on that you can retrieve all the records and then you can apply the process. Right. So this is a syntax of future method. Now I'm going to give you a demo where we'll be implementing a scenario. So basically jumping here. So what I'm trying to do here on account object I'm going to create a field. So let me just check. Okay. So what I'm going to do through this future method I will be counting how many number of contacts are available under particular account record. Right. So what we can do first of all I'm going to create a field of type number. So I'm going to create a field of type number. So I'm naming it as count number of contacts moving forward. So here like default value I'm setting as zero clicking on next visible to all the profiles clicking on next and save. So basically I created a field that I'm going to use in my future. So field is count number of contacts. So I'm copying its API name. Now moving to developer console. So here I'm going to implement my future apex. Right. So I'm going to implement a class naming it as account calculator. Right. So in this account calculator I will be implementing a future method. Okay. So first of all what I need to do I'm going to write an annotation that is at the red future. And then I need to implement a method. So public static void and naming it as count contacts and it will be receiving list of ID and storing it into account IDs. Right. So this is this is basically my implementation of future apex. So account calculator is the name of the class. And here I'm going to implement a future method. So this future method basically you can call from any other class or trigger if you want to execute it separately. So right now I will be demoing you like how we can call it through an RMS window. But in real time scenarios you can call it from anywhere from where like you want to initiate a separate thread and you just need to pass a list of account IDs so that those can be processed. Okay. So now here I need to implement the code. So what I need to do here I'm creating list of account. So I hope everybody knows like what is parent to child SOQL. So I'm going to use that only right. So this is a simple parent to child SOQL that I that I have implemented here. So I'm just querying ID of account and then all the related contacts from account where ID in this ACC IDs list. Okay. Now I'm going to implement a loop that Lou will be trading that account list. And here we have. Okay. So what I need to do I'm just saving it and I'm going to refresh it because I created one field and I didn't refresh developer console. So I'm just refreshing it so that that field is available. And I'm going to open. This is the class that I'm going to implement account calculator. Right. So here now I can write ACC dot and then API name of that field count number of contacts. And then what I'm going to do I'm writing ACC dot contacts dot size. So this I hope everybody knows those who are following this bootcamp. So basically in case of parent child SOQL whenever I'm iterating on this account record. So this account is already having all the contact related information. So through that ACC dot contacts I'm just calculating size of all the related context like how many contacts are related to particular account and that counted value will go to this field. Right. And after this what I can do I just need to update this account list. Right. So here I'm just going to do an I'll check if it is not empty then I can write update ACC list. So all the account records whose ID is available in this ACC ID those account records are already available in this ACC list and they will be updated. So whatever number of contacts are available accordingly that will be updated. Right. So this way basically we need to implement a method. Right. So this process will be running in the background as synchronously. Now how how you can execute this process. So for that purpose I'm going to implement some steps and initially that I will be implementing an anonymous window. So I'm just querying some account records that I created list of ID then iterating a loop so that I can store IDs. Right. Now after this what I can do I can just call this account calculator here. Account calculator dot count contacts and here I can pass ACC IDs. So this statement will be used like if you want to call your future method from trigger. So trigger will be calling your some method of apex class and that method will be calling this statement and that method will be passing few account records in this manner and that process will be initiated. So now what I'm going to do I'm just unchecking it and clicking on execute. OK. Before that let me show you one more thing. So under this home you will find so let me just zoom it. So here you will find one option that is a big jobs. Right. So here you will see whatever as in Corona's process you are initiating. So right now you can see this is blank here there is no jobs available. Right. It is right now blank. No records to display. OK. So now what I need to do I just need to click on execute. So all the statement will be executing. Right. So whatever records we passed whatever records we passed from here they are processed and how you can verify them from here. So you just need to refresh. So here you can see one future entry is available. So date is for today's first of May. Time is 748 a.m. It is PST time job type is future status is completed. And here you can see total batches batch processed submitted by completion date apex class through which it initiated apex method which executed and a big job ID. So all the details are available. So this validates like it is running in the background. Right. So this way you can just initiate a process and that will be working. Yeah. So we shall identified one thing like we are not wearing this. Yeah. This is good. So I think we can put it here. So this way you can modify your code so you can just query this field as well so that it will be modified. So that's why it is not saving it is giving some error. Here I need to put a comma as well. Yes. Now errors is not available. It is resolved. Thank you Vishal. So so this way I hope you understood how we can implement our future method. This way I just called for demo purpose. And if you want to see whether it is executed or not. So here under apex jobs you will be able to now we need to understand how we can implement its test class. Right. So it is also easy because in test class you will be creating the data and through that data we will be validating whether whatever code we have implemented that is working fine or not. Right. So now I'm going to implement a test class for you. So you know the best practices for test class whenever you want to implement the test class. So in that case you will be using the same name account calculator and we'll be appending test at the end. So this way I'm going to create the test class so account calculator test and I'm clicking on OK. OK. So here account calculator test is available. Now I just need to create some data. So first of all I'm going to put at the rate is test in the beginning. Then at the rate is test before creation of a method. So here I'm writing private static void count context test. Now list of account ACC list equals to new list of account. So now here I'm going to create some records. So I will be creating 250 records. So I already told you when we studied about test class we need to implement test classes for bulk testing. So this way 250 records will be created. Right. And here I'm writing insert ACC list. And if you want to use test dot start test or test dot stop test so you can use those as well. Then I'm creating list of contact and a list of ID where all the account IDs I will be storing. Right. So I think this initial part you are able to understand because here I'm just creating the data whatever data is required to test the test class. Right. And instead of writing it here I'm going to shift it at the bottom because we'll be calling our future method as well so that you can include inside this step. So now after creation of this contact list and account IDs what you can do you can just iterate on that account list. Right. And we just need to add some context. So we created only accounts. We didn't create contacts. Now what I'm going to do I'm creating some contacts. Okay. So instead of this let me just create con variable. So here I'm writing con dot first name equals to test con dot last name equals to so whatever is the account name that I'm going to store as a last name and I'm going to link this contact with account. So this way it will be connected and then con list dot add and that con. So the contact which we created that will be added into the contact list and acc IDs dot add acc dot ID. Right. And here what you can do after completion of loop you can write insert con list. Now after inserting contact list so what you can do like what you can see here we inserted all the accounts. Then here we inserted all the contacts which are related to account. Now I just need to call that future method account calculator dot count contacts and here I'm passing the IDs. Okay. So these are the IDs account IDs which I collected through this loop and I'm passing it here. So what will happen on account record we just created that field and that field will be having a number of accounts which will be counted with this future method. Right. So this way like what what we are doing we are just testing whether a total number of counted contacts will be available on account or not. Right. So here calculator. This is a mistake typo. Now after this what I can do I just need to query the records. So I am just squaring that field as well from account. So whatever account like 255 250 account records we created. So those we are querying and we just need to validate this. So right now what we did for each account we created one contact. So the value of this count number of contacts should be one. Right. So I'm writing system dot assert equals. So expected will be one. Actual is available into this list ACCS then zero dot and then I'm going to have that field. Right. I'm just shifting it to above so that you can visualize it. And here I need to provide a message. So message I'm typing contacts are not counted successfully. Right. So this way you can implement your assert equals. So it is showing some error. So let me just check it. Line number five is having some issue. OK. So here I just missed this closing bracket. So I'm just saving it. So this way our test class is implemented. Right. Now here you can see run test button is available. So moving to test and clicking on run test. So this test class will be evaluated. So it is actually failing. So let me just see the error. OK. So here you can see it is failing because while creating account we didn't provide some value into the account active field. So what we need to do we need to go here and we just need to put some value under active field. So here I'm providing it as yes. Now I'm going to click on run test again so that I can see whether it is working fine or not. So it is taking some time. So let it execute so that we can see whether it is working fine or not. Yeah. So this time you can see it is executing properly. And if I go here and if I check so 100 percent code is covered here we can see all the blue lines. So this way you can implement your test class for future method. Right. Now moving quickly so that I can explain you all the best practices. So you need to ensure future methods execute as fast as possible in case of web service call out try to bundle all call outs together from the same future method rather rather than using a separate future method for each call out. So it will be saving your time test that a trigger and queuing the future calls is able to handle a trigger collection of 200 records. Right. So this is important if you are calling your future method through triggers. So in test class you need to ensure like you're testing it for more than 200 records and to process large number of records are synchronously use batch epics instead of future method. Right. So for less number of records you can pick future method. But if you have large number of records then you can go with the batch epics. Then these are some important things that you need to remember. So use at the rate future annotation method and it must method must be static. If you are using at the rate future annotation so your method must be static future method can only return a void type so it's written type will be void always. Then future method can take primitive data types area of primitive data types or collection of primitive data types as argument. So only primitives and their collections future method cannot take objects as argument. So this is the limitation and that we will be resolving with the help of cueable epics. Then it can happen that future methods are running in different order as they are called. So if you have initiated more than one future method so they can run in any order like as their resources will be available. You cannot call a future method from another future method but you can call of cueable epics from another cueable epics so that is possible. And there is a limit of 50 future calls per epics invocation. So there is an additional limit on the number of calls in a 24 hours period. Right. So these are some points or things that you need to remember if you are working with future method. Right. So I hope with this demonstration you are you have understood how it is working. And there is one example available in the exercise sheet. So if you can implement this at your own. So just go through the recording and first implement what I explained. And then you can try to implement it and write it's test class as well. And for reference prerecorded videos available if you stuck somewhere you can go through with this. Now if you have any question you can ask. So generally we don't mix so people are asking like can we call it from there. So generally they fulfill different purposes. So we never mix any of the features together. So shriveli this web service call out we'll see when we'll be discussing about integration. Right. So that piece will be understandable there. So shriveli is asking about point number three. So point number three is so which one can you please tell me like this data type one or this limit one. So shriveli can you let me know which one you want from which slide. Okay. Meanwhile I'm just waiting for her response. So if you have no question you can leave if you have question you can ask in the chat and do practice because as in Corona say PIX is also important. Yeah. So there is no limit as such. But if you have millions of records so I think in that case you need to go with the batch. Okay. So this is all about introduction to as in Corona say PIX and future method. So implement it. Yes. Chandon invocation means calling and sorry for today's bad streaming because there is some issue with the internet. I cannot do anything with that. So stream is a little bit blurred but I try to demo you with the help of zoom in. So I think you are able to visualize it. Okay. So I take your leave now and tomorrow I will be discussing about batch ethics. So join every day session because you need to understand these properly. These are very much important as per interviews perspective and project also and in integration a few of from here will be implemented. Yeah. So how to monitor the future method that I already showed you. So from here like you can see we need to search for a big jobs. If you search a big jobs here. So you will find this option click on here and here you can monitor. You will see everything about the future method whether it is completed or failed. What is the status. Okay. Any more questions. So if you have more question please ask otherwise you can just leave. We have one more session at 9 p.m. So if you are joining those you can Praveen I will try but I cannot assure you because we can if I will be free then I will surely take. So here also you can see lots of examples are available for asynchronous apex. So you can go to study sales force dot com under developer section you will find asynchronous apex. And here you will find lots of examples. And somebody is asking can we schedule cable epic. So generally we schedule batch epics cueable. I don't think we can. So I can see a few more questions. So Arjuna I already showed you like from here you can track whether there is error or not. So status will show you if it is completed like your future is finished successfully if it is not then here status will be failed. Naveen 25 videos are there. I need to create some more I'm not getting enough time but there will be more no such in and generally future and cueable we don't schedule because these we use for calling external services and like we implement them with the help of future and cueable because if resources are not ready then they will be running at later stays any point of time whenever resources are available. So we generally don't prefer future and cueable to run at particular time for that we use batch epics because in batch epics in batch epics we have a method where we can query the data as well. We don't need to pass any data. So that's why it is easy to schedule that in future and cueable generally we need to pass some data. So if we schedule them we won't be having some data to pass. So that's why they are generally called through any other method because we need to pass some data as a parameter. Yeah. So more about batch and cueable we'll be discussing in tomorrow and day after tomorrow than I think you will be able to understand more. Okay. So no need to worry. Okay. So I don't see more questions now. Thank you so much for joining today's session and tomorrow we'll be discussing about batch epics. Thank you so much for joining today's session.


The most part. Can you expound on why Ben Shapiro is wrong about nationalism being a good vehicle for a nation state to advance their interest since he's too chicken to debate you? Well, I'm not going to say he's too chicken to debate me. Maybe he's too busy to debate me. But what does it mean a good vehicle for a nation state to advance their interest? First, I believe in the nation state. I don't not believe in the nation state. I just believe that the nation state is less important than nationalists believe. I also believe that the nation state in most places.  I said this in the last show. They're just too many nation states. And to the extent that nation states isolate themselves around ethnic characterizations, then it makes no sense. I am. I'm a big supporter of America. I'm a big supporter of a melting pot. I'm a big supporter of a federation of states that is America where states have some autonomy, but limited autonomy. But there is a federal government that over a large geographic area dictates federal law and mandates the protection of individual rights. So America, as it was conceived of, that is the model I believe in. And I think ultimately, if Europe had the right ideas, that is the right model for Europe. I don't believe in Europe having these little states. I'll get to that in a minute. But let me address this issue of being a good vehicle for a nation state to advance their interest. Well, what are the interests of a nation state? The interest of the nation state, the only interest of a nation state should be the protection of the lives and property of its citizens. That is it. The protection of the individual rights of its citizens. That's all government should be doing. What are the interests? Are they? So the only interest of government, the only interest of the state is as a protection agency. It's as a police military judiciary. And as such, its only interest are self-defense interests. It's against aggressors from the outside. Put aside the internal, what needs to be done internally from the outside. And yes, you need nation states. You need governments to provide that kind of protection.  Or can you have a government that provides that protection over a much larger geographic area like you do in the United States? I think the second is much more viable and much more beneficial than the first and provides much better protection if you think about, I mean, I agree with Marcon. When Marcon said Europe should have its own army, I agree. I think the United States should withdraw from NATO and leave Europe to defend itself. If Russia is a threat, then the Europeans, the Germans and the French and the rest of the Europeans are rich enough to field an army to defend themselves against the Russians. The idea that the United States should spend money and lives to defend rich Europeans from a Russian threat or from a Chinese threat or from a Muslim threat is absurd. They are rich enough. They have enough people to defend themselves. So I'm all for European army. I think that would be a good thing. So I don't know what these national interests are other than, again, the protection of individual rights. And in that sense, again, I do believe in the nation state, I think. And I said on my show nationalism that I believe in nationalism in a sense of Americanism. Americanism, to me, is the elevation of the individual above all else. It is individualism. It's a spectrum of individualism and an idea that the rule of the state, the only rule of the state is to protect the individual to protect his rights, to protect his right to life, liberty, property and the pursuit of happiness. That's what nationalism means. That's the only meaning in which nationalism means anything to make America great again is to get America out of our lives, to make America great again is to divorce the government from my private life. It's to free me to make choices about my life to get the government out, out of my business, out of my business business, out of my personal business. To make America great again is to return to the principles of the founding fathers. It's to return to the concept of a government that is there to protect individual rights and nothing else. That is what Americanism is. And that is the only legitimate form of nationalism. So what European Union should adopt, what Europe should adopt is an American type nationalism. That is an Americanism. I believe Americanism is universal. I would like to see Europe become America in a sense, in a sense of a centralized government that does only one thing and that is protect individual rights of its citizens. I would love to see Europe become a federation of states with one federal government, but not a federal government run by big bureaucrats in Brussels, but a federal government that fielded a European military to protect itself from threats from countries like Russia. But other than that, other than that, established laissez-faire principles across the entire European Union, protected individual rights across the entire European Union, and then let states, just like in the United States, have some flexibility over certain issues like sentence saying, specific sentence saying, specific things that were legal or illegal, and ultimately, you know, certain regulations, minor regulations of business or the way contracts were established. But that ain't going to happen. That ain't going to happen. But here I am in Slovakia, a country that by European standards is poor. A country that divorced itself from the Czech Republic, I can't remember when, 20 years ago, after the fall of the Berlin Wall, there was a Czechoslovakia, which was established 100 years ago post-World War I as one country. But no, that's not good enough. This is European nationalism, ethnocentric nationalism at its worst. That's not good enough. We Slovaks are not the same as you Czechs. We want our own country and you can have your own country. This is called Balkanization. I think it's a disaster and I think it's bad and I think it's bad for the Slovaks would have benefited from some of the free market policies that the Czech Republic instituted that Slovanian never did. Slovakia, sorry, Slovakia never did. So nationalism, when it's focused on ethnicity, nationalism, when it's focused on tiny little groups is a bad and dangerous thing. Nationalism, which is focused on individual and protecting his individual rights and providing the security for those individuals to live and pursue their happiness. That is the only healthy type of nationalism. But I don't know any nationalists like that. Me and five others. Almost all the nationalists I know are collectivists. Almost all the nationalists I know place the value of the group, whether they admit it or not. Place the value of the group, the state, the nation, the ethnicity of the group, the ethnic group, the tribe above the individual. And that is not just bad, that is damn evil. That makes them no different than socialists. Socialists who place the war being of the of the proletarian above the individual. But the war being of any group above the individual is wrong, is nasty, is evil, is no good. Well, this starts with the individual. Politics should be about the protection of the individual's right, the protection of the individual's freedom, freedom of action, freedom to pursue the rational values that are necessary for his life, for his survival, for his thriving. That is it. That's what the nation state exists for. And if it doesn't exist for that, if it exists for some ethnic purity, then it shouldn't exist. So whether it applies to Great Britain, whether it applies to Slovakia, whether it applies to the Czechs or the Poles or the Hungarians or any of them, if the purpose of the nation state is to maintain their ethnic purity, if the purpose of the nation state is to sacrifice the individual to the state, if the purpose of the nation state is to regulate and control the economy, if the purpose of the nation state is to do away with the liberties and freedoms that are right as individuals, then those nation states should not exist. Then I'm against them.


What happens when you combine the region's best network with a plan that requires no money down on the phone you choose, but also allows you to upgrade to the latest and greatest phone quicker than the traditional contract? You get the Appalachian Advantage, better service and bigger savings. Full payment plan requires historical details. Advantage requires no money down, taxes do a time of sale. You'll see probably on some days popcorn storms as we call them pop up. That can bring a fair amount of rain to isolated areas and bring some potentially high winds from time to time. We've had situations come up out of some of these storms when a cold front comes through. We've had a little spin up tornadoes in a couple of areas of the county in the past years and they've done some significant damage where they can touch down at. The flash flooding that occurred at Harliss Creek a few years ago and Raccoon Creek was a storm such as that. It caused about nine million dollars in damages between Raccoon Creek and Hurricane Creek. It moved houses, it destroyed homes. Some homes just basically with a wall of water here and they just disintegrated and ceased to exist. You want to try to prepare it or you can sustain yourself for at least 36 hours because in a disaster you can have enough damages and enough costs for help that local first responders are tied up or that they can, they're probably overwhelmed with cause. You want to make sure you've got a sturdy place to go to if a severe thunderstorm warning is released by the National Weather Service especially if they're anticipating high winds and setting storms. You don't want to be in an old home if you've got a neighbor or relative that has a sturdy house that you can go to during the storm and do that, that'd be a good idea to do that.


Good morning everyone or good afternoon actually Don't even know what time it is here Almost 12 30 Eastern time. So it does appear to be afternoon Long long long morning for me here really paying off. So let's review it DKS was my play of the day. However, it took so long to get going and I took a stop in the first trade in this and I'm gonna go all of that here. I'm still in this trade. This appears like it's gonna be going to 27 I'm gonna try to hold it as long as I can down to 27 dollars. I don't know if we're gonna make it though I'm watching this penny by penny by penny. I figured noon for it to break It actually broke that 28 dollar area that we discussed in the room around noon Oh my gosh, so nice Man really paid off today was a day where conviction was tested all around in every way shape or form Okay, so let's review it anyways first trade set up got stopped out got stopped out retook it okay, and Had to stop far enough away that it ended up holding Gave it a little more room added to the train So know that I was down in the first stop But then the second trade pushback looked like it was gonna stop out. I added pulled my brace up and This went on to work and down in here I was up and I didn't get out and had this big spike and and I thought gosh darn it But the here look at this What a nice day sometimes these things Get bought by traders, but the institutional money is still in control Traders were trying to buy it in every dip in here today all along the way And I stayed with the right direction and I stayed with the short Anyways, just Finished my review here Cuz I'm really bar by barring this now at this point here watching it, but bottom line is the trade worked and some people did not stay with it some people killed it and That was that was okay But I really felt that the gap was in control today of this which I always do because that's how I make choices to trade I mean I always make choices to trade based on the gap and I make them based on my gap rating the 26 points and This rated 22 points today, you know most of the trades I do do happen very quickly Today was one of the ones that took a while to go But I held the conviction and I stayed with and I believed in the gap But there were traders that like to buy these as big gap downs to fill the gap That is never the right thing to do never never never even sometimes once in a blue moon when it works When you've got that rates per my system Which you'd have to have taken my golden gap class to know my system to know it when you've got their rates good You do not do that You don't buy the down gap and this case today the gap rating was there it was solid It was good, but I was fully aware of the fact that people were buying this in the morning Gosh knows how many day trading rooms were calling this long, but it was a short as proved positive with the fact of the huge amount Of money I'm up today. So congratulations for everyone that did this. We'll see if I can get one more push down in this I'm not giving this a whole lot of room here though I'll tell you that but it's underway now. I mean this is underway now. There's no way that this is I don't think this is going to be done because it's just too early 1230 So we'll see where I end up with this But either way I'm up a lot of money in this very very very very very very happy the add in this definitely helped To have the size in this today It was a rough morning though because I took the stop initially And then it looked like I was going to get stopped twice, but I didn't So very nice trade today for everybody that held it and actually you could have even taken more Which I did not but you could have even taken more In here in this area and wrote it on down. I stuck with what I had from the initial second trade in the ad Really happy very very happy. It's been it's been a good month I mean it just continued to do what I do and a lot of this happened today Because that I held the conviction in the golden gap system and it works So congratulations for everybody that did this and made a lot of money today very very happy I will see everybody in the training room tomorrow morning


I, I'm so disappointed in Nintendo right now, um, just the nerve to drop the news that they are scrapping Metroid Prime 4 on the very day that I just so happened to not be able to make a video about it. Really Nintendo. Terrible timing. Now for those that watched the video yesterday, really fun video, Kim and I read through some terrible GameStop and Amazon reviews while there was a sponsor in that video. Once you put it up, you can't then put another video up for another 24 hours, you gotta give that video a breathing room. Which is completely understandable, but do you know how much it sucked to wake up in the morning and see that news and just want to talk about it and express my feelings and vent with you guys and kinda get us all on the same page because I thought there was gonna be a load of backlash and I was prepared to be a voice of reason, but surprisingly and awesome and rightfully so. When you look at the announcement itself, it's mostly likes, everyone's really in support of this and that's great. I don't even have to convince anyone that this is a great thing, I can just get to talk about it I guess.  Whatever they did, we will never see it. Whatever they were working on, it'll never see the light of day. We will never know what this Metroid Prime 4 was going to be. It's gone. They just pressed that big old delete button and the game is gone. Two years after it was announced, there is now nothing to show for it. That is insanity. Ultimately it's an amazing thing Nintendo have done and in my opinion it just goes to show exactly who Nintendo is and what they stand for. I mean this is the reason why I'm a self-proclaimed Nintendo fanboy, I mean it's the reason why I back Nintendo so hard and I love their game so much is because they are quality. Nintendo strives for quality. They want to put out the best games they can put out and they've been doing it. Mario Odyssey was amazing, Breath of the Wild, they worked on it until it was perfect and then they released it. That's what Nintendo does. And in a day and age where you see so many companies just get to that point where they can't work on a game anymore, they're at that deadline and they just got to shovel it out and they do because they need to make money and they don't want to take a loss. Just deleting a game that teams of people have been working on for years costs money. Look at games like Fallout 76, it wasn't ready. It so clearly wasn't ready even in beta two weeks before it actually released but what you're gonna do just get it out on those shelves. We see it time and time again. Games not being finished, just getting thrown out on the shelves. Maybe they're just dead on arrival or maybe they fixed them later. They never end up being the game that they were supposed to be but Nintendo didn't care about any of that. They didn't care about losing money. They didn't care about sinking more time into it. They care about putting out a quality game. And that's why their video announcing something that devastated so many people and ruined so many days still got so many likes and so much appreciation. Making that statement, coming out and saying it's not where we want it to be. It's not the Metroid game we feel like you deserve. So we're scrapping it and we're going back to its roots and giving it to Retro Studios, the company that developed the first three games and we're letting them do it. That's crazy. Like Nintendo had complete control over this and they've gone, no, you do it. Like that's, it's not a line of thinking you see from companies in 2019, 2018. You just don't see that anymore. Companies like Bethesda, companies like EA is probably a better one. We would have got whatever Metroid game that was and we would have been told to be happy with it and then we would have had loot crates in there as well. If you don't like it, don't buy it is what they would have said. Who said that recently? Wasn't that Battlefield? If you don't like it, don't buy it. They put the game out and no one bought it and they didn't like it. Nintendo doesn't say we don't like it, don't buy it. They say we don't like it so we're not selling it. How amazing is that? Oh man, I love Nintendo. So I'm gathering by this entire scenario and it's probably obvious to a lot of you that Nintendo was developing this Metroid game and it wasn't meeting their standards and by that they probably mean it was shaping up something like Metroid Other M. Retro Studio is a company that made one through three, did an amazing job with all three of those games. They're so loved. Like those are the Metroid games that when anyone thinks of a good Metroid game, they go to those games and they were all made by the same company. After that anything Metroid has been made by either Nintendo or a cooperation between Nintendo and another company like Metroid Other M, which was made by Team Ninja and Nintendo. It wasn't really the Metroid game a lot of us wanted. It was nowhere near Metroid Prime. It's kind of not ever talked about. It's kind of forgotten often. It's just not a very memorable game. It wasn't Metroid. It wasn't Metroid Prime anyway. And that was made by two really great companies, Nintendo who sure as heck knows how to make a good video game and Team Ninja who have made great games in the past like the Ninja Gaiden series. Two very capable companies who couldn't deliver on a Metroid game. Obviously Nintendo moving into this new system and wanting to develop Metroid Prime 4, they wanted complete control over it. They probably felt like one, they wanted quality control. They wanted to make sure it was an actual good Metroid game that lived up to the name of Prime. And two, they probably wanted all the money. I mean, they have the rights and the licenses to develop this game on their own in-house. If they felt like they could do it, they may as well have done it themselves. But just like Metroid Other M, I guess it really wasn't shaping up to what Nintendo considers a quality Metroid game. And they saw that and they scrapped it and they gave it to Retro. This is, oh man, that in itself is amazing. But just think about this for a second. Metroid Prime 4 is being developed by the same company now that made the first three. Like we couldn't have asked for a more perfect fourth game. Like this is, it's literally full circle now. It has now become the actual Metroid Prime quad trilogy made by the same people. It doesn't seem like anyone really had an issue with this other than just being disappointed they have to wait longer. I mean, I'm devastated I have to wait longer. I was really hoping it was this year or next year while I was finally gonna play another great Metroid Prime game. Now I have no idea how long it's gonna be. It could be years. That, I mean, that was a big game that moved Nintendo Switch units back when the Switch was announced. Like E3 showing Metroid Prime 4 sold Switch units and the people that bought the console two years ago thinking they were gonna have a Metroid Prime game to play pretty soon. They're gonna be looking at closer to the end of the Switch's lifespan. They'll probably finally be able to get to play this thing. As I was saying, it seems like no one's actually upset with Nintendo about this. And I wanted to in part make this video just for anyone that might be left over. Maybe you haven't seen other people's reactions to it. I wanted to make sure that I got this message out to those people and as many people as possible in a weird but not so weird way. This is actually a really good thing. I know it sucks we have to wait longer but it's a good thing because it's gonna get done right. I'm almost not even that upset. Like it's so weird. Like if you had told me yesterday that I was gonna wake up today and be told that Metroid Prime 4 was scrapped and starting again and I had to wait two years without seeing the actual video I ended up seeing and just being told that information, I would have been mad. I would have been so dis- I would have been like, what? Nintendo, what are you doing? Like how did you mess this up so bad? But that one announcement was delivered so well and explained so perfectly. It just made it okay and gave you even more respect for Nintendo. I'd love to know what you guys think. I feel so much better now that I vented. If you liked this video or you learned a little something make sure you hit the lip all over that subscribe button. Really appreciate it. Click the tap on this video right there because I would appreciate that as well. And now let's get to waiting for another two years I guess. Well, there's a bunch more switch games to play in the meantime.


We have from C A 1 to C A 33 and I just browse through and tell you what is involved in each exercise. C A 1 is about the Carnot cycle and its analysis. We have to determine the work ratio, work done per cycle and even the mean effective pressure. You will realize that the volumetric compression ratio is 20 and the pressure at the inlet that is the lowest pressure is 1 bar since the volume reduces by a factor of 20. The temperature rises by a factor of 3 at the point where you have the highest temperature and the lowest volume the pressure will be 20 into 3 that is 60 times very high. So, the pressure ratio for the cycle will be from 1 bar to 60 bar, so ratio of 60 even then you will find the mean effective pressure is pretty low although the highest pressure is as high as 60 bar. Then C A 2 is the same thing to be done for the Sterling and the Ericsson cycle to see in what way they differ from the Carnot cycle. Well 3 and 4 are standard stuff, variation of Carnot efficiency and analysis of some Queer cycles. 5 is characteristic of a typical Brayton cycle, C A 6 is reverse Carnot, so this is a Carnot refrigerator cycle. Then C A 7 is a Joule cycle and 9 are Otto cycle, 10 are 11 are Diesel cycle and up to here I do not think I have any additional idea or additional term involved. But 12 is a Joule cycle that means a mixture of the auto characteristic and the diesel characteristic explain it to them on the PV diagram that part of the combustion is at constant volume or is modelled at constant volume first part, the second part is modelled as at constant pressure and 12 and 13 are on diesel cycle, a Joule cycle again you will notice that 14 is on Otto cycle and petrol engine, 15 is again on diesel engines slightly more involved problems. Now we come to modifications, now I always find it an excellent idea to introduce modifications using exercises, so that the effect is immediately seen. For example 16 is Brayton the reheat modification is introduced here, now 17 is a gas turbine that means essentially Brayton cycle and the modifications introduced in this and compared with each other are reheat, intercooling, regeneration all together, 18 is similar to 17, but now component efficiencies are involved that is in the analysis now we will have to include eta turbine and eta compressor. These isentropic efficiencies are already introduced during the open system analysis, so this is the application of that and 19 is what I called clipped Brayton cycle where the purpose is not to produce power for output, but have a turbine sized exactly to provide the power for the compressor. So the turbine exhaust will be at a pressure higher than the ambient and the high pressure air at the exit of the turbine is expanded through a nozzle and the nozzle exit velocity provides an appropriate amount of thrust. So use the conservation of momentum equation across the jet engine to get the static thrust, this is one problem in the thermodynamics where conservation of momentum will have to be used. Now 20 is Rankine cycle and I think it uses only saturated steam. Now saturated steam cycles for fossil fuel based power plants are rather rare these days, but when it comes to nuclear power plants or solar thermal power plants they are not very uncommon. In fact for nuclear power plants saturated steam cycles are the default cycles used. 21 is the same type of Rankine cycle, but with superheated steam. 22 is based on a Rankine cycle using ammonia, properties of ammonia are given, so I think these are sufficient. 23 is also standard Rankine with some component efficiency, heat turbine is given. 24 is Rankine with reheat, so you can compare the characteristic with that of a cycle without a reheat. Intermediate pressure is given as 8 bar, explain reheat here, here explain intercooling and explain regeneration in braking cycle at the appropriate place and explain reheat in the Rankine cycle here. Then when you come to 25 you will have Rankine with a single stage of regeneration, what you call regenerative heat heating. We are doing a course on thermodynamics, so we do not have to worry about different types of reheaters and various combinations or trains of reheating, for that we go to the steam turbine course which is usually an elective. So just a case with one mixer type of reheater is good enough. Now 26 is, well the word nuclear is immaterial here, you can say it is a steam plant in which dry saturated steam is supplied to the turbine. Now the disadvantage of the dry saturated steam supplied to the turbine is that as the steam expands to a turbine the drainage fraction becomes lower and lower which is not good for the life of the turbine, the turbine blades will get eroded off in no time. So what is done is as it expands at various intermediate stages it is taken out of the turbine put through a separator, the separator will separate it into dry saturated steam and saturated liquid. The dry saturated steam is then sent to the further turbine, the next pressure turbine, intermediate pressure or low pressure whereas the liquid is throttled to the condenser pressure and discharged into the condenser. So this is saturated steam Rankine cycle but with separators between turbines. If you sketch the TS diagram it will look like this, we have saturated steam. Let us say just one separation stage in between, I think in the exercise there are three stages of separation one at 20 bar, one at 5 bar and one at 1 bar. So let us say this is the condenser pressure, this is the boiler pressure, this is the boiler exit state. If I were to expand it completely I would end up with very wet steam at the condenser pressure. So what is done is I will show you just one stage, you expand it in between when you say you have reached a tolerable limit and then that intermediate pressure put it through a separator. If you want to know what a separator is we have already done an exercise come to open systems on page 18, exercise OS 24 contains both a separator and a mixer. So apply first law to the separator, we have all the three states known so the two mass flow rates can be determined, the amount of steam flowing out and amount of liquid flowing out. Let us say this is state 1, first turbine expands it to state 2, then the separator splits it into two part, a state 3 which is dry saturated steam at that intermediate pressure. Let us say P s is the intermediate pressure and another stream at 4 which is saturated liquid at that pressure. Now from 3 you have another turbine bringing it to state 5. So now notice that if this were not there the dryness fraction would have been as low as that for this state. Now we have been able to improve the dryness fraction increasing the efficiency of the second part of the turbine as well as the life. The liquid at P s has a low enthalpy and we are unable to make use of it. So either it is put in a field water heater but in this exercise it is said that it is throttled to the condenser pressure and is mixed with the condenser is completing the cycle. The other part of the cycle I have not shown. 27 is steam regeneration with 2 feed heaters, rank in 2 feed heaters. Coming to the last page, 28 we go back to refrigerator cycles here, refrigeration in air conditioning cycle. This is a joule cycle, there are some component efficiencies also involved. First an ideal cycle then the component efficiencies. Then 29 is the same cycle with the modification that we have an ideal regenerator and then a real regenerator. So at this stage we need to explain to the students how a regenerator works. This is the modification that we talk about. Then 30, 31, 32 and 33 vapor compression refrigeration point. One is with ammonia, another is with R134A, third one is also with R134A and the fourth one 33 is with R22. So we do not have in our steam tables the data of this, but the textbook which you use will have the data at the end in an appendix or you go to the net and you will find a reasonable set of T S diagrams, P H diagrams, H S diagrams as well as tabulated data. Select one and solve these exercises. But again as I said my aim in any course on thermodynamics is not to worry about the final answer, but to really emphasize that the process of obtaining a solution is perhaps more important than the actual numbers which form part of the solution. So that brings us to the end of discussion on cycles and essentially end of the presentation. So we have something like 10 minutes to T time. So I will take a few questions and in the last session between 4 and 5.30 I will be here and hopefully for most of the time professors Bandarkar and Puranik will also be here. So we will take questions. Tomorrow as I have announced earlier 9 to 10.30 would be the general discussion session. 10.30 to 1 will be test 2. 2 to 3.30 would be the final concluding discussion session essentially a feedback session and 4 to 5.30 will be the validatory function. A note to the coordinators, I am told that on moodle a feedback form will be available sometime tomorrow. The participants are expected to fill the feedback form any time from the time it is made available, 2 may be 3 or 4 days later. If they are not at your center after the course, they can go to their homes or their home institutions and fill up the questionnaire from there. The deadline will not be like a test 30 minutes or a few hours. It will be a few days, may be a week at least. That is what I am going to tell them. And if any center wants to have a local validatory function, you may arrange it from 5.30 pm onwards tomorrow. So that brings me to a few questions before I start. 1128 VNIT in Akpur, over to you. Sir, you said in the representation cycle, the throttling process, H1 is equal to H2. So how it is possible, sir? Because in case of that the H2, the temperature and pressure it will drop you. Right, the temperature drops, the first thing, throttling process. I think we have done an exercise on this. The throttling process is a process in an open system. Let us say this is the throttling device, either a capillary or an open wall. If you set up an open system across it, it is a one inlet and one exit. Say this is inlet, this is exit. One inlet and one exit open system, steady state, some m dot flows and the requirement is that P i and P e should be such that there is a significant pressure drop. The areas etcetera are handled such that delta E k and delta E p are negligible. If you look at the enthalpy differences that we look at, this delta E p which would be m, which would be actually g into h, where g is of the order of 10 meters per second per second and h will be of the order of a few meters per second, few meters. So, g h will be of the order of say 40, 50 joules per kilogram which is 0.05 kilo joules per kilogram. Our enthalpy differences are typically tens or hundreds, so sometimes even 1000 kilo joules per kilogram. So delta E p is usually negligible and also except in case of nozzle delta E k is also pretty small compared to delta h. So these are good assumptions. Now with this and the fact that there is no work transfer, there is no heat transfer, just not attempted to extract work and it is reasonably well insulated. So q dot is 0 and so is w dot s. You will notice that the first law of thermodynamics in steady state when you apply to this, you will end up with h e equal to h i. That is what happens in a typical throttling process. And throttling process are commonly applied in refrigeration air conditioning plants of the vapor compression type and they are also used for measuring wetness in steam or moisture of steam using a throttling calorimeter or their its modifications over to you. Why we cannot calculate the efficiency in case of heat pumps? See when it comes to refrigerators and heat pumps, we do not use anything called efficiency at all. We use a parameter known as coefficient of performance and I have defined the coefficient of performance today morning. I think I have it somewhere here in the very beginning. Efficiency is defined only for engines. When you have a refrigerator, coefficient of performance is defined as refrigeration effect divided by power consumed. And if it is a heat pump, our interest is in the heat supply. So we define the coefficient of performance as the rate at which heat is supplied to the hot place divided by the power consumed for running the heat pump over to you. Hello sir. Go ahead. Why the compression ratio in case of diesel cycle is more than that of the Otto cycle. First thing is in case of Otto cycles, you have in actual practice, you have a pre-mixed air-fuel mixture, air-petrol vapor. Now if you compress it by a larger compression ratio, the temperature will rise and it will start, the combustion process will start even before or may start even before the piston reaches the top dead center. We do not want that to happen. Hence the compression ratio is restricted to roughly 10. That is known as pre-ignition and that is not a good thing to happen in an auto engine. Whereas in case of diesel engines, only air is being compressed and we want to reach a temperature high enough where the diesel will get heated, evaporate, mix and then start burning on its own because of the high temperature. Hence we want a compression ratio which is larger and typical compression ratio is around 15, 16, 18. I think 14 to 22 is the range you will find in different diesel engines. Thank you. I think I will take one more center. 1077 Federal Institute of Science and Technology Aernaculum, over to you. Good evening sir. Am I audible sir? Yes, go ahead. Sir, my doubt is regarding the second low problem, SL5. SL5. Sir, you have already solved that problem in the discussion session but my doubt is how to calculate the entropy change in that problem. How to calculate the entropy change in SL5? Remember I will only show the process diagram. Initial pressure is P0. Final pressure we have shown is P0 by 2. Initial volume is initial specific volume is some 2 V0. Final specific volume will be half of that V0. The initial state is P0 T0. This is the initial state 1. The final state will be 2. Occupy is a larger volume and I am showing this just by means of a dotted line. What I have shown here? This dotted line is the isotherm. This is the process representation. The question is how do you calculate S2 minus S1? I think that is the question. Now remember that by definition this equals initial state to final state dQ by T for any reversible process. What the actual process is? We just do not have to worry about. Now set up a reversible process between state 1 and 2. Analyze that in detail and integrate dQ by T over it. Since it is an ideal gas with constant specific heats, actually constant specific heat does not come into picture. We can consider that because the initial state is at a temperature T0, the final state is also at a temperature T0. Let me take a thermal reservoir at temperature T0. Let the system be brought into contact with it across a ideal diathermic wall and I will slowly allow the system to expand from P1 to P2 from state 1 to state 2. As I do that I will execute a reversible isothermal process as shown by Green on this. So this is a reversible process used to evaluate dQ by T0. This is a reversible process used by T. This process has nothing to do with the process which has actually taken place. Sir, can we use the general expressions that we have already derived for the general? Yes, you can use those general expressions which is Cv ln T2 by T1 plus R ln T2 by T1 and all those. Any one of those equations you can use. Sir, for that derivation we have started from a simple compressible system and dQ is equal to dE plus dw reversible. Yes. But here it is not reversible. Then how we can use this equation for this particular? No, no, no by definition. This is the definition of data s. So you have to consider a reversible process for evaluation of data s and using an appropriate reversible process we have derived those general expressions for s2 minus s1 in terms of either temperature ratio or pressure ratio or volume ratio. If you use that general expression you will get here the entropy change to be R into T0 into mass of the system into logarithm of 2 because the final volume and initial volume have a ratio of 2 to each other. Over to you. Sir, I have one more doubt, sir. Yes. I have one more doubt, sir. During the throttling expansion of the vapor compression system entropy is increasing. Yes. Could you please explain that reason for the increase of entropy during that process in the molecular level? See I am not looking at the molecular level but even otherwise it is an irreversible process because fluid is flowing across a finite pressure difference without extracting any work from it. So it is an irreversible process even if I want to I cannot make it go the other way through a throttle valve from a low pressure fluid flowing out as high pressure fluid. So since it is an irreversible process the basic principle of thermodynamics tells us that we have no choice but to have the entropy at the exit higher than the entropy at the inlet. You can go through the property relations and show that it will likely to or it will happen but we do not really have to go into kinetic theory or molecular aspects for this. Over to you. Is it due to the viscosity of the fluid? What did you ask? Due to the viscosity of the fluid or the friction related with the flow. Yes. In a way it is related to friction with the flow. This is a particular example of fluid friction which is comparable to a solid friction between a brake and a brake liner. I think we will stop here now.


It had been a tense 2 months and 8 days since the mysterious 5th of September 1999 C-Fax anomaly. Viewers who had witnessed the bizarre events on that fateful day had not forgotten the cryptic messages and disturbing imagery that flashed across their screens, or the interving alteration of the calming C-Fax music into a dissonant symphony of terror. For some, it had been more than just a shocking experience. The night of the 14th of November 1999 would be forever etched into the memories of those who tuned in to BBC2. Just as the clock struck midnight, the C-Fax service once again took a gruesome transformation. The familiar comforting pages of teletext were replaced by a nightmarish descent into the unknown. Strange symbols, distorted text, and grotesque images were on the screen, flickering in an erratic dance of digital chaos. The calming music that accompanied the C-Fax service twisted and distorted, slowing down until it wasn't recognizable. In its place came sounds from the depths of hell itself, echoing with the tormented screams of the damned. It was a horrifying droning sound that sent shivers down the spines of anyone who dared to watch. Viewers, already traumatized by the previous incident, found themselves unable to look away as the nightmarish imagery and sounds enveloped their living rooms. They spread like wildfire, and many scrambled to turn off their TVs, but even that proved to be a challenge as the remote controls refused to respond. Those who witnessed the horrifying spectacle suffered severe symptoms. Seizures, headaches and unrelenting panic attacks left many in a state of terror. Frantic calls to emergency services inundated the phone lines, and hospitals were overwhelmed with patients suffering from the sudden onslaught of medical emergencies. Most of the people who endured their agonizing fate did not survive, and then passed away unexpectedly. BBC2 was forced to go off the air for two days after the incident, just as they had following the September anomaly. Their technicians worked tirelessly to investigate the cause and make sure it wouldn't happen again. During this time, a sense of dread hung in the air, as viewers anxiously awaited news of what had transpired. At midnight on the 15th of November 1999, BBC2 finally returned to the airwaves. The channel's CFAQ service had been fixed, and the BBC executives issued unofficial apology to the viewers. They assured the public that measures had been taken to prevent any further anomalies, promising that the nightmare that had ripped their screens would not repeat itself. But for those who had lived through the horrors of the 5th of September and the 14th of November 1999, the scars remained. They would forever be haunted by the enigmatic chilling events that had unfolded on their TV screens, forever wary of the electronic specter that seemed to lurk within the heart of the CFAQ's service.


And I'm now an honorary member of that squadron. Yeah. Yeah. Oh, my gosh. Mr. Reddick, this is Arnold Burns, the chairman of... Hello there. How are you? Yes. And Bob Miller. Yes. How are you? They have something for you to present to AC. And I'm very... And I'm very proud of the... Freedoms Foundation for presenting to AC. This is... Why don't we have all of you in there together? We know what this is for. The George Washington Award for the Freedoms Foundation. I see it. I get to see it. Very, very pleased to have you on their behalf. Thank you. Thank you very much. And all of our... We're doing a caddy. Yeah. We saw Miranda's movie. Yes. It was Richard. Because... Oh, it was? Because it was... He enjoyed coming here. That was really amazing. She really saw him in the film. I met him there. And I was just so surprised at the difference. His friends were there. And this is being here. So it's nice to see you. I like this. I like this. And... Yes. He's responsible for that. Could we get a picture of that? Because Jimmy wouldn't love it. What? Could we get a picture with... That's right. Mark and Charles. That was for us. I guess that's the only not interested thing he ever did. And... You know what? He was the one that talked him into... He had just the wax. That's right. Talked him into having some bronzes made from the wax. What were you using, Mark? I've been offered $10,000 from my copy. And you know why it's going up? You shouldn't have told them. Because of this being here. In the Oval Office. You know, we may wind up being able to balance the budget. Thank you. Thank you so much. This is not a word. This is just souvenir. Presidential seal. Let me see when this design... Yeah, that's Post Truman. The American Eagle in the seal. If you notice, there are arrows in one hand and an alley branch in the other. The eagle used to be looking at the arrows. And Harry Truman had it turned around looking at the alley branch. Which is up here now. Is that the new one? That's looking at the alley branch. There's the one with the arrows on your desk. Because that's very old. That desk was once caught in the ice up in the Arctic. It was a British ship. In Trepit. And an American whaler found it, brought it out. And then we refurbished it and gave it to Queen Victoria. Some years later, Queen Victoria. A 1,300 pound box arrived here at the White House. They decommissioned the ship. And that was carved out of the planks of the ship. And she delivered it as a present. The President. He had it lifted just a little, I think, didn't he? He had it lifted just a little. They must have been smaller in those days. I was having trouble getting my knees under at the other side. So you can see that division around the bottom. They just added that around there to raise it. Have you been to the Truman Library in Independence? What? Have you been to the Truman Library? No, I never have. At the Library. Again, just the way it was furnished when Truman was President. It would be interesting you find that interesting. Well, I won't do that. We'd have to pick up all of them. Mr. President, better say never. Mr. President, thank you very much. Thank you so very much. Good to see you. I love the man. I will tell him. I appreciate it. Doing the General Electric Theater on television. Invited to come and officiate MC and so forth. Make an appearance at the Tyler Rose Festival.  Yes. It's the only time I had two future presidents in my district. Mr. Mayor, I really saw something Texas-style, too. They put me up in a suite in the hotel there, and I got there and informed me that two of your noted Texas had paid, I guess, the highest price for a bull. Oh, yeah. Very famous store. The resident in that suite before me was that bull. That price he deserved the best. They had him brought up in the suite. Well, I said, well, we're most recent, but at least we know that he is. That's the present they have. Phil and I will be back over there. Did it recently happen that you passed out from the cage to the city of Tyler? There were some dignitaries who had come to the city, and all of them have really frankened up in my favor. And you are, and I would be very honored that you would accept this cage to the city on behalf of the citizens of Tyler. Well, all righty, you'll come back and use it. Remember how you got to do that? Mr. Hart's been there, Mr. Jackson's been there, Mr. Washington's been there, Mrs. Mondale's been there, and so I certainly wanted you to have this, and I said you come back and we'll give you that. Well, thank you very much. I'm very pleased to have it. I'm very pleased to have these. Thank you, Mr. Redmond. Did you get on? I hope you have a picture.  Thank you. Thank you. Thank you. I'd like to give you the... Yes. Nice to see you. Thank you so much. Thank you, sir. Thank you. It's a real pleasure. We just done an interview with you earlier last week on the excellence education, and there's questions and photo opportunities. Let's get over there in the chairs.


What's going on everyone Sam here with late in sports cards rip in 2022 pinny mosaic football hobby three box break number 11 pick your team style going to read off a list of our names and teams Andre V Colts Andrew P with the Packers Ben F with the Rams first time break and good luck bad Brandon A Falcons Brian P Seahawks Jacob S Vikings James W at Browns at Jonathan H Texans Julian S Jaguars Casper P Bears Keegan B with the Buccaneers Luke F Giants Mark L Steelers Martin W Cardinals Matthew C Titans Matthew D with the Broncos Dolphins Mo M Chiefs Nathan Q Saints Eagles Nicholas S football team Nick N Niners Patrick I Raiders Chargers Ray G Jets Ryan D Cowboys Stephen R Ravens Talon H Patriots Thomas S with the Bangles Lions Tiffany H Panthers and Todd C Bills good luck everybody oh he might be breaking over here yeah now he's here cuz he is next breaks are Thursday there's Rashad white mosaic purple Zach Wilson to 49 for the Jets Matt Corral Silver Terrell Davis I don't know Sean actually Gabriel Davis Silver DeSean Watson and Justin Fields it's not on late in baseball breaks yeah I was gonna say it's on the late in baseball channel that's a virtue said debut of Malik Willis George Kittle Jelani Woods red center stage Alex Smith not numbered silver Alvin Kamara silver Deion Sanders are you saying you're personal or like the group break Sean because I we did four today so we haven't done five yet I don't believe mosaic is David Jabba red Clyde Edward Tulare and stare masters my home's 14 out of 99 yeah I think I don't think five went yet unless it went I think today was four we did number four super jumbo so five probably is maybe tomorrow Kenneth Walker there's blue Chris Carson to 99 silver Terry McLauren center stage rich Ganon me double check it should probably tomorrow I would think oh I started baseball I guess tomorrow we do mostly XR maybe Thursday who flawless Friday I don't know Sean honestly it's gotta be at some point keep going I want the NFC East didn't buy a dude like gold yes gold gold auto it looks like in Pierce of Jalen Tolbert for the Cowboys four of ten nice one there thank you Vaughn jumbo number five is daytime daytime Friday that's been ridder quandary digs red TJ walk yeah so Sean the super jumbo number five is daytime on Friday daytime Friday so that'll be with me I'll be breaking on Friday Laramie Tunsel silver DeMonte Adams Sean Alexander I'll be so sick pull the super dude took ten teams there you go Chris Olave appreciate that man silver menomastry Aaron Rodgers there's Harrison Bucker on the white auto 20 to 25 for the Chiefs nice one there there's Moe with that one Antoine Winfield silver Bailey zappy you don't need to recappy this that's funny stuff dude which one where's that or sweet shots Kevin Walker Nick Pinedo to 99 for the Broncos Silver Trayvon Walker Wilson Boomer Sison the Bontrait Campbell purple James Conner to 49 for the Cardinals and Jerome Betis just enjoying it from torturing people I swear honestly dude I know he does I know he does Harrison Smith silver breeze all so bad so bad Phil Phillips rookie auto for the Titans Trevor Lawrence red Derek Carr I feel the only one I do it with because he only one has a reaction when Donnie's there he's got his finger in his nose same as zombie Logan Hall Trayvon Walker Oh my goodness Drake Jackson Romeo Dobbs mosaic for the Packers Silver DeMonte Wyatt Shotted in Taylor Mosaic Red James Cook South Kenzie Resol and Silver Metapashtree Tom Freedy It's just adorable Mante Wyatt It's Cortland Sutton Red Roquan Smith We are losing it here Kenzie We are losing it White Justin Jefferson That is 10 out of 25 So what I'm saying Jacob Big Ravens for sure I'm all in on that There's Willie Rowe Fred for the Saints Not numbered red Tristan Ebner Rookie Silver Jonathan Allen If we pull any candy pickets getting Flung Right into the wall I have been laughing for too many straights Sean's like cracking me up over here You can't see it You can't see it I'm just sitting here in my own business I haven't seen him in a minute I haven't seen him in a minute Tessellation Tessellation coming up It's a 15 Starting with a Darnell Mooney We've got Josh Allen on the Tessellation 4 of 15 Ice on their bills Lamar Jackson Killa Trav to 99 Silver Herschel Walker Anquan Bolden Tessellation The new one this year They made it as hard as they possibly could They made it parallel that's 4 syllables Because why not There's Dallas Goddard Silver Playoff Lenny Ray Lewis Kenneth Walker Bluechips Mosaic I know especially with F1 too That's really going to be a challenge Hassan Haskins for the Titans Charred Gough Adam Thielen Red Barry Sanders Mosaic Have Jake talk for a moment For you Jameson Williams He's losing his mind Aaron Rodgers Super Bowl Patch Nice Oh this is what you ripped earlier today right Jaylin Waddle Charlie Kolar Straight Fire Mahomes Ray Lewis Super Bowl Patch Nice Rookie Wide Receiver I'm assuming Garrett Wilson Rookie Wide Receiver nice It's not bad, not a bad 3 boxes Wes Welker There's Red Warren Sapp This is just rich Zappy No need to recappy that Zappy Malik Willis Sam House Silver Desmond Ritter Bluechips Put the bottle down Sit back and drink some water Mix in water Robert Smith Nice one there for the Vikings on the color match To 49 That's Wando Robinson Silver T-Law Nico Collins Red Zeke Elliott And Purple Tony Gonzalez To 49 Robert Smith Vikings Hassan Haskins Titans Willie Rove Saints Kyle Phillips Titans Harrison Bucker Chiefs Gold Jalen Tolbert to 10 Cowboys Thanks again for the fill Next up another 3 boxer