فشرف بل اشتغالي بالعلم ولا تبغي به ما عشت يا دا دا دا لا وياله من شراف عظيم الحمد لله رب العالمين له الحمد الحسن والثناء الجميل واشدوا الله إله إلا الله وحده لا شريك له يقول الحق وهو يهد السبيل واشدوا أن سيدنا ونبينا محمد صلى الله عليه وعلى آله وأصحابه والتابعين لهم بإحسانين إلى يوم الدين أما بعد وإشاء الله تعالى going to start the explanation of the كتاب نواقظ الإسلام all of the previous lessons that we've had it was introduction to the book we are now going to start نواقظ الإسلام today we've spoken about كفر and its principles and apostasy and things related to that we also spoke about the biography of the author محمد محمد وعاب who he was we spoke about that as well so there's nothing else open for us today إشاء الله تعالى except to start the book نواقظ الإسلام the author started by saying إعلام no يقول بسم الله الرحمن الرحيم in the name of Allah the most merciful the most gracious إعلام no this word إعلام that the author started the book with is a كلمة it's a term you tell me how it's a term that is used عند ذكر شيء اللي له أهمية it is a term that is used when you're mentioning something that has importance وينبغي أن يصغى إليه the word إعلام is a term used when you want to mention something that has great importance and that the listener has to bring his ears close ويتفهم ما يرقى إليه and that he should understand what is being told to him الشيخ محمد بن إبراهيم آل الشيخ who is the previous Mufti before عبد عزيز بن باز الشيخ العلمة محمد بن إبراهيم آل الشيخ who is the Mufti before بن باز he has تعليقات على كشف الشبهات he has a little explanation, a little commentary on the book كشف الشبهات when he explained what the word إعلام means he said it means إجمع قواكة وحواسك bring your strength bring your senses وكل متفهم human and be a person who understands لما يلقى إليك بعدها be a person who understands what is going to be thrown at you to come إعلام the author says and the other term that the author uses after إعلام is نواقب الإسلام نواقب الإسلام the word نواقب is جمع and it's اسم فاعل غير عاقل اس اسم فاعل which is a verb now it's a verb now which is غير عاقل and it's in the form of فاعل نواقب is على وزني فاعل and in the language linguistically the word نواقب is النقب في اللغة نواقب is plural the singular is نقب نواقب is plural the singular is نقب نو ألف لاب نون قاف ضاد نقب ألف لاب نون قاف ضاد نقب in the language so the word نواقب is على وزني فاعل اسم فاعل and اس اسم فاعل غير عاقل it's a verb now that's used for something that's not عاقل so anything that comes in the وزن of فاعل in the Arabic language نواقب is used for غير عاقل اسم فاعل which is غير عاقل and the singular is what? the singular is ناقب I'm a نقب what does a نقب mean? نقب means if sad or shame it's to corrupt something بعد إحكامي after it was solidified like for example نقض البنيان a هدم نقض البنيان means breaking the pillar or the building it's when you demolish a building نقض الحبل when you make a knot inside the rope and then you untie the knot and that untie is also called نقض that's what Allah used in the ayah in Surah An-Nahl ayah 92 وَلَا تَكُونُ كَلَّتِي النَّقَضَة غزلها من بعد قوة الأنكاتة وَلَا تَكُونُ كَلَّتِي النَّقَضَة غزلها do not be like the woman who untied the knot that she made do not be like the woman after she put so much effort in all of that is what you can find in المعجب الوصيط we've now understood what نواقض means linguistically what does نواقض mean technically نواقض technically means الإنحراف it means deviation عن شرع الله it is to be deviated it is to divert from the legislations of Allah SWT إلى غيره other than the legislation of Allah and that deviation can happen in three ways بالقولي by speech you can deviate by speech for example if you saw the messages of Allah SWT or if you saw Allah SWT this is in حراف قولي it is a verbal deviation or بالفعل other person can deviate by what? by action such as slowly for other than Allah SWT وتعالى other person can deviate by what? بالتركي by leaving off and turning away from the legislation of Allah SWT لا يعلمه ولا يتعلمه he doesn't educate the people with it and he doesn't learn it himself ولا يعمل به and he doesn't implement it at all this is إعراض قولي total utterance utter fully turned away from it that's what نواقظ means and we previously defined what? what قفر means right? we define what قفر means some scholars they don't call it نواقظ الإسلام الشيخية he called it نواقظ الإسلام محمد عبد الهد the nullifiers of Islam other scholars they call it what? أسباب الردة they call it أسباب الردة which is the causes of apostasy other scholars call it أنواع الردة so it's three names it has is it نواقظ الإسلام? not the book I'm not talking about the book but I'm talking about this concept some scholars they refer it as نواقظ الإسلام and that's what محمد عبد الهد chose in this book other scholars call it أسباب الردة أسباب الردة the causes of apostasy and other scholars they call it أنواع الردة types of apostasy all three names can apply on it are we all together? شيخ محمد عبد الهد he chose نواقظ الإسلام نواقظ الإسلام we defined what قفر means before right? we said قفر what does it mean? linguistically it means سترون وطارطرية قفر الليوستيكي means تحايد and you can see something ولذلك فعمة is a kafir فعمة is a kafir why do you call فعمة a kafir? because he takes a seed and he plants it into the earth and he buries it so we don't mean kafir he left it related we mean what he is doing is kafر by taking the seed planting it into the earth he is hiding the seed الله mentions in the Qur'an in سورة الحديد does anyone know the ayah? the كفارة is the agricultures in the Qur'an سورة الحديد specifically I haven't mentioned this before yeah? كمثل غيثي أعجبل كفارة ناماته كفارة هي عزول the farmers كفارة هي كمثل غيثي like the rain when it comes down كمثل غيثي أعجبه it amazes and it fascinates الكفارة the farmers why do you call it كفار? because what they do is they take the seed and they hide it الله is using the linguistic usage now of the word كفار does that make sense? because that's what originally it means anyone who hides some things call it kafir linguistically but in the shari'a the word kafir means الشيخ الإسلامي بل تيمي he said he said it's عدم الإيمان it is what? عدم الإيمان when the person has no belief بالتفاق المسلمين by consensus of the Muslims he says سواءهم اعتقد نقيده هو تكلم به أو لم يعتقد شيء ولا يتكلم he said whether he believes the opposite or he speaks it or he believes it it doesn't matter it's the same it's kafir very good then the sheikh says الإسلام لو اقضوا لو اقضوا الإسلام what does الإسلام mean لغة نيجوستيكلي the word الإسلام لغة it means اذهار الخضوع والقبول امع القبول showing humiliation and humiliation and humility and acceptance in other words it means submission as we call it submission what does it mean شرعا what does it mean in the شريعة the word إسلام شيقبلو عبد الوهب محمد بل عبد الوهب defined what إسلام means in إسلامة الأصول what did he say الاستسلام لله بالتوحيد it is to surrender to Allah with monetism والانقياد له بالطاعة and it is to adhere to Him in obedience والبراءة من الشرك واله and it is also to free yourself from شرك and those who come with shرك here if you guys look at your book what does the author start by saying what did he say إعلم أنه what did he say إعلم أنه that's what your copy says any other copy إعلم yeah yours it says إعلم أنه good إعلم أنه نواقظ الإسلام عشرة صح a young one عبد المحسل القاسم what does it say إعلم أنه من أعظم نواقظ الإسلام that's what yours says right these two copies they help us to have the reason is because what you have is problematic why is it problematic because your one says إعلم know that the نواقظ the things that nullify Islam are 10 so it's as though the authors only saying the things that nullify Islam are 10 are we together and that is one of the copies that are present there's nothing wrong with this it's a copy the Shaykh were authored it like that are we all together does that make sense and that's problematic in the sense where some of the علبة they reached the nullifiers of Islam up to 400 400 things can nullify person Islam others have reached up to 80 are we all together but the copy of عبد المحسل القاسم the one that you have is it doesn't have that إشقان you can't have that you can't bring that doubt forward why because it says what إعلم أنه know that from the greatest nullifiers of Islam from the greatest so he's shade that the greatest nullifiers does that make sense the other copy says this one says know that the nullifiers of Islam are 10 your copy says know from the greatest nullifiers of الإسلام are these 10 so it's the greatest they're not the only ones are we all together so there's no problem with your إبارة the terms the words that he used here but the scholars they try to respond to this one that he wrote why would he say that then they gave two answers the first one is that they said أنه هذه النواقض العشرة these 10 nullifiers that he the شخص يعلم أن النواقض الإسلام العشرة know that the nullifiers of الإسلام are 10 they said the reason why he said it like that in that copy is because these are the 10 that the علمة unanimously agree upon the scholars did not differ that these 10 that the شيخ رحمه الله wrote here they nullify your religion بالكلية in totality that's why the reason why the sheikh chose these 10 are 10 which are متفقون علي they agreed upon are we all together good ولذلك شيخ سلمان إبن السحمان كتاب دورة السنية the second volume page 260 he's from there he's a علماء النجد from the great scholars who come from the sheikhs you know works and رحمه الله شيخ سلمان السحمان is very well known he said قد ذكر أهل العلمي نواقض الإسلام he said that the scholars they mentioned the nullifies of Islam وذكر بعضهم some of them even mentioned أنه قريب من 400 ناتن that the nullifiers of the religion are up some scholars have made it reach up to 400 لكن الذي أجمع علي العلماء but the ones that the scholars all agreed upon is هو ما ذكره الشيخ is what sheikh محمد لله عبدالله the second response that the scholars gave for him which is that إنما كان اقتصار الشيخ علي the reason why the sheikh he restricted himself with those 10 is لأجل شورتها because these are 10 famous ones وَكَاتَرَةِ وُقُوْعِ النَّاتِ فِيهَا and the majority of the people they fall into one of these 10 these are the 10 that they generally fall into and that's what the sheikh himself mentioned that's he mentioned that himself in the Kitab الدورة رسانية رحم الله the tenth volume page 80 4 to 85 the reason why he restricted himself with these 10 is because these 10 are are the 10 that occur the most they're the most occurring that the people tend to fall into one of these 10 other scholars have said that the reason why the sheikh chose this is because these are the 10 mother nullifiers that every nullifier that comes after can generally be be squeezed under one of these 10s that these are the 10 قوبة it's like a dome it's a dome where all of the other all the other nullifiers fall under that's why some scholars said he mentioned it so what does نواقب الإسلام it means مفتلاة مفتلاة الإسلام I'm a مفتلاة الإسلام the things that nullify a person's Islam corrupt the person it's Islam when we when we say نواقب what is it that is nullifying it's actually nullifying your righteous deeds and leaves the religion what happens to them لإن أشركت لا يحبط لنا عملك ولا تكوننا من الخاصرين that the person's righteous deeds will be nullified and that individual will be what that individual will be in the health fire forever if he dies upon that and we all know in شيخ الإسلام محمل عبدالله أبى كتاب القواعد الأربع he says that إعلن أن العبادة لا تسمى عبادة know know that a thing is not referred to as عبادة إلا مع التوحيد unless there is توحيد in it we won't call this عبادة unless you've done it with توحيد كما أن الصلاة لا تسمى صلاة just like the prayer is not called a prayer إلا مع الطهار unless the person is on a state of purity فإذا دخل الشرك في العبادات if شيخ أنتز عبادة what does it do? فسدت it corrupts it كالحدة إذا دخلت في الطهارة just like when impurity enters into into purity it corrupts it if you pass wind your purity is gone now you corrupted it if شيخ أنتز عبادة it corrupts it it goes and we need to be scared of the things that will nullify our religion we need to be very scared now it's something that can happen it is something that can occur and the prophet did tell us عليه الصلاة والسلام that apostasy and ridda can occur occur in this ummah some people believe that the ummah will not become kufar after they became Muslims and the prophet صلى الله عليه وسلم said لا تقوموا الساعة the prophet said that the hour will not strike حتى يرتد في أعمل من أمتي the prophet said the hour will not strike until tribes apostate the prophet صلى الله عليه وسلم لا تقوموا الساعة the hour will not strike حتى يعمد اللات والعزة until that and عزة is worshiped the idols that the prophet destroyed with his own two hands will be brought back and will be worshiped so don't ever think to yourself that شرق has left his ummah and it doesn't exist the textual evidence show that it does exist and that is going to happen and the reality around us shows us there's many who claim to be Muslims who are dwelling into شرق أكبر they're dwelling in what וأنه عبادة عبادة دون إ Sempre واشي peu آضUND they're falling in fog الشرق مع عبادة الله وحده they are falling in fog associate partners withorage ابراه� وسخليymph الله he sat الله سтоر رب جن�بي ووبي ينابووف معي me and my offspring from worshipping idols. إبراهيم who destroyed an idol when he was young he destroyed him in his own hand is not saying to Allah save me from what ? أنه ليس يقول أنه هو الشرق المقاومة وطبعا جدًا من شرق، جميعا فلي الجميع يكذبونلة هل جميعا لا يعرف هذا؟ يجب أن يكذبون لأهل الجميع إبلاهيم يخطط من هذا لذا يجب علينا أن نخطط يجب علينا أن نخطط يجب علينا أن نخطط أن تعتقد أن هذا كان نالفايا our religion الشيخ رحمه الله started أن نقذ الأول The first Nalafaya The first Nalafaya الشيخ رحمه الله said الشرك في عبادة الله وحده لا شريك له والدليل قوله تعالى إن الله لا يغفر أن يشرك به ويغفر ماذون ذلك لمن يشاء ومنه الضبح لغير الله كمن يدبح للجني والقبابة والقبابة الشيخ started by saying The first Nalafaya What is the first Nalafaya الشيخ في عبادة الله associating partners with Allah in عبادة لا شريك له الله has no one in partners with Him He is alone والدليل قوله تعالى the evidence that this الشيخ Nalafay your religion It Nalafay your righteous deeds The evidence for that إن الله لا يغفره الله does not forgive ويشرك به For Him to be associated partners with Him ويغفر أن الله forgives ماذون ذلك Anything besides that الله forgives it لمن يشاء Whoever he wills he forgives for ومنه And now the sheikh is going to give you an example اشرك في عبادة الله associating partners with Allah in عبادة The sheikh is going to give you an example ومن who is أدبه لغير الله is to slaughter for other than Allah كما يدبحوا Like the one who slaughters For who للجني He slaughters for the what He slaughters for the jinn And he also slaughters for the شرائب We're going to talk about this topic in مساءل point number one point number one So we're going to point point two point three point four We're going to do a point to ask a point المسألة الأولى Point number one The author why did he start So point number one Why did the author choose to start With this nullifier From all of the other nullifiers Why did he start with this one The reason why the author chose to start With this nullifier Number one is أن الشركة That associates partners with Allah أعظمو ذنب رصي الله به That shirk Is the greatest sin Allah has been disobeyed in And the evidence for that Is the ayah in Surat Al-Nisa Ayah 48 Allah says وما يشرك بالله Anyone who associates partners with Allah فقا دفترا إثمن عظيمة That person has forged And come with a great sin لقمان when he was advising his son What did he say to him He said يا بنيا my son لا تشرك بالله Don't associate partners with Allah In عبادة إن شركة For verily شرك لا ظلم العظيم Is the greatest oppression ayah 13 سورة اللقمان And when the messenger was asked إن حليت مخاري And Muslim both narrated من حليته بالمسعود أيو ذنب أعظم What is the greatest sin The Prophet was asked أيو ذنب أعظم What is the greatest sin The Prophet said أن تجع على لله It is to associate partners with Allah When he is the one who created you So the Prophet was asked What is the greatest sin The Prophet صلى الله عليه وسلم Responded and he said It is to associate partners with Allah When he is the one who created you So here وقفة If the greatest sin is شرك That's the thing that we need to focus the most on That's what we need to spend our time dealing with Because this is the greatest form of sin Don't talk about ذنب Don't talk about شرب الخبر First, speak about شرك first Then you can deal with those other sins Number two أنه أكبر الكبائر That is شرك is from the great sins From the great sins From the major sins From the major sins The evidence for that is the حديث بخاري and مسلم both narrated من حديث أبي بكرح رضي الله تعالى عنه That the Prophet صلى الله عليه وسلم He set the companions ألا أُنَ بِوكُم بأكبر الكبائر Should I not tell you Of the greatest sins قالوا بلا The companions said of course The Prophet then said بالله Associated partners with Allah وعقوك الوالدين And being ungrateful And disrespectful And ungrateful towards your parents الحديث Number three The third reason why the author started with this is because شركة That shirk Nullified جميع الأعمال All of your righteous deeds That you come with شرك will nullified الله سبحانه وتعالى He said لأ إن أشركت نبي الله محمد If you associate partners with Allah ويحبطنا عملك Allah will nullify your righteous deeds ولا تكوننا من الخاصرين And you're going to be from those who are In a state of Loss الله also says ولو أشركوا لحبط عنهم ما كانوا يعملون If they associate partners This is in Surah Al-An'am I-88 Allah mentions 18 prophets Brothers and sisters pay attention Allah mentions 18 prophets From that Surah Al-An'am Allah mentions that he counts 18 prophets One after the other All of them in that page Allah says At the beginning of the ayah الذين آملوا ولم يلبسوا إيمانهم بظلم أولئك لهم الأمل وهم مهتدون وتلك حجتنا آتينا إبراهيم على قومي نرفع درجات من نشاء الله كنت نوع إسمعين إبراهيم 18 prophets الله كنت And then Allah says ومن أبائهم وذرياتهم وإخوانهم واجتبيناهم وهديناهم إلى سراط المستقيم الله says after 18 prophets He says they are four fathers They are offsprings الله then says ولو أشركوا If any of those 18 prophets And their children And they are offsprings If any of them associate partners with me Any one of those 18 prophets لحبط عنهم ما كانوا يعملون Every righteous deed that they came with الله will nullify it These are the big prophets of Allah الله will nullify all their righteous deeds And it will all go So shirk is great Number four The fourth reason Why the author chose it is what أن الشركة لا يغفر الله That shirk Allah does not forgive it Allah does not forgive shirk عز وجل إلا بتوبة قبل الموت Unless the person repents before he dies As Allah said in the ayah إن الله لا يغفر أن يشرك به Allah does not forgive an individual To associate partners with him Allah does not forgive Allah does not forgive أن يشرك به That he associates his partners with him He does not forgive a person who comes with that shirk


I welcome all of you for the introduction of the next course which we are planning. Myself Akul Sharma will be taking this course. So, let us first start with brief introduction on what is CFA. It is a methodology for simulation of fluid dynamics and heat transfer problem. It is as is that if you learn this course, you there are two things which you can do. You can create a movie which has a fluid dynamic or heat transfer representation. So, if you take a video camera, you can capture a movie for when airplane is moving, but that movie will be pictorial information. With this subject, you create a movie which has a fluid dynamic information in terms of flow properties like velocities, pressures and temperature. You can also not only create movies, but you also calculate the parameters which are of final interest to the engineers like drag force, lift force, pressure drop and so on. So, this course results in developing CFD software by which you can create movies for fluid dynamics. So, it basically gives you the flow field information in time and it gives you the engineering parameter. And it is very useful in designing and analyzing engineering systems and processes. It is an open-ended application of fluid mechanics and heat transfer problem. In fluid mechanics heat transfer, we use normally calculators, but in here what you can do is that you can do lot of parametric investigation which is an open-ended application of the two course. CFD reduces the cost and time of designing and analyzing engineering system and it is slowly becoming part and parcel of a bigger pool which is called as computer aided engineering which involves solid modeling CAD, finite element methods and CFD as well. In academics, this course is taught in various branches of engineering from civil, chemical, metallurgy, mechanical and so on. In industry, it is applied in diverse areas such as aerospace, automobile, turbomachinery, biomedical, electronic cooling and so on. There is an increased importance of CFD software development, application and analysis. As well as this need is from the Indian let us say industry and research organization. As well as there is a lack of trained manpower in this subject. So, this gives us an importance of this course. However, there is a lack of trained teachers for this course. We have carefully thought about the outline of the course, taking into consideration the background of the most of the colleges who will be taking up this course. This course is not exactly the way we teach in our CFD course here in IIT. So, we have tried, we are starting with some essentials of CFD which we think are partly prerequisite for this course. So, we will talk, this will be taken by Professor Puranik. This includes fluid dynamics and heat transfer, numerical methods, essentials of those. Then discretization method, finite difference method will be taken by Professor Puranik and I will take finite volume method. There are two major objectives of this course. First to develop an appreciation of theory behind the screen because whenever you use a CFD software, you do not have an understanding of what is happening behind the screen. And the second is to, so first objective is regarding development, second objective is regarding application. Whenever you are using a software, you need to appreciate the application of CFD because in a CFD, it is not like a simple software. You have to very cleverly use it. So, you have to design your problems in a very careful manner, the domain size, the boundary conditions. So, what we are planning is that we will have some exercise problem which we will expose you to. And with this two pronged approach of theory and application, you will be firmly set to become a CFD expert in the academic as well as industrial field. So, the prerequisite of this course is undergraduate course on fluid mechanics and heat transfer and some introduction of numerical methods in computer programming. Now, Professor Puranik will discuss the first part of this course which he will be taking. So, we will begin by deriving the governing partial differential equations for fluid mechanics as well as heat transfer. I think you have already gone through some of those derivations, possibly all of them through this course. But nonetheless, for completeness what we will do is we will do the derivations anyways. Maybe we can do it from a different point of view than how it has been done here. I will find out from Professor Prabhu and Sridhar and how they are doing the derivations here. And accordingly, we will decide whether to follow exactly the same approach or a different approach to finally arrive at the same set of equations. If we do it differently, hopefully you will get a different perspective also. You can think about how this was done, how that was done and so on. In any case, this is very important step because in order to make sure that everyone is at the same base, before we in fact start talking about how to employ numerical methods to solve these, we thought of making sure that everyone should go through a formal exercise of deriving these governing equations for fluid dynamics and heat transfer. After that, we will begin with some basic discussion on application of numerical methods. And it is a good assumption here from my point that many of you will know this, the second point here, essentials of numerical methods that we have written. Where we will try to understand the basic ideas related to how you numerically find derivatives and integrals as well as if you have a linear system of equations. How do you solve that linear system of equations using certain very standard techniques called the Gauss-Seidel type algorithms or the Thomas algorithm or the Tridigonal matrix algorithm. So, these are minimally required, I will say, in order to go on and analyze a fluid dynamics and heat transfer problem from the so called CFD point of view. Then there are two different approaches, very popular approaches for solving these governing equations using a computer. So, one is what we normally call a finite difference method or a finite difference approach. What we plan to do here is with respect to this finite difference approach, we will not solve the entire set of governing equations for fluid mechanics and heat transfer. What we will do is to illustrate how a finite difference technique works, we will come up with what we call model equations, which are simplified forms of the governing equations of fluid mechanics and heat transfer. So, we will pick typically three types of model equations, they are what we call elliptic parabolic and hyperbolic equations and these will be solved using these finite difference methods as first part of your formal CFD introduction. And then there is some small affiliated topic of stability analysis, which is not only useful for this finite difference methods, but will also be useful later for the finite volume approach which Professor Sharma will teach. So, my part in this course would be to cover whatever is projected on this slide. So, we will start with the derivation of the governing equations, introduce the absolute essentials of the numerical methods, which are required to do a CFD analysis and then I will introduce the first approach of discretization, which we call finite difference. Next one, to go back to the history of development of computational fluid dynamics started with finite difference method, but slowly in the middle of the 80s it felt when people tried to solve more challenging problems like complex geometry problem, they came up with a finite volume method, which is nowadays commonly used in most of the CFD softwares. These are basically discretization method, which are used to obtain algebraic equations, although the governing equations are partial differential equation, but in computer we solve set of linear algebraic equation. So, I will take the finite volume method starting with for a here we will restrict to two dimensional cases, although the extension to three dimensional is straightforward. We will start with heat conduction, I can also call is a computational heat conduction. So, I will start with the finite volume discretization of the heat conduction problem, explicit and implicit method of solution of the linear algebraic equations. Whenever you want to develop a program or a software, there are certain implementation details, which are required. So, this will be discussed with the help of some figures and animations. I will also discuss the solution algorithm, there are some special topics on heat transfer, such as multi-solidity and non-linear heat conduction. These are some of the special topics for heat conduction, some example problems. From conduction, we move on to heat convection and one of the example problem is hydrodynamically fully developed, thermally developing flow. So, it is an advection diffusion equation. This will be also starting with the finite volume method, then I will discuss the different convection schemes, solution algorithm and finally some example problem. So, after completing the conduction and convection part, when you go to the fluid dynamics or the coupled fluid dynamics heat transfer problem, it is a combination of the conduction and convection, which are diffusion and convection. So, only thing which is left to be discussed is the pressure, how to handle the pressure term, which is the most challenging part of the CFD. So, this will be discussed again with finite volume method and there is a pressure velocity coupling, which is needed to solve CFD problem. This will be discussed for staggered as well as collocated grid. Staggered grid was used initially, but later on the developments collocated grid are popular nowadays. Here also it will be discussed for explicit and implicit method, solution algorithm will be discussed and finally and with some example problem. These are some of the reference books. However, these are we are not giving any textbook, because we do not following any textbook strictly, but these are some of the books which you can refer. First is the Anil, Anderson and Fletcher. Second is an edited book by Murli Dhar and Sundarajan. Third is a book written by professor of our department, professor Darte. And the last is one of the most classical book in CFD written by Patanthi. So, the methodology of the instruction is it consists of two parts, lectures in the first half and may be one hour in the second half and the mode of teaching will be using both board and power point slides. Complete course material would be put up on the web immediately after the course and regarding a lab part we had started working on because handling lab for CFD is one of the bigger issue as compared to other courses. The way we had planned is that we are developing programs using open source software. And the idea is when you will come for the coordinator workshop we will hand over the programs as well as the open source software. What we are planning is there is an open source software which is similar to Matlab which is called a Psylab. So, we will hand you over the software open source software as well as the programs which will be used in the laboratory sessions for the CFD course. And the software research that it has is inbuilt graphics. So, the program will and even if you want to do some small some if you do few lines of programming it is quite easy. So, that way we have planned to develop programs which will provided to the participants and they are expected to solve various CFD problems for various because in a CFD as it is an open-ended applications you can vary the governing parameter. So, the problems will be given where in the program you have to change some number and see the results. You are also expected to plot and analyze the results. And the long term objective is that you should be able to develop your own programs. It is very clear what the expectations are. Whatever will be taught in the course is something that we will expect you know and be able to do on your own when you go back to your college. That is what really is written out here. So, I do not need to really read out what the expectations are. So, the only one thing that I would like to add in addition to what is written out here is that we are very seriously thinking that we will give you guys at the end of the course an assignment which you are expected to work on for maybe a week or so wherein you will be required to develop a program to solve a certain problem. And we will be expecting that you will submit it back to us. And only when the successful completion of that assignment is finished, really speaking the course is complete for you. That is the idea. The reason is because CFD is one course which is I think Professor Sharma will agree completely. It is a truly hands on course. You cannot read books and understand it. You have to sit on the computer and you have to go through as we say getting your hands dirty. That is writing your own program, learning how to debug and so on. So, the only way you will really have a reasonable confidence in yourself as well as to go and teach this class eventually is by writing something on your own and making sure that you know exactly how to do it. I would like to highlight that by teaching this course, earlier I taught this course in one of the NITs. I had realized that and the background of most of the participants in this course are one of the bigger one of the problem is that although this course can be taught mathematically intensive but I had come up with a procedure by which even if your mathematical background is not that strong you can still get a more physical feel which I called as a novel physics based finite volume method. The idea is shown by this three by a block diagram. We start always with a control volume and in a course on fluid physics or heat transfer we derive partial differential equations. Now in most of the CFD books what they do is that they start with those differential equations. So, when we start teaching CFD starting with equations that to not algebraic but differential equations many time I had found that the students with or the college teachers with not very strong mathematical background get scared. So, they follow Gauss divergence theorem and the convert the differential equation to the algebraic equation. So, the traditional finite volume method is shown through green arrows. So, first derivation of partial differential equation which is done in the fluid matrices transfer then algebraic equation done in a CFD course. What finite volume method I will be teaching is that I will start with the same control volume with which you feel quite comfortable in the first lecture of maybe heat transfer of fluid mechanics course. So, from the same control volume the same algebraic equation can be derived. So, this is what will be the methodology of the finite volume method which will be taught. See this is the approach that Professor Sharma will follow in the finite volume discretization part which will be about I will say 60 percent of the course. So, the first 40 percent is what I will be dealing with and the remaining 60 percent is what he will be dealing with with this finite volume procedure. What I will point out to you that the first 40 percent I will actually try to on purpose focus on the traditional side just so that you get both feels. So, to say that you know how you go from the green arrow as well is something that I would like to point out and then later on in the second half is what Professor Sharma will handle in a different manner as far as the discretization procedure is concerned. So, hopefully what we expect is that at the end of the class you will have been exposed to both methods approaches of the traditional more sort of applied mathematics side versus more of an engineering approach of going through a physical process. That is a very important point I forgot to mention. So, you will get both the flavors you will get a feel at the end of the course the mathematical as well as physical feel of the discretization. So, with this we had come to the end and we thanks all of you for your attention if you have any question we will be happy to answer. In this course in we have certain topic which is which are called as implementation details where we talk in detail about how we will not show you the programming language, but without programming language at least flow chart will be clear to you. If I am right already they are teaching Syla. So, the course is thoroughly on Syla even if you have not attended that course I am sure those course are in the best are available you can run through that and make yourself comfortable with Syla. I think what we will try to do is to not only explain the flow chart, but possibly even try to give you a pseudo code for the program. Correct. Finally, just a matter of putting it in the Syla syntax. Is this a pseudo code? Pseudo code is just a step by step procedure which they have to simply code it in a particular syntax whatever language. So, for example, I am very sure that some of these people are used to C++ or C or Fortran perhaps. So, that pseudo code is something like a generalized algorithm which you can just look at and then put it in any syntax. Yeah, pseudo code will also be provided. And secondly, we will give you for lab session the program which are already written in Syla. So, you will get some feel of the syntaxes also. But actually homework assignment as you had mentioned will come up after the course if you do that for work for one week and if you have any questions you can get back to us. Any other questions? Yeah. We are not introducing you to a CFD software. So, open four is a CFD software. Let us say commercial software such as Fluent or Star CD or CFD. They are also CFD software. Our purpose is not to introduce a CFD software. It is a programming environment which is an open source is what you want to introduce. And by that open keep in mind that the kind of programs that we will discuss here as well as we will expect you to write are not extremely complicated. So, as to solve some heavy real life situation. We want to make sure that the ABCs of CFD are covered correctly. So, that when you go back to your colleges and go through these material again and again, hopefully then when you use a CFD software possibly later you will be able to use it more in terms of that is the idea. Thanks for your attention. Okay, thank you. Thank you. Thanks a lot.


In this video, we will look at the various trends in the properties of the group 15 elements. So how do we begin? Obviously, we will begin by looking at the electronic configurations of the various elements that are present in the group 15, right? Because by now we know that almost everything that we need to know about an element can be figured out from the electronic configurations. And what do we see here? We can see that all of these elements have the same number of valence electrons that is 2 electrons in the s orbital and 3 electrons in the p orbital. So this gives us a general outer electronic configuration of Ns2, Np3, correct? But wait a minute. We can see that here we have a half-filled electronic configuration. And we know that half-filled configurations are extra stable, right? So to quickly take a recap, half-filled electronic configurations are extra stable due to two factors. One is symmetry and the other one is exchange energy. So as you can see here, we have one electron in each of the px, py and pz orbitals. Now having equal distribution of electrons in these orbitals kind of decreases the overall energy of the system. And we also know that by the rule of nature, symmetry almost always gives extra stability. Now the second factor that contributes to this stability is the exchange energy. When the orbitals are half-filled, they all have the same spin in degenerate orbitals. What do we mean by degenerate orbitals? Orbitals that have the same energy. So here you can see that although the three p orbitals are oriented or they orient themselves along the three different axes, they all have the same energy. That is why px, py, pz orbitals are called degenerate orbitals. Now this also means that these electrons can exchange with each other, right? But remember, only two electrons of the same spin can exchange their positions and in the process they release energy. And this is called the exchange energy. So if we have more of such exchangers, greater will be the energy released and more will be the stability, right? And this is why half-filled and fully filled configurations are extra stable. An important consequence of this extra stability is the increased ionization enthalpy of the group 15 elements. Now as you can see from here, the group 15 elements have higher ionization enthalpy as compared to the group 14 elements. And this higher ionization enthalpy is due to the extra stability offered by the half-filled electronic configuration. So now that we have covered electronic configurations part, let's go ahead and look at the different properties or the trends in the properties of the group 15 elements, alright? So let's look at the first property which is the covalent radius. As we would normally expect, the atomic radius increases considerably from nitrogen to phosphorus. But only a small increase is observed from arsenic to bismuth. And as we all know by now, this effect can be attributed to the poor shielding effect of the intervening D and F orbitals in the heavier elements. Similarly, if you look at the electronegativity and the ionization enthalpy values, you will see that both of these values decrease as we go down the group. But again, the decrease is not very large in the heavier members. So that's mostly about the atomic properties like atomic radius, electronegativity, ionization enthalpy and so on. Now what can we comment about the physical nature of these elements? Well, we know that nitrogen is the only gas whereas all of the other elements, phosphorus, arsenic, antimony and bismuth, all of them are solids. And not just that, while nitrogen and phosphorus are non-metals, arsenic and antimony are metalloids and bismuth is actually purely metallic in nature. So in a way, we can also say that as we go down the group, the metallic nature or the metallic character increases, correct? Now metallic character or metallic nature is synonymous to the ability of elements to lose their electrons. So more metallic an element is, easier will it be able to lose the outer electrons. Now this is because as we go down the group with increased atomic size, the valence electrons are farther and farther away from the nucleus, right? So that means they experience lesser nuclear attraction and therefore it becomes easier to knock off these electrons. Let's now look at one more property before wrapping up this video, which is the oxidation state. So we have 5 valence electrons in group 15 and the most common oxidation states that they show are plus 3, plus 5 and minus 3. In fact from group 15 onwards, you will start seeing many elements in negative oxidation states because you see group 15 is quite close to the end of the periodic table, right? I mean you are really very close to the noble gas configuration. So as you go towards the end of the period to attain a stable octet configuration, all you need is to accept or gain electrons, right? And when you gain or accept electrons, your oxidation state becomes negative. And this is why negative oxidation states become very common in group 15, 16 and 17. Anyway, coming back to our oxidation states, we know that the stability of the higher oxidation state or the group oxidation state which is plus 5 decreases as we go down the group. Whereas the stability of the lower oxidation state which is plus 3 increases as we go down the group. Now this preferential stability of plus 3 oxidation state over plus 5 in the heavier members as due to something that we already know which is the inert pair effect, right? Now we won't go into the details of the inert pair effect because we have seen it a number of times in our previous videos. So if you have forgotten by any chance, then please go back and watch this video, okay? So we discussed the case of plus 3 and plus 5 states. What about minus 3, our negative oxidation state? Well, it turns out that just like plus 5, the tendency to show minus 3 oxidation state also decreases as we go down the group. Minus 3 oxidation state means that the element is gaining 3 electrons, right? Now as we go down, what did we say about the metallic character? We saw that metallic character increases, right? That means the heavier elements are more likely to lose their valence electrons than gain additional electron because the nuclear attraction is not strong enough to hold or attract additional electrons. So in a way, we can say that the stability of the minus 3 oxidation state decreases because of the increase in the size of the atom as well as the increase in the metallic character or the tendency to lose electrons. In fact, the heaviest member of Bismuth almost never shows minus 3 oxidation state. Now if you look at nitrogen specifically, you will see that it is highly versatile. It exhibits a wide range of oxidation states as you can see in these compounds like plus 5 in nitric acid, plus 4 in NO2, plus 2, plus 1 and minus 3. Now this is not the only thing that makes nitrogen special. You see compared to the rest of the members, nitrogen actually enjoys a lot more attention. In the next video, we will look at some of the important anomalous properties or anomalous behavior of nitrogen.


Jerry of the circus with me this morning while I did my work. It's your make them happy to be around the horse Oh, so that's it.  Yes, you bet you are. You're all right Oh, just doing a bit of reminiscing Jerry kind of digging up a few fond memories Every once in a while. I like to look through this box of trinkets here It brings to mind some happy thoughts of years gone by it's jewelry. Well, not exactly Jerry Just a lot of little things. I've picked up through the years. Oh, nothing of real value.  Yes, that's what it is. All right. Has six blades to it, too Is that a compass in the handle? Mm-hmm here. Look it over This the nicest knife I ever saw Has this got a memory to it? You bet it has Jerry I came into possession of that knife when I was just about your age I traded a boy of kite and a bag of marbles two tops and a fine baseball glove that night Ever see one of these Jerry. Let's see. Oh sure. That's a button hook. I didn't think you'd know what that was Button shoes have been out of style a long time now. What a keen ring. Can I look at it? Surely? It's a dragon, huh? Mm-hmm pretty too, isn't it? I'll see Got green eyes and a red mouth the eyes are emeralds Jerry and that red stone in the dragon's mouth is a ruby Well, I never saw such a beautiful ring. That's what I thought when I first saw it What's the memory about it? Well, sir I saw that ring in a little jewelry shop many years ago when I first went on the stage and the minute I said eyes on it I wanted it. I worked hard and saved every spare penny until I could buy it. That's my good luck ring Jerry Is it really lucky? Well, I've always thought so It seemed to bring me a lot of luck when I was first trying to prove to the world that I was an actor Oh, why don't you wear it now?  These joints knuckles of mine aren't the right size for a ring like this I sure hope someday I can have a lucky ring like that. A ring I'd always remember. Oh Good night. What's the matter Jerry? Well, I guess I'm as bad as Jason. I came over here on purpose to bring it Later and here I'm forgetting all about it. Hmm. Thank you Jason got it for him. He asked me to bring it over Well, look here Jerry, what is it this letter? It's from the government. Oh, sure a registered letter Jason had assigned for it. Wait a minute It's that check for five hundred dollars Jerry the reward money for turning spike in yes Well, what's matter? Well, you know Jerry it was you who first called my attention to that poster about spike Why I never would have paid any attention to it. Oh, that was nothing I just thought I knew who it wasn't as you to look at it to see if you know who it was Jerry I want you to take half of this money. Oh, no, I wouldn't do that, but it's rightfully yours. Oh, no, it isn't Oh, I wouldn't take one penny of it I don't feel that I want it either but spike wanted you to have it and you said you were gonna send it to Your son first well wedding present or something. Well, there's no denying It would be nice to send to my boy, but I feel well don't even think about it Mr. Bradley just send it to your son right away. I'll make a bargain with you Jerry What do you mean? I'll get this check cashed and send the money to my boy for his wedding But as long as you won't have any of the money. I want you to take this ring. What? You're good luck ring. Yes Jerry. Oh, no, Mr. Bradley. Well, that's no bargain I couldn't take that beautiful ring Besides you can't give your good luck away. Listen Jerry my lucky days are over and yours are just about to start Now you take the ring and I hope it brings you as much luck as it did me not for a million dollars Nothing doing. Oh, you're hard to deal with my boy. Well, maybe so, but I won't take the ring or the money either Oh, Jerry, don't let's talk about that anymore. Mr. Bradley. All right, Jerry I'll send the five hundred dollars to my son. Good Say look Jerry here comes major might and if he's strutting along with that cane of his Yeah Hello major You seem to be happy about something major Johnny I want to tell you that woman is marvelous. She's superhuman. What's all this? Who are you talking about? She has a sixth sense.  Oh Who major I'm referring to Rosa Ratsy the fortune teller Oh, you've had your fortune told and you heard something good. Is that hit major? Oh, what does he tell you major mind? She told me I would get a letter from my cousin in Europe. I never hear from him Johnny It's been years and today I got the letter hmm And what's more? She told me just what he would say in the letter and she hit the nail right on the head I tell you it's uncanny. I can't get over it. Oh, I bet it was just an accident I don't believe in fortune telling you mr. Bradley. Well, no, I do you doubt my word young man? Oh, oh, no major I Have extreme confidence in Rosa's ability to peer into the future Why once when I lost something I've forgotten what it was now But I went to her and she told me exactly where to look for it and there it was really I've heard of things like that Jerry It's true believe me Johnny Since she's been with a circus. She told a lot of our people many things that came true Well, you think she'd tell me something. Yes, she might give you a reading Jerry Rosa's mighty nice that way. Why don't you introduce Jerry to her major? Why I'd be glad to you really wanted me to Jerry My sure do maybe she'll tell me something awful important, but you've got to believe it up this clairvoyance is no joke with Rosa I'll tell you. Oh, I'll believe her Maybe Rosa couldn't like me as to what the future has in store. You bet she can would you like to have a reading to Johnny? Well, now sure. Come on, mr. Bradley. Let's all go over and have our fortune told do you think Rosa would mind major? Of course not. She'd feel highly on it. All right, then. Let's go over to the midway and look her up Rags Rags you want to go? You know Rosa's really wonderful reading the hand she can read a palm just as if it was an open book Well, how can she do that? She reads the lines Jerry the lines in your hand. They all have a meaning Then why can't everybody read them? I mean well, why can't I read my own line? That's a gift Jerry takes a lot of study and then you have to be psychic too You have to be what? Psychic psychic Jerry. Oh, well, of course, you know what that is Well, I'm not so sure but I it means clairvoyant Jerry. You know what that is. Oh Yeah, that's what I thought a man sure a sixth sense able to sense things other people don't know a mind reader Well, Jerry it looks like we're about to find what fate has to offer us I hope she tells us some real good things to look forward to well Ah Rosa Yes, Rosa, I brought Johnny Bradley and Jerry over to see you come on inside. Come on. Let's go in This is Jerry Jerry Dugan Rosa, I'm glad to know you Jerry Sit down if you can find a place to sit. Thank you Rosa I was just telling Johnny and Jerry how your predictions came true about the letter from my cousin. I mean all that's nothing It's wonderful Rosa Jerry and I would like our fortunes told If you would be so kind I'd be glad to who shall I tell first? Oh, you'll be first, mr. Bradley It's all right. Are you in the major mic outside now Jerry? Yes, we'll wait right outside the camp. Oh, no No, there's no need of that whatever you have to say Rosa. I wouldn't keep from Jerry or the major anyway There are no secrets in my life.  You're in for a big surprise now you listen carefully Johnny. Yes. Well, what is it? You're not going to get married No But there is a wedding and soon. It's his son.  No, it's bigger than a duck Wait, it's an airplane I'm afraid you're wrong this time Rosa. Well, I couldn't possibly have anything to do with an aeroplane Rosa is never wrong You will be with an aeroplane sooner than you think Now, let me see here I'm afraid you're not very well Johnny. You must be careful of excitement You will have a surprise very soon, and you must be careful We'll take a trip and then I'm going to leave the circus. Yes, I think so, but that couldn't be what you see Johnny I see here that you're going to be very happy. There's very much happiness in store for you Well, that's nice, and I told you be careful of your health Now that's all I can tell you if I'm not right you tell me won't yes, Rosa I'll let you know just what happens and thanks for the reading you wasn't back me it won't come I'm glad to tell you these nice things You just remember what she said Johnny and you'll see it'll all come true Can I have my fortune told now? Yes young man.  No, no the other one You have a good hand to read Jerry. Have I got a surprise too? Just a minute.  Isn't so good You've got trouble hitting trouble should I tell you about it? You really want to hear? Oh, sure I ought to know about it made you now step outside while you get your fortune told Jerry Oh, no, you can stay I heard yours. No, we'll wait right outside. It's it's better to be alone all right Well, what kind of trouble do you see for me? I'm trying to find out him It's a man. I think perhaps that you'll make trouble for you a man. Wait Jerry I Think that very soon you'll look for did you lose something? No, I don't think so Listen man. He's a small thin man dark. Well, I don't know any man that's small and dark and thin Is he with the circus? No, he's not You don't know him yet, but but you will do you think it it might be something dangerous? I don't know Jerry, but you will have to be very careful of this man


Thank you. So today we will be talking about leveraging the power of Django REST framework with HEMX. So I am Emma. I've been doing open source in Python and Django for a long time. Probably not Django for 20 years. So 20 years ago Django didn't exist. But I do use a lot of Django REST framework and I'm a member of the PSF and the PSF. I also maintain a few open source libraries including the REST schema adapter. And I recently started working with Torchbox. So Torchbox is an employee on agency. It is responsible for creating Wagtail and its purpose is to empower positive change makers. If you want to copy the link and you're looking for a good job Torchbox is hiring for now. And so here we're to talk about Django. So I hope everybody is familiar with Django. If you have never used Django please raise your hand. OK so strap in your info for right. But Django is a web framework and a lot of people like Django for its admin. The admin in Django is great for creating proof of concept to whenever you have to manage a list of anything like accounting software in the hotel booking software anything that where you got a list and you have to sort it and paginate it and filter it. Django admin is really great at doing that. And with Django there is also Django REST framework and as the name implies it's there for helping you building REST APIs and who has never used Django REST framework here except for the people who've never used Django. OK so just a few. So Django REST framework helps you build APIs. It comes with something called use view set that gives you a single place to create a whole crud API end point. So it also has pagination filtering and all that built in. It uses Django filters for that. And now finally HTMX. So I'm expecting that maybe I will see more hands who has never used HTMX before. OK so that's a lot of you. So HTMX is advertised as the JavaScript LEST front end framework.  And with those HX dash attributes you can tell the browser to do something. And so here you have an HX dash get and that will say a make an HX request to the back end. And when you get the response well replace some part of my HTML with that response. So it's not expecting JSON it's expecting HTML. And with various different attributes like here we have HX swap that tells it how to swap thing. And HX target that tells it what to replace. And also HX push URL which tells it A also replace the URL in the browser. So when I click on that link the URL is going to change and I'm going to be able to just hit refresh and have that same page show up. But you probably all seen this quote. Server less is a lie. It's someone else's computer JavaScript less is a lie. It's just somebody else's JavaScript. The library itself is written in JavaScript. And but back to Django a little bit right now. So I told you it was great Django admin to build MVP proof of concepts and so on. But once you have to deliver your application to the client. Often they will want a different look than the Django admin because maybe they don't have the same test as us. Who think that the Django admin looks great or maybe because they want you to do some branding on it. And they want to put their logo or they they want to to give it a better you X. And so there's been a lot of packages have been doing that. So this is Django admin bootstrap that's maintained by Douglas Miranda. And he's doing a great job of maintaining it because this is really complicated to mean to maintain because the Django admin HTML template is it doesn't really have an API and it changes a lot. So for every release of Django almost you have to make change to that sort of packages. And this is another one that changes the look of Django admin. This is Django Gapeli. It's probably the oldest risk in of Django that I've ever seen. You know it's not just a risk in it does other things to you. But it's it's another one. And here's yet another one. And this one is interesting for us because this is Django admin to and it is class based views. And so since it's class based views it's really easily extendable and customizable. And with that you can when you need something from the admin that's not in the admin it's easy for you to add it in because it's just regular Django classes. While in the admin the admin not everything API is documented in the admin and you might struggle finding your way around. And here we can do that with Django admin to accept while Django admin to is now maintained by jazz band that maintains the legacy applications that nobody else wants to maintain. And so newer versions of Django are not supported by Django admin to. And to come back to Django rest framework. This is Django rest framework attempt at changing the admin. And this is the DRF admin renderer that uses the RF to render an admin like interface. And it is seldom used as far as I can tell. But this is something that you can get out of the box from Django rest framework. And you just have to change some configuration and you get something that looks like this. But that brings us to the question what are renters for Django rest framework. So Django rest framework is this framework that lets you create views and view sets and things like that. And you produce a response. And that response a lot of the time you will want to make it appear as JSON because you want your React application to load it or something like that. But JSON is not the only way that you can render that. You can use another renderer. You can format whatever comes out of your views as you want. And you can format that to make it available to the particular application that is going to use it. If your particular application that is going to use it is not React but is written in Java, you probably want XML instead of JSON. And that's where renders come in. You can use renders to specify exactly the format that you want. And if you've been using Django rest framework at all, you've been using renders. The two most common renders that you've been using is the JSON renderer and the plausible API renderer. The plausible API renderer takes exactly the same output as the JSON renderer but it outputs it in HTML and lets you interact with it in a nice way. But there are lesser known Django DRF renders. There is the form renderer and it's counterpart for multi-port forms. And you probably know it too because if you're in the plausible API and you try to post a form, you can have either raw HTML or a form-like thing. The form-like thing uses that renderer. But you have XML renderer, like we said. There's also CSV renders exporting things to CSV, something that we are asked all the time more often that we'd like. And there's a renderer for that. You can just use your DRF API to do that. But there's an even lesser known DRF renderer and this is the template HTML renderer. And this one just uses a template, like regular Django class-based views are using a template. You can use this to take a template and render whatever is outputted from your view. And you can use it alongside with other renders, like with the JSON renderer and the XML renderer. And you can have your HTML renderer that lives alongside with it. So why would you want to use that compared to Django's regular class-based views? Well, if you're using this, this means that with the same code, the same view code, you can render both HTML and JSON or whatever your API needs to render. And that way, you only need to write your code once, which if you're using Django class-based views and DRF, well, you have to write your code twice, so you will do something. Maybe you will create a service that creates the thing and the views are going to call that service or something. But with Django REST framework, you only need to write your code once. And also, Django REST framework provides things that the class-based views in Django don't provide. It has pagination, sorting, filtering, ordering. And once again, you write one view set and you have a whole thread application. The issues, though, is using Django REST framework to render HTML. The view or the view set in Django REST framework, usually they spit out a dictionary that is intended to be transformed into JSON. But it's not an object. So you cannot say, like, my list dot count to have the count of record, in that list. You cannot say record dot category dot name, because record dot category is just going to be a string. This can be annoying, but this also prevents you from doing N plus 1 queries by mistake. But still, JSON types are really limited. We only have a few types in JavaScript. We have string, numbers, dates, booleans, and I'm forgetting, but they're there. So what would a template look like for a list, for example, if you were to write that for DRF using the HTML template renderer? Well, it would look like this, which is basically exactly the same as it would look for Django. And if you have that code and you look at the result, you get something like this, which is exactly like what you would have in Django at last best view. Switching tabs is not going to be easy for me. But yeah, so we need a break. This is my cat. Her name is Shell, and she's clearly not impressed with that, because while we've been talking for a while now, and this is just simple Django, so how can we impress Shell? It would be more impressive if there was a way to build that automatically. Right now, the code I showed you, it was just taking the fields that we knew, and that meant that you had to write that list view for every single different thing. But the template can know about the fields automatically for different reasons. First of all, because we're still in Django while we're running the renderer. And second of all, because somebody wrote something that's called the DRF Schema Adapter, and that's a library that has two focus. One, it allows you to create endpoints that trap view sets and serializers, so you just create your endpoint, and it will create the other classes for you. And the second focus of that library is to create some metadata about your class, and usually you would do an option call on a regular JSON rendered DRF view to have that data, but you can inject that data directly into the template thanks to a specific HTML renderer, and so we could just do that. And if we do that, I have to switch screen again, and if we do that, we can have something like this from the code that was on the screen that just it gives this display. So if I look here at my template and toggle the context, you see that in the metadata, we have things that are provided by Django REST framework by default, but if we scroll down and down and down, we can see that now we have a list of fields and we also have somewhere down there, this display, yeah. We have list display that I declared in my endpoint, and now we have this list display available in the template, and so I can just loop over the list display and I can show that. And this is my other cut fruit, and he's still not impressed, so we need to fix that. But because we're inside Django REST framework, we can quite easily impress him because now we can do searching directly, and we can do pagination also. And going back to the other screen, can somebody see my mouse? Yes, good. So now if I reload this, I'm going to hide the debug toolbar, or there is a search bar, and if I type something, oh, this works. I've got search, I just had one line of code to write to half search, and I have it, and it's working. And I also have pagination, and that works out of the box because this is Django REST framework in the back, and so Django REST framework allows us to do that. And so since this is Django REST framework, why stop there? We could do other things, and look, this is Ella, this is not really my cat, this is my roommate's cat, but she looks very interested. She wants to know more, so let's do more, let's add some other things, like filter fields and ordering fields, and so I lost my pointer again. If I go back here now, I've got more things, and I can filter, and I say I want to only see videos, why is this not working? Because this is a demo, so why would it work? Of course it doesn't work. Let me refresh the page. Okay, so we have filtering, and there is nobody that's using that one, and nobody else using that one, so let's try that one again. Yes, now that works. So that was a demo effect. So now I've got filtering, and what else did I add? Oh, I added sorting, and so now I can do sorting, and that's all just Django REST framework in the back end. And you might have seen, because I put my internet connection as slow 3G, so you probably have had the time to notice that, in fact, when I'm doing something, it does a request. And only the center of the screen changes, only my list changes. Depending what you are doing, you might need to refresh different parts of the screen. If I'm changing a filter, I'm going to not only have to change the list of records, but I'm also going to have to change the number of pages in the number of records. Now if I'm just changing the ordering, I don't need to change the number of records, it's the same number of records. So there are all these little parts of the template that are changing that I need to get some or more of them. And this is something that is clearly not built in to Django REST framework or HTMLX, and so we need to tell the renderer which parts we need to have. And if you, for the ones that are in the front, you might have seen that in the URLs, when I'm clicking in the URLs, there is a parameter that says partials equals and gives the list of partials because right now this is the only trick I found to do that. It's a bit hacky, but it works. And another problem that we might have is when we are doing something in Django, in regular Django, when we are updating a record or when we are deleting a record, we are expected to be redirected after that to the list of records. But Django REST framework doesn't do that. When you do a put request on Django REST framework, it replies with 200 OK. And that's it. It updates your thing. So you do have to find a trick to do that. And if I want to do that, I can try to do that. Okay, come on. So my presenter, my room manager speaks Dutch, so I'm not going to delete Dutch. I'm going to delete French. Oh, it's asked me, am I sure that I want to delete French? Yes, I'm sure that I want to delete French. I know French is deleted. And it thinks it's refreshed automatically. And if I go and I'm going to keep being nice, and I'm going to go and edit that, and I'm going to enable Dutch. And no, I am redirected. And this is magical. And this is not Django REST framework, because Django REST framework doesn't do that. But with HTMX, we can add directly in the response adders. We can add HX location that will redirect your browser. And it will not redirect the whole page. It will redirect whatever thing you say is a target that you want to redirect. So once again, it will only load the part of the page that you're interested in. And by doing that in the renderer, you can intercept and say, okay, I know that I deleted the update and whatever else you want. And you say, okay, I want to redirect those when they're successful. But there's yet another issue. There's error message in Django REST framework. If you try to do a put on a record, to update a record, and the values you said there are not valid, what's going to happen?  And if you replace your form with errors, that's not going to work really well. But it turns out that HTML actually can be configured to read two things other than 200. And the template, the default template in Django REST frameworks, HTML template renderer, can be customized. So we are able to render those after all. So if I go back here and I'm trying to say that English actually is not a thing, and I try to update, well, I get an error message here at the bottom. That's not a really nice UX. It would be better if the name field was the one appearing in red and so on. And remember when I said that HTML was JavaScript less? Well, if you want to have a nice UX, you're going to have to write JavaScript. But you can intercept the error message and you can write for JavaScript. And maybe you can try another JavaScript less JavaScript framework, which is Alpine.js. But I'm not going to talk about Alpine.js other than just mentioning really small at the bottom of the screen. And so this brings us into the bonus content. So I managed to do it. So there's something, when you look at those things, the form there, there's two ways to render the form that you just saw. There is the DRF form serializer that I mentioned in the beginning. And to use the DRF form serializer, you just say, I don't remember what you say. But it's something like you pass in the serializer and there is a template tag to transform that serializer directly into a form. And that gives you a form. But oftentimes when you want to make pretty forms and things like that, you would like to be able to change that. And Django doesn't encourage you to do that. Django usually does you, yeah, you can just put form. And if you want to do something better than that, well, use crispy forms. And then with crispy forms, you can do fields and things like that. But if we think about differently, we have, remember the meta information I showed you when I scrolled and I scrolled and I scrolled, it was a list of fields. So we have fields, we can include templates. So we could have widgets, we could have form widgets. And once we have form widgets, then when we just have to say, hey, this field after all, it's not that type of widget, it's another widget. And then you can make something really advanced with just HTML, HTML makes Django Django REST framework. And also it's really easy to customize something like that because if you do Django REST framework, you might know that if you create a method on a view set, you can say, you can put the decorator at action or if you'll do this in the REST scheme adapter, you have custom actions and you have quizzes that have serializer linked to them and things like that. And in the meta, you also have a list of all the actions and so on. So you could have easily add buttons for each row in the list, for example, or add more button than just update on a form. So this is all things that are possible to do. But now I feel like I've been talking a lot. So this is my last cat, Curry, and he's fallen asleep. So if I don't want you to fall asleep, I should stop talking. But if you found this interesting and you want to either help make it a library or if you want to try it for yourself, come see me during this print and we can work into making that, well, more public than it is right now. Thank you. Thank you very much. You're welcome. Although maybe your own cats weren't very interested, I was very, at least. Thank you. Do we have some questions in the room? Because I think we still have one room for one. All right. How would you convince your client or boss why should you include HTMX into Django admin? In other words, which business need does it solve? Why is it why it's something which is not possible with normal Django admin? So it depends what your boss wants you to do. If your boss says, oh, we should invest in this brand new React application because there are things that need to happen dynamically and Django doesn't do that out of the box, then you can tell your boss that creating a new React application for their needs is going to cost them two, three, five months of development while adding HTMX can be done just bit by bit and you can add the piece that you need right now for just half a day of development, maybe. So money. Great summary. Then with that, if you have any further questions, please DM me directly or put it on the Discord. Please take also your litter with you and enjoy the rest of the conference. Another round of applause.


We are truly honored to be able to bring back Nozart that hails the legacy of the bloody hundredth bomb group to the 100th airy-fueling wing. They will officially unveil Skipper 3. We are dedicating this aircraft today to honor a legend who in our eyes is a national treasure. We are binding the legacies of the bomb group and the refueling wing. We are binding the history of the bloody hundredth both past and present through this Nozart because it symbolizes that rich legacy of the predecessors and of your dad, Dude Christopher. He was always very, very proud of all of his fellow ground crew folks and this is also a tribute to all of them as well. And again, thank you so very much. Our family is so proud and so appreciative of this incredible gesture on your part. Thank you so much.


In front of the South Stand, Blue Boots places it down, takes a couple of steps back, right hand up in the air, it's left-footed towards the six yard area, arriving in the back post, and there is the header from Callum Wilson, from Point Black Range. Two goals in two games for Wilson and for the, have the lead in the Vitality Stadium. There's space now for Seamus Coleman over on that far side, the Everton right, nice ball down the line, right edge of the box where Charleston is waiting, first time cross, in towards Calvert Lewin, it clips the underside of the bar, it beats Aaron Ramsdale, and with a minute to go until half time, Everton draw level at the Vitality Stadium, Calvert Lewin with the header, it's Bourbon's one, Everton one. Balls down this near left hand, touch line for the Cherrys is cut off by Rico forward to King, strides away from Schneidlin, that's nice from King, driving to the left edge of the box, tackle from Rashalison, Rashalison straight into the book from Fortierny, he claims he got the ball, Rico still with the ball in his hands, places it down, steps away from it, Fraser low right-footed, deflected off of Fabian Del, and pass Jordan Pickford, Bourbon is back in the lead, Fraser off the bench, he has the goal that is restored Bourbon's lead here at the Vitality Stadium, it is Bourbon to Everton one, it's a tackle from Billing on Rashalison and ball over the side, Wilson is in behind here, slots it past, Jordan Pickford, a brace for Wilson, that's three goals in two games for him, Bourbon extend their lead, the Cherrys three-one up against the top, he's in the Vitality Stadium.