 My name is Bhaskar and Raman or Bhaskar and as your schedule says I am going to talk about a few tips on student projects, reports and presentations, hopefully you will find this useful. We can discuss the tips and we can also share my experience, your experience. This has nothing to do with the talk, I am with the department of computer science here. So, what we will talk about in this session is how to define and manage student projects as part of your teaching. These projects may be as part of your teaching or may be B-tech projects or M-tech projects and such. We will also talk about how to write reports or research papers which many of you will be doing and this, what I will present will also be relevant when you have to read student reports. So, you will know what to expect from student reports. And the other third thing we will talk about is tips on how to make presentations effectively and here too it is not about just making your own presentation, it is also about judging students' presentations. So, we will talk about these three topics. Feel free to interrupt me whenever you have any question or clarification or comment to make. Okay, so let us start talking about student projects, issues related to defining and managing student projects with respect to courses or with respect to B-tech projects and M-tech projects and such. So, first of all why should we talk about doing projects? Why should students do projects? Let us think about that for a minute. Sorry? Real-time implementation. Real-time implementation. Okay. So, why? Why should they implement? The studied theory can be applied into real applications. Okay. What they study in theory, they get to apply in a project. To make our difficulties easier. Whatever difficulties you are facing, can we have a project to solve that? Okay. Testability of problem solving approach. So, here the focus on the project is not so much on solving problems but more on the learning experience which results out of this. So, we are not talking about projects where the end result is important, it is a process which is important. It can be to analyze and design the real-world problems. Okay. So, again we are not concerned so much about real-world problems in the sense of we are not interested in the result of the project. So, we are talking about student projects here where the emphasis is more on learning. Of course, if you go up the ladder of student projects for B-tech projects or M-tech projects, the result also becomes important to a certain extent. So, what but from a experience perspective, what does it give? What does it aid? Self-learning. Okay. Practical implementation leads to discover the things which are not mentioned in the theory. Okay. Discovery of things which are not necessarily mentioned in theory. Okay. Make errors and learn through making mistakes. Student is supposed to learn number of mechanisms through which he can implement or solve the problem. Actually. Rather than the solving problem, he should understand the mechanism, various mechanisms to solve the problem. Implementation experience. Yeah. Okay. So, all of this sort of falls under this umbrella of active learning, which you have been hearing from multiple sources already. Learning is most effective when it is active or applied, when the theory they learn, they actually get to apply it. In fact, in many cases, it is even better if you start with the application of knowledge and learn the knowledge required to solve a particular issue that you want to implement. Here, we have a lot of student competitions for robotics and so on. Students typically show a lot more enthusiasm in doing those projects than in their courses. Why? Because fundamentally, human psyche, they want to learn and learning is much better if you actually apply and see the effect of what you have learned in practice. So, it is to aid in effective learning, active learning, when they are actually applying what they have learned to practice, that is when learning is best. And that is why you need to have student projects. Now, student projects, especially which are part of a course, can be very challenging. And that is what we are going to talk about, how to potentially define and manage projects as part of a course. Obviously, if you do it as part of theory course, in combination with the theory course, as and when they are learning the concept, they are going to apply it, then the theory gets reinforced in their brain much more effectively. And hence, it is desirable from a learning perspective to have projects as part of courses. But it is also challenging because you have a certain time frame and there are things like evaluation to do which become difficult, much more difficult with a project as compared to your written papers. So, what sort of projects can we think of when we talk about projects related to courses? So, you may be teaching courses, you want to give a project as part of the course so that the student's learning becomes effective. What sort of projects can we think of? So, let me ask more specifically in terms of computer networks, that is what this workshop is about. And you have already had three days of workshop and you have looked through a lot of material with respect to computer networks. So, what sort of projects can we think of for giving students so that they can go off and work, apply the knowledge they have learned in the class and produce something which is working, okay? Simulate loss of data and... Simulate losses and recovery, simulate routing of packet routing algorithms, okay? Socket programming, very good. Designing a protocol, well, designing a protocol is not a project, it is, I mean we actually want to, unless you talk about implementing the protocol, design and implementation of a protocol, then that becomes appropriate for a project. Any other thoughts on what can be projects related to computer networks? Applying security, okay, good. Security algorithms, medium access algorithms, okay, medium access algorithms, yeah, you have to really think about how to get people to implement, but it is certainly a feasibility. Network monitoring, very good. So, network monitoring and... Implementation of some features of firewall, features of, implementation of features of firewalls. Routing table lookup, routing table lookup, and do what, based on the lookup, so you want them to implement an algorithm to do a efficient routing table lookup, okay, so that is a good project. So, implementing network load balancing or failover cluster? Network load balancing or failover cluster, okay. A simple authentication system using networking, where we have to make one authentication server and which grant the ticket, like KuroRos. Clients are based applications? Clients are based applications, socket programming, that's a related socket programming which already was mentioned. There is a traffic violation when there is no traffic police is there, so we can control those areas by putting the sensor and tracking those people, those are violate in the traffic rules. You mean road traffic, not road traffic? Road traffic. Wireless sensor network? Wireless sensor networks, okay. So, there is a long list, let me cut it off here, these are all great ideas, I just put three representative ones related to what I have actually given as student projects. Many of what you have mentioned, some of them fall under these umbrella, some of them don't, but all the same, they are all great thoughts, so the project can be either network simulation based or socket programming based projects have been defined. One very interesting project which I have done when I taught computer networks for students as well as commissary has done and my PhD advisor also used to do this project. It's a very interesting project, so you place two groups of students very far away, in fact, in the place where I did PhD, there used to be very far away buildings, so you can see one person from one rooftop to another rooftop, of course, you cannot shout, it's like one kilometer away, so you have to convey something, of course, without using cell phones or internet, okay, so light, what are the possibilities? Sound doesn't reach that long, say that again, flag, okay, yeah, flags or hand signals, yeah. Air medium, that's what, sound itself, you cannot shout so much, smoke signals, yeah, so you can see that there is a wide variety of things you can use to do communication, so when you actually sit down and think about how to do communication in this setup, there's actually a lot of issues which come and students have to face and solve these and when you solve this, that is when you learn all those things you might have seen in the slides about, you know, framing and error correction and everything, so you can even have a competition among students, give them a sentence, they have to convey it to the other side as fast as possible, however, achieves the most maximum bits per second wins, you know, there will be errors they'll make, some guy has to show a flag this way, he showed a flag this way, so those are practical errors which happen, so you have to correct those, you know, a lot of these issues will arise and they have to solve them, it may not be possible to locate two buildings so far away, but it's certainly possible to, you know, even across the room, switch off all the lights using toss light or cell phone light communication just on and off, you can design a communication protocol from scratch using that, so that's a great project for learning issues related to, you mentioned, Mac protocol, right, so medium access, at least between two communicating entities will result, physical layer issues like framing and link layer issues like error correction, all those things can be learned through that kind of a project, okay, so we have an idea of what kind of projects you can give for what sort of topics, let's talk about a lot of issues which might arise, logistical issues, considerations for defining and managing projects, the first question you'll have to face is whether you should give a project which is common across all students or individual, group by group, so even group by group, is it that each group does a different project or each group does the same project but individually, so there are trade-offs involved in both of them, if you give a common theme across all individuals or all groups, then project definition becomes easy, okay, you have control over the project definition, the disadvantage is that there can be copying and in some sense you will also be curbing their creative instinct, okay, so in many cases if you give them any project they want to do, then there is a scope that they can get more creative in what they want to do and that encourages them to be more enthusiastic and to come up with interesting projects, so that's the trade-off between common versus individual projects, individual projects because it's a logistical hassle because each one will come up with their own ideas of the hundred ideas, maybe 20 will be good, 40 will be of two low level, 40 will be of two high level, so students before they have learned the concept, it is difficult for them to come up with the right workload for a project, one thing which you can do in a semester-long project is if you want to give individual projects, ask them to make a project proposal first, let them make a project proposal, one page write-up of what they want to do and you as the instructor has to look through and verify whether that is of the correct effort for this course, that is something you have to do because project obviously has to be evaluated also, so you want some uniformity of difficulty across all the projects if you are giving individual projects, of course common projects don't have this kind of problems, typically larger the class size, common projects is better because you don't have to deal with that many different project proposals. The other important question to, next important question to decide upon is how long should the project take, this is obviously a question of how much weightage you are assigning to the project, so you have to calculate how many hours, yes. Common project, example, given example, so one example let's take network simulation okay, so you can ask them to create a topology, network topology in which there is let us say one wireless link and four wired links and they have to run TCP connection across pair of nodes and observe the TCP behavior with varying wireless link error rate, so they have to plot, they have to get from the trace as to how many TCP retransmissions are happening, how many time-outs are happening, what is the congestion window size, all these things can be plotted over time, you can ask them to observe phenomena like fast retransmit, fast recovery, so this kind of a thing can be done, yeah, so how long should it take, so that is one component which decides how long it should take is the amount of credit it has, the other component is you have to judge for yourself, as an instructor if you have already mastered the concept and if you sit down to solve the problem, it should take about one-tenth of the time, not more than that, of the time you give to the students, so for example if you are giving students a 30 hour project, you expect them to spend 30 hours on understanding the problem and solving it, implement it correctly, then you as an experienced instructor should not take more than three to six hours in solving it, it always takes students much more time than it takes for an experienced instructor who has already solved the problem and has potentially posed the problem, so that judgment call one has to make, it is useful to have periodic checkpoints for student projects, let's say monthly checkpoints, otherwise if you give a semester long project the tendency is to postpone everything to the last week, so if you don't want that to happen you have to have periodic checkpoints, tell them you have to finish this much of the project by this much time, even if it is a free-form individual projects you can make them do checkpoints and you can even grade the checkpoints, so within the four month period you can have three checkpoints before the final evaluation and there is weightage associated with evaluation of each checkpoint, so this is one way to ensure that students make steady progress, the other important question is to group students or not to group, what is the trade-off involved here is if you group them then typically there will always be some lopsidedness, in a group of two it will never be 50-50, it can at best be 60-40, in a group of three it will never be 33%, someone will do only 10%, in a group of four and five it becomes more and more difficult, someone or the other will always do lesser than, far lesser than what they are supposed to do, they may even not be part of the group which does it, so you have to be very very wary of increasing group size beyond two and even in two you have to have mechanisms to evaluate them individually, so there will be obvious cases where only one person has worked and the other person has not, that will come out very much in a demo or a viva, there is, there has to be, how do you evaluate, so many people will be there and you are giving common single problem, yeah, so how do you evaluate, one important component of the evaluation has to be a demo or a viva, okay, that has to be there where the instructor sits with the concerned individual or team and ask them to demo what they have done. Now my question is, entire class has a single group, see common was a individual, entire class has a single group, you define a single problem. By common I meant that, let us say class size is 100, okay, you divide them into groups of two each, 50 groups of two each, okay, each one gets the same problem to solve, that is what I meant by common project, okay, common doesn't mean that everyone works together, no, by common I meant everyone gets the same problem to solve, by individual project I meant each group solves a different problem, one may do a chat protocol, one may do a file transfer, you know, one may do online gaming, implementation, so that's what I meant by individual, okay, common doesn't mean everyone works together, okay, so how to do evaluation, evaluation is a problem especially when the number of groups you have to evaluate is large, but it can be managed, yes. Sir, I think how to group is also important, because if you have a group of three students, one has a live KT, one is a second class student and one is a distinction, normally the distinction student used to do complete project, so there is impact of how you are grouping as well. Yes, certainly, there is, that is always a trade-off, so if the instructor groups them, then there is an advantage as well as a disadvantage, one advantage is that the instructor can balance out certain things, like the factors you mentioned, maybe based on past performance or something, if there is a disadvantage is that you can also have cases where some person will not gel very well with the rest of the group, so that is always a problem with group projects, so nothing can be done about that, so that is one argument for going for lesser group size, one or two, individual or group of two, that is best, evaluation has to be based on demo and Viva, proof of project is in the project working, demo means it has to be a working demo, at least partially, it cannot be viewing the code, project means the proof of how the project has been done is the actual working, not how the code is written, so there has to be a huge weightage given for actual working of whatever they are demoing, of course there will be Viva also to test whether they have actually done it or taken it from somewhere, one idea which has been very effective in project evaluation which I have executed is pipeline evaluation, so the project is divided into let us say eight stages and there is me and seven other TAs sitting at eight different desks, so the team which does the evaluation has to go to the first person first, then goes to the second desk, then goes to the third desk, so the project gets evaluated in eight different stages and only one person is evaluating one aspect of the project at any given time, so to give a concrete example, I had a software lab course last semester where there was a project on running a simulator and analyzing the output, running scripts to analyzing the output, so I divided the project evaluation into eight stages, first one was for let us say writing a make file, second one was for running the script one time and the third one was for analyzing the output and extracting let us say the jitter value of the simulation you have run, so there are different stages like this, so there is one TA evaluating each aspect and the one who is getting evaluated moves from one stage of the pipeline to the next, so this is one way to speed up the entire process, so the more the stages of the pipeline you can have speed up in evaluation, although one student is getting evaluated for a total of let us say half an hour, the total evaluation time is still not number of students times half an hour because you have parallelized the whole thing, so pipeline evaluation can be done. Another very important aspect is if you are giving a common project, meaning the common problem to solve for each of the individuals or groups, you have to do copy detection, there are different copy detection software available on the web, if you just give let us say there are 100 students, there are 100 submissions, each submission is in a different folder, different directory, there are software which will just take these 100 directories as argument, do a nc2 comparison, nxn comparison and report any copying, so let me actually show one software which I have actually used for this purpose, so this software is called sim which stands for software similarity tester, you have to search Google for sim software similarity, if you just search Google for sim software similarity, if you just search for sim you will get the GSM sim, so search for sim software similarity you will get to this website, so it is a open source software and this person Dick Groon has written this software, it has support for detecting copying in C, C++, Java and even for text, so you can and it is very very effective, in fact the author of the software claims that if somebody can beat this copy detection, if they are smart enough to beat the copy detection, then they might as well do the project, so this is a very good software which I have used effectively and I can also show you the output which comes, so this is the output which is generated, I hope you are able to see, so it will tell, so let me highlight this one line, so submission from one student has 100% of submission from another student, so that is a case of copying, so of course it gives percentage similarity, so you can go down the list, 99%, 98%, 97%, it will keep going down, you will typically find that when it comes to about 70% or so, these are false positives, meaning the software thinks it is copying, but it is actually not copying in the sense that it is probably a very small program, 10 lines and not many different ways of doing it and hence it is reporting, so you have to manually look at each case, you cannot go by this, yeah, there is a question there. In software it is found most of the times that people write the software in similar ways, so that is one of the problems in software fault testing, fault tolerance, because when they fail, they fail in a similar way, so it may not be plagiarism, many people may be writing it in the same way. You will typically find that even for a 100 line program, if they actually write independently, they will be different, in terms of order of lines and for loop, whether they use for loop or while loop, these kind of things will be different. I have found that always as a human, I am able to make a judgment call. Does this look like copying? If I sit down and write this program, will it be very different? I can make the judgment call. So you cannot go purely by what the software says, you have to make a human judgment call, you have to look at that, this is just a precursor to it. So this is a very important tool for if you are giving projects, coding projects, especially common coding projects, you have to use this. So that sort of concludes the point I had with respect to student projects. Let me now move on to the second one before that if somebody has any comments or questions. That's what, see there is no strict threshold like that. They automatically match. So if there are library functions, for example there may be cases where you yourself have given them some code to start with. That cannot be considered as a copy, obviously. In those cases, what you can do? Go into consideration that point also where library functions will not be matched. You have to do pre-processing. So if you are given some code, you have to identify that portion of the code in student's code and eliminate that before feeding it to the software copy checker. You have to do that. I have also found some cases where students have taken some module from some common place in the net. That is also possible. So it comes out. There is another question there. Regarding students' projects, we need to understand what are the basic intent and objectives of the project. As it has been said that to enforce the concepts, if it is only to enforce the concepts, then probably the project-based learning approach can be followed for individual subjects for a particular stream. The project-based learning approach is very well being followed in Queensland University, Victoria University and there is a project from Australia University, EPICS, Engineering Projects and Community Services. They have made available thousands of pages of documents. It is so systematic. Where in we start, if you let's say computer networks, then we start from designing from the very scratch, say the Mac layer, then layer and move on till finally we cover the entire subject in a project. This is one. Secondly, if we say the intent is to learn or go for the applied engineering, we can go for to bring out the innovation amongst the students. We can make them ready to be like adopted by the markets. So there could be various parameters that we can like achieve out of this projects. So we need to be very, very clear and focus what our purpose is because if we look at the students' perspective and a few, they are still into that $1.19 billion WhatsApp deal. They want to be more innovative. They are being driven by the market. So if this is what we are looking for, then the concept is entirely different. One more thing that what we used to do at our end, even before we go for the project, we ask them for a case study. Different students in groups, the select particular topic, have a detailed study of background, what is happening, what has happened, what is the potential exists for further exploration or innovation. Then on that basis, they pick up the project. They do it. And then it's not at all important what is the, whether it's successful or not. But what they have done, they have tried and what they have, to what extent they have succeeded, that is more important. Okay. Thanks for sharing. Hello, sir. The software same, can we use for testing for the students writing the project thesis as well as the paper for that project? Can we check that by using the same software? No. There are other software for that, but that's not free. If you're talking about reports and plagiarized content from somewhere on the web, sim cannot check that. It cannot handle that kind of. So for that any free software? So there is no free software I know for that. There is paid software. Dockolo. Dockolo is not something I have heard. The name which I have heard is I am not able to remember it right now. Turn it in is one good thing, but it is, say that again. Viper. Okay. The way I usually detect plagiarism in reports is there will be a clear distinction in language from one paragraph to the next. So and then I just take one sentence, cut past it into Google, then it will show me where it came from. So that's the way I use for reports. I am confused a little bit whenever grouping earlier I know that from the industry point of view they are telling that when the students along with the coding they should learn how to work in a group, how to learn leadership, how to adjust with others, and how to adapt to different situations. So for that they should work in three to four the group should be of three to four students. But now as you are telling that from the technical point of view if the group size will be small if it is up for one or two then definitely the student will be more efficient and will know everything regarding the project. But the earlier whatever I know that during the regarding the project development that is for leadership or to adaptability. So Yes. I am just saying that there are many more things to worry about once the group size hits three, four or five. Okay. One other strategy which I have not used personally but I know some colleagues have used is peer grading. So within a group itself each person will grade the other person and that grade will be assigned some weightage. So this will sort of ensure that at least to some extent some people do not goof off. Other mode of peer instruction can be one group can be evaluated by another group to see various factors how much each has contributed and so on. I am just saying that the logistics of managing evaluation of larger groups becomes more than with smaller groups. Okay. So let us now talk about writing reports or papers. Almost everyone in academic circles whether it is a student or a faculty has to be writing reports and making presentations. So it is important to learn how to do these things effectively. And this will also give you an idea of what to expect from student reports. I have used a few research papers in the examples that I will be talking about and these are the titles of the papers. I will give you these slides make these slides available so that you can locate these papers using a Google search. The first thing to keep in mind when one writes a report or a paper is that the overall goal is for someone to read the report. So writing is for someone to read. That immediately tells you you have to place yourselves in the shoes of the person who is reading. It is very difficult when you are writing your own report and placing yourself in someone else's shoes but that is something which comes with practice and experience. So that is the first thing to remember. Your overall approach to writing a report or a paper should be top down. You have to do multiple stages of refinement of the writing. You should not wait for stars to align before starting to write. You should just put down whatever comes to your mind into words and then think about organizing those thoughts later on. It is not that the very first writing will achieve clarity. It is always that clarity is achieved through multiple refinements. Writing a report or a paper I typically do it in multiple passes. In the first pass this is the top down approach. So in the first pass you have to make an outline. You think of title and you think of abstract of the report or paper you are going to write. In some sense forces you to think about what is the contribution of the report or the paper. What is the point you are trying to make after the reader has spent 1 or 2 hours reading the paper or report? How do you want the reader to be wiser? What does the reader have to learn? What does the reader have to remember after reading the report? You have to think about that and write down those title and abstract. You may also write section level outline, what are the section headings, subsection headings and sometimes even paragraph level outline. What is the point I want to make within this subsection, first paragraph, second paragraph, third paragraph and so on. So that is the outline. It typically takes about an hour or two to get the outline. So this is like the skeleton. Then you start filling in the flesh. The second pass is the rough draft pass where you fill in where the hand is where the leg is and so on. Just write whatever comes to your mind as per the outline and typically you will also write the tentative introduction part of the report here. This again forces you to think about what exactly are the main contributions, what exactly is the reader expected to learn after reading this report. For the individual sections, you just generate the text. Again, just write down whatever comes to your mind. Start typing. You have to generate the various graphs, tables and figures in this second pass. After you have done the second pass then everything starts to look easy because you already have so much material. Before you have the rough draft pass, there is always some feeling in your mind as to do I have enough material, what do I convey and so on. Once you put down everything, without worrying about structuring it, you get a confidence that oh, there is a lot of material I have to convey. Now you have to think about how best to convey it, how best to order it, how best to structure it. So those are the refinements. There can be multiple refinement passes and a report or paper gets better and better with each refinement. Good reports or good papers usually go through multiple refinements. Even experienced writers take multiple refinements. Yesterday I just had a paper deadline and submitted two papers with students. Each of them attained a level of perfection only after some four, five, six revisions. After the rough draft pass, read through it, make comments, change it. You may have to rewrite the intro completely. You may have to rewrite a section completely. You may have to completely reorganize shift sections from one here to another, redraw the graphs and so on. But that's okay. After the rough draft pass, a lot of things can change, but you're doing them with a view to continually refine and improve the writing. The general structure of a paper or a report is like this. This is a guideline. It is not a rule. Which means you have to make a judgment call of whether this applies or not to your particular setting. Typically start with the title and abstract, then the introduction, which includes the motivation for why this person has done this work. Sometimes there is a background section because you expect the reader to not have the sufficient background for understanding the rest of the paper. Then you write a background section. Then you talk about whether what you have attempted to do, similar things people have done in the past. Related work sometimes also can come towards the end. Because a lot of the things you're talking about what people have done before, you want to compare with what you have done, in which case the reader has to know already what you have done. Sometimes it is convenient to push the related work towards the end of the report or paper. After this comes the main technical sections. So that depends on what the material is. There may be 1, 2, 3, 4, however many number of technical sections may be there. These are all specific to the work which has been done by the faculty or student. Typically the evaluation or results comes after the technical sections. You have said what you have done, how effectively have you done it. That is the evaluation results you have to put in. And then you discuss some aspects of what you have done, how better you could have done it and so on. Discussion is optional, future work is optional and every write up should have a conclusion. This is a general structure of a report. So let's go through these one by one a little bit more detail. The title and abstract are the most important parts of a write up. These are the most read parts of a paper report. Title and abstract. Of course if there is a thesis then acknowledgement may be read more often than abstract. But search engines base their indexing on the title and abstract. So that is the most read parts. So you have to pay a lot of attention to writing the title and abstract. You have to carefully convey a lot of things. What is the key idea you have come up with in the report? What is the key problem you have solved? How have you solved it? How is it different from other work? So all of these things have to be conveyed succinctly. So that is why this is very difficult to write. It requires more number of refinements. But as far as possible you should state all of these. What is the context of the problem? What is the key idea that you have come up with? Why is it that prior work does not solve? That is the related work. So all of these have to mesh together into a roughly 250 words. Typically two paragraphs at best, in the maximum three paragraphs you have to convey. So it is a challenge to write a lot of things in a short span. But that is the challenge of writing an abstract. Abstract typically also has some eye catching result. So if you say for example, my protocol performs 10 times better than what someone else has proposed, that should be there in the abstract. Because that is motivation for the reader to go and look at the further parts of the paper. So that has to be there. Some very good examples in my opinion I have cited from the papers I listed earlier. The next important part of the paper is the introduction. After title and abstract, introduction is the most important part of a paper or a report. Think of introduction as an extended abstract or a constricted version of the paper. Full report. So again the introduction should answer all of the questions which the paper is answering in a short form. What is the context of the problem? Why is the problem important? Why should the reader care about reading the paper further? You have to motivate that no other person has solved it before. Again, motivating the reader to read further. Why is the problem interesting? Why is it challenging from a technical point of view? Why should the reader read the report as opposed to just thinking about it for two minutes to come up with the solution? So that is the challenge part. If there are any assumptions, important assumptions you should state, main results, highlight performance and summary of contributions of this work. So all of those have to be stated in the introduction. In big reports, maybe 12, 10, 12 pages or longer, you typically include an outline as well. Organization of the rest of the paper is also included in the introduction. Title, abstract introduction are the most important parts of a paper. So you have to pay a lot of attention to it and during the refinement process many, many, many times this happens that you have to completely throw out the abstract or introduction you have written earlier and rewrite it completely. I do this all the time. Completely throw out the first version and write it from scratch because there is more clarity now. So the refinement process is important. It is not that you will hit upon the right abstract or introduction the first go because it is difficult to write. It is difficult to convey a lot of things in less words. It is easy to convey it in more words. Background, let me skip, not spend too much time. Related work. Yeah, so when the author talks about related work one thing I highly recommend is a table of comparison with related work. Let me just show you a quick example to illustrate the point. This is a table I really like a lot and I am going to share this with you. This is in one of the papers written long back. This is a table of comparison. The entries in the table are not very important. So I do not have to go through the entries here but the point is it is comparing in each row with some other piece of work along various dimensions and is saying well the other solution has moderate management overhead. My solution has low management overhead. The other solution has router overhead. My solution has low router overhead and so on. So this is a very succinct comparison which is very important for conveying to the reader. There was a question somewhere. While we are writing the paper or a report writing there is one section that is a performance analysis. Is it similar to that? No, the related work comparison table is comparing your work with prior work. Performance analysis also may compare but those will be in terms of details of how good is your throughput versus somebody else's throughput how much is your overhead versus somebody else's overhead. So that will be in numeric terms. This can also be numeric but it does not have to be numeric. This can be qualitative also. So for example if you see the last but one column it is talking about post mortem capability in detecting a security attack. Post mortem capability is not possible in some cases. In some cases post mortem capability is excellent and so on. So it is a qualitative metric. You cannot really do this in the evaluation section. So related work that is what I wanted to convey. So technical sections you should think in terms of figures and tables. You should draw a lot of diagrams and graphs and tables. These are also some things which stick out. When you look at a big report where does your eye go naturally it will go to the tables and figures and graphs. Not to the text. Nobody wants to look at lots of text. People want to look at figures. People want to look at graphs to understand the content of the report. Yes. The graph that is that the table you just showed the taxonomy should be part of that evaluation and comparison. I mean it should have been an introduction part. Taxonomy? Yes. So if you are introducing some new terms which is relevant for understanding the technical sections of the report you better put it in the introduction. Production has a crisp idea of what has been done. There can be a separate section for taxonomy. So for example if your paper is doing some analysis and introducing lots of symbols it is not uncommon to have a separate section for introducing those symbols and having a table of what those symbols mean. Sometimes it can be there in the background also background section. I am going to skip these in the interest of time some things I am skipping some important things I will convey. So one very common mistake which students do or even sometimes experienced people is not spend a lot of time in the graphs. At the end of 6 months, 1 year 2 years of work you have generated one graph which is comparing your performance with some past protocols performance. Well you better spend time making sure that the graph is conveying what you want to convey to the reader. It has to be clear the axis have to be marked some very simple things routine things many students miss especially after having done a lot of hard work. This is like throwing away all the hard work which has been done because you are not conveying what the end result of whatever your hard work is that is the graph, that is the evaluation graph you have to spend a lot of time even beautifying it. So pay a lot of attention it may seem like simple things title, label, axis units these are all important you don't want to give the wrong evaluation because you have not marked the units of a particular axis. Another important thing to remember is there are still lot of people who take printout before reading a paper so you better make sure that your graph if it has a red line and a blue line it may show in on screen different but on print it won't show so is your protocol performing better or your the past protocol now it can completely confuse so you have to make sure that things are legible and distinguishable in black and white print grayscale print. I have a suggested timeline for writing a paper for typical students this is there in this slides as well as for it's there in our website which I will point to you briefly just go to www.cse.idb.ac.in slash synergy synergy that will take you to a resources page and that has this suggested timeline is there which can be used as a guideline for how much time it's going to take to prepare ok so rest of the things I am going to skip key things to remember with respect to report writing never think of first to align you have to think in terms of refinements first pass writing, second pass writing and multiple refinements the better the more refinements you do the better the report or paper is going to get and one very important thing in this world of google search and many things already available at the click of a button is never cut paste anything text or graphs cannot be cut paste this is also something you have to insist to your students there is a temptation especially in introduction related work or background section to cut paste a lot of material which may be there in wikipedia or some other paper or something you should avoid the temptation and never do that why? it is your report so it has to be original and if the reader wants to get those material the reader can get it from whatever you wherever you got it from so there is no point in doing cut paste sir suppose if you are writing a survey paper shall we refer the other paper figures if you are writing a survey paper if you are writing a survey paper it is typically not a good idea to reproduce figures in fact it is a copyright violation even if you redraw it many times it is a copyright violation if you are writing in terms of generating figures yourself this is what I tell my students you should always think of generating new figures rather than getting figures from somewhere else but in survey we are suggesting that what the other authors are representing the figures or concept like that only know yes but it cannot be a reproduction of what is already there if you are coming up with a new example let us say of the concept whatever they have proposed in some protocol you are coming up with an example to explain that that is perfectly alright because the explanation is yours your IP so I have about 10 minutes for the third part just like people write reports almost everyone in academia has to do presentations also for various purposes with respect to technical work with respect to other things also there are a few things to keep in mind while making a presentation or making the slides preparing for a presentation the goal of presentation is to convey the key idea and motivate the audience to go and look at the details elsewhere that is the key purpose of a presentation a non-goal an explicit non-goal what one should not try to do even after spending 5 years on a PhD you should resist the temptation to present whatever you have done it is not possible it thins out the presentation it bores the audience you cannot do it so you must have seen me skip a lot of slides so that is a case in point it is not many times possible to convey whatever you have done whatever you have prepared you may even have to dynamically cut down on material you have to realize that it is not possible to convey everything it is more important to go for quality and make sure you motivate the audience to go and look up whatever they want later on the material is always available anyway so that is the goal that you have to keep in mind just as in a report you have to think in fact this is very important in a presentation it is important to think of figures and not text text can be used minimally even when you use text you have to use coloring to highlight certain keywords as I have done in this presentation once again with respect to graphs I will stress a graph may be the result of months years of hard work you better make sure you convey that properly you cannot have a graph where the person sitting in the back row cannot see what the x-axis is or cannot read the font you cannot have that because you have lost all that hard work then many times I even regenerate the graphs completely instead of reusing what graph was generated for the paper sometimes you have to make the paper as a presentation in that case you have to regenerate the graphs I am stressing this point because many times people miss this and it sort of annals their hard work which they have already put in so instead of going through this I am just going to point you at sort of satiric presentation how to give a back talk this is there on the web it is not my presentation but I will just show a few things of what not to do in a presentation so it is sort of obvious I don't have to say anything these are small small things but if you don't keep these in mind it sort of puts off the audience this is not a good slide especially when I start reading out the entire thing then it sort of puts off the audience you have to use keywords and you have to convey something which is different from what is written on the slide you cannot just read the slide that is a sign of lack of preparation presentation is not the place to show your power pointing, power creativity and there are some presentation issues also you have to make eye contact that is something some people miss keep looking at the slides then it doesn't give a good impression to the audience sometimes they even block the screen so these are things you have to remember sometimes due to nervousness you may not remember but with practice you have to remember because otherwise it puts off the audience okay so you can look at these slides later on so I just wanted to give a few aspects of how not to give a talk that is nicely summarized in this other presentation with respect to presentation also I have a suggested timeline for my students it also deals with continual refinements just like for paper writing presentation also you don't make the perfect presentation in the first go it's not possible you have to practice you will realize that there are some mistakes you have made first you practice in front of a mirror then you practice in front of someone who is friendly friendly at the same time critical okay it is better to be criticized by a friend than by people who are going to judge you right friends don't judge so you make presentation in front of a friend and get the critical comments the best comments are the ones which tell you are doing something really bad those are the best comments you have to get some critical friend who complains a lot at the same time doesn't judge you practice in front of that person refine the presentation again so it gets better and better one thing you should watch out for over practicing over practicing is also not good because it kills spontaneity there has to be some spontaneity it cannot be like a recorded lecture presentation has to have a feel of spontaneity and also enthusiasm and energy if you do over practicing you can kill those but typically students never reach that level so one point with respect to this many times there is a tendency to either get scared of questions or be over confident and answer a lot of things even before the question ends so those are some things to avoid you have to patiently hear out what the question is understand sometimes the question may be irrelevant in which case you have to gently point out that that is not what I am talking about you cannot give complete control to the person who is questioning also to hijack your presentation it is your stage your presentation so you have to get control again very important thing with respect to no plagiarism you cannot cut paste in the presentation from some other source this is a very very very common mistake I see among students again and again and again they cut paste figures from somewhere else that is not done you have to generate the figures meaning it has to come from your brain from your understanding of what you have done the quality of a presentation or a project is often defined by how many figures that person has generated each figure generated is an indication of clarity of understanding or quality of the work so you cannot take figures or text from other places in presentation as well as in reports okay so those are some resources and references which I have used for preparing these tips so we can take a few questions actually keywords and we keep the important aspect of any research I think before not covered here my question is how many questions how many keywords a research paper should have again depends on the comparative study of research paper second is how to select right keywords so that it can attract the reader and also these keywords are used by the indexing services like google so that they can pull up your paper in the results and third question is what should be the ideal size of a research paper so that reader keep the interest and not get bored the first question was with respect to keyword so I have a clarification by keywords you mean the list of keywords which is given just below the abstract okay so those are typically restricted to about 4 or 5 people say that there should be 5 keywords in a research paper many times yes they usually restricted to 5 is what I know many conferences don't ask and they are submitting papers into the journal they are asking the keywords see the keyword unfortunately for how to choose keywords I don't have a generic answer it depends so much on keywords this is a generic answer can be as vague as you know what is it about your paper which will make it stand out so the theme of the paper the context of the paper it can be either as I said if the key contribution is an idea and you can put a keyword with respect to the approach so for example the IP trace back paper talked about how to trace back the source of a distributed denial of service attack so there the keyword may be trace back DDoS may be a keyword another keyword could be what is the key mechanism they are using they are using packet marking that could be a keyword packet marking is one of the key techniques they are using so keywords come from either the context of the problem or it could be with respect to the technique it depends on the situation so I am not able to give you a generic answer length of the paper is specified by the submission source I mean I have read interesting papers which are only two pages long which are only four pages long interesting papers typically once it goes beyond 15 pages there is a starting problem but well written papers can be 15 or even lengthier typically in networking I have not found papers beyond 15 pages in the typical two column format may be 20 pages in some lengthy journals so the longer it gets the more organized the paper has to be to keep the readers attention hello sir you talk about the tentative title the abstract and the plotting the performance and other things but what about that suppose someone proposed a model and the framework so do you not focus on that part in most of the papers I have referred to you that those papers are mostly focusing on that mathematical analysis and mathematical stuff and in top notch conferences and in journals normally they look at not that of what you exactly analyze through the graphs but at the same time they also look at that mathematical modeling of it please give some suggestions regarding that one of the reasons I did few suggestions about that because I have not written that kind of papers many of them so if you are talking about mathematical kind of papers few things to keep in mind is that you have to be clear on the terminology state up front what the terminology is not confuse the reader sometimes there is a multiple use of the same symbol you know p for packet size p for probability you can't do such things so some guidelines I can think of you have to think of examples to convey algorithms flow charts to convey algorithms that kind of thing apart from that I don't have very many tips for modeling kind of papers if you are giving equations it is important to give the motivation behind what that equation does explain each term of the equation I mean these these are all tips I am giving from what papers I have liked among what I have read which are modeling kind those good ones are the ones which explain each term explain the motivation behind why that equation comes in place and so on thank you you said that pleasure is a malefied practice but we can check it through turn it in or other softwares when we say a paper is a keyword matching or it's a line matching or it's a paragraph matching that has to be some kind of count number should be there that we say a paper is plagiarized well there is no clear threshold see sometimes even a phrase which cannot be independently reproduced can be considered as plagiarism if not placed under quotes even a phrase for a sentence but usually it will be clear I mean if somebody is trying to do by the way most cases of plagiarism arise because students or authors do not understand what plagiarism is they do not understand that they cannot take some sentences from somewhere and call it under their own name in their report that's not allowed I mean it's my question is because the copyright act of foreign countries and of India is different so like that's what I am asking I mean precise papers in Indian context could be something else or in a product or something else see both ACM and IEEE have definitions of plagiarism what plagiarism what constitutes plagiarism and there is no strict threshold they don't say if it is a four word phrase it is plagiarism it is three words it's not there is no such threshold okay so we as an author then how we will say work is genuine plagiarism see when you start writing if you don't have a cut paste interface then it is your own original that is the way it will work out okay based on your own understanding based on your own language right then it will be original because when we when we put a paper in turn it in turn it in it gives say 93% is original or 7% is copied or something in some different cases same some more portion is matching so that is what see when you write a paper the intention is to get it you know accepted and printed I mean published so that that question is still see sometimes turn it in can give false positives for because for example let us say you are writing a paper based upon your students project report which appear somewhere on the web okay then turn it in checked by somebody else make you 90% match because it's based on your students work whose report is available somewhere else but that's a false positive I mean who is using such automated software should take the pains to figure out what is the source of the so called plagiarism and whether it is sometimes it is from the same set of authors in which case it may not be plagiarism but technical report written by yourself which you are trying to submit to a conference that's not plagiarism my question actually is that if you are publishing a paper in the same area because you are working in networking area so the area is specific so most of time your introduction will also be quite similar to the previous publications because every time you cannot change your introduction part no not really if in most cases you know from my experience in writing and doing papers I can almost always make out whether someone is trying to convey someone else's words or one zone it is very obvious from the way it is written if somebody writes it from their own head it will be different self-pleasure self-pleasureism self-pleasureism again if you are writing on similar topic separated by few months then the words will be different I can guarantee if you are of course see if you have submitted a paper and if you are trying to use the same introduction that you cannot you have to rewrite it even if it is in a similar topic