teaching
Materials for full term courses, short courses and tutorials that I've taught or created.
University of Colorado Boulder
- Teaching Assistant [Fall 2025] : CSCI-3155: Principles of Programming Languages
- Graduate Part-Time Instructor [Fall 2022, Spring 2023, Fall 2023] : CSCI-3104: Algorithms [Best Graduate Part Time Instructor - CU Boulder]
- Teaching Assistant [Spring 2022, Summer 2022] : CSCI-3104: Algorithms [Outstanding Teaching Assistant Award - Dept. of Computer Science]
Below is a sample lecture notes from one my lectures as a Graduate Part-Time Instructor. In this lecture I continue with Quicksort and its modifications (introduced in the previous lecture) to undergraduates students. We end the lecture by working through a proof that shows Randomized Quicksort algorithm always leads to \(O(nlog_e n)\) runtime, where \(n \in \mathbb{N}\) is the size of the array/list
If you need more such lecture notes on concepts in Algorithms, feel free to email me!
YouTube
In my free time I seek to create educational content on YouTube. Using Manim, an animation engine developed by Grant Sanderson of 3Blue1Brown, I seek to make beautiful and clear visualizations of concepts in computer science especially on Data Structures and Algorithms.
- Dijkstra’s Shortest Path Algorithm
- Ford-Fulkerson Algorithm
I plan on creating more such content in the future.
Principles of Programming Languages
Had the privilege of giving a guest lecture on “Functors and Anonymous Functions in Scala” for CSCI-3155: Principles of Programming Languages course at University of Colorado Boulder [Fall 2025].
Content taken from my advisor’s previous lecture on the same topic.
- (upcoming… A Comprehensive Guide for Algorithms)