Four years ago, in this very month of June, JEE Mains results were out. I had screwed up my JEE Advanced, so I had to settle for an NIT. My AIR was good enough to get me a seat of Computer Science and Engineering in any of the NITs except the first three (at that time Trichy, Warangal, and Surathkal). I was skeptical about going to NIT Calicut because of its distance from my native place, so NIT Allahabad was the most suitable choice. However, in the end, I decided to give preference to NIT Calicut over NIT Allahabad. One of the many reasons for this decision was an excellent article by Dr. Dheeraj Sanghi, a retired professor from IIT Kanpur. His blog post was the primary reason; I decided to go with NIT Calicut. Now that I have graduated from NIT Calicut, I think it is good time to document my observations about CSE department of NIT Calicut from the perspective of a student.
My exposure to CSE department was limited to the facilities provided to undergraduate students only (almost everything, except academics), so I am not entirely sure if this article will help any of the postgraduate students out there. However, some points below might help you decide about non-academic activities of the department.
Like every other NIT, NIT Calicut also suffers from the lack of permanent faculties. Most of the faculties in the department are recruited on a contract basis (ad-hoc). It is not necessarily a bad thing, but many a time, an ad-hoc faculty gets to teach a subject where one does not hold strong command. In that case, the subject becomes a burden for both student and teacher. It happened to me many times when I was stuck in a situation that I ended up losing my interest in the subject as well as grades.
Most of the core subjects are taught by the permanent faculties who are very good at their subjects. These faculties are very experienced and are alumni of some of India’s top IITs and IISc. The department used to ask new hires to get a postgraduate degree from some IIT or IISc, but this does not seem to be the case anymore.
Most of the professors prefer to teach traditional computer science subjects, so if you are interested in AI, Data Science or any other such areas of computer science, then you might have to depend on self-study.
CSEA is the main departmental club which organizes almost every departmental activity. In my opinion, CSEA is the best department association in NIT Calicut. I was not a member of CSEA, so all of my views are from the perspective of an outsider. CSEA organizes talks and workshops for the freshers from time to time. I attended all the talks and workshops arranged by CSEA in my initial years, and I feel that those workshops were quite beneficial for me as a student.
FOSSCell is the group of students who contribute to open source software. FOSSCell organizes workshops related to Linux and open source contribution. It also organizes FOSSMeet, the yearly free and open source software conference organized in NIT-C. It is one of the largest gatherings of open source enthusiasts in South India. I have written two posts about my experience as a part of the organizing team of FOSSMeet. You can read them here and here. Attending and organizing FOSSMeet is one of the best experiences of my college life. The current executives of FOSSCell are actively working on improving the state of open source contributions in NIT-C. Hope the situation will change in coming years.
All the labs in the department are managed by the students. The Software Systems Lab is assigned to the undergraduate students. This lab is probably the crown jewel and pride of every CS student of NIT Calicut. It remains open most of the time. All the department servers are kept in this lab and are managed independently by the student administrators chosen by the student administrators. The student administrators are given the responsibility to maintain all the department websites. I do not know if any other university or college in India provides such independence to its students. I was one of the student administrators in this lab, and I consider that this was the best thing that happened to me during my graduation.
A traditional computer science course does not require many types of equipment except a laptop and a fast enough internet connection. Internet speed is not extraordinary in NIT-C, but it was sufficient for me. Many websites were blocked by the network administrators, but if the site is related to coursework, sending a short mail was enough in most cases to get it unblocked.
The labs are equipped with modern computer systems, and Ubuntu is installed on almost every department system. The special emphasis on the use of open source software is a big plus point for the department.
The curriculum was last updated in 2010. Since then, six batches have graduated. I think it is an excellent time to consider revising it. The current curriculum is good enough for most traditional CS subjects, but its focus on the present buzzwords of CS world is very less. I heard that the department changed curriculum for the batches joining 2017 onwards, but I doubt that there are any significant changes.
The academics are taken quite seriously in the department (apparently). The level of question papers in examinations is generally very tough. I always felt the heat, at least. However, teachers are quite friendly and will help you with any of your queries.
The situation of lab courses (except OS, Compilers and DSA lab) in the department is very pathetic. Operating Systems lab and Compiler lab have a well-defined structure, and the feeling of developing your tiny OS or compiler is one of the best feelings ever. Data Structure and Algorithms lab runs in parallel to the corresponding theory course, and that helps students in understanding theory by practice.
Although, I cannot say the same about any other lab in the department. Most of the students end up learning nothing new from these lab courses. The problem is in the way these courses are handled. There does not seem to be a proper structure of teaching in these courses. Students are expected to learn on their own and come to the lab and give exams. Although most of the time, corresponding theory course carries marks for a mini project which compensates for the lab course; these lab courses do have some scope for improvements.
Placements & Higher Studies
Placements are not handled by the department, but the quality of education and the focus on industry oriented courses do affect the placements. The placement department of NIT-C has been doing an excellent job of maintaining a track record of over 90% placements from computer science every year.
Department as such does not focus on placements much. I feel that the department is more interested in making researchers than software engineers. Most of the courses are very heavily inclined towards theory. From my batch, I know at least ten people who are planning to go to the USA for higher studies, in the next two years. The faculties also encourage students to pursue higher studies (and subsequently research). Perhaps, it is one of the reasons that the state of competitive coding is not very good in the department.
Despite continuous lack of good permanent faculties and its location disadvantages, CSED of NIT-C has managed to produce competent engineers year by year. Spending four years in Kerala can be a different experience for outsiders especially North Indians, but it is an experience worth gaining. If you have a good rank in JEE Mains and do not mind going too far from home, CSED of NIT Calicut is an excellent choice. I hope, you will not regret the decision, though I will not say the same about other departments of NIT-C.
If you decide to join NIT-C, do read my article about my experience at NIT Calicut.
Best wishes. Cheers 😄