• LaTeX:
    First of all, it is pronounced "lay-tek" or "lah-tek" and yes, I'm a stickler for the correct pronunciation. It is a type-setting language that was created to produce "professional-looking" documents. Using LaTeX, one can create many documents such as Resume/CV, manuscripts, cover letter, theses and much more. The main reason for creating documents in LaTeX is because of its ease of use. Another advantage is that it has certain programming language like functionality that other text editors don't possess, which makes it a mighty powerful tool. Still not convinced? Check out the slides from the introductory workshop I conducted as part of the Computational Sciences Club at UB.

  • Quaternions:
    They are extremely useful mathematical objects with applications mainly in 3D rotation and rotation sequences. Just like the complex numbers (which are a sum of an imaginary and real part), quaternions are a sum of a scalar and a vector (yup, you read that correctly!!) and provide a much more elegant representation of the 3D rotation as compared to the rotation matrix. Not only are they elegant, but also simple to understand and are much more efficient computationally. They typically find applications in the gaming industry where the game's graphics require quick computations of several rotations. Impressed? Check out the slides from a Kofke research group meeting that I presented at.

  • Path Integrals:
    Derived by Richard Feynman, the Path Integral (PI) formalism is an extremely important tool not just in quantum mechanics but also in various other fields of science. I was hooked onto the book 'Quantum Mechanics and Path Integrals' by Richard Feynman right from the first chapter where he explains complex physical phenomena via simple thought experiments and basic mathematics. The elegance and simplistic nature of the derivation was enough for me to decide and focus my Ph. D. research in developing algorithms for use in Path Integral Monte Carlo method. Hooked? Check out the slides from a Kofke research group meeting that I presented at.

  • Massively Open On-line Courses (MOOCs):
    Sparked by my interest in the area of computer science, I decided to learn one of the fundamental courses titled 'Algorithms I' which was offered for free in Coursera. It was a very interesting course that introduced me to basic data structures and associated algorithms for searching and sorting. I intend to complete the second part of the course 'Algorithms II' which covers more advanced algorithms like graphs, breadth-first search, depth-first search etc. As I was very much interested in learning the basics of web development, I decided to learn HTML, CSS and JavaScript languages. I also completed the related homework assignments in both courses.

  • Open source software development:
    After contributing to Etomica during my Ph. D. and also listening to inspiring talks by Marcus Hanwell of Kitware Inc., I realized that contributing to open source projects is a really cool way of learning different programming languages. Additionally, it also builds up your resume significantly and clearly indicates your ability to code. Having not majored in computer science in undergrad or grad school, a github-type profile that lists your contribution to various software can help convince future employers of your programming skills. Although I haven't started contributing yet, I'm very keen on getting started with open source software contribution.

  • AWK:
    AWK is a simple yet powerful programming language used for data processing, extraction and reporting. Some highlights/advantages include simple and compact nature of code to perform otherwise complicated operations, the relative ease of reading/writing code in AWK, not having to worry about the type of data we are working with, ease of handling multiple input files and many others. Check out the slides from the introductory workshop I conducted as part of the Computational Sciences Club at UB.

  • Badminton
  • Pool
  • Poker
  • Board games
  • Running/Hiking
  • Camping
  • Traveling