First of all, let me thank the organizers for giving me this opportunity to talk to you about something which is quite an exciting topic which I have learned myself over the years starting from early days of master's course which I have done and carried through till now and even today I am a student learning the art of scientific presentation. I feel that there is lot much one can learn first by listening to people and trying to have an attitude that today or tomorrow you are going to become a good speaker who can sell the products. I do not intend to say that you are going to become a sales representative sometime down the line but the product that you have it may be some wonderful results but if you present it poorly it will not get the deserving attention. So one should really know how to sell the product. There are several things that one can learn and I have learned over the years how to sell my product that is of course the research output that comes from my laboratory. So I will summarize my thoughts on this. These are guidelines not necessarily rules. The talk is entitled secrets of real life learning process in scientific presentation. We start with a lighthearted disclaimer. I am going to do a little bit of acting on stage. So if the acting coincides with any of your actions please take it as deliberate and I can only say sorry towards the end of it if you find some similarity. First of all I do not know anyone of you. That is a good thing that you will not blame me that you deliberately try to enact me. So that is not my intention. The outline of the talk is the first I will talk about content creation that how will you prepare for a seminar. What content you want to put in into the slides and why you want to put in those contents. So that will be the focus of the first module. Then I will talk about preparation and practice. How well you have to prepare and how well you have to practice. Delivery on stage tips. On stage there are so many things that people are quite nervous about. On stage performance. It is a performing arts okay. In one sense it is something that you have to go to the stage and perform yourself and there is no other outlet. There is no other way out. You have to be on stage and performing and how do you tackle that. And improvement which is a very continuous process. That also I will touch upon. So this is the outline of the talk. And many times let me also tell you that many times I have seen in student presentations that all of them will have a title slide and then comes a slide which is like again which in one sense it looks pretty much similar to what I have on that is outline. Most of them have. But I end of it funny part is that I always feel like laughing that the fifth one would be conclusion. For God's sake any talk will have a conclusion. You do not have to necessarily state it once again. And also many people will have an introduction on top of all these. An introduction conclusion are sort of redundant. It is implied. It is going to be anyway there. So you do not put that as the outline. It is not really part of the outline. But it is in gradient. It is an integral part of any scientific talk. So you do not put that in the outline. Content creation it starts first with attitude. A scientific talk, a well-prepared talk is made several days ago. Not in the preceding night of your M. Tech presentation. It is never made in the preceding night. Because the very problem is that the attitude is incorrect. Because you are taking that as a mandate free requirement as part of your course or mandate free requirement as part of something else that you are part of. Fundamentally your approach is that you are taking it as a burden. Instead of finding it as an enjoyable task. Because this is something that is going to be getting paid off in the long run. If you present well, you are going to be well-received in very many different platforms. Be it as a sales representative, be it as a company executive, as a group leader, as a scientist, as a teacher. Any forum you go, there is no runaway from not presenting well. So it is very, very fundamental that you have the right attitude. What is the attitude? The secret of joy in work is contained in one word. That is excellence. You have to thrive to be excellent. And where you start is immaterial. History is immaterial. What was your past is immaterial. But it is about the attitude that yes, I want to become a good presenter in future or in the days to come. Or in next four years, by the time I finish this program, I want to be a good presenter, a confident presenter on stage. This attitude is the starting point. So to know how to do something well is to enjoy it. So as I said before, that there is no runaway from this huge responsibility on your shoulder that you have to begin to learn and to enjoy what you are doing. So it is certainly not a burden. It is a pleasurable exercise as you become more and more comfortable on stage talking about your own results, talking about literature. You are going to be doing pretty much fine on stage. So this is the starting point. Attitude. Develop the right attitude. So this is a again lighthearted comment. A teacher gives a book to a student if you could read. And in this generation, everyone is very fancy about SMS messages. Teacher tells that just think of this book as if you are reading a long text message. So it is just a small inversion of the attitude. The student thinks that, oh, big book, oh, I have to read all these pages. No, I am not for it. So it is a negative attitude towards the book. But the teacher tells that to develop the right attitude, you think it is a long text. So the student has, oh, is it a long text? Let me try. So the attitude, correct at your end that yes, I want to do a good job not in immediate future, but in the long run. When I say long run, if you are enrolled in a program, say four years is a good enough period for you to come from zero all the way up to say 90 plus in a scale of 100 in terms of rating of how good you present. Now the content creation, which is most important and remove all the wrong notions that if my slides are graphically the best, I have a great presentation made, which is incorrect notion. So content is the most important point. Once you have that attitude that yes, I want to do a good presentation, the content creation is the starting point understand the topic very well. Here there is a lot of effort that is required. It calls in the knowledge that you have, the confidence that you have on the subject and how well you have understood. If you have not understood something clearly, talk to your colleagues, talk to your supervisor, talk to your lab mates in somehow or read additional books, resort to internet resources, all modes of learning you make sure that you are done with it such that you feel confident about the content that forms the basis of confidence, poorer the content, lower would be the confidence. That is the very origin of people going to the stage and sweating. They will like take the anki and do all kinds of things sweating. There are very many things that has its origin in the content of the slide and you only know that oh that between 10th and 15th slide I have something which I never understood. You might have gone through such situations like I do not think I know it, but then why the hell that slide is there. Do not take the risk of having something in it, which you do not have any control over. Keep that in mind to put slides which you understand better and then you should also think about while preparing the slides, preparing the content. You should also think about what are the points to be included, what are the points to be stressed and what are the points to be flashed. What do I mean by flashed? There are slides which are only of supporting value, not necessarily the main focus, but the supporting slides would help you, but do not spend too much time on the supporting slide. So that comes under the category of slides to be flashed. Now next aspect is know your audience. As far as I am concerned I can only read the non-verbal communication part. I can read the body language, read the phases, but I have no idea about who you are. Fortunately I am not giving a scientific presentation. I am only talking about ways to give a scientific presentation. There is a huge difference between that. If I am to give a talk in chemistry, the department I come from, I really need to know your background, maybe your master's student or research scholars or your teachers from different colleges or your scientists from different national laboratories. I need to know to whom I am speaking to. This is very important. Even if you go and speak to school children in high school, never ever underestimate the audience. That is very, very fundamental to a successful scientific talk. Never underestimate the audience. There may be audience who are disinterested, not paying any attention to what you are doing, but that is a different aspect, but never underestimate them.  Yes, it adds value to the confidence, but not necessarily that you should look down upon the audience and think that I know better than anyone in the audience. You will be really sacked by certain questions, targeted questions, and there are people in the audience who know how to throw stones bullseye.  So never underestimate the audience, give some respect to the audience and talk to them as if you want to exchange ideas with them. Okay, respect the audience. That is very important. Now, with regards to preparation of slide, order of slide is very important. Which slide should come first? Which should follow that? Which should come five slides in progress of your talk? What should be the 10th slide? What should be the 15th slide? So what I can tell you is that a story that is written in your mind is the story that should come in the slide. So it is the mental exercise first.  Without no idea about the flow, if you directly sit in front of a PowerPoint presentation and start making the slide, it is not going to work. Because fundamentally, where one would go wrong is in the flow, which is very, very important. The flow is as important as if you tell a story, people would appreciate that.  That's how hopeless the talk was. And you will hear during the tea time, oh, that guy, hopeless. At the same time, if you give a good talk, someone would come and pat your shoulder, a great talk here. Great talk, well done.  So it feels good, you know, you feel good. So make sure that you have a good flow. Let me illustrate. Famous lines from Lord Tennyson. I have highlighted a few of these in a different color. Just to illustrate the concept of flow and how important the flow is. It's a beautiful point. And I'm going to narrate and explain. Just to highlight that I come from hounds of coot and hern to bicker down a valley, 30 hills I hurried down, half a hundred bridges. Let me stop there. So it's about a, it's about a, you know, a brook, how a big, you know, the ocean, before it merges with the ocean, the origin of all these rivers will have at some mountain, some hill top, where the origin is important. Where it is, I come from the hounds of coot and hern. Coot is a kind of bird. So it comes from somewhere and then bicker down the valley. So it is like slowly flowing down the valley. So you're taking a journey, right? You have an origin taking a journey and then hurry, 30 hills hurry down. So it talks about how downgrade the river is flowing, coming to half a hundred bridges. It has crossed over half a hundred bridges. It speaks for the flow of events and that makes the poem beautiful. And then till last by Philip's poem is not so important, till last I flow to join the brimming river. So it's a major, major, major event that a small little brook merges with a major river. So all these attributes you will see in your scientific presentation. You start from the introduction from the, hounds of coot and hern. You start from the introduction. Slowly define what you're going to speak. Why that topic is important?  And when you find the flow, yes, there is a flow. I think it's a good talk. That feel is good. That feel is important. That is why I say that if you make a good presentation, content for a good presentation, you feel good. Why you feel good?  And at last for men may come and men may go, but I go on forever. That means if you develop that skill, if you develop the skill of giving a presentation, it will remain forever with you. That's my interpretation of this same poem in the context of today's talk. Now decide on the sequence of slides. How do you decide on the sequence? That the content, the connection, the flow, you have thought about that and you put together, say, 15 or 20 different slides. And when you want to get full mastery, full control over the sequence of slide, you must know what was slide number two, what was slide number seven. And from seven, you may have to go back to slide number two for whatever reasons, just to address probably a question from the audience or to illustrate some additional points. So you must know content of every slide and what sequence it appears. That gives, that acts as a tremendous confidence booster that you are entirely in control of what you are doing on stage. Now in introduction, describe the background of the work and give due credit to other people who have done the work before because nothing can come from heaven, as scientists would say, nothing comes from heaven, but you have to describe what is the background, where did it all originate from and give credits to people who have done the similar work before and if you become very well experienced, you could always do the following, that when you talk about, say, Professor Karnan's work and you have a slide which cites one of his papers or one of his contributions. And I would say, Professor Karnan from IIT Bombay had recently shown that and it gives, say, a sense of attachment with the community. It's not like, oh, some Karnan, that's different. If you are a scientist and if you are giving a technical talk, always, you know, have some sort of attachment and the affiliation and the location, it gives a feel that, okay, at least I have seen Professor Karnan on the website and I know that he is in IIT Bombay. And that's a part of the culture that we, when we gather in a, say, in a marriage reception, for example. And we introduce people to each other, right? Oh, he stays there. It's a part of culture. And in science, the part of culture, science and technology, the part of culture is that you should talk about the affiliation. Professor Karnan from IIT Bombay had recently shown. It gives a different feel as compared to you telling that, oh, some Karnan had shown recently. These two are different things, okay? So keep in mind, if you are more and more confident, also talk about the affiliation. And good to have supporting slides after a blank slide at the end of your presentation because supporting slides can act as a rescue slide in case you are bombarded with questions, which typically happens in Mtrek and PhD presentations. And about the way the slides are prepared, don't go for two fancy slides. Keep in mind there are only two colors which are really good, black and blue, because I use it. Because there is a scientific justification, these two colors are visible from far behind. And you never know what kind of room your seminar is going to take place. I had no idea how this room would look like when I came. But keep a font size of minimum 24 if you are using PowerPoint. And this same font size is visible, even if I give the same talk in PCSA or in a much larger classroom of say 500 students sitting.  So keep that in mind. And color selection is important. Do not use light colors. And there is something which is written light here, L-I-G-H-T. And I don't know how many of those letters are visible. And many people use that in scientific presentations. Do not use fancy colors thinking that oh that will glorify my slide and that will enhance the appearance of my slide. These are wrong notions. And when it comes to language, what language should I use? Should I use a long sentence? No. You should try to learn how to use telegraphic language. Just point the base languages because you are presenting to an audience. We don't have enough time to go and read all the sentences that you make. So keep a language which is simple and telegraphic and make sure that there are no mistakes in whatever little you have written. Now, with regards to the text, so many times, many times famous speakers, Nobel laureates on stage, they will have a long passage in the single slide, text-riched slides. It's a distraction. It's a distraction for the audience. Do you know there is a interesting graph, like Professor Geithon talked about graphs, there is an interesting graph time on the x-axis and concentration, attention on the y-axis. After seven minutes of any scientific presentation, the concentration exponentially decreases. This is a fact, it's a proven fact. So concentration level of the audience will exponentially decrease. So you have to really work hard to bring back the concentration, bring the audience back to you and your presentation. It's an effort. First you recognize and realize that the concentration is not going to last like a DC current throughout. It's going to drop down dramatically. So if you use text-riched slides, that's the best way, the best starting point for the audience to go to sleep.  This is the right time to sleep. So never put slides which are too much textual, with lot of statements on it and leave some empty space if possible. In case you, if you cannot avoid using large content, suppose you are giving a talk on literature on how to appreciate literature. I have one passage from one of my favorite authors. I will go back and come back to this slide once again. Oh, high on text. Will anyone, do you think anyone, what percentage of audience will even bother to look at so much of text? No, no, no. It's not for me. That would be the immediate reaction from the audience. However, the same content you can use in animation effectively. The same thing. As matters stand today, many teachers are unable to do best of which they are capable. For this, there are a number of reasons, some more or less accidental others deep seated. To begin with, the former, most teachers are overworked and compelled to prepare their pupils for examinations rather than to give them liberalizing mental training. This is there, liberalizing mental training. So in the context of a full-page text, I am picking that word. One of the major responsibilities of a teacher is to impart liberalizing mental training. It's a very important point. And then goes on to the same paragraph in a fashion which comes as a module. It comes in the form of module. People who are not accustomed to teaching, these are sort of revolutionary statements. It had sent its own ripples in late forties and early fifties in the kingdom. The people who are not accustomed to teaching and this includes practically all education authorities, very powerful statements have no idea of the expense of spirit that it involves. It's all about teaching. And then, this is even more something which I like really best. Pledgemen are not expected to reach sermons for several hours a day, but analogous effort is demanded of teachers. If you look at the college teachers, they teach how many hours a day. So these are thought-provoking statements which Bertrand Russell had done in his unpopular essays in late 1940s. It's so characteristic of today's affairs. He is a visionary. He is a mathematician, philosopher and a writer. He is a visionary. He made this statement several years ago. How true it is? The result is that many of them become harassed and nervous out of touch with recent work in the subject that they teach and unable to inspire their students with a sense of intellectual delights to be obtained from new understanding and new knowledge. How appropriate is this statement in today's context? So going back what I have done, a text-rich paragraph I split using more of simple animation emphasized on certain aspect of it and tried to convey the meaning. If you ever happen to deal with a text-rich slide, make sure that you use animation effectively and stress the point, modulate demodulate as you do it. Now with regards to tables and data avoid data intensive table. How do I avoid data intensive table? I have one to show. So this table has too many entries in it and I expected to understand the scientific content of it but just as an illustration this table has too many numbers but then the question from the audience point of view is that which one I should look at? So there is no clue as far as audience is concerned which one I should look at. So you could use some kind of highlighting some kind of animation or some kind of additional color to emphasize what is the most important finding in this table. So when you deal with data intensive slide make sure that you give special emphasis, special attention to certain regions in the table but don't expect the audience to follow every entry that you have made in the table. So that is important. So here these are the important one. I used this number 31.6 and this 37.5 to derive something that is written in this box down here anti-addition is more favor. So these two numbers are good enough to point out that very very essential finding a finding which I could obtain in my group after a struggle of two long years. Each entry takes about six months in this table. Therefore you should also show that look I have so much of data and it's very painful to get them but I don't want you to burden with all those data but keep in mind these two entries this 31 and 37 will give me this very precious conclusion. So on one hand you have shown that you have wonderful set of data and on the other hand you have also highlighted what is most important point in this data. So that is the way to handle data intensive slide which comes very handy when you deal with variety of scientific and engineering problems. Now preparing slides uniformity and appearance this is something an illustration then sipping water middle of my presentation if at all ever your mouth gets dry mouth gets dry take a sip of water nobody is going to think or feel bad about that you know you are on stage you must be in full control of what is going on it's not their job who is sitting on the other side. So if you feel dry take a sip of water that is again an illustration uniformity and appearance of graphics important you could have a theme what is a theme a theme is what I have that I have a heading for most of my slides and I have a red red line that is there you know separating the heading from rest of the content and I also have some RB Suno that the corner if that is visible in a very faint font color deliberately and there is a theme and see if you look at Microsoft it offers lot of fancy themes like you know very fancy themes I am not encouraging the use of very graphically embellished theme but you could have a theme of your own keep it simple and use uniform font colors and graphics also should be having some sort of theme which gives a better feel for your talk and in regards to decoration and animation there is a wrong notion among students that if you decorate it so fancy with like seven with your colors and friends will say that awesome slide here great slide so do not get carried away by that what is important is the content as I said you could always try to improve the slide and its graphics quality animation etc when you are done with the contents do not waste your time to begin with working on the graphical treat so this you keep it at the end when you have sufficient time after creating the content you can go on to decorate these slides uniformity in appearance again an important aspect figures should be of good quality as Gaito mentioned about readable from distance this is an important point I said that you never know the same you may make to a smaller group of audience in a small room and maybe a big auditorium with 500 people 1000 people sitting and listening to you so when you make the slide it cannot be auditorium dependent unless you have a prior knowledge about that when you make it make sure that it is a multipurpose slide therefore keep a font size keep good quality graphics which is visible from distance and you could include slide numbers and now so we have gone through what we have gone through it to have a right attitude think about the slide order order of the slide and then create the slide use some general recommendations now that there is a pause now that you have the slides what next and again I am going to illustrate why did I take a pause and say now that you have the slides what next so there there has been a flow in what I was doing and suddenly I took a small little break and re-emphasized I have the slides now so there is a modulation like I started realizing that some in the audience are beginning to dose down and sleeping or some had already lost attention and then I am bringing back the audience I have the slides what next so suddenly my voice went up this is called modulation very important for giving a successful talk you cannot be monotonously saying that a clergyman was never asked to you can you could do all kinds of things make sure that you learn how to modulate and when to modulate it is not like in every sentence one would use some high pitch and say that that is not really modulation it is annoying modulation you modulate when there is a digression when there is change of season when if the if the change of season from winter to spring we could sense it you know birds chirp and you know new new birds will come out so all this is a change and when it there is going to be a change like the way I said okay we have the slides ready what next so there is change of season the digression a new topic so there you try to bring back the audience and bring back their attention there you have to modulate and you must modulate otherwise no one would recognize that oh one topic has gone and you are moving on to the next topic so I am bringing back the theme once again so those are in the light color deliberately not there but I could see on my screen the content creation what we have done till now then I am talking about preparation and practice that is the second second step preparation and practice I did look at my watch to see where I am where I am in terms of time preparation and practice oh okay a tall big guy no fear and a small guy no fear renown same means very very different is there a connection with what I am talking so my interpretation is that you know your fear and that will lead you to a situation with where you don't have fear so slides back once again know your fear then you will have no fear okay so this is the thing fight or flight either fight it on stage do a good job or quit run away no no no I cannot give a presentation I am very nervous but question is how long you can go in that mode how long you can shy away from giving a presentation it's an attribute that every modern day kid should have world has become global Americans with much much inferior I hope this goes worldwide web this statement Americans with much inferior caliber they are trained in their schools how to sell their products and the guy would come with tie and say that oh my product is best in the world and with all the American accent my product is best in the world and poor poor people on the other side will think that oh this product is best that's because they know how to sell their product okay so let us address this problem on stage issues on stage preparation and practice if you know what are this root source of fear you will have no fear at the end okay now don't be casual too casual on stage be a little bit serious I have seen you know our IIT kids come with a lipper and a Bermuda and a casual t-shirt and as teachers we have always paid a little serious attention and said that next time when you present come in formal dress next time they will all be formal so make sure that you don't be too casual for beginners practice a lot first time presentation nervous hands are like very cold and sweating and you know very cold air conditioned room no no no it is I think it's minus 20 kind of feeling very cold because you are nervous okay that is where you have to know your fear what is the source of it what is the source of it and the practice will help a lot for beginners first time presenters go to a room close the door practice in front of mirror if you are feeling nervous this does not apply to all many people are not nervous about giving a presentation so this recommendation is not for them but if you ever feel nervous it's a good idea to go in front of the mirror and usually in like I believe that most homes will have the full tall mirror and you can present in front of that first then practice with your eyes closed and dream about your presentation the very very important I have been hugely successful in doing that and many of the content in this slide are based on my real life experience you can dream about what you are talking what you are going to speak tomorrow what you are going to speak day after tomorrow you can dream about that how do you dream by knowing every every slide and the content and the connection and you will close your eyes and think okay this is the first slide I will talk about this I will stress about that and do not try to buy hard the statements that you are going to make on stage it doesn't work that way and it can be even dangerous if you forget two sentences then you like begin to scratch and look up the skies for somebody's mercy all these on stage non-verbal communication which I will touch upon shortly practice different layers of practice by yourself and practice in your dreams day dreams and give a mock presentation to a friendly group of audience to begin with when I say friendly group your best friends who will never criticize you because if they criticize you they are no longer your friends that sort of the way we have grown up right so take three four of best friends and say that you listen to me tell me the positive constructive suggestions okay I have my research group meetings people are really butchered broken into pieces but end of it they all grow better and they all become good presenters of tomorrow okay so mock presentation is important if you get time and this is where the presentation has to start way ahead of time so that you can also afford to give a mock presentation before your real presentation time management it is very important I keep looking at the watch it is very important and it has a huge connection with the way you speak there is no universal rule that one minute per slide two minutes per slide five minutes per slide it depends on what is your natural speed okay depending on natural speed you decide how many slides you can afford for a twenty minutes presentation so it is a personal attribute not dictated by your advisor okay I have lots of remarks to make about advices as I go along I will keep touching upon that time management is a decision done by you okay and you only know how fast you can speak how slow you can speak avoid elaborate introduction this is again part of the time management and lot of our fancy m tech students what they do presentation they will have twenty slides eighteen of them introduction topic is very well introduced and then results and discussion one slide and conclusion last slide so people are smart do they think that they are smart then faculty would rip them off by saying that you come back again you repeat the course okay so do not put too much of introduction because it gives a very wrong sense of what you are trying to do when you do a serious presentation make sure that only a fraction of your total time is dedicated for introductory slides okay that is important how to manage between different sections now moving on to the on stage tips very very important delivery of the content so what I have done till now content creation preparation and practice so you have done everything okay you have good content you are feeling confident you know every slide of it you know everything that is there in the slide you have prepared well enough what next delivery on stage yes you are on stage it is time to perform and to me it is an opportunity to me it is not about being nervous on stage because then you are messing up the show you are a performer on stage and the stage belongs to you and make good use of that and as I said I wanted to be introduced I walked into the stage slowly and steadily never rush to the stage if you rush to the stage what will happen you will be like sighing deep and you will completely lose control of the first few minutes of course everybody would overcome after first few minutes in first few minutes what happens is that there is a natural increase in the adrenaline level in your blood adrenaline is pumped seriously into your blood stream such that you are equipped to do the task so you are on duty on stage you are supposed to perform a task at your hand then you need some extra energy extra vital you know supplies will increase oxygen level through your blood stream more energy to be spent on stage ok if that is the case adrenaline level will naturally go up then adrenaline level goes up your heartbeat will increase and if you interpret that this is because of nervousness you are wrong yes nervousness has a contribution but you realize that is where I say that know your fear adrenaline level will increase therefore your heartbeat will increase and your hands will become colder than before these are all natural ok it is not that only it happens to you it happens to everybody and they all know how to manage you are learning how to manage so you have to approach and this is intricately tied with the attitude aspect which I was mentioning before you know your fear on stage first few minutes yes you have increased heartbeat but do not pay attention to the heartbeat you have a task at hand to perform it is not that you are oh I am nervous what can I do I will tell you some small little techniques when you come to the stage you must have a smiling face you should be smiling those who know me when they see me smile they will all laugh so since you people do not know me how comic I can get you are not laughing so when you come to the stage keep a smiling face look at the audience look at the audience and do not present a very serious face on stage because then everybody gets serious it is not all about being very serious on stage then the fun part is gone you may not be really enjoying what you are doing on stage keep a smiling face spend about first 30 seconds do nothing it is a very important tip on stage first 30 seconds just do nothing what you should do look at the mic as if you have invented it and then look at the pointer usually they will give a pointer and say that you know it this is the only button it has but do all kinds of this drama for first 30 minutes it is with purpose that in 30 minutes the adrenaline level is sort of equilibrated and you are in full control of yourself and if you still feel that no no no still you know my supervisor is in the first row and my you know the biggest critic is in the second row just do not worry about never look at your supervisor that is the key okay if you feel ever nervous do not look at your supervisor and read the title of the slide I did that read the title this is the early early few seconds on stage management that everyone should know if at all you ever felt nervous in giving a talk but if you are of the other category that no I never felt nervous what is there it is not a big deal then you this rule does not apply okay now check the pointer check the caller mic start very softly read the title and that is the only time you can read from the slide that is my rule okay never read from the slide if you read I will show you what happens suppose you are still tensed or you first 30 seconds 30 seconds I followed whatever professor Sunoj had said but I am still feeling bit nervous what should I do turn to the turn to the screen and take a deep breath without anyone noticing it this is what Boris Becker and you know all these tennis players would do they will do but you cannot do that facing the audience you turn around and do that trick and come back this is one of the one of the tips that will be helpful it is okay to carry a bottle of water if you think that still I am feeling nervous maybe take it five seconds break close the water and then come dry mouth is addressed so now within within say first one minute you are you are pretty much equilibrated you are in control move on to introduction and start the show don't worry about being judged very very important why you feel nervous end of the day because you have fear of being judged keep in mind when you are on stage when you are on stage you are like this lady who is performing and she cannot worry about you know what the other people are going to think about her she is a performer you have to be a performer on stage okay so if that is the case do not worry about what others are going to think about you because that is going to affect you negatively so you don't want any negative thoughts running through your mind when you are on stage okay do your job as best as you can stage belongs to you and only you okay you want exclusivity right what is the fun in being wearing a designer clothes everybody will be happy next door neighbor don't have it only I have it you feel happy right so that exclusivity the stage belongs to you for that 30 minutes it belongs only to you make use of that now it's an opportunity to perform okay whatever be the content like science or arts whatever the content of the talk is stage belongs to you and you should feel happy proud and privilege that oh it's my turn it's not their turn let them speak let them sleep how does it matter of course I know techniques how to wake people up but that is at that advanced level I will talk about that if time permits start looking at the audience start looking at the audience and I think I have looked at almost everybody's face by now I scan different regions of the whoever is sitting here and these faces have already registered and I am already familiar with the faces you have to be looking at the audience but in the first few minutes what will happen for those who are first time on stage you will see in spite of all these light you will see darkness you may not be able to see because of tension because of on stage management problem you really don't see anyone that's natural it's not for you it happens for many keep in mind it's not your limitation okay it's natural faces will become soon clear as you spend more and more time you will see the faces some are smiling some are sleeping all these different faces you will soon be able to see and then you will be pretty much on the national highway you can do a great job up there in the stage this is important avoid looking at the roof sky and the stars because what happens normally is that students are well prepared and they keep the slide they project it on the screen and then like they will be talking looking at and then nobody had shown the other day and where are they looking at nobody is going to help up from the heaven you have to be looking at scanning different regions of the audience who are directly looking at you never look at the rooftop never look at the lights and if at all you still have a fear of looking at the audience I will suggest you one good thing with you know no intention to target anyone there will be a few audience who will have gray hair there will be a few among the audience who will have bald head there will be few who will be wearing a flower if you do not want to look at them look at their flower look at the bald heads look at the gray hair this is another way of getting control I could not really see them but I can see the flower so I will not be looking at you but I will look at your flower as if I am giving great great job on stage so these are tiny little tricks that will help you and these are for the beginners after sometime you are going to be just fine on stage these are the on stage thing and non-verbal communication never read from the slide which is actually a very very negative way of presenting do not read from the slide if you read from the slide then what is the purpose of being a speaker you just project the slide and go and sit there it will put it in the auto auto slide change mode why should there be a speaker slides are meant for the audience not for you how many times I turned to the slide because I have here that may be your argument slides are only a reinforcement reinforcement tool to illustrate what you want to say you cannot entirely depend on the slide if you read from the slide initial few minutes what will happen this will happen that few people are still paying attention to after few minutes this will happen it is not expected that a presenter reads from the slide and if you are ok with the second picture you are welcome to read from the slide but end of the day who is the loser you are the loser so do not think of reading from the slide look for some friendly phases in the audience you will always have some friends looking at you you can look at them and start speaking as if it is like a dialogue between me and my friend these are for the early few minutes management and then you can scan different blocks of the audience the key here is that talk to me I will forget show me I will understand involve me I will remember so you have to somehow learn how to involve the audience in what you are speaking involve the audience into the content of what you have on the slide then it is going to become a successful presentation and for a teacher like me it is very very important that my students are involved in what I present ok so this is very important if you involve the audience they will remember what you talked about but if you only talk to them they will forget immediately ok so this is going to be a successful thing and I was because of this camera I was asked to stay in this territory otherwise I would have come there and I would have spent my time moving around like a honeybee throughout the state that has been the standard practice do not position yourself like a statue and you know men would worry about how to have a good body language on stage and you could put one hand in the pocket or you could keep a poster because I am doing that way so you could have like you know never have this kind of as if you are going and standing in front of your principal in the college like do not give a talk like this like a statue be very serious and it does not give a good feel for the audience move around move your hands move your feet walk up and down have some kind of mobility on stage because that gives a good feel good sense for the audience as well now ok I have everything on stage management everything is done but you know sir I cannot speak English well oh you cannot speak English well do not worry that is certainly not a concern because as I said in the beginning it is a long term process it is not that your English in the past was bad does not mean that you will continue to be speaking bad English throughout your life it is an opportunity so it is going to be a long learning process that you would decide that I will slowly and steadily improve my presentation skills and language is part of it and even if you speak a language speak English in huge mother mother tongue accent attached to it do not worry about that do not worry about whether you have mother tongue accent in your English or not that is not an aspect that you should worry about as a beginner and in the long run things will improve and it will improve for good use words which you are very familiar with and I have had the wonderful opportunities to ask some questions what did you say and somebody said unprecedented what does that mean unprecedented it was there in a book do you know the meaning? no sir so do not use words which you do not know that can be very embarrassing at times and then one would think that somebody gave a great talk because he spoke like an American that is a wrong notion you are in India speak like an Indian and if you can afford to speak like an American like in call center you may want to give a try but that does not mean that you gave a great talk accent is not making a great talk it is a wrong notion that if your pronunciation is great you gave a great talk that is only one aspect of it you give a talk in your native native ability to speak English with the objective that in the long run it will improve when you give a talk first time in first few times do not worry about how you pronounce you just have to convey the meaning because these are huge negative effects that will survive in your mind and you know mess up your presentation so keep in mind it is not about how well you pronounce it is good to pronounce better but that is not the sole criteria of giving a good talk and then I have a statement I just want to demonstrate I was simply going to post office to host office to find where my file was at last I found under the table then I took an apple and ran to the class but I was late you might have seen this kind of accent from among your friends that is what I want to say okay depending on the regional mother tongue touch there will be differences in the way you speak it is okay but in a scientific talk that is not the point the point is how well you can deliver the content of your slides that you should keep in mind never think that these are negative things that is going to affect your performance on stage or performance in delivering the content modulations and demodulations which I talked about the local summary into perspective what you have done till now where you are heading to that is local summary that is exactly the time where you should try to modulate the monotonous rhythm otherwise you would speak loud and clear do not murmur many times I have seen people in periodic local summaries no one can understand so keep in mind that you cannot afford to murmur do not go too fast do not go too slow so you need a hybrid half car and half rest so you need some kind of hybrid that you need to know what is your natural speed and if you pack up too many slides for a 20 minutes talk you have to go fast that is not good if you pack up too little slides for a 30 minutes talk you have to go terribly slow even that is not good so that is where the practice and time management prior to the talk will help now avoid certain words which are very common this thing that thing avoid this thing that thing key all in the talk these are uncalled for words try to minimize those it might come but do not worry but try to minimize in the long run you should not be using these words in the talk key, mathlab that now that the talk is over what next questions most nervous phase of the talk you thought that all nervousness is over and I gave a good talk there comes the questions and answers taking questions listen to the questions carefully yes you pay attention to the question very patiently carefully listen and if you know the answer immediately respond if you do not know the answer try to take some time and think and then respond many times what happens with student presentations is that they think that faculty is like infi god very very famous faculty his question would be really hard so I better do not attempt it you know that like you know you are getting 1 out of 10 instead of you trying and attempting to answer that question you will get 8 out of 10 so try to take some time try to respond positively that is the right attitude and if you on some instances if you do not know the answer you say that I am sorry can I get back to you these are very famous international ways of dealing with questions can we talk at the lunch time can we talk can we postpone the discussion can you refrain from not answering because of you know patenting issues and all so there are different techniques of you know skipping a question and telling you that you have to be in full control okay so hierarchy is that answer listen carefully and answer then take your time think and try to answer if you do not know the answer you can always tell that I think I do not know the answer to that it is a great question and you can always say by if the question is good always say this is the American way always say that good question this is the typical American way good question I have not thought about that yeah it is a good question maybe we will discuss during the coffee break so as if like oh you know I do not have time right now I will discuss in the coffee break but these are different ways of tackling the question but never be aggressive attacking the question if somebody is asking oh he is a student how dare you ask the question that approach is completely that is what I said respect the audience very important it can be really backfaring big time so respect the audience and now improvement continuous process the last module with regards to time management I looked at the watch and I got the note that we will wind up in just 2 minutes time management you can do all the time management but as far as I am concerned with so many talks worldwide and in IIT many other places I have usually large number of slides and I take a decision on stage after asking the chairman how much time I have chairman would say chairman sometimes chairman is sleeping and suddenly oh you have 5 minutes okay good and that 5 minutes you can use to rush through or slow down okay so if you have already done too many of your slides you can slow down in that last 5 minutes or you have not done not even half of it you can decide where to stop this is an advanced level management thing that one would learn when you are very comfortable on stage with the content and this is a long term that on stage dynamic time management this is advanced concept speed up slow down and humor most western speakers will start the presentation with some sort of story they will show a picture and talk that in this part of the world it is all snow at this time of the year and you have wonderful weather that has no connection with what he is going to talk about but this is the part of a light hearted way of beginning a talk in the advanced level you have been talking for last 5 years and now it is time to climb up to the advanced level of giving presentations you can build these things into your presentation have some humor pre-planned humor usually does not work so have on stage way of you know cracking jokes or you know pulling someone from the audience and you could do all kinds of things in control of what you are doing on stage so what I have tried to do so it is like a loop coming back like in a you know the award movies you would have first seen a child walking through the street and last seen child again walking through the street so I am like recapitalizing and coming to the point where I started what I have tried to do as I started with some course many times in the presentation there were few course as one person I cannot change the world but I can change the world change the world of one person so if one among you who listen to me today decided that ok I am going to implement some of those recommendations made because I want to improve my presentation skills if one of you have decided I think I serve the purpose so that is what my simple minded approach is that if I can change world of one person it is good now one more thought yesterday is a cancelled check tomorrow is a promissory note today is the only cash that you have spend it wisely so spend your time wisely take it seriously and try to implement these recommendations and you are going to become a great speaker tomorrow ok thank you all for listening to me


Your Majesty, Your Royal Highness, Presiding Officer, fellow members of parliament, distinguished guests, today is a day to celebrate our strength, our ambition and our unity. This is a day to come together, a day to look forward with hope. Your Majesty, first and foremost, we want to thank you most sincerely for affording us the honour of opening the fifth session of our parliament and for your thoughtful address to us this morning. And since this is not yet December, I trust that birthday wishes are still in order. So on behalf of everyone in this chamber, indeed on behalf of all of the people of Scotland, I would like to wish Your Majesty a very happy 90th birthday year. Your Majesty, your lifetime of service to others, to your country and the Commonwealth, your deep sense of duty, dignity and respect and your firm and constant support and affection for Scotland are an inspiration to all of us and we thank you for it. Today marks the formal opening of this, the fifth term of our national parliament. All of us elected to this magnificent chamber feel a deep sense of honour in the trust that the people of Scotland have placed in us. We come from a diverse variety of backgrounds but all of us have been given the precious opportunity to contribute to building a better country and build it we will. To do so we must be bold and ambitious, we must show courage and determination. Our collective commitment to the people of Scotland today is that we will not shy away from any challenge we face no matter how difficult or deep-rooted. We must seek to extend opportunity for everyone at every stage of their lives and as parliamentarians we must always remember our duty to lead by example with open, honest and good-spirited debate and discussion, our duty to be a voice for all of the people of our country. When Scotland's First Minister, the late Donald Dewar, addressed this parliament at its opening 17 years ago, he delivered then one of the finest speeches of our times. He said that the Scottish Parliament is about more than our politics and our laws, this is about who we are, how we carry ourselves. So allow me to reflect on who we are in Scotland today. We are more than five million men and women, adults, young people and children, each with our own life stories, family histories and our own hopes and dreams. We are the grandchildren and the great grandchildren of the thousands who came from Ireland to work in our shipyards and in our factories. We are the 80,000 Polish people, the 8,000 Lithuanians, the 7,000 each from France, Spain, Germany, Italy and Latvia who are among the many from countries beyond our shores that we are so privileged to have living here amongst us. We are the more than half a million people born in England, Wales and Northern Ireland who have chosen to live here in Scotland. We are the thousands of European students studying at our universities and our colleges and we are the doctors and nurses from all across our continent and beyond who care for us daily in our national health service. Whether we have lived here for generations or our new Scots from Europe, India, Pakistan, Africa and countries across the globe, we are all of this and more. We are so much stronger for the diversity that shapes us. We are one Scotland and we are simply home to all those who have chosen to live here. That is who and what we are and how do we carry ourselves? We carry ourselves with dignity, we treat others with respect, we celebrate our differences, we are not perfect far from it and we do make mistakes but every day especially in adversity or sadness we should seek to offer a hand to our neighbour. A few weeks ago all of Scotland including leaders from across this chamber stood in solidarity with the victims of the Orlando massacre and today we fly the rainbow flag outside our parliament. We do so with poignancy but also with great pride. It is yet another vivid illustration and powerful symbol of the open and inclusive nation that we are, the open and inclusive nation that we are determined to remain. This is the Scotland we represent, a country we should never take for granted but instead work hard each and every day to protect and to strengthen. This parliament now has the weighty responsibility of taking forward the will of our people in the name and in the spirit of our people. So let us lead with hope and determination and make this resolution. We will work every day to achieve greater equality at home and to enhance and never diminish our precious place in the world. We have just heard the inspiring words of our wonderful new macker Jackie Kaye. Let me now finish with the words of her predecessor Liz Lockhead. These words are from Connecting Cultures, a poem written by Liz to celebrate Commonwealth Day. These words resonate powerfully as we think about who we are and as we reflect on our place in the European Union and in the wider world. Remembering how hard fellow feeling is to summon when wealth is what we do not have in common. May every individual and all the peoples in each nation work and hope and strive for true communication. Only by a shift in sharing is there any chance for the welfare of all our people and good governance. So Presiding Officer today as we celebrate this new beginning let us look forward with hope and a shared determination to work tirelessly for the good of all of Scotland's people and in doing so to play our part in a stronger Europe and a better world.


Go ahead and start. Hi, I'm James Pace. I'm from Runtime. We're going to be giving an overview myself with Marco Kiskila. I'm going to provide an overview of Runtime, very brief, and a bit on Apache Minute, an open source operating system for constrained MCU class devices in the Apache Software Foundation, and then get to how we're using a protocol called OIC 1.1 exposing it as an application layer, an application framework, and how we use it for management. So it's been a lot of time there. So a bit of background on Runtime and Apache Minute. So a couple of years back in late 2014, a few of us from a company called Silver Spring Networks set out to build a cloud-based management and monitoring system. So at Silver Spring our backgrounds were having built and deployed and managed over 23 million connected devices, mostly in the utility space, but also in industrial IoT and smart cities. And so we built systems on chip. We designed systems on chips. We built out modules. We built all the firmware that went on these devices. We drove two transceivers. One was a 2.4 gigahertz transceiver running Zigbee, a protocol stack that we co-designed, and an 802.15.4G frequency hopping spread spectrum implementation. Narrowband over 900 megahertz that provided really great coverage for these utility applications. So we put these devices in things like electric meters initially, then they gravitated upstream to medium voltage and low voltage equipment, things like transformers and capacitor bank controllers. And then ultimately as we were leaving, we were there for nearly 10 years, things like street lights for a canopy for smart city coverage. And so it was something of an unheralded project. We conceived the protocol standardized in the IEEE. It's called 802.15.4G, and then we deployed and managed it. So our largest footprint was over 5.5 million devices connected reliably at Pacific Gas and Electric, about 4.5 million at Florida Power & Light. And so we learned a lot about building embedded systems, but we also learned a lot about managing millions of connected devices that needed to be off on all the time and reliably connectable. So when we left, we saw this thing called the IoT was happening and we realized that we'd been doing that. And we thought we would apply some of our learnings on the management side to constrained devices. And so we started looking at a lot of consumer applications and what we realized was that the state of play, the landscape hadn't really changed much from the perspective of a developer building a connected product. So at SilverSpring one of our first decisions was to choose an RTOS. We chose one from Mikrium called UCOS. We modified that heavily. We chose a TCP IP stack from a small company. Modified that heavily. We had one poor guy maintaining ICV2 and trying to upstream his changes to the family business that never saw the light of day. And the story goes on. We developed our own bootloaders, secured our own bootloaders, did the over-the-air upgrade scheme. When we got out into the non-utility world we noted that people were basically building their own bespoke OSs in the same way. So one observation was that single chip solutions were becoming more and more powerful, more flash, more RAM, more processing power on Cortex-M class devices. And yet they couldn't run Linux or Android and yet they deserved kind of all of the functionality that you might see from a general purpose operating system. When you download Linux you expect to have protocol stacks, you expect to have bootloaders. In the embedded world you cobble all of that together and then you maintain your own bespoke OSs for the life of the product. And if you've got multiple products you may have multiple bespoke OSs that you're maintaining. So in order to build a cloud based management and monitoring service, client libraries and an agent style approach just wasn't cutting it, it didn't go deep enough so we decided to embark on an open source operating system called Apache Minute. And so the stack diagram there is basically represents what we're doing. So we have a real-time scheduler, a real-time kernel. We don't really differentiate hugely on that. But what we do have are all the components that you need to assemble a product and maintain it over time. So that includes things like a flash file system, it's Apache 2 licensed the ones that we saw out there were mostly GPL'd in a side. In embedded products everything is statically linked and there can be troubles. Some legal groups don't necessarily like the obligation or the perceived obligation of contributing back code to GPL products. So everything here is Apache 2 licensed. We include a TLV, lighter weight TLV storage mechanism with a circular buffering scheme, a secure boot loader that we've broken out of the project and are collaborating across multiple OSs on. A rich instrumentation of the microcontroller, the transceiver, and tasks in the OS stitched together by an OIC 1.1 logging infrastructure and the world's first Bluetooth low-energy stack down to the controller level which has really kind of been our differentiator to date. So it's a pretty expansive OS. We're getting a lot of traction particularly from companies building connected product with Bluetooth low energy because of all the configurability that you have. You have the opportunity to set breakpoints, direct access to peripherals. You can set your connection pools you can size them correctly. We're doing 32 concurrent connections which are important in a lot of real-time location service applications. We can trade off throughput for the number of concurrent connections.  And there'll be more protocol stacks coming soon. So we a little side note here. When we say OIC is the acronym for the Open Interconnect Consortium and what this diagram represents is kind of an evolution of the standards bodies or the specifications bodies that are emitting these specs back in the day. It didn't seem like too long ago. There was something called All Scene. It was perceived as competing with Open Interconnect Consortium, OIC. OIC rolled up UPNP. Those two organizations merged and became the Open Connectivity Foundation, the OCF. OCF is a Linux Foundation initiative. It has, I think, 11 or 12 Platinum members. It's a pretty substantial organization. But on the side, and this is sort of interesting, there's a separate Linux Foundation project called Iotivity which its purpose is to provide reference specifications, reference implementations for OIC and the successor spec which will probably be named OCF. So there's an Iotivity Linux implementation that's been out there for quite a while. But there's also Iotivity Constraint which is a microcontroller class, very parsimonious implementation that's completely different from the Linux base one. You had a question? Exactly, yeah. So right now when we're talking about it and Iotivity Constraint is based on OIC 1.1 but the successor specification will use the appropriate acronym provided they don't change the name of the organization again. But we're really happy with it. So this is my last slide and I'm going to hand it over to Marco. Why OIC and Apache Minute? We were referenced by one of our chip vendor partners, a customer who really liked Apache Minute, the totality of it but they wanted to use OIC 1.1 as an application layer or an application layer framework and their idea was, wow we really like the fact that you guys have a controller level implementation of Bluetooth Low Energy. If you could go all the way up to the stack to the application layer we can develop apps for that but also we, by having this implementation that deep and by virtue of the fact that it's an OS it provides hardware abstraction and what they get is leverage across chip vendors. So as we port this to other chips, so we're initially on the Nordic NR-52 we followed that with the NR-51 and then we're also porting to the NXP, the old Free Scale KW41Z. So now these companies can actually have optionality and pricing leverage against the chip vendors and I think you're probably going to see some cheaper remote chip solutions coming out over the course of the next year or two. So this company wanted to do that, we took a look at it and they're also very frugal and they're using the older generation of the Nordic semiconductor chip, the NR-51. So the NR-52 has a bit more flash, bit more RAM, a slightly better processor but the NR-51 is really constrained and that's what we're talking about here is developing a constrained environment. So we started to look at the protocol, we thought there's actually some really, really admirable aspects to it. In particular it uses CoApp a constrained application protocol, it's a RESTful protocol that's been specified by the ITF then there's also CBOAR, a concise binary object representation for JSON and we like that because it has respect for small frame sizes. So a lot of the transports we're talking about going over, Bluetooth Low Energy has incredibly small frame sizes but also things like ZigBee or Thread which operates on 802.15.4 radio has 127 byte frame sizes so having that built in was great it was goodness because most of the application use cases around all scene or open interconnect consortium when these specifications were being defined were really for home use cases and transports of a Wi-Fi which has like a 1500 byte MTU. So seeing that that was great we started to pair that down and then we also had a proprietary logging infrastructure. So runtime when we initiated this and you'll see Apache Minute has a huge focus on this, we care about the upstream facing interfaces, we care about secure boot loaders and how you do over the air upgrade in a very consistent way. We care about abstracting away instrumentation so that we can manage the system as if it's a, you know, as if it's a, I'm beating myself up, as if it's a server in a data center but it could be in a lock or a window latch or a wristband and so we care about managing those resources and so we defined a proprietary logging infrastructure and then we thought well how do we squeeze more out of the space and actually this OIC implementation looks quite good for doing logging and having a standard there is actually quite good as well. So Mark will talk quite a bit about how we plumb that into the system and use that as a core of our logging infrastructure because these systems, you're not running SysLog or SNMP or any kind of traditional IP based management protocols on top of these constrained devices and constrained networks. The other thing that we liked beyond just the efficiency of the protocol itself was as a solid security framework we didn't want to reinvent that and service resource, service and resource discovery. So some of the use cases that we see beyond home networking or industrial IOT applications, sensors mapping different sensor APIs into OIC so that an upstream device can simply discover all the functionality of a downstream sensor is great. So when you're talking about industrial IOT you typically have these gateway applications, they call them the edge but there's an edge beyond the edge and that's these smaller devices. And one of the challenges in really getting industrial IOT out in a deterministic manner and at scales you need to manage all of these devices. The gateway shouldn't just be just dumb protocol translators and trying to figure out what these things are doing at the other end. The connectivity needs to be reliable and deterministic and the device itself needs to be manageable. So sensors are a great application but then there's things like every light bulb is going to have a Bluetooth chip in it one day, a Bluetooth carrier and it's probably going to have some sensors in it too. So we think that there's commercial and industrial use cases that will be really well served by this. So with that I'm going to turn it over to Marco who will talk about the implementation and really kind of where we're pushing things and some of the things we'd like to see. I'll give you this. That better? All right good. So if you attended Kisha's talk yesterday, some of this is going to be a duplicate data. So I was going to first talk about OIC a little, what it looks like. Just high level, basically what kind of protocol it is and what does it entail. So the goal of OIC is to provide two different places where they give rules how you do things. One is how to abstract resources, how to export them to OIC framework and another one is how to map these resources into protocols underneath. Protocols like HTTP, co-op or both of these are restful. So there's server, there's client. Then also it includes rules about resource discovery. You should be able to do that with your protocol mapping. Rules about what the protocol needs to be able to do. That's the basically get set and then there's also this notify mechanism. Basically what that means is you can register to be notified if a resource changes its value. So it's not just client asking server what's the current state, the server can also tell that there was an update to this. And then the IOT with the reference applications like James already mentioned. This is that same thing in the form of a picture. There's a client, there's server. These logical operations create, retrieve, basically set the notify. They go from client to server. Underneath there's the specific protocol OIC runs over and there's co-op here. It took very well the HTTP if needed. So the resources What's a resource? Light, bulb could be a resource. There's an example of a resource in that box. OIC declares that you have to have certain fields always present in a resource. You have to be and the client should be able to discover what these properties are. Like this light resource is retried. You can change its value. Does it look like it's something that there would be another field saying if you can register to be notified when it changes. You can see it looks like JSON there. That's how OIC publishes its data models as JSON. This is over the air, this is encoded as seaboard. There's key value pairs. State is on, for example, key value pair. So resource discovery. This is interesting to the client. Especially if you try to write generic clients you don't know exactly what you have on your network. Being able to do this eases up the deployment quite a bit. Depending on the underlying protocol you have different things. Co-op runs over UDP. So it uses UDP multicast to initiate the query. Responses come back as Unicast. That uses MDNS to publish information about this service. With Bluetooth you advertise it in the Bluetooth advertisements. You say that UDP is present on this device and that's how the client knows that this is a guy who can talk OIC. After that it can go ahead and ask for the resources that the device exports. Resource discovery with UDP multicast is just a co-op request to asking everybody to respond to OIC RDS URI. The response contains a lot of the data that the device has. You can also filter if you formulate the request you don't get all the OIC clients responding. You can limit what type of devices respond to you. After you discover these guys and you want to know more you use these to other URIs to get more information about the device. And then operations on resources. This is standard restful interactions. This is the acronym that OIC likes to use. The most common use case would be get set and notify. The notify indeed there's certain resources you can register observers for. That server can send you data about changes in the resource. Then IOTVT there are reference implementations you can just run with this if you have a bigger system. This is a great library because it's multi-platform Unix I think there's iOS there, Java for Android and so what we used the big IOTVT library for was to write the clients on our Unix machines. But to get it to fit into a small system you can't it's way too big. There's IOTVT constraint which we initially took pretty much a CIS and ported it over. It worked okay for NRF 52 which has more memory than these 16K guys. Then we had this request coming in that we had to be able to fit it into a smaller device. After that I had to take it under heavy modifications. Basically just to cut down, mostly to cut down the RAM use. Our implementation indeed is based on that. We do IPv6, Bluetooth, low energy and also we run co-op over serial port if when appropriate. We augmented this code with the advertising tests to the constraint framework. Yes, we did. There's a gap. So the biggest problem we had for running the IOTVT constraint was not so much the text size code size, it was definitely the memory size. It had it uses memory pools which is great. We like that. It's much easier to size your memory to match your application. If you have a leak, you can easily figure out there's only limited users for it. It's a great recommendation. All that is good. Unfortunately there were a lot of those memory pools and what IOTVT constraint is it has implementations of features that you would normally find inside an OS already. So I systematically went through the code and replaced their use of their own implementation with calls to minutes matching code. Decided for timers, control flow, and a few things other than that. There was also the biggest code savings had to do with data buffers themselves. What IOTVT constraint expects is all the data to be contiguous and them being in control of that memory pool. These entries are large. It has to hold the full frame. So minute has its own network buffer scheme and buffs which are linked together. So I had to go through the code and replace all the calls. All the places where data was read in instead of just expecting the data to be there, replace it with a call that actually can follow a chain of mbuffs. I basically abstracted to use this disk and to go memory buffers. And once I did that, I could share this memory with our Bluetooth stack. Therefore, overall, less memory footprint. Also, zero copy, which is nice. And another thing that yielded significant benefits was the way the payload of the request was decoded. The implementation in IOTVT constraint, the way it does this is it takes the whole payload and out of that C bar, which looks like this, and it creates a tree of objects. And all these entries come from memory pool. The data gets copied to another block of memory, basically the values. And this is done automatically before calling the resources, get or set handler. So I replaced that with the version that actually does this decoding on the stack. The user provides pointers to where the data should be encoded, should be placed. So I could get rid of all that memory. So now, if it's temporary data, you don't have to hold on to it at all. If it's data that you care about, you can start it later or just decode it directly where you want to retain it. Right. And it was not just IOTVT constraint that we had to modify for these for our network buffers. Also, tiny C bar, which is a library, which is small footprint library for decoding and encoding C bar. Also, with that we replaced the bottom half of it where it asks for more data instead of just expecting a flat buffer. You have get set routines for getting or setting different amounts of data. And that can deserve the data to tiny C bar either from a flat buffer or from this non-contiguous memory buffers. Yeah, that's right. Yes, we did talk with Kishan and Diego about doing that. Some of it. So, first of all, when I started doing this, it was just whether we can fit it no matter what we have to make this happen. So, therefore, upstream was not concerned. Some of this data is definitely something that can be pushed up, like the tiny C bar changes. I think that would be valuable overall. A lot of people do have used this chain network buffer. That can definitely come up. The fact that I moved the abstraction between the OS and the IOTVD constraint, that's also something that can be pushed up to IOTVD constraint. So, yeah, but we'll see what the maintainers of IOTVD constraint will do about these individual things. Yeah, it is it was interesting results. So, here, I think the salient lines are the ones that talks about the OIC prior to restarting the optimizations and after. So, 16K of RAM. Bluetooth stack there in addition to OIC and you need to leave space for the user application as well. Very important when building these frameworks is you can fit your stuff, but how about the actual code that does something there. So, anyway, we got good savings on RAM and as a result of relying on OS more also the text size went down quite a bit. And now there is, I mean 16K of RAM there isn't much to start with, but at least there will be some left to play with afterwards. All right. And what next? So, we are using OIC as our management protocol as well. So, we export anything that you can either for debugging purposes development purposes or for managing devices on the field. It's all OTA it's done with OIC. So, we are going to look at contributing these data models back to OIC and also we'll try to help upstream the changes that we have done to the OIC itself. So, this changes I think there is a completely new class of devices that you can run this stuff over. People like cheap, they don't want to pay more for the MCU that they absolutely have to. Yeah. And we try to be good citizens. Yeah. Brian? Yeah. I think it's TVB. So, we've talked to Diago and Pichang. And I think that the constraint of implementation may not be obligated. Super set of certifications that I see that he does. So, I think the thing that need to happen is first of all there's a basically the way you do this over the only gap, the only 4.2 implementation that needs to be codified and standardized. In fact, there's been a working group in the OCA for that but I'm not certain how much progress has been made there. However, I think having a reference to communication showing an actual application or a set of applications and particularly managing the devices using OIC intrinsically to the OS, I think that will help drive that conversation. So, we hope to have that in Amsterdam, here in OCA. And then, so, we think it'll be a certification. I'm not sure that it directly lines up with what's been done in the past. So, other than the memory impact, do you think there's been any performance in the past studies comparing bare metal and wireless running the OS? Not so much. The problem with running just bare metals without OS here is interactions with the Bluetooth. In this 16K application we don't... well, all the packages are written such that you can call them as libraries. In theory, you could get rid of the OS altogether. The only exception is the Bluetooth controller code that sort of runs on its own context. That's why it wants to run. And, you know, it's not running in an interrupt. So, you know... That's right. Yeah, that's right.  You know, it's very flexible. Right. Right. Yeah. Yeah, take it for a spin. I think for me, you know, the number of cycles has not been that big of an issue. It's always about RAM more than, you know, how fast the response comes back. So, that's why like... You know, you can build the system however you want. So, what we have made possible is, you know, you can either have just two tasks and, you know, that's it. There's the controller and then there's everything else. And you basically have no context between except to the idle task. Or, you know, if you don't have Bluetooth, then you can have just single tasks. That's how I, for example, run the OIC over Wi-Fi on 7D21. Right. So, at the moment, the question is, you know, OIC Discovery co-op over UDP, this multicast, this is a LAN-based thing. So, how do you do this from the Vans side, basically from the cloud? So, at the moment, the model we have for this is existence of gateways. So, therefore, the entity who talks OIC to the endpoint would be present in that local LAN or in close vicinity. We haven't thought about it too much, you know, how it would look from Vans side. That's right. So, if you look at the... Actually, there's a... So... No, not really. Right. Yeah. Yeah. Yes, absolutely. Yeah. Bluetooth, you know, there's no LAN. You are not going to connect to LAN with Bluetooth. So, therefore, not the immediate call. So, the current implementation of Bluetooth connection with OIC in IOTVT actually uses TCP-style headers on the co-op. So, you know, that didn't exist in the IOTVT constraint. So, I added it because I just wanted to talk to normal libraries, you know, to perform all that goodness. So, interoperability. Sure. I love it. You know, in my previous life, I was working at the IOTVT company that was using RESTful stuff. Not OIC-based. Notify was definitely used. Yeah, it was okay. Well, scaling usually was not an issue because the number of users or clients connecting was not that large. Yes, then there's an issue. Yeah. This was more of a home use case. Right. Right. Right. Yeah, that's true.  The first answer is that's certain to answer it. But it's how we use it. How we use it is our infrastructure. Do you want to talk about that and then I can talk about the customer use case? Sure. So, yeah, the I assume you're asking about the updates to the IOTVT constraint that how do they trigger into this code base? Oh, into the device. So, we have a OTA framework which existed before we started doing OIC. So, secure of firmware updates with a company bootloader. The bootloader is now being used elsewhere as well, you know, forked off as its own project. But in addition to that, you know, you need the process of getting the images to the device and you know, deciding when to switch over and you know, being able to fall back, you know, in case something happens when you try to boot it up. You know, that stuff is already in existence. What we did was we just took our existing implementation of these things and you know, mapped it over OIC. Actually, before, in our previous revision of this, everything was JSON.  However, people who write clients, you know, on various platforms, you know, for phones and, you know, laptops, you know, they have very easy libraries available for passing JSON. Luckily, Seabor is more dense, so you know, it's not as costly over there and pretty much you get the same abilities in terms of ease of implementation for the client. I think I sort of started talking about different things. But anyway, upgrades, yeah, you can create these binaries. And how would we maintain this source base? This is a part of the Apache minute source tree. So, you know, whenever we need new features, you know, it's going to appear there. And you know, we intend to follow hopefully us and the IoT with the constraint implementations to converge at some states and, you know, we can actually just play with the same code base. Until that time, you know, we'll hold on to this one because, you know, it works for us. And so, we do OTA. We drive that with the OIC Bapings, but some monitoring. So, we have Bapings to how to object objects that are defined to abstract with microcontroller, so they're really protectives. We do have MIP support, not a PIC32 port yet, but as a progress, about four to five versus five ports. So, the abstraction there is good, and you know, OIC is useful, whether that's, you know, doing logging, upstream to a management device or a local system. Same goes for transceivers and tasks in ALS. We have signed up. So, we're also members of the central project and we signed up to do the logging infrastructure. We hope to leverage that on possible projects. Stepping back, and aside, for us, it's important to have all of these common upstream management interfaces irrespective of what the OS is. We don't think there's going to be any singular OS that has 100% of the market tomorrow. It won't be Zephyr. It won't be Apache Monday. There's others like Riot who's still here. There's Kotiki. There's RTOS. If those other OS initiatives, or RTOS initiatives, structure adopt these components. It's easier for you guys and product developers to work right management systems. So, that's been important to us. So, we want to see OIC based on structure adopt, you know, across all of these initiatives. In terms of the customer, it's a pretty simple use case. It's a consumer-issue use case, but they basically just want to discover objects on a consumer device using an asset. So, they have a framework already that they have on iOS and everything with devices, and that's what drove them to adopt OIC. I mentioned before, I think there's a lot of industrial applications and sensor applications that will be lost by this. Right. So, yeah. Yeah. What to thank the IOTD constraint, guys. It was great to start with the reference as opposed to writing everything from scratch. It was great that protocols came with this kind of code.


Love How do you take those pictures? Oh, I thought those pictures were so good, bro Hey, man, I can't be a single man.  That's small ball. That's small ball You know what I say to the ones in the chat We go again We go again We go again Can't have many players left on the bench, bro. He can't have as many players left on the bench He can't have this many players left on the bench here chat. I gotta play the bun here. I gotta play the bun Now right here it's like bro. Yeah, but the winning runners on you're right. You're right.