 Good morning, and welcome to this internship program beginning. I am Deepak Phatak, my teacher here. I have formally retired, but I continue to be associated with the Institute. There are supposed to be a total of 90 students joining the internship program. But as you know, the examination system in different universities is not synchronized. And therefore, some of you might have just finished the exam. Some of you may still have some papers or something remaining. No, all done. You are lucky. There are some people who have gone for exam today and some people will be joining probably later. Unfortunately, we cannot delay it any further because you will not be able to complete so many weeks of time. So you come from which all states? How many from Maharashtra? What? Five. Which cities? Bombay, Nagpur, Pune. Restricted to metros. Okay. Next state. Let's go upwards. Gujarat. Which cities? You are also Ahmedabad. Then Rajasthan, Udaipur. Which? Jaipur. Which college in Jaipur? Oh, Elangamite. Then Haryana, Punjab, Jammu, Kashmir. Nobody. Delhi. One, two, three. Well, I can't say which place in Delhi, but which colleges you come from. Sir, colleges are hiding for a while. Oh, I see. So I should have asked two questions. Which state you belong to and which college you study in. Anyway, I think we'll have the details. I believe there has been a very rigorous process of selection. So all of you have been able to join this program either because you are high academic achievers or you did very well in the software contest. One of the two. In fact, even those who were selected on the basis of their academic performance, I believe they were required to take the software test, right? So you have to have some basic minimum skills. We here believe that both the conceptual knowledge and skills are equally important, otherwise you will not be able to build large systems and operate them, which is what we expect you to do professionally when you pass out from your colleges and do various things. The internship program is rather harsh, so I hope you are able to cope up with it. There will be occasions when you will yourselves be setting up deadlines and in order to meet them you will be working hard. But I suppose all of you are used to hard working, right? You can do night-outs easily. All of you are used to that, required. You all have studied different subjects in computer science. Most of you have completed third year, right? The second year students have a disadvantage that they might not have formally studied some of the courses. But anyway, that disadvantage is not very much if you consider the fact that the projects on which you will be working, whether you are in second year, third year or fourth year, many of those technologies you would not have studied anyway. So the idea is to be able to learn quickly, adapt whatever you have learned and use it to implement some meaningful systems. And therefore, do not be surprised if you get to work on a project of which you have absolutely no idea, including the underlying technologies. You will have to learn fast, learn quickly and adapt. How many of you have learnt anything about cloud technologies? Virtualization, VMs, virtual machines, one, two. But have you dirtied your hands with VMs? Have you set up VMs? Have you tried to use those VMs? I see, okay. The entire computing environment here is built around the cloud. And you will all have access to the cloud VMs on which you will be implementing your systems. There are multiple systems that we are using. So let me outline first of all the overall long-term objective with which our project staff has been working and will continue to work. And that will set the context in which individual projects will be done by your teams later on. First and foremost, IIT Bombay specializes in large-scale operations of educational services. So we offer MOOCs, all of you have heard of MOOCs. Some of you have done any massive open online course on any platform, whether Swayam or whatever or edX or Coursera. So you are familiar with those platforms. Here we build those platforms. We initially started by adopting the open edX platform, which was released in open source by edX Corporation in 2013. And we built our own platform called IIT Bombay X. This was a good platform. However, it still has some old architectural remnants. Although it is not monolithic, it is not very well-componentized. And software architecture-wise, many of the things which started prevailing in the industry in subsequent years were not incorporated. For example, microservices. Have you heard of microservices? No. The programming methodology that is used has been traditionally a waterfall model. Some of you might have done a course in software engineering. How many of you are familiar with agile development methodology? Where you are scrum masters and some of you have participated. The architecturally second most important thing is the extensive use of restful APIs. You know what is an API? Application programmers interface. Traditionally, if you write a program in which you call some functions, then calling a function itself is an API. But that function is written by you. And very often the function is not completely isolated from the rest of the code. So many of the parameters are not required because you have common variables, common arrays. You use same files, etc., etc. When you build systems around APIs, the important thing is to remember, is to ensure that the module that you write is completely capable of performing its functions solely interacting through message passing with other modules. So there is nothing like calling a function, holding it ransom and so on. Just pass a message and most of the activities are done asynchronously. API-based software development also permits your software to easily integrate with some unknown software which may come in future. Because while writing that software, you have provided enough APIs which other people can use. You define your APIs very clearly that this is the method by which you invoke this API. This is the information that you pass. This is the activity that will be done and this is the result that will be passed back. So once this is very clearly specified and your module works perfectly, then it is capable of interacting with other modules more easily. API-based software development has become the standard mechanism. Among several types of APIs, the APIs which are mostly used are called RESTful APIs. Have you heard the name REST APIs? You have, some of you have. Now, so just to give you an example, you have heard of large systems like ADAR authentication, great controversy around it because of the privacy issues of data, but still as a system. You have heard of GSTN. These are very large systems developed in India by teams which were well versed with the modern architectural concepts and they have implemented RESTful APIs while constructing those systems. Have you heard of National Payment Corporation of India, NPCI, which actually does other based payments or IMPS? All switching of transactions, whether it is ATM transactions or settlement transactions, is done by MPCI. All their systems were traditionally evolved in the conventional way but they have been changing them rapidly. And you might have heard of Unified Payment Interface or UPI, which permits multiple service providers dealing with payments to interface with the NPCI systems. So you must have heard of BEAM application, for example. In short, use of APIs is now a standard thing and defining APIs in the software that you write and using APIs which other people have provided in their software is now the key method of building large systems. In fact, it significantly reduces the system build time. The traditional waterfall model requires anywhere between nine months to one year minimum to build a system, no matter how many people you put in. Whereas here, with the agile methodology, you can actually start delivering incrementally, even in three weeks, four weeks time. But to adapt to that methodology is not very easy. So that itself will require some time to understand. We will not necessarily be following the agile methodology, but we will be following a methodology which will force you to adapt parts of the agile approach by which you will be able to write some specs, implement them, test them, and again move forward in that fashion. So these are about the software technologies that you will have to use. Functionally, as I was telling you, we adapted the Open edX platform and we have extensively modified it to suit the Indian requirements. So we provide, for example, multiple language translations if available. The Open edX platform itself is rich in functionality. It permits, for example, randomization of multiple choice quizzes. You all give online exams and you give multiple choice quizzes. But if I do not know the answer and if my neighbor is answering that question, I can easily see that answer in type B or C or something like that. But by writing small Python scripts, you can randomize every question to an amazing extent. You not only shuffle the choices, but you even shuffle the numerical values and the code will correctly point out what is the right answer and so on. And even the explanations which are given by the system platform for wrong answers, et cetera, et cetera, can be artificially constructed by giving the key sentences, but variable names are depending upon the variation that is. Now these are the things that we use constantly in order to do online assessment. And that is why our online assessment without any supervision stands vindicated. We use it for training large number of teachers, for example. We train 10,000 teachers at a time where the teachers participate from one of the 500 remote centers that we have. And these 200-300 remote centers are connected to us using another open source tool called AVU, which we use as a, actually a virtual classroom tool. So it creates a virtual classroom of 300 locations and we can interact. But the advantage is that if somebody in Kolkata is asking a question, then that person in the entire class is seen and heard by the teacher here, but is simultaneously seen and heard by all the participants in all the remote centers. So it's like a large virtual classroom. We have tried to integrate aspects of such virtual classrooms into our embedded platform, which is open areas. Very recently in the last two years, an organization called X-Tep Foundation in Bangalore. Anybody from Karnataka here? One, which city? Mysore. Sorry? Mysore. Mysore, slightly away from Bangalore. That's okay. So this X-Tep Foundation, which was set up by Nandan and Rohini Nilayakani and Yadu Vada. This is actually a not-for-profit organization. And they decided to build a modern MOOCs platform, primarily for school education and school teachers. That platform is called Sunbird. Since they built it in the last one and a half years, they could use all the modern architectural concepts. So that platform is rich with APIs. That platform uses microservices. That platform is scalable horizontally. You know what scalability is. That is, if you have a software and you put multiple servers, the software should run in times faster. Does it always happen? No. Have you ever written a program which exploits, forget multiple servers, which exploits multiple cores in a single processor? Many times your program will use only one core. Because that is how you write, that is how the compilers work. That is not the way the modern systems are to be built. So they have used some architectural marvels and built a system. That system they have started using for school education. We propose to explore X-Tep because that is an Indian-grown platform. And this is the first time a major platform is developed in India and released in open source for the world. Normally we have been the net collectors of open source software, but we are becoming net givers in that sense. We use open edX and we will continue to use open edX for IIT Bombay X platform for at least one year more, maybe two years more. But our idea is to try and explore the X-Tep platform very, very thoroughly in all its aspects and identify functionality which we already know exists in other platforms. Not necessarily only in open edX, but in Coursera and Google course builder, wherever. And we try to enrich the functionality in X-Tep. So this is a direction that is sketched internally for our project staff for the next year and a half. And ideally I have always liked that students who come for internship should work on smaller projects of course, which they are able to do something about. But every time that small project should be part of something bigger. So that collectively the whole group can feel very proud at the end that they contributed so much to this last problem. This year primarily we have selected the X-Tep foundation's sunbird platform and it has some associated things like an open wrap. Some of you are electronic students? No, all are computer science. But you would have had some courses in electronics, right? How many of you are familiar with Arduino? Arduino is the open source hardware platform. So luckily you don't have to do any hardware work because the Arduino components come very easily. My colleague Rajesh Khushalkar has set up an Arduino platform which uses the back end sunbird platform to deliver at an extraordinarily affordable price the content and education to a classroom which does not have conventional setup. You know, you are familiar with labs. So if you have to access internet or any service on internet, what do you do? You need PCs connected on a local area network. In a classroom you need a projector. You need a server. All of this costs how much? Any idea? Easily about 10 lakh rupees plus. Now 10 lakh rupees, 8 lakh rupees might be a okay thing for a high-end engineering college. Is it an okay thing for a school? How many schools we have? Even if a school has to spend 2 lakh rupees and even assuming government sanctions 2 lakh rupees, what is the mechanism for the school to adapt and use this technology? The government rules require they do tender processing and so on. So for 2 years nothing will happen. Right from the beginning, Xtep said that we will try and solve this problem. The way they have attempted to solve this is through this open-rap device. So this open-rap device is nothing but an Arduino-based small device. This device permits, first of all, a Wi-Fi connectivity to multiple devices. So you put that in a classroom and it becomes a Wi-Fi hotspot. 30, 40 mobile devices can connect to this. The teacher's mobile device can also be corrected. Because everybody is using mobile devices and the back-end software permits collaboration, you don't need a projector on the screen at all. Everybody sees once the teacher decides this is the lesson that everybody is doing. Everybody is doing the same thing. If you submit your answer, the teacher can directly see it. Because curiously, this Arduino-based device not only acts as a Wi-Fi device, but also acts as a storage server. So you can put relatively inexpensive HD drives. You know how much capacity an HD drive has? Well, a lot. It does cost a packet, but certainly not in lakhs of rupees. However, there is no internet connectivity, maybe. Or internet connectivity may happen once in a day, in the night, or it may happen from some other town and not from my town where my school is. So what they have done is they have tried to put the basic elements of the sunbird platform software itself on that Arduino device. It is certainly not capable of permitting you to create a new course online, etc. But it can deliver a course. So suppose a course has been created in IIT Bombay or somewhere on that platform, then that course content can be delivered exported in a fashion which can be imported by another sunbird server and can be, let's say, sent to Mysore, which is your town. And let's say this school is in Shimoga. Somebody can actually go from Shimoga to Mysore, take that SD card, download the lessons for that school for that next week, bring that back, put it in that open-rap device and presto. The school is in business. All that you require is low-cost mobiles. So this is the approach. Arguably, even mobiles are not very easily available to high school students now. But in towns, they will definitely be available. And it is far more probable that mobiles will be available with students than a desktop or a laptop. Now what is true for school children? Is it not true for college students? See, imagine your college. How many students typically you have in a class? Sixty-hundred. If you have a large class, let's say teaching basic computer programming, you would have the entire batch doing that class, right? Maybe five, six teachers are teaching it differently. But still, what is the harm if that class can also use the mobile devices, use an open-rap in a classroom like this, and you all start working, no need of projector, no need of costly something. Now this is a pipe dream. This is not reality now. But this is the direction. Why I took efforts to explain this to such a large extent? It, of course, on every different topics, there will be different people who will be explaining different projects is because you must understand the direction of our efforts. The direction is to reach out at scale. The direction is to provide quality. And the direction is to make technology affordable, which people can use. By adapting open-source technologies, we have already eliminated license costs. Okay. We use Ubuntu. How many of you are familiar with Linux and Ubuntu? Many. That is good because we use only Ubuntu in our environment. Even our virtual machines have Ubuntu software. So this was one example that I gave. But there will be many more. The way, by the way, let me introduce my team, Aruna Adel. Aruna, can you please stand up? She is currently the senior most staff member overseeing the internship. She is assisted by Rajnikant. And there are individual project leaders who deal with different projects. You will meet all of them one by one here. Please stand. We have organized a lab which the computer science department has kindly granted us use of. But you have to be extremely careful about the use in the lab. So this is a facility which has been provided as a curtsy by the CS department to us. This is not our entitlement. Consequently, avoid the temptation of removing LAN cables and removing cables and so on and putting them in your laptops or whatever. In case it is required, always consult the person who is around. And under any circumstances, restore each and every connection before you leave the lab. Even if you have to leave the lab for half an hour, for one hour, for lunch, restore the connections, leave, come back, do whatever you want. That is a basic precaution because last year I remember the head almost threatened to stop use of that lab for interns. Because just two of the hundred interns misbehaved. Misbehaved in the sense that they were not careful. So remember any one of you making a mistake will cause a problem to all hundred people. Be very careful about it. I think you are being given accommodation in the hostels. So because Chhatri is the person who coordinates the logistics activities here, he along with Rahul. Rahul? Oh, he is outside. So in case of any problems, you can connect with him. About the work ethics, we are mad people here slightly. We believe in 24 by 7 work. I don't expect 24 by 7 work by ordinary mortals. Even my own colleagues sometimes cough at me. I have a very nice thing written in my office. Somebody, you know, people keep coming and waiting for me when I'm discussing someone. And I have whiteboards where people write things. Someone had written a very nice epithet saying, you don't have to be crazy to work in this place, but it helps. So I would expect all of you to be crazy enough and committed enough because you have to achieve two things. You have to learn as much as you can. That's the primary objective. That's the reason why. And second, you have to contribute with the best of your mind. And you cannot contribute by just working alone well. You have to work in teams because that is how some big things are achieved. I typically divide the day into three parts. There are 24 hours, eight hours, eight hours, eight hours. Eight hours a day, I must do honest to God work. If I'm being given an opportunity to work, minimum eight hours a day, I must work. I must contribute. I must not do anything else. I require eight hours a day for personal administration. I will need five hours of sleep. I'll need to eat food. Occasionally, I'll have to play a game of table tennis and go for a swim or whatever. So you require eight hours for personal administration. Some of us may require 10 hours, who might be sleeping longer. What is the average hours that you sleep for? Six to eight hours. Six to eight hours. God bless you. I'm 70 years old and I can't afford that luxury even now. Be careful. You know, very simple logic. Of course, you need sleep. But every hour that you sleep, you're not able to utilize that hour for any positive implications for yourself and for the society. Simple as that. So my advice will be whatever is the number of hours you're used to, don't hurt yourself, but try to reduce on the average some part of that time. And my own experience, I was also like you. By the way, I used to sleep for six to eight hours. And given opportunity, I like to sleep for 10 hours whenever possible. But that happens once in some time. So I become like a camel, you know, who can go without water and then drink water after a long time. But nevertheless, try to minimize that time because then you can use it. If for nothing else, at least for seeing a movie, you need to be awake while seeing a movie, right? So water. That still leaves us eight hours. And I would like you to use these remaining eight hours of the day very, very meaningfully. Use this time to learn something more. Use this time to learn about each other. Use this time to learn the ethos of this place. You know what distinguishes IIT from other institutions? Nothing. Same people. Do I look different from you? Do my colleagues look different? Students here also don't look different. But collectively, they represent a different ethos. And that ethos does not come automatically. That ethos is ethos of energy. That ethos is ethos of self-confidence. That ethos is ethos of doing something. Solving a problem, no matter how hard the problem. I would like you to take part of that ethos with you when you go back and try to inculcate it amongst your own colleagues and in your own institution because I genuinely believe that any institute in the country can become as good as any IIT. There is no reason why it cannot except for the people. And the people are faculty, staff and students. And students are the mainstay. One of the reasons why things don't change is because you don't request for change. You don't ask for change. You don't ask for being challenged. You are happy solving conventional problems which are asked in the examination. How many of you have complained to your principals and your teachers that why are some questions being repeated from previous years' exams? Why are simple questions being asked? Have you ever asked them? No. You are very happy and comfortable when simple questions are asked in exams. Being able to get challenged, being willing to get challenged is one part of this ethos here. I'll just, I still have 10 minutes so I'll just tell you a story that is an anecdote that happened with me when I was a young teacher. I had just joined the computer science department. In those days Ph.D. was not available in computer science. So some of us who had done M.Tech were appointed as teachers. In fact, rest of the institute used to laugh at us. They used to say, because without Ph.D. you're not considered a faculty. Nevertheless, some students were very close to me because I used to be a chess player in the institute team earlier. After I became a teacher I used to be the coach for the chess team. And one of the chess players in the team who was in third year came to me after a terminal exam with a question paper in electrical fields. And he gave me that paper and said, Ph.D. how do you solve this? Question number 3. I read that question. Immediately understood that I can't solve it. So I returned the paper and told him, I am a computer science professor. He was not impressed. He says, but your basic degree is electrical engineering. Then I had to admit that I don't know how to solve that question. But since I was a teacher I said, why not we go to the creator of that problem? Let Professor K.C. Mukherjee who had set up that question paper was teaching that course. So both of us went to his cabin. And when Mukherjee from his cabin saw both of us coming with that question paper dangling in his hand. He started smiling, asked us to sit down, looked at me and said, Question 3, Ph.D. I said, yes sir. He started smiling. He didn't say anything. So the student asked him, sir, what is the answer to this question? So he looked at him and he said, I don't know. And he was shocked. I mean a teacher who had set a question is telling him, I don't know the answer. Then Professor Mukherjee turned to me and said, Ph.D. this is actually part of a unsolved research problem which for last 10 years people are struggling to solve. Nobody has been able to solve this. But you know this batch is so smart, I thought somebody will solve it. So I put that question. What would have happened if such a question had come in your university exam? I passed my undergraduate education from Indore University and I remember what would have happened in 1960s. The vice chancellor would have been get out, syllabus ke baar ka soval puja. Do you think something similar will not happen even today? It could very well happen. It didn't happen here. The concluding part of the story is more interesting. That evening, majority of the people were, you are in hostel 4, right? I will remind me to find a book called Madhouse. I have a copy. I have only one copy. I circulated. They are the hostel 4 rights of 70s who have written a book of anecdotes of things that happened in IIT and in hostel 4 particular. So this actually happened in hostel 4. They were having a milkshake party in the evening. These kids from KC Mukherjee's course. You don't understand the significance of milkshake party. A milkshake party, milkshake was the costliest permitted cold drink on the campus in those days. Nowadays you have fancy stuff. So a hostel would throw a milkshake party only if hostel did something extraordinary like if it won an inter-hostel hockey tournament or somebody won a debating trophy, somebody did well in exam something and the hostel would celebrate. And these kids were having a milkshake party when the general secretary walked down and he was mighty surprised. He says, I am the general secretary of the hostel. I don't know what great thing has happened. Why are you having a milkshake party? And you know what answer he got? Oh, he says, you don't know? The great KC Mukherjee thinks that we can solve unsolved research problems and therefore we are celebrating. That is the ethos of this place. Never be cowed down by hard problems. They will come. In fact, you are going to be leaders in technology provision. You are not just going to be ordinary people. I mean, you have come through a very tough selection in your own colleges first and now to this place. So the leadership role cannot be fulfilled without being ready to take up challenges. So take up these challenges and enjoy life. So remember, eight hour, eight hour, eight hour. Eight hour on as to God, whatever has been prescribed individually and jointly, you must do for the project. Eight hours to ten hours you must use for your personal administration because you must enjoy life here. But six to eight hours try to use it for benefiting yourself by understanding the ethos of this place, by learning more about each other, by jotting down things which you think are important, by exploring something else which is related to whatever project you are working on. No harm if you, in this spare time, talk to some other group and find out what they are doing because they might be working on some other interesting technology. Learn as much as you can and benefit maximally. That's all I have to say. Thank you so much.