Thursday 6 June 2019

Some things to study before joining an IIT for masters program

I personally feel one should know these things before joining IIT delhi or IIT's in general. You can learn them during your semester but it creates immense pressure very often as every assignment would come with strict deadlines.

So don't waste your valuable time. Enjoy but be in touch with some of these at the same time !!! Your life would be then chill here at IIT Delhi...

0. Learn Typing - It is important actually. it was one of the criteria for passing one of our courses. Your typing speed should be 40WPM with eyes open and 10-15 WPM with eyes close. This takes a while but with practice you would be able to do it.
There are many good websites for doing this.
You can google.
https://www.typing.com/

1. C++/ Java - You need to be proficient in at least one of the 2 subjects. But still it is recommended to know the basics(conditionals, Iterations, functions, Arrays, Strings, Operators, Libraries-STL in C++ and Collections class in Java) of both the subject. It's a must as professors here give assignments with an understanding that you know decent programming. Also your TA duty would require you know these languages. For instance my TA duty in 1st semester was in COL100 course where C++ was being taught to the students. I did most of my assignments in Java, you can prefer C++ also.
https://www.javatpoint.com/java-tutorial
https://www.javatpoint.com/cpp-tutorial

2. Latex - This is required as you need to submit your report of assignments in PDF format generated from Latex. It looks more elegant and most of the courses also would be requiring the same.
https://www.latex-tutorial.com/tutorials/

3. Python - This would be handy in 2nd semester for sure. In first semester in some assignments it may help. Try to know the basics (conditionals, Iterations, functions, Strings, Operators). I suggest you go through the free code-academy python lectures. It's interactive and good for beginners.
https://www.codecademy.com/learn/learn-python

4. Probability and Statistics - You would find probability in almost all the courses here at IITD. So keep your foundation strong in this subject. Really strong !!!...In statistics mean, median, mode, weighted avg etc. Just the basics you should know.

5. Linux/Unix Commands - Basic linux commands like cd, touch, grep, mkdir, ssh, scp...etc. Do read it and practice a bit. Linux is all what you have to deal with at IIT Delhi.
https://www.tutorialspoint.com/unix/unix-useful-commands.htm

if you still get time after completing the above then try these:-

6. Read proofs from cormen that were not required in Gate. Like amortized analysis of binary heaps, binomial heaps...Algorithms for all versions of Knapsack....Randomized algortihms...etc...

7. Learn PHP - This really helped me in many of the tasks. PHP is basically a web scripting language which is used to build dynamic websites. You should know HTML, CSS, Javascript i assume.
https://www.w3schools.com/php/

8. Try to build a parser from scratch using C++, Java or Python. Suppose the task is to parse every print statement of C++ how will you do that? The input would be just like "print("hello world");".
You should be able to parse it and generate the parse tree and display it. Here it would be few tokens like "print", "(", "hello world", ")", ";" . Then do a traversal of the parse tree generated and print in in-order. You can google about other parser related question !!! I just made it up !!!
https://www.codechef.com/MAY14/problems/COMPILER

9. Try to learn the language PROLOG. It's bit different from the usual way we code in other languages. It is optional, you will learn here !!!
http://www.swi-prolog.org/pldoc/man?section=quickstart

10. Shell Scripting - It actually helped me in my TA duty and ultimately i got to do project under Parag sir by impressing him. This is hard though, you can skip it !!!
https://www.javatpoint.com/shell-scripting-tutorial


Most of my friends felt bit tougher because they lacked some of the above skills and they had to patch up for it which took a while. So if you can patch up before coming here, then you be bit more relaxed and your life would be easy going.

Good luck....!!! Cheers !!!

3 comments:

  1. Hi Ruturaj

    How are you .?

    I am an entrepreneur and have come up with a health related startup for animals welfare

    I want a guy with cs:it background to be a tech lead and important part of our startup

    If you are interested to be a part of startup do let me know

    1 thing i can guarantee you is that it is a revolutionary idea and gonna bring a positive change in our society

    Pls check your fb messe

    ReplyDelete