In India, an UG program in computing is either in Computer Science or Information Technology.  What is the difference between the two disciplines? Broadly, we can say that while Computer Science focuses on the foundations of computing, IT as a discipline focuses on satisfying computing technology needs of organizations and disciplines using computing. So, in a continuum between principles and application, CS is more towards principles while IT is more towards application, with the goal being to apply knowledge of computing for solving problems.

Though IT is becoming a discipline that is distinct from Computer Science, and ACM has a special curriculum now for IT, world over as a discipline IT has not caught on, as many view it as another form of Computer Science, with some special courses and a slightly different focus. Indeed, in a flexible computer science program, those aspects that focus on solving problems can easily be incorporated, though getting faculty who work in these areas accepted as peers in a CS department is a challenge.

Being a faculty member of Computer Science Departments for over two decades, for IIIT Delhi, I naturally started by thinking of offering a BTech(CS) program. But after discussions with the Board it was decided to have a BTech (IT) program. In hindsight, this was a very sound decision, as an IT program renders itself far more readily to interdisciplinary education and more applications, which, as one line of though even in computing sciences asserts, will be the areas in which Computing will play a more important role in future.

As the range of possible domain areas for computing are wide, it is clear that a good program in IT will have a strong foundational program in CS. Hence, an IT program can be treated as one with a decent foundation in CS, and with aspects of some application areas in the program. In that sense, CS and IT programs are likely to look very similar in the start – and will differ only in the later parts. This is how the BTech(IT) program in IIIT-D is organized, a foundational program which heavily derives from Computer Science, and then supplemented with suitable IT oriented courses.  This allows a graduate to pursue careers and higher education related to CS, but will also open other doors for study/career.

While designing the BTech(IT) program, first thing we decided was that we will not start with “more of physics and chemistry” in the first year, but will start with computing basics. This was not just a fancy, but relied on the fact that computing has far less reliance on these than other engineering disciplines. When IITK’s UG program was reviewed, I was the Head of CSE then and we had done an exercise of taking views of students, faculty from IIT and outside, and others, we found that starting CS early was desired by most faculty and students in CSE/IITK. We had then come with the idea of “inverting the pyramid” – i.e. doing computing first and doing Physics/Chem later. This is the approach IIIT-Hyderabad was also following (IITs could not follow this as they need to have a uniform syllabus for 1st year for different disciplines), and we decided to adopt this approach.  Such a structure empowers students with tools and techniques to solve problems using IT much earlier, which, in turn, facilitates interdisciplinary education, as there is room to introduce them in later part of the program. Indeed, we viewed sciences as domains of IT, much like other areas like Finance/Economics/Environment/Climate.

Of course, like the IITs and most good Universities, we did not separate “theory” and “practical” as is the practice in many engineering colleges. The idea here, of course, is that theory and practice should be viewed as aspects of learning and teaching and cannot be separated and should be the responsibility of the same instructor. I.e. for improved teaching, labs/practical and lectures ought to be thought as an integrated whole, both supporting each other.

We also embraced the fact that students will come with different abilities and aptitude, and wanted to have a program that can accommodate them. For this we decided that “one size fits all”, the approach followed widely in education is not necessarily the best way to organize the program, and we should try to build flexibilities for students with different abilities. With this in mind, we designed the basic program for the “average” student, and then allowed for “honors” (later to also allow “minor”) in which the student will do extra courses and a thesis, for the students who desire more challenges. This structure allows students of different capabilities to remain challenged at a level appropriate for them. It also allows the faculty to provide more challenges to those who can handle them, without having to worry about the impact on others.

We also took some not-so-usual decisions about courses. First, we decided to focus on building strong communication abilities, as world over, not just in India, surveys have shown that the top most deficiency in Engineers is in their communication skills. For this, we introduced a Communications Stream of three courses, accepting that communication skills cannot be simply taught as just another subject within a course. However, while the first course in this stream is indeed on basic communication skills, the other two courses – critical reading and technical communication – were designed to build other capabilities also, i.e. they are not “more communication skills practice”.

A deficiency in CS graduates we noted was that they tend to only develop programming skills (sometimes not even this!) but do not have the “low level” skills to deal with systems/peripherals etc. E.g. most CS graduates do not know how to manage their laptops well, and what to do if something goes wrong in their machine or the network . This continues as most faculties do not have these skills, and so there is no one to “teach” it. To counter this, we decided to include a “systems management” course in the first year itself. This course will be a “hands on” course letting students “do things”, much like a technician or field engineer often does. The idea of this course is to make them comfortable with their systems and not be afraid of tinkering with them.

In India, we have built walls around our campuses to protect them. But these walls have become so huge, that academia has become cut-off from society. To prevent this from happening and to encourage students to remain engaged with society – something that should be important in Engineering Education as Engineers have to solve society’s problems, we added a 2-unit “course” on “community work”. Each student has to do this course, though the credits do not count towards the graduation credit requirement.  The hope is that once the student gets exposed to contributing to society, he/she will appreciate the deep satisfaction that comes from it and will make it a part of his/her life in some way.

Us Indians generally have our lives revolve around family and profession, with little interests/hobbies outside. However, as we know and as research in positive psychology shows, for a wholesome life, as well as a more enjoyable life, it is important to have interests beyond work and family. To encourage this, we added a compulsory 2-unit “self growth” course, where the student is to grow him/herself in some area of interest, which could be music, literature, foreign language, sports, some craft, etc. Again, the hope is that, once pushed, students will examine what they may like to do and hit upon some interesting activities which they can pursue, and make it a part of their life, adding to their lives the breadth and joy that comes with such activities.

More details about the structure of the program are given at: