Note to prospective research students

This page assumes that you have learnt about my research interests and gone through the CompL page, and are interested in the area.

What do I expect?

CS skills:

If you want to work with programming languages, you need to be a good programmer. Even if your problem is theoretical, you need to understand the nuances of the language you are working for. In addition, it is important to understand the way a computational system works; for example, the elements involved in the lifecycle of a program as it travels from high-level code to assembly to finally the hardware.

With high probability, you would enjoy working in this area if you liked at least two of your BTech courses from programming languages, compilers, computer organization/architecture, operating systems, algorithms and data structures, and theory of computation.

Over the course of your research, you would also be expected to get familiar with working on the command-line (Unix instead of Windows), and use tools such as LaTeX, Makefiles, shell scripts, etc.

Soft skills:

Sincerity to your work, honesty with yourself and your advisor, and integrity towards the institution and the society are general ingredients to a happy survival. It is perfectly fine if you don't know something (nobody knows everything and we constantly learn from each other), but accepting the circumstances instead of cooking up things, and the desire to improve, are the keys to ensuring progress.

Once you finish a particular piece of work, you need to write technical documents (reports, papers) and present your accomplishments (conference talks, institutional seminars) in English. After you join, it will help to inculcate the habits of reading (technical/non-technical) and writing (thoughts/ideas/progress) in English to fill up gaps, if any.

What can you expect?

Regular meetings, group discussions, technical excitement, openness to questions, and friendly help in all relevant matters.