Teaching
Courses I taught at ICT at various points
ITCS 125 - Applied Statistics for Computing (undergrad Y1)
This course started with basic probability and progresses to hypothesis testing with P-values and confidence intervals via the Central Limit Theorem.
ITCS 159 - Software Lab for Basic Scientific Problem Solving (undergrad Y2)
This course introduced students to various software tools they may find useful.
ITCS 306 - Numerical Methods (undergrad Y2)
This course covered problem solving using a variety of numerical methods, including root finding and linear regression. My half of the course covered regression, curve fitting and numerical integration and differentiation.
ITCS 531 - Mathematics for Computer Science (Ph.D Y1)
This course covers mathematical techniques that may be useful for computer science researchers. My half of the course was a rigorous, proof based introduction to elementary number theory for cryptography, propositional and first-order logic, basic combinatorics and linear algebra.
ITCS 532 - Foundations of Computer Science part A (Ph.D Y1)
My half of this course covered Turing machines, computability, the Halting Problem, reduction, and introduces elementary concepts of computational complexity.
ITCS 643 - Software Engineering (MSc. Y1)
I used to teach a short module on formal methods in software engineering
ITCS 601 - MSc. Seminar in CS (MSc. Y1)
I occasionally supervised some sessions of this series.