Computer Science and Engineering at Birla Institute of Technology, Mesra

I was admitted to Birla Institute of Technology, Mesra on 27th July 2015. 4 years have passed since then and I am going to share my academic experience with everyone. I hope this will help you with your college goals as well.

Semester 1

Physics - This course was the first. It explored Einstein's relativity, Dual nature of light, Maxwell's equation, Field Theory and Plasma physics. It instantly caught the attention of all my classmates. The course was lectured by Mr S.K. Rout. We used to have two-morning lectures and many slept through the class. There were 2 quizzes that were held and I scored 8/10 in both of them. An interesting thing is that most of the concepts were directly related to Intermediate Physics and so many found it easy to pick up. Others who were not well-acquainted with Integrals found in difficult.

Engineering Mathematics - This course explored trigonometric functions, approximations and integrals in details. The course was taken by Ms Sayeda Jabeen. The first few classes were interesting. We paid some attention. We lost most of our interest after Cauchy's Integral kicked in. The quizzes for this paper were tough and lots of sums need to be practised before the exams. The department of mathematics was kind enough to provide us with a list of problems as an assignment.

Technical English - This course was not what one expected it to be. It explored writing skills in English. It explores Notices, Resumes, Proposals, Articles, Research papers, Correspondence, Reports etc. Mr Rohit Pandey also made us sit in the communication lab for hours to help us improve our fluency in English. He was one of the few lecturers whose lectures were a bit interesting. He told us a lot of anecdotes and we used to enjoy listening to them. He was very strict regarding attendance as well. I can never forget his Birla Ji ki Story.

Engineering Chemistry - This course is mostly about inorganic and physical chemistry. Dr Gautam Sen used to take the lectures along with Dr Rahul Sharma. Both of them divided the syllabus among themselves. Gautam Sen was a very simple man. He used to take no holidays. Not even on Sundays. He liked to work. His dressing sense was very simple. And he was very hard working. He could write with both his hands (not simultaneously). On the other hand, Rahul Sharma looked like an NRI. He was very handsome and had a very good personality. He did his PhD from some US university. Chemistry was my love from my school days itself. So, I used to have some interest during their lectures.

Basic Electrical Engineering - This course was offered by the electrical department. It explored the concepts of AC circuits, 3P circuits and DC circuits theorem. It was one of the most interesting courses in the first semester. Mr Brij Mohan Prasad used to lecture the subject. He was very lenient and most of us used to take our cell phones and play games (Mini militia was love for several) during the lecture hours. The lecturer was very hard working though. He taught us a lot of things.

Unix and C Programming - This was the first course offered by our department of computer science to teach basic programming in C to everyone. Almost everyone in the class was very much interested in this course and some even used to ask doubts when the subject was taught. Some coders who were already well acquainted with competitive programming used to find the subject matter childish. This course was also supplemented by lab session along with lectures. Dr Shamma Anwar lectured us the theoretical part and Dr Debjani Mustafi took the lab sessions. Lab programs were difficult in the beginning but it became easy as we acquainted ourselves to programming. The funny thing about this course was that Unix was never taught to us. We only coded on Codeblocks which made everyone lazy. No one ever learned to use a command line to compile and run programs.

Workshop practices - A hands-on session by the Production department. This was the subject where we got hands-on experience in machine cutting, wood cutting, forging and welding. We have a lot of memories in this course. We used to dress up in a uniform with proper shoes and cloth quality. The professors were very strict. They never tolerated late attendance. Lab manuals were very long with lots of diagrams (We had some experts friends who drew diagrams for all other students). We were required to complete it every week for submission. Girls were never able to complete the assigned task (except for few). Boys also found some tasks to be difficult especially those which involved heating and cutting. Forgery shop was the most interesting as everyone loved sand. The machine shop was the easiest as all you have to do is to look at the machine do the work. Welding and Molding were difficult. All jobs were to be done in groups of 5.

Physics Lab - This course again had a close correlation to Physics Labs in schools. One interesting part of this lab was the dark room where all the experiments related to light took place. I did all my experiments very honestly and presented the results no matter what it was. Many manipulated the results. We had to submit lab manuals every week and also were expected to come prepared with the next week's experiment. I was well versed with all the experiments except the Hall effect. Probably no one in the class understood what it was all about. Wheatstone bridge was the easiest. The lab has undergone several changes over the years. They had got a lot of new equipment now.

Engineering Graphics - If there was a course in the first semester that was a nightmare for everyone then it was Engineering Graphics. We were lectured by Dr S.K. Dhiman. He was very strict. The mechanical department provided us with assignments to be solved in lab hours. Each problem took at least an hour to be solved. We found the course so difficult that we all decided to sit back on Saturdays and Sundays to discuss each problem in groups. The toughest part was Isometric projections. It made you feel like Leanardo Davinci trying to design a helicopter. Solid projections were difficult as well. Mostly, it was about the degree of imagination one had. Some found it to be very easy and interesting. They even read the literature for it.

Semester 1 - No one had any idea of the subjects one was studying unless the exams were scheduled. It was only during exams that everyone realized that we are here for the purpose of engineering. Lab sessions had their performance and viva scheduled before final exams.
Engineering Graphics was the toughest among all lab sessions. The problem asked was completely different and required a strong grasp on the basics. Viva was taken by lab assistant who asked me a completely out of the box question and I was screwed.
The physics lab had 3 viva and 2 performances. The questions in viva were logical and I answered most of them. My performance was however screwed as I got Hall effect experiment. I had no idea about its functioning. I was sick that day and requested the invigilators to change my experiment. They did and saved me.
By the end of the semester, I had developed quite a good command over C language. I coded all the problems in the final evaluation. Viva was screwed as I had no in-depth idea of pointers.
Finally, I got a carpenter shop in my final evaluation of workshop practices. I did an overcut and got poor marks. I was asked only one question in viva that too in a group to which I gave an incorrect answer.
The end semester exams were easy except for electrical engineering and mathematics which blew my mind. We studied days and nights together to pass those exams. I would give a special mention for Chemistry which made me realize that all I was doing was mugging everything. I was sleepless before the Chemistry exam. 

Semester 2

Engineering Mechanics - The subject which shivered the hell out of everyone. But this was my favourite as I barely studied to pass this one. How? It was completely related to mechanics that we studied in Intermediate science. The kinematics, dynamics, rotational mechanics etc. were already my favourites. The only new thing was the concept of Truss. Dr A.K.Roy took that course. He was old but very hard working. He taught us a lot of concepts. He was a man who strictly adhered to rules and regulations of the institute. He always reached on time and never hesitated from sending late attendees out of the class. Several missed his class every day and suffered from attendance shortage later. Many even received an F* from him. There were two quizzes and I secured 4/5 in both of them without even studying.

Advanced Engineering Mathematics (M2) - I know many will disagree. But M2 remains the toughest subject for me in my entire 4 years of my college. M2 was concerned with complex differentials and advanced integrals, series & their expansions and differential equations. It as lectured by Prabhjot Kaur. Oh, I hated her! She overdid everything. She was too strict for attendance. Her classes were extremely boring. I lost interest from Day 1 and had to struggle a lot to pass this course. Bessel, Chebyshev, Lagrange ate my brain by the end of this course. 

Principles of Mechanical Engineering -  This course was nothing more than a joke. The mechanical department could have easily merged it with Physics or Mechanics. But they decided to teach sources of energy, boilers and heat transfer law separately in a three-credit course. The course was taken by Mr O.P. Pandey whose primary concern was to take attendance. He took the first 15-20 minutes of 50-minute lecture to take attendance. Then, he started his 30-minute long lecture in the saddest and monotonous tone. I learned nothing out of this subject. Just mugged up stuff time and again.

Basic Electronics - The course was lectured by Dr Somnath Sengupta. The course dealt with basics of semiconductors, transistors and logic gates. The lecturer was so monotonous that no one even answered the question asked by him. Even he didn't care to check if the students are even listening. Everyone came to his class to pass time and play games. As the first benchers say, he taught all the concepts and his notes were very good. I preferred to read from the book although most of them went over my head. I was a bit into electronics at that time and I received suggestions from many to get my branch changed to Electronics (Thank god I didn't do that). The department of electronics was known to set the toughest questions for the exams. The quizzes for the subject were really tough. They were conducted at the same time for all the branches and only a handfuls were able to score more than 50%.

Fundamentals of Data Structures - This course was the second one by the department of computer science. Lectured by Dr K.K. Senapati, this course remains the most interesting one and one of the few to which I paid attention to. Everything was so logical in this course. However, students from non-CS background refrained to pay attention to it. KK Senapati had a very strange accent and English. He was strict for students not paying attention in the class.

Environmental Science - Seriously! We were in the fresher year of our engineering course and still were reading about the environment. Hold on! This was not so simple. It dealt with actual chain reactions that lead to soil, air and water pollution. Seniors warned us that this subject could badly nail your GPA. The course was lectured by Dr Rahul Sharma. He struggled with setting up the projector in the new lecture hall for the first 15 minutes. Then he started his lecture to which many of us fell asleep no matter how good his personality was.

Chemistry Lab - This was a lab session and taken up by several professors combined. Most of the experiments were related to titrations and salt analysis. The most complicated one was the experiment of junk calorimeter. No one had been able to understand how it works. We were required to write lab manuals every week and be prepared with the next experiment. Also, all the experiments were to be done in the groups of 3, so the problem was less.

Basic Electrical Engineering Lab - This was the strictest lab session in all of my four years at BIT. Why? You have to reach 5 minutes before the lab session and get your attendance marked failing to which no apology was accepted and you were not allowed to attend the session. You were required to wear shoes and toe length jeans. You were required to maintain two lab records properly covered and written in perfect handwriting and neat diagrams. Any anomaly in the written text can result in a bad score. You were graded every day. I got D countless times. And the experiments were dangerous too. We had to deal with 440 volts AC circuits and were required to do the experiment individually. We were required to take permission for each additional apparatus that we required for experiments. We were also required to get our results verified by a lab assistant before we left. I missed 4 lab session. Thanks to my laziness. I was somehow able to get 75% attendance. Dr Nutan Lata was the professor in charge and I can never forget her face. She threw me out of the lab so many times and even insulted me.

Basic Electronics Lab - This lab session explored the experiments related to transistors and semiconductors and oscillators. Most of the experiments went over my head. There were two different sessions - the hardware session and the software session. We had to write the same thing in the lab manual 4 times - two times for hardware and two for software. The lab session was taken by Dr Vijay Nath - the most prolific researcher of the electronics department. He had a lot of publications in his field. He was very hard working and worked days and nights without caring for the results. We were asked to wear shoes to this lab session as well. Experiments were done in groups of three.

Fundamentals of Data Structures Lab - With the start of this lab session, we were introduced with the concept of dynamic memory allocation with pointers and that blew everyone's mind. This lab session was all about copying the code from others and showing it as your own code. The codes were so complicated that you had to be careful even when you are giving inputs to other's codes. I did my work very honestly, however. I was able to solve only one out of two assigned problems every day and that too very clumsily. We were required to write the code in the lab manual which was pain again. The lab session was taken by Ritesh Jha who was very lenient and never checked for the originality of the code. His only concern was output and so many were able to pass this lab session.

Semester 2 - Semester 2 was the toughest among all the semesters.
Chemistry lab was most lenient out of all. Half of the class got Junk calorimeter as their final experiment including me. They all were messed up. The viva was fine and so we passed with good grades.
Electrical Engineering lab was the toughest. Half of the class was unable to get the result in the final experiment. I somehow did. But, got nailed in the viva. An external examiner took our viva and it was conceptual enough to nail us.
Electronics lab required us to submit a working model of a basic electronics system. We, in a group of three, used Arduino to design a traffic light. The professor was impressed. Out of the three of us, I was the one who built the entire model and I was also the one to receive a grade less than my colleagues. That day I realized that the grading in lab sessions was luck based and it was more important to focus on learning instead of the result.
Being CS students, we were asked two tough questions in the final performance of Data Structures lab. But copying code was constant and so everyone passed with an A grade.
In the final semester exam, FDS was the toughest. Students of all other branches cursed the department of computer science for setting such a paper. Even the electronics department decided to set an easy theoretical paper seeing the situation of the marks received by students in quizzes. Mechanics was tough for everyone but I found it very easy. It was completely numerical based and I loved such papers. I had a fear of failing in M2, and so I paid special attention to this paper. I practised all the assignment problems. The final paper was easy but extremely lengthy. I screwed some problems in exam but still managed to get an A grade. EVS was the last exam and everyone was tired by that time. We took it too lightly even when there was 2 days holiday before the exam. Obviously, the more time you have, the less you study. Most of us screwed the EVS final paper and got poor grades. The semester ended and we were all happy that the toughest semester of all has finally come to an end.

Semester 3

Design and Analysis of Computer Algorithms - After one year of struggle with non-CS papers, we were finally studying one of the most important and most interesting subjects of Computer Science, i.e DACA. Everyone paid attention to the class from day 1. The subject matter was interesting and concerned with time complexity analysis, greedy algorithms, dynamic programming and recursive algorithms. We were introduced to the book of CLRS, the bible of Computer Science. Obviously, only a few people actually read all the subject matter and most of us ignored and relied only on notes. I found the subject to be very tough. The proofs were beyond my brain's understanding. But I somehow coped up once I started coding the algorithms myself. The course was lectured by Mr Neeraj Kumar who was very young.

Object-Oriented Programming using Java - As the name suggests, the subject matter was all about object-oriented concepts, Java, exception handling, multithreading, stream handling, basic graphic designing and serialization. After this course, one can be well acquainted with writing any automation program. The course was lectured by Dr Indrajit Mukherjee who taught more than what was supposed to be in the syllabus. Syllabus mein toh kuch hai hi nahi was his common motto. As usual, we all lost interest after the first few classes but he was strict and asked us questions all the time.

Digital Electronics - "Nightmare!". Only this term can define this subject. This course was concerned with logic gates, state modelling of circuits and modern transistors. The subject matter was interesting and many friends from the electronics department found it to be easy. The course was lectured by Dr Soumya Sidhishwari. She was very lenient and most of us slept or played games in the class. 

Biology - The course was all about DNA, RNA, Nucleus, Protein and Carbohydrates. It was a mix of biology and biochemistry. The course was lectured by Dr Kunal Mukhopadhyay. His classes were scheduled at 8 AM every day. He was so lenient that he even allowed us to enter the class at 8:40 AM. Only 4 students reached his class on time and rest all entered after 8:30 AM. No one had any clue about the subject until the day before the exam.

Discrete Mathematical Structures - Popularly known as M3, this course was concerned with logic, reasoning, relations, functions, graphs, trees and group theory. This subject was completely logical. Nothing to mug up but everything to understand and reason. The subject had a lot of proofs which obviously were memorized by us a day before the exam. The subject was lectured by Dr Adhikari from the department of mathematics. He was hard working and taught us all the concepts. It was us who were not interested and were sitting like ducklings in a class of 120 students for more than 40 lectures.

Object Oriented Programming using Java Lab - The lab sessions were difficult than theory. Dr I. Mukherjee never followed the syllabus and the assignments were much tougher than what we were expected to do. Only a few coders were able to complete his assignments on time and others copied and modified. The professor was smart. He was able to catch copied codes. However, he was not able to catch who copied whom and so was forced to award marks to everyone. Java Lab mostly covered java basics, multithreading and applets. Most of the students used Netbeans or Eclipse and so never understood the compilation process of Java in-depth.

Digital Electronics Lab - It would be extremely unfair to write just a paragraph about this lab session. It was taken up by one of the three most strict professor from electronics department - Dr S.K. Dash (the other two being Dr D K Upadhyay and Dr Sukesh Kumar). One had to reach the lab 5 minutes before the professor enters. I had been thrown out twice from the lab session for being 2 minutes late. He had no mercy on anyone. He never hesitated. We were required to maintain two lab journals and two rough notes for hardware and software session. We were required to complete at least two experiments in a single session including setup and observations. Also, this lab session had a digital oscilloscope. No one till date knows how to use that instrument. We had viva in every lab sessions. And each viva was about 1 hour long. We were 3 members in the second group. We were always the one to be reprimanded (except for those days in which he started from the last group). The lab session was scheduled on Monday and our whole weekend was wasted in the fear of the lab session itself. The Digital Electronics Lab covered basic building blocks of VLS circuits and also introduced us to several electronic measuring instruments and ICs.

Engineering Mechanics Lab - This was the only lab session in this semester which was not at all related to our discipline. We were in a group of 10 and most of us were disguisedly unemployed during the experiments. The lab session was taken up by Dr Richa Pandey who was lenient. However, there was a lab assistant named Mr Nirmal Kumar who was quite strict and expected best results. The lab sessions were fun. The apparatuses were at least 50 years old and the results we got were always incorrect and most of us manipulated the result to get the correct conclusion (Nothing is absolutely correct after all. Someone might be able to prove Newton to be wrong by not manipulating the results). 

Semester 3 - The third semester was much simpler than the previous two semesters.
Digital Electronics Lab sessions were extremely tough. People with hardware experiments in their final evaluation (like me) were not able to complete. The final viva lasted for an hour and ate our brain.
As usual, everyone simply copied the code to pass the final evaluation of Java Lab. I don't remember how the viva session was.
Engineering Mechanics was easy-peasy. However, the grades obtained was completely based on luck. In a group of 10, only 2 people were serious about the experiment and even they ended up with poor grades while the least-interested peeps got Ex.
DACA was initially a pain for me. But I coped up later from my poor mid-semester marks and studied really hard for the end semester - coding each algorithm myself.
Java was all about practice. If one was good at coding in Java, he/she excelled easily.
Digital Electronics was a pain for everyone. No one understood the subject completely. The quizzes were taken in bulk by the department of electronics and only a handful scored more than 50%.
The mid-semester exam was ridiculously tough and most of us were on the edge of failing Digital Electronics.
Biology was easy for engineers like us. We mugged up everything in a single night.
Discrete Mathematics was surprisingly tough. We underestimated the subject. It was much more logical than it looked and required a lot of hard work for passing the course.

Semester 4

Operating System - Several students from CSE and IT had already started using Linux and all of them including me were waiting for this course. But, it turns out to be something else. It dealt with processor scheduling, memory management and secondary storage management, all of these concepts were very core to the kernel of an operating system. The course was lectured by Dr S.K. Saha who had a very negative attitude towards everything. He was already disappointed by our interest. Still, I paid attention to most of his classes. This was actually because we had a dream of writing our own operating system from scratch, which was never fulfilled.

Database Management System - As the name suggests, we were now learning about databases. And not only SQL, but we were also taught relational algebra, B-Trees data structures, hashing, dependency resolution, query parsing & internal optimization and transaction & concurrency control. Yes! The course structure was very vast. The course was lectured by Dr Partho Paul who was very lenient. No one even cared to attend his classes and so many students failed to understand this important subject. Even those who attended were only interested in important questions that were to be asked in the exams.

Computer System Architecture - This was the toughest paper of the 4th semester. It dealt with processors, virtual memory, system buses, communication between processors and basics of VLSI. There were at least 500 pages of text that was to be read. The course was lectured by Dr Ritesh Jha who seriously had no idea of what he was teaching. He taught only 10% of the course. Thank god he skipped the quizzes and gave us assignments. I actually found the course to be interesting. There was nothing to mug up. Everything was conceptual. The pressure was on the brain's memory. You have to keep a lot of things in your brain before you spill it up in the exams.

French - The course was offered by the department of management under the flag that the students might need a basic understanding of foreign language if they chose to go for an internship in foreign universities. We had a choice between German and French and I chose French. French was much tougher than German. The course was lectured by Dr Dharmendra Kumar Chand who was a fluent French speaker. He was strict as well. We had to complete all the exercises in the book by ourselves. Every day, he chose a few students and asked us to read the text aloud in the class. Pronunciation was difficult. Vocabulary made the situation worse. Tense was horror. But, we only had to cover simple present and past which made it a bit easy. However, the professor purposely made it tough.

Probability, Statistics and Numerical Techniques - Popularly known as M4, this was the last paper of the department of mathematics. It dealt with the concept of probabilities, advanced statistics and numerical methods of solving an approximation problem. The course was lectured by two professors in two different sessions each one and a half hour long. One was taken by Dr Souvik Chakraborty, an expert in algorithm analysis and music, who taught us the statistics part. The other was taken by Dr Randhir Singh who taught us the numerical methods. I have to agree that this course was very interesting if studied properly. Most of the machine learning algorithms were closely related to this course and was a prerequisite for advanced computational intelligence. Both professors were dedicated and expert in their field. However, the lecture hall consisted of 120 students and so we felt excluded.

Operating System Lab - My dedication to lab sessions started from this lab. I started coding each algorithm honestly no matter the result. The lab session was taken up by Dr S.K. Saha who was very strict about the program output. He caught the cheaters easily. By that time, many students including me were quite competent with coding and so they were ready for tough assignments. The irritating thing was - the codes were long and we were required to copy the code to the lab manual.

Database Management System Lab - This lab session was again a joke. There were only 10 assignments each of which just required less than 10 lines of SQL statements. The SQL statements were very logical and required an in-depth understanding of relational algebra. The lab session was taken by Dr Itu Snigdh who was a bit tough on us. Oracle database was used for running and verifying the outputs.

Numerical Techniques Lab - This lab session was taken up by Dr Adhikari (the one who taught us Discrete Mathematics). The lab session was concerned with hands-on experience of coding complex mathematical algorithm to find roots of an equation, interpolation, solving a system of equations, matrix multiplication and other matrix operations. The code required a good amount of logic to solve and debug. However, Adhikari was less concerned with the code and more with output only. He had no idea of how codes were shared by students. I coded almost all algorithms myself (except a few which required deep understanding to debug). It was actually fun. After all, we were coding the algorithms that run behind the largest math processing software - MATLAB.

Semester 4 - For a CSE student, the fourth semester was easiest out of all.
The final performance for OS lab was simple for those who did the assignments honestly.
The final performance for the DBMS lab was a joke. Only one SQL statement was asked. However, we messed up the viva when some transaction-related question was asked.
I also messed up the final viva of NT Lab. I skipped Newton's back interpolation and he asked me the same. I fumbled and lost a grade point.
Computer System Architecture was a nightmare for everyone. Students took out a week before exams to study the subject. The paper was numerical and those with weak conceptual understanding failed. Operating System was easy peasy. Mostly, we were only required to simulate the algorithms on sample data. The questions of Database Management System were disclosed by the professors. I thought that it was only a rumour and so ended up screwing the exam when others were happy for only reading solutions to those questions. The professors of PSNT decided to skip several tough concepts including Eigenvectors and Singular Value Decomposition. This made the course very easy and we only read the notes to pass the exam.
French was much tougher than German. Even the questions were in French. For some question, I took much time to figure out what exactly the question asked us to do - fill in the blanks or make a sentence. They also asked us for writing our biography in French in the final exam. In the final viva, the professor asked me two questions in French and I just ended up nodding my head. I was awarded 6 out of 15 in the viva. Later he told me that he was asking about my college department.

Semester 5

Formal Languages and Automata Theory - This subject was the mother of entire Computer Science (the father being Microprocessors). It covered grammar, automata and Turing machine. This subject is very important if you really want to understand how exactly computer software evolved. It blew my mind when I realized that no computer can solve a problem unsolvable by a Turing machine. The course was lectured by Dr Anup Keshri who spent most of the classes in motivating us towards research in Computer Science. He taught a few topics really well. But, he skipped all the theorem, proofs and lemmas. The proofs were extremely logical. The suggested book was beyond my scope of understanding.

Microprocessors and Microcontrollers - This subject was the last one to be offered by the department of electronics. It would be an injustice if I don't write a separate article about this course and the way it was taught to us. Dr Sukesh Kumar lectured this course and he almost killed everyone. He taught us every minute details of a microprocessor. He asked questions and never hesitated to throw us out if we had no answers. He was strict for attendance as well. He was supposed to take about 40 class in the semester. But he took 72. Several were on an edge of getting an F*. Sukesh was ex-HOD of the electronics as well as computer science department. He had immense power. The HODs of both computer science and electronics department were under his control. We had no option but to listen to what he says. Well, that was the dark side. The bright side was he was extremely dedicated when it comes to teaching. He was one of the finest professors of the college. He had tremendous knowledge in the field of microprocessors. The course covered the functioning of two microprocessors - Intel 8085 and Intel 8086 and one microcontroller. All modern processors are based on the 8086 model. We were required to write assembly code for programs and then translate it to machine code. It was easy in the beginning but got tougher as timers and I/O devices came to play. Nevertheless, this subject was the father of Computer Science.

Computer Networks - I had a keen interest in this subject long before its arrival. This course covers Networking layer-by-layer going from the data link to the application layer. Obviously, this course is a fundamental course in computer science. The course was lectured by Mr Subhrajeet Mahapatra who himself read the book just before the class to teach us the concepts. The lectures were boring and no one paid any attention to the professor. The course was, however, very interesting. Each module was 100-200 pages long but interesting enough to capture anyone's attention. I read the first 6 modules and found some concepts to be so amazing that I had wished to find the genius who invented such concepts.

Artificial Intelligence and Expert System - So, we were finally there. We were going to make robots now. Not yet boy! Because this subject was less about technology and more about the motivation behind the technology. The course started with first order predicate logic, went to Bayesian algorithm and ended with expert systems and still, we had no idea of intelligence. We were still dealing with a monkey who was unable to catch a banana hanging from the ceiling. The course was lectured by Bhaskar Karn. He had good communication skills. So soothing that everyone slept. This course was a bypass. No one knew anything about AI before the course and no one ended up knowing anything. I played chess on my phone during this class. The professor caught me several times.

 Principles of Management - This course was the first breadth paper. I don't even remember the professor who took this course. She was old. But being from the department of management, she had excellent communication skills. She was very lenient. Students took advantage of her. As per the course is concerned, it dealt with basic techniques by which one can manage the workforce and resources to maximize the potential of an organization.

Microprocessors Lab - This was the last lab session by the department of electronics. We were required to feed codes to 8085 microprocessors simulated on a toolbox. The lab sessions were taken by Dr Kartik Mahto. He was disappointed by the attitude of CS students towards the lab session. No one was interested in hardware. There were about 50 programs with modification in the first 5 programs. I  was able to complete only 22 of them. Debugging was very difficult. And so, I downloaded an 8085 simulator to debug the code one day before the lab session.

Computer Network Lab - This lab session was again a joke. On the first day, we were asked to code a graphics program in Java. On the second day, the same continued. It was on the 7th day that we started with socket programming. The lab session was taken by Mr Subhrajeet Mahapatra who was expert in Image processing and so was inclined towards graphics. I think socket chat application was the best thing that we coded in this lab session.

Artificial Intelligence Lab - This was probably the most wasteful lab session. We were coding predicate logic in Prolog - an inherently recursive language. It had no application in real life. We were not even able to understand why some recursions actually work. The lab session was taken up by Dr Bhaskar Karn and Dr S.K.Sahana. The most useless concept was taught by the most boring professor. There were 10 assignments and the only thing we did was to copy the programs.

Semester 5 - I have to admit that the fifth semester was tougher than the fourth one but still much easier than the second semester.
Microprocessor Lab session was difficult for those who did their work honestly. It was very difficult to debug where you went wrong. Only one viva session was conducted and we only received a motivational speech. My final performance was messed up due to one mistake - SBB command sets the borrow flag. I will never forget this lesson in life. I regretted so much.
Computer Network lab was a joke. The final performance asked us to code a graphics calculator. Where was networking anyway? Was the professor even concerned with the actual subject matter?
AI lab was a joke too. We were asked to code monkey banana problem. What was that anyway? We are still trying to figure out. I was really disappointed with the lab sessions this semester.
Only one quiz was conducted for Microprocessors. There was only one question which required the concept of microprocessors, timers, interrupts and I/O devices to code. Basically, it covered all the concepts ever taught by the professor. I wrote an 8-page long code and ended up scoring 4 out of 15. The mid and end semester exams were horrifying. We were on the edge of failing Microprocessors unless we decided to read the subject with full heart and dedication. I remember people burning books and celebrating victory after the Microprocessor exam ended. Formal languages were again painful because the questions were very conceptual and required an in-depth understanding of the subject matter. Computer Networks was very long. There seemed to be no end to the subject when we were studying it hard for the final exam. Artificial Intelligence seemed so easy that we ended up screwing the exam. What was the subject all about anyway? Till date, no one has any idea about the subject. It took only an overnight effort to score an A in Principles of Management. All thanks to the presentation slides that everyone mugged up a day before the exam.

Semester 6

Computer Graphics and Multimedia - This course covers very basic algorithms that are required to draw geometrical figures on a computer screen. Most computer games use concepts discussed in this course including drawing curves and shading figures. The graphics part itself was so vast that the multimedia part was completely omitted. The course was lectured by Dr K.K. Senapati. He always told us that Computer Graphics is a great research area. The course had a lot of mathematical formulations and complex algorithms. K.K. Senapati was the first professor to use an online portal (Google Classrooms) for taking assignment tests.

Compiler Design - This was my favourite course in Computer Science. The course dealt with the concept behind the design of compilers and concepts of programming language. This course was lectured by Dr Indrajit Mukherjee who had the same attitude as he had while teaching us Java. He taught us every concept. Not only the theory, he actually made us design a small compiler for C programs. He made us explore a lot of tools like Lex and Yacc to develop our own compiler. This was one of the few classes in which I paid real attention to. The professor targeted a set of students and asked them questions regularly. I was a "good" student in the eyes of the professor.

System Programming - This course continues the concept of microprocessors to introduce the concepts of assemblers, linkers, loaders and macro processors. All of these concepts were the core of how software interacts with hardware. The course was interesting. But there were too many algorithms to be memorized. The course was lectured by Dr S.K. Sahana. The professor had a weird accent that I never got acquainted with. He lacked confidence in what he was teaching. Also, he was the first professor to actually punish us. I was the first one to be given a punishment. He asked me to stand on the chair in front of the entire class with doors wide open so that all the bypassers can see me. He then gave the same punishment to 5 more students. Several memes were made on me for accepting that punishment. I should have left the class instead of accepting the punishment. I needed attendance :(.

Software Engineering - I have only one word for this course. Pathetic! Obviously, this course was important as it was concerned with concepts of software development in industries. The problem was - there was a lot of things to mug up. The course was lectured by Dr K.S. Patnaik. His lectures were most boring of all. His classes were scheduled in the morning and most of us missed it or chose to skip it. He was very monotonous. He asked questions in between randomly. He was moody. He literally taught us only selected random shits from slides. There were thousands of slides in his lectures. Also, he was the second professor to take assignments on an online portal (Moodle on LAN),

Software Project Management - This course had no difference from Software Engineering. The only difference was - this course was lectured by Dr Kalyan Samanta. He was no less than a blessing from the god. He was the most lenient professor that we ever came across. 5 students can get the attendance marked for all the students in his class. He lacked confidence in teaching. He had the worst handwriting that I ever saw. Only he knew what he was teaching to us. And as far as the course is concerned, this course was useless and redundant.

Operation Research - This was the second breadth subject and was offered by the department of management. The course covered the concepts of linear programming, assignment, optimization and game theory. There were only 15 students in this course and only 2 students from Computer Science and Engineering. The course was lectured by some old professor whose name I don't remember. He was knowledgeable enough. He also used presentation slides which made his lectures very boring. The course was much more interesting than any other optional breadth paper.

Computer Graphics Lab - This lab session was taken by Dr K.K. Senapati. The lab session was about generating computer graphics using Borland C graphics library. There used to 3 assignment in each lab session. First two were generally related to directly coding the algorithm taught in the theory classes and the last one was an ad-hoc problem that required creativity in solving. Again, I was extremely dedicated to this lab session and coded all the problems myself. The lab assistant was impressed by me. I was the only one in the entire class to be able to code a rotating sunflower. We were graded in each lab session. I really enjoyed solving the problems as it required a lot of mathematics (geometry and trigonometry) to solve the problems. Also, this lab session had one good thing. We were only required to draw the output in the lab manual. There was no need to write the code.

Compiler Design Lab - This lab session was taken by Dr Indrajit Mukherjee. And those who were regular with the session were able to design their own compilers for parsing SQL statements. We used Lex and Yacc to code the compiler. DFA, lexical analysis, syntax analysis, code optimization - everything was covered in this lab session. Being a successor of formal languages, compiler design was very logical. We were given two assignments in each lab session. I had a great interest in compilers and so I found the lab session to be very interesting. Also, we were allowed to bring our own system to lab session in case we were not comfortable with the given system. I did the same. We were also given access to HPC. We were expected to log in to HPC, write the code using nano or vim (preferable) and save the code on the same system.

Software Engineering Lab - This lab session was taken by Dr K.S.Patnaik. I was already bored by the theoretical concepts. And this lab session was even more horrible. We were required to draw a class diagram, sequence diagram, data flow diagram, use case diagram, activity diagram, interaction diagram - No student had any idea of how each of these is different from others. The lab session had no coding. Nothing logical. We were only required to draw diagrams in Rational Rose and filling the SRS document. The only interesting part was code testing. We learnt to write test suites for the automated testing of software.

Semester 6 - The sixth semester was the second toughest semester after the second semester. There were a lot of concepts that were new but interesting enough to catch my interest.
I missed two lab session of Computer Graphics lab and ended up losing a grade due to that. It was the only lab session for which the quiz was conducted twice as the solutions for the first quiz was leaked along with questions. The quiz was all about the Borland C graphics library and its internal operations. The final performance was easy.
The final performance for Compiler Design lab asked us to develop a SQL parser. It was easy for anyone who was regular.
The final performance of the Software Engineering lab was a pain. It was conducted online on Moodle and there was a tough quiz followed by 4 problems. Each problem covered a different concept of the subject. The time was not enough. Those who were unable to submit were required to mail the assignment to the professor. The viva for the same lab session was even more depressing. He asked us to draw a dependency diagram and I screwed it.
The mid-semester and end semester exams were difficult. We had to spend two weeks of sleepless nights to get good grades. Computer graphics was neither easy nor difficult. The subject was conceptually tough but the questions asked were easy and based on professor notes. Compiler Design was tough. The paper was very logical and required rigorous study. System Programming was logical but required a lot of mug up session to memorize the algorithms. Software Engineering was a horror that every student passed through. We mugged up 1500 presentation slides overnight. Each slide had at least 4 points. Everything got messed up in the brain. I wrote some answer for some question and realized that the question was not even close to the answer. I can shamelessly say that I still don't know a thing about Software Engineering even after 4 years of engineering. I was the only one who chose Operation Research as the breadth paper. On the day of the exam, they didn't even print the paper. When I asked for the paper, they got it printed 10 minutes late and then gave me the paper. There was only one problem per question. Each problem was so long that it required at least 45 minutes to solve them with no guarantee that your answer would turn out to be correct. Software Project Management was same as Software Engineering. Being the last exam of such a long semester, we studied only 8 hours, wrote only 2 hours and still managed to get an A.

Semester 7

Soft Computing - This course was concerned with fuzzy logic and neural networks. The course structure was shallow. But, being lectured by Dr K.S. Patnaik again, we were taught all the concepts of deep learning. The professor went beyond the scope to teach us ANN, CNN and RNN, different optimizers and derivation of mathematical formulations. He used the presentation slides of some deep learning course at IIT Kharagpur and forced us to study a lot of concepts way beyond the course. There were some students who were already well acquainted with deep learning. And some like me were lagging behind unless I finally decided to take up Andrew NG famous online course on deep learning.

Parallel and Distributed System - This course was about the algorithms that run on parallel systems to process multiple data simultaneously. The course was lectured by Dr D.K.Mullick. He was irritated from the college and its administration. He was frustrated by the fact that the professors of his department were lazy and no one till date has been able to use HPC at the college. He was good at teaching though. He taught the concepts with utmost patience. But none paid attention. For the course, it was very tough. The concepts were difficult especially the matrix algorithms and grid computing. Only a few studied those topics.

Data Mining and Data Warehousing - This course starts with simple database concepts, then goes around data association rules and finally ends with data science concepts. Each module was long and boring enough. The course was lectured by a TEQIP appointed professor Mr Rashmi Rathi Upadhyay. He taught us nothing. Literally nothing. All he did was to take attendance and tell us where the computer science industry is heading towards. He spent hours telling us one thing - "Machine learning important hai!". I am pretty sure that he knew nothing about the course structure. He always had a syllabus sheet in his hand. Even he got surprised when he saw that he has to teach so many concepts. After skipping several modules, when finally data science part came, he ended the lecture within 40 minutes saying "Padh lena. Important hai!".

Digital Image Processing - Only 5 students enrolled for this elective paper. Only one class was held and then we were asked to go to the Cryptography class. I forgot to enrol back to CNS and my results for the mid-semester exam was not declared. It took me 2 months to convince the Dean AP and Controller of Examination to enrol me back to CNS and change my result.

Cryptography and Network Security - This course was completely mathematical. There was nothing to mug up in this course which automatically made this one of my favourites. The course dealt with prime numbers, Euler's theorem, Chinese remainder theorem, encryption and decryption algorithm, DES, AES and RSA. The course was lectured by Mr Ashish Kumar, a professor appointed by TEQIP III. He was hardworking and taught us almost all the concepts. He conducted all his classes regularly and helped me a lot when I was stuck with Dean AP for getting my results.

Financial Management - This was the last breath paper by the department of management and the most killer one. The course was very vast and covered the concepts of the stock market, accounting, funding, debt management, cost and revenue management etc. The course was lectured by Mrs Shelly Srivastava. She was very strict. She was not someone with whom you can mess with. Initially, I found the course to be interesting and later I lost interest. But I believe, it was me who was at the fault. The professor tried her best to teach all the concepts and welcomed doubts.

Soft Computing Lab - We always used C++ or Java for coding purpose in any lab session until soft computing was introduced. We switched to Python and MATLAB. The lab session was taken up by Dr K.S. Patnaik. I have to give him credit for making us use modern language and IDE (Spyder) for the lab session. He used an online portal (Moodle) for evaluating the lab sessions. We were required to code the fuzzy logic and neural networks in Python from scratch. He was not concerned with the code and so we were able to fool him. We were in a group of four and the other three in my group were smart enough to code everything. I also contributed a little bit.

Project - The mentor for our final year project was Dr S K Saha. Our project was titled "Natural Language Processing for automating the evaluation of subjective answers". Shubham Prasad and Harsh Verma were my partners. Shubham Prasad was already acquainted with Deep Learning. I hardly did anything for the project primarily because I had the least interest in this field. I only ran the code written by Shubham by changing some parameters.

Semester 7 - The seventh semester had few courses and fewer credits. However, students were already placed and so many including me lost interest in Computer Science.
The assignment of Soft Computing Lab was to train a neural network model for Fashion MNIST data. In the final performance, we were asked to train a neural net for Handwritten Digit recognition and that too with changing hyperparameters. We coded a simple network and later used Keras for complex models. The viva was messed up. He asked us 10 questions and all of them were based on a deep understanding of maths behind deep learning. Thank god, we have to answer everything in a group of four.
For the semester project, we did nothing till the day before the final presentation. We were evaluated by Anup Keshri who was disappointed by the interest that we showed in the project.
As per the final semester exams are concerned, Soft Computing was so easy. But I screwed up. Parallel and Distributed Systems was difficult. Cryptography was difficult but interesting. It was the only paper that I tried solving after the exam to analyze my mistakes. Data mining was all about mugging up the hundreds of presentation slides and vomit on the paper. Financial management was very difficult for me. I spent most of my time in understanding the accounting principles only. Two quizzes were held and I was only able to solve the accounting problem. In the final exam too, I only solved the accounting problem and wrote rubbish in all other questions.

Semester 8

The eighth semester had no theoretical paper or lab session. We were only required to complete our semester project. Most of the students decided to take up internships in companies to get industrial experience. I chose to stay back at college and complete a research project under Dr Indrajit Mukherjee. The project was based on a statistical analysis of BRFSS data for cardiovascular diseases in the United States. Ashank Anshuman and Aakarshit Uppal were my partners. This time, we invested real effort in doing the project. We spent several weeks in understanding the initial raw data. Then we applied prediction algorithms in the final analysis. We used HPC, the most powerful system at BIT Mesra for training the models. Our mid presentation was messed up. The students (especially undergraduates) were known to simply copy paste projects on GitHub. No matter how much we claimed the project to be our original work, we were roasted by S.K. Saha who was our invigilator for the mid-presentation.

Creative Arts

There were 4 extra-curricular electives for the first four semesters. I chose Creative Arts. We were guided (or should I say mentored) by Mrinal K. Pathak. There were two sub-electives - Music and Fine Arts. I was a Music student. The first semester had Rabindra Sangeet, Raag Bhairav and Teen Taal. The second semester introduced 3 more Ragas and Taals. By the end of four semesters, we were required to know 12 Ragas and 10 Taals. Only one class was scheduled every week. The professor was lenient. He had a vast knowledge of almost everything in the world. No one could match his Music skills. He was not good at singing though. But he had the best instrumental skills. He could play 32 instruments, speak 8 languages and sing in 20 languages. He had travelled all around the world. He had experienced everything. Most of his lectures were motivational; he taught us nothing. He always said, "You have to learn it yourself!". The exams were taken by external examiners.
The end semester for semester 1 was a pain. I was not even able to get the notes right while singing.
By the end of the second semester, I was at least able to get to the right notes although my singing was still horrible. Bharat Mahotsav (a cultural fest) was held for one last time in April 2016. We had to work a lot in all aspects to make it a success. It covered Music, Fine Arts and Dramatics in the four zones of India. I was in the west zone.
Third semester was even daunting. There were a lot of new ragas now and I was still now able to get the first raag.
In the fourth semester, we had to perform on stage. It remains one of the most daunting memories of college. The examiner asked me to sing a raga and I messed up. Then he asked me to sing any favourite song. I sang "Ina Meena Deeka". He insulted me saying "Aapko music nahi aata toh kam se kam music ki beizatti toh mat kijiye!".

Infrastructural Facilities

The computer science department had average infrastructural facilities. But, contributions from other departments boosted the overall infrastructure.
  1. PARAM 10000, the supercomputer was dismantled and taken back by C-DAC just before we joined the institute. The stated reason was - No real use of such a powerful system in the Institute for a long time.
  2. Replacing PARAM 10000, High-Performance Computing was installed at Lab 1. It belonged to the Department of Chemical Engineering. It was the most powerful system at the college which was currently in use. I have a separate article on its architecture and use: Link
  3. The Computer Science department had 7 laboratories. Lab 1, 4 and 7 were for regular use for the undergraduates. The rest were for special use by professors and other staffs.
  4. Most of the systems in the 7 laboratories were windows workstation. Only a few systems had Linux (14 in Lab 7). Few laboratories had specific software like MATLAB or Rational Rose.
  5. The best thing that the college has is the interconnectivity of systems through LAN. You can log in to any system which is alive from anywhere in the campus where LAN is accessible. One could easily share files and host servers. Gaming was extremely popular on LAN. People spent hours playing Counter-Strike, Call of Duty, Dota etc. Such connectivity brought problems as well. You can access any router/switch. Phishing, ARP poisoning and MITM were popular and so one has to be very careful while browsing.
  6. Initially, Internet access was highly restricted. We could only use 100 MB in a day. The bandwidth offered was less than 50 KB/s. In a few days, the data limit was raised to 0.5 GB. But the speed remained pathetic. In the year 2016, the data limit was changed to 1 GB per day per user and we were quite happy with it for a long time. As 4G technology became popular, our data limit was raised to 3 GB per day with a bandwidth of 512 KB/s. This remained stable for the year 2018. By the end of 2018, the administration decided to remove the data limit. Now, as of April 2019, there was no data limit and the speed offered was 2 MB/s per login.
  7. DC file sharing system was available 24x7. One could share their files anytime, anywhere. Many preferred to use DC instead of Google to search for something. DC deteriorated over the years due to the availability of unlimited Internet bandwidth in the later years.
  8. The students of the Computer Science department are privileged to receive support from other departments:
    • The department of electronics had large hardware stock available for use. Obviously, one was supposed to get a lot of signatures before using them. Also, the simulation labs of electronics department were managed by the computer science department.
    • The department of mathematics worked closely with computer science. This was because of the fact that most of the professors from the mathematics department were researching in the field of algorithm analysis and they required coders to prove their results.
    • The department of remote sensing had set up several research labs in the R&D wing. Postgraduate students were their major users.
    • The college library was a blessing for every student. Being a student of a premier institute, one was allowed free access to all research papers of IEEE Digital Library, Springer Online Library, all e-books available at Proquest and a huge collection of classic books on Computer Science. All library resources were accessible on the LAN. The library had a separate volume section which contained printed research papers and journals collected in the last 50 years.
Administration

Absolutely rigid. They had sworn not to change themselves. The college administration was highly conservative. One was not even allowed to think of some new initiative. All the credits for the popularity of the college goes to its hard working students who formed clubs and societies to organize all the events that kept us engaged.

Overall

Hopefully, I had given you a detailed insight into how it is to study Computer Science at BIT Mesra. You can expect to have more or less a similar experience at the institute. If you ask me a final verdict, it would be - The institute might not be the best. But it has everything to offer for those who have the willingness to do great things. Just make sure to utilize everything that you have to get the best experience at the institute.

Comments

Popular posts from this blog

DDoS Attack on Bitotsav '19 Website

Setting up Machine Learning environment on High Performance Computing Server