 Good morning and welcome back to this session. We shall be conducting first the attendance quiz. I will conduct it manually because there is no time frame required. So are you present in the class? All of you who are present and have returned after the tea break, please press your clickers appropriately. Let us see how many responses we get. Tanjavur Periyar, I see a tick mark here. So thank you very much my own colleague and thank you very much Tanjavur people for correcting the situation so quickly. Chennai is we have collected, Amruta Coimture we have collected, MGM Nanded we have connected, Somaya Vidyavyaar we have collected and College of Engineering Pune we have collected. We still have to get responses from other places, hopefully the files are in the electronic media somewhere they are getting transmitted through FTP. Should I say refresh each list, wow. So I have Surat, no sorry I have Amdabad, Surat Kal, Trichur and then I have Nanded Nagpur, what is this I have Vijay Tiai, Coimture and Chennai of course I had already. There are still some centres from which we are not able to receive files using FTP. I am told that at some places there could be a virus problem or some places there could be a problem of local firewall. As I mentioned to all colleagues earlier the co-ordinators may please note that if the file is not transmitted they should transmit it through a separate email attachment, message from Maniyama University at no Periyar Maniyama University at Tanjavur right. Thank you very much I saw your mail by the way very sweet of you and I am very happy that together we have been able to solve this problem. Many clickers got timed out ok don't worry we shall have another quiz a real quiz this time. So let us just view the responses that we have got and just take a count of total number of clickers that we can see here ok. So if I look at a bar chart there were 90 timeouts by the way and no response from 4 clickers wow. This is impressive now we are going to the second quiz which is actually a quiz. These are the three code lines I would like all of you to read them carefully it says count equal to 11 for count equal to 10 count greater than 0 count equal to count minus 1 print f percent d count what will this code segment print will it print 11 will it print 1 will it print 0 or will it print minus 1 actually I had an option e but it does not matter now this kind of quiz can be used by the way to test the understanding of for and while loops when we teach these two our students. So the simple quiz will immediately tell us whether our students have understood the concept or not and if they are not it gives us a chance to explain perhaps to another example. So I think you would have all pressed your answers now this is quiz number 12 for the benefit of the co-ordinators which they would have entered there and I hope that everybody has clicked the answer by now I will wait the mandatory 30 seconds more from now onwards let us see the view status this time I have only VIT Vellor PHG Co-M Tour Seahagar Pune and JSITS Indore and Amruta Bangalore my colleagues tell me that there is no real time limit in these tests so you those of you have not given the answer can give the answer now and it will automatically collect even if I have sent the answer earlier it will collect the latest answer. So let us view status now once again and see what has happened okay roughly the same units which were there earlier I will view all responses and check okay this time there are 174 time out let us look at the bar chart here oh wow this is surprising there are A, B, C and D responses that is very interesting okay so I will use Dr. Sarna Murthy's technique this question we will repeat after 2 minutes for 2 minutes next 2 minutes please discuss your answers because there are several people who have given an answer A several who have given an answer B several people who have given an answer C several people who have given an answer D okay so everybody knows it is an answer C so when we execute the code lines count equal to 11 for count equal to 10 count greater than 0 count minus 1 this is the code if I execute it the value of the count printed is 11 1 0 or minus 1 I am actually surprised at the different answers that I have got the key point here the trick here is that the for loop has no body although I have written the printf statement slightly indented to give a wrong impression that printf is being executed inside the for loop nothing of that sort is happening please note that the for loop terminates here when I put a semicolon there is no opening brass other statements closing brass consequently the entire for loop is executed for as many times as the iteration specifies without doing anything all that it does is changes the value of count count starts with 10 since 10 is greater than 0 the body is executed which is another body then count is decremented by 1 so count becomes 9 you again come back here and execute this loop which is nothing this way count keeps reducing when count is 1 that is the last time this loop will be executed without doing anything because there is a null body here and when count is further decremented it becomes 0 since 0 is not greater than 0 that is where the for loop terminates and when the for loop terminates I will come out to the next statement whether I have indented or written it here or written it here it does not matter this is the next statement after the for loop when this statement executes the value of count is 0 and therefore what this will print is 0 so I hope you have got this let me switch over to the quiz and collect the responses once again so this is the this is the quiz where count is 11 for count and etc etc and I request all of you to give your responses again and now I would request all the center coordinators to press whatever key that is required to be pressed to collect all the responses so once you are checked with all participants that they have pressed their appropriate keys please press the collect response button at your ends and once you have done that the file will get generated and will get transmitted here so I will now view status even if some of you have not pressed it does not matter next time when I view status I will get that response again from your FTP so let us look at what we have got now okay we seem to have similar status now let us see that the numbers have improved this time I have 172 timeouts so there is some problem with the timeout anyway as I said this is an experiment that we are doing so with this we now go to our plan interaction first and foremost I would like to explain the modifications that we have done for the IST workshop projects you will recall originally we had decided that we will use this a pursuit of a workshop to do two team activities one is to set questions for our question bank and the other we wish to do a programming project originally if you recall we had said that we will take about two weeks time in which the teams that have been formed already will complete this task but when I discuss this with our colleagues here we all felt that to do a good task of a programming project that time is not sufficient we had agreed that we will finish these tasks in two weeks after the workshop since this time frame is not sufficient to carry out both the tasks we have decided that we will bifurcate the two tasks of this workshop because you see our agreement with IST requires as was explained in the workshop brochure that the workshop certificates would be given only to those participants who not only attend the workshop but also complete the assigned task within two weeks of the completion of the workshop since it is very difficult for all the participants although we have formed teams not all teams will have people coming from the same college or same place and therefore also the activities involved may take larger calendar time although the physical time that may have to be spent may not be much and since it is the first time teachers are collectively attempting this kind of work we thought it may be better to separate out these two activities. So here is the current decision on the workshop projects first the question setting and model answer setting should be done within two weeks so this is the task we have decided in so far as the IST conditionalities are concerned once this task is completed we will issue the certificates I mean we will be sending of course all the certificates to the remote centers but the remote centers will dispatch the certificates on the receipt of this particular task and the timeline for that is still two weeks we can perhaps extend it to something like 15th of January instead of odd date like 10th of January I will announce the exact date by which the submissions must be made but as far as programming projects are concerned we are providing an additional time frame to all the teams. So programming projects are to be completed on or before Friday 26th February these are to be submitted these submissions are just like the question setting submissions also they will be done two fold all teams through their team leader will upload both parts on the model as well as they will send it to the coordinator please note that as far as participants are concerned this workshop is coordinated jointly by IIT Bombay here and by the course coordinator at the remote center where you are participating and therefore all submissions must reach both of course the model will be accessible to those people as well but why I am asking to submit to make two separate submissions one let us say by email to the coordinator and one by uploading it on the model is that there is always a possibility of some file missing just as we have seen with the XML files we do not want that to happen and therefore we are requesting that submissions be made to both the agencies question is general or subject wise okay I am coming to that I can understand the anxiety and concern just let me go through this is not the only slide by the way there are several more slides because I am giving you an example of how we have done a similar thing here in IIT and we would suggest that for question setting we take that as a model as I mentioned since we are separating out the task of developing programming projects out of the IST workshop certification we have decided that the rewards which I mentioned for the best projects will still be given as decided earlier however they will not necessarily be 3 per center that will depend upon the number of entries that we get per center if all participants continue to work enthusiastically I hope to find a large number of entries and I will be very glad to provide an honor area as award for the best entries from all the centers next the sample project activity the workshop project activity description on question setting so here is an example of our CS 101 offering here we have set teams of students which did the exactly similar task four quiz questions were set on allotted topics with answers and explanations and three test questions were set of simple medium and difficult complexity by each group of course for students the group was much larger a group comprises of five teams in IIT Bombay each team is of course of the four members but they are students they are not really teachers or professionals so each group of twenty people that is five teams together did this work they set four quiz questions on the allotted topics and the topics allotted were essentially the topics of the C programming that we cover for example we had a topic on wild loops we had a topic on conditional we had a topic on pointers we had a topic on single dimensional arrays we had a topic on binary files etcetera there are two slides which I will dispatch as a document today and upload it on the moodle during your lab session you can look at those topics which were given to our course students to write quizzes on in so far as test questions are concerned they were of generic nature each question was actually set by the team then three individual students attempted that question those attempts were included in the submission and finally the team sat together and wrote a model answer for that question the three questions were of the duration fifteen minutes thirty minutes and forty five minutes since we have teams of I think four people or five people at some places I am suggesting that each team should set one test question in exactly the same fashion and each team should set two quiz questions on some topic which they should choose unlike the students I would not like to force the allocation I would suggest the topic allocation for quiz questions should be done through discussion at the local centre and please note that it does not matter that if the same topic is chosen by many teams across the country after all all that it will mean is that in our question bank there will be more quiz questions on certain topic which should be all done in so far as test questions are concerned at CS 101 we had asked students to design question with simple medium and hard complexity and we had said that a question should take typically fifteen minutes thirty minutes and forty five minutes to answer the team also finally made a model answer based on these attempts here I have a sample quiz question this was said by a student I have chosen incidentally I have also included a sample of the submission made by one group this group submission included four quiz questions with the answers and explanations and also three test questions for each of which there were three submissions a fairly long fifteen page document that the group has submitted all of that by the way is being edited when my teaching assistants come back in January they will edit that and all the material is going to be released in open source as I mentioned and in fact that will be the first material that will go on to our portal I expect along the same time and along the same line around the same time to get contributions from all colleague teachers of this workshop said all of it will also go as the starting point for the subject model so let us look at this quiz question it says int x equal to ten int star star a star b a is equal to and b is equal to and x is a very tricky question and then there is a c out x and star star a and c out x and star b of course this is a c plus plus syntax but all of you will recognize basically I am outputting the value of the string which says x is equal to star star a and the next line I am outputting x is equal to star b so what exactly will come out now in this what is being asked is to analyze the statement a equal to and b equal to and x in this statement the address of b is assigned to a the address of x is assigned to a the pointer a points to b or both a and c are true so this is this is a question what does this statement do does it assign address of b to a does it assign address of x to a does pointer a point to b so any one of these three is true all three are false or some two of these are true all three are true the d option is both a and c are true so either a is true or b alone is true or c alone is true or d alone is true the answer is d because star star a the problem is with the students language the way they have explained star star a means equal to star a means a pointer and star star a means a pointer which points to star a b is equal to and x means address of x is stored in b here address of x is stored in b and a is pointing the address location of the memory location where address is captured that is why in this case the address of b is pointed by a these are slightly funny language in which they are saying but yes you are correct both a and c are correct which is the choice d here it is a moot point whether we should have large number of such questions because my own take is that the quiz questions should enhance the applicability understanding of the programming principles however simultaneously we must make sure that our understand our students understand the peculiarities and idiosyncrasies of the c syntax perhaps we should eventually have in our evaluation a mix of all types of quiz questions and test questions some which will understand which will which will sort of evaluate the students understanding of actual applicability and usage of c programming concept some which will evaluate their understanding and their ability to fathom such tricky situations here is another quiz question what will be the output of the following program the program is shortened a equal to 320 care star ptr ptr is equal to care star and a and print f star ptr now you forget the get ch the first answer is a second answer is 320 third answer is 64 fourth answer is compiler error and the option e is none of the above this is an interesting question I got an answer from trissure but I will not reveal it so let us see if other remote centers would like to quickly attempt it is a bit of a tricky question I personally I think this question is okay but not very good because it depends it actually explains the understanding the behavior of the machine as well as what happens at the machine level okay I have I have multiple answers now from nirma and vnit what are the center coordinators at other centers like to say this seagrid institute pune has given an answer I will wait for other answers to come let me quickly go back to the quiz the quiz says shortened a equal to 320 care star ptr ptr is equal to care star and a so and a is actually the address of a and it is being cast as a care star that is what is assigned to ptr and then I am printing star ptr which means the contents of the location pointed to by ptr okay I have a large number of answers sonar college Anna university barrier many of my university n i t surat kall s i c s r pune s g s i t s s v n i t surat very surprisingly there are answers which differ there is no unique answer that is available okay now we will stop this quiz we will just say that I saw some answers as D some answers as C the actual answer is 64 and it is because of a very curious reason the reason is as follows the character data type can only store one byte but in I mean short in data type can store in data type can store two or four bytes short in usually as a size of two hence when the address of short in a is pointed by a character pointer that character pointer actually can correspond to only a single byte value since the short end has a two byte value less than since the short end has a two byte value let us go back to the quiz the short end a is equal to 320 and this 320 value will be in two bytes since the character pointer points to only one of these two bytes and in fact it points to the law of the two bytes this is actually a machine dependent or machine sort of translation dependent feature however it is useful to know that when it does so the value 320 is represented in two bytes if you take the remainder which is what will be the last byte or the lower significant byte it will be 320 modulo one 256 because each byte can contain 256 and 256 values individually so if you want to remove the top byte then that is equivalent to taking that number and finding out modulo 256 so that is what it does 320 modulo 256 is 64 and therefore the answer is 64 now rest assured that many of our students will not be able to get this answer correctly because this will require a deeper understanding of how the numbers are represented internally inside the machine as dictated by the language compiler if by the time we discuss pointers we have already explained to our students the intrinsic details of machine representation and so on many students will be able to answer otherwise they won't be anyway the point being made is when we asked our students to set quizzes on different topics the students who got allocated the pointer topic they thought of putting in some esoteric quizzes and that is what they have done incidentally I would like to submit that there are several students who have taken either the test problems or quiz questions from other resources we had permitted them to do so and I would suggest that all of you should feel free to do so provided A you assert that that quiz can actually be included in an open source release somebody should not claim a copyright on it so please use only public material if you are going to look at a quiz second and more important please always acknowledge the source it is perfectly alright to take up some query or some problem from some place else it is perhaps better if you modify that quiz or modify that test and the best is of course you construct a quiz question or a test question on your own but in either case if it either depends upon or is taken from some other source please acknowledge that source in there is a query talks about what about little Indian and big Indian I was afraid of that because I personally believe that in a first course in programming talking about little Indian and big Indian is perhaps not very significant this does not apply to computer science students and of course electronic students but I would like to suggest not only to be an IT not poor but to everybody else that if at all such discussion in details of internal representation has to be done perhaps it could be done at a later stage in the first course in program however it is a matter of practice and it is a matter of dictation from the syllabus so please feel free to do whatever you think is most appropriate anyway as I mentioned we had 40 batches of 20 students each because there were 800 participants in this workshop also we have over 600 participants we have only made teams of four I would suggest a larger organization in this particular case organization of a group which is built at the remote center itself the fact that you have attended this course at a remote center means that either you find it convenient and comfortable to relate to that place or you stay in that city or that place itself consequently I would suggest that multiple teams should form a larger group and should try an attempt to set test questions in the fashion that our students have done as a sample I will be uploading a particular I think I have already done that I have uploaded as a sample document the submissions made by one such lab batch group here we have about 40 such submissions and as I said all of them will be edited and submitted and will be put up on the net later okay there is a query here could you tell the activities how many questions we have to submit per team okay once the larger groups are formed I will tell you but I would not expect an individual team to send more than one question for the test along with the model answer however it should be attempted on the lines of what I am sending as a sample submission for as per the quiz question is concerned I would expect the same thing however instead of just one individual team working on this if there are multiple teams forming a larger group then there is a greater scrutiny of the individual preparation that colleagues will make and even the contribution made by a team where the team leaders themselves could discuss in a smaller group both the allocation of work to individual teams and the coordination of evaluation of that work when it is submitted of course the center coordinators at each of the remote centers shall be finally scrutinizing the total submission made at that center with that I will stop now thank you very much