Teaching

 

New class

In Fall 2020, I designed a new online course "Big data for reliability and security" (ECE 695). This has been offered online through edX and also for on-campus students. This Fall (Fall 2021), it runs for five weeks, from Nov 3. Over the last two offerings it has been taken by over 300 students from across the world.

 

Course information (PDF)

Here are two sampler lectures, on security aspects of big data.

  1. Lecture 1: Basics of ML security [ Slide deck ]

  2. Lecture 2: Federated learning security, social network security [ Slide deck ]

Student feedback from the IIT Kharagpur lectures on the topic (September 2021). [ Excel ]

 

Graduate level class

Every Fall since Fall 2016, I have been teaching a graduate-level course titled "Fault Tolerant Computer System Design" (ECE 60872/CS 59001). The course can be taken by any graduate student with some programming (C, C++, or Java; some scripting language) and OS experience; it is not meant only for advanced PhD students.

 

This class was previously (till Fall 2016) taught as ECE 695/CS 590.

 

Service learning class

I am involved with a service learning program at Purdue called EPICS. Through this, I have been working with a team of undergraduate students building innovative software for community non-profit organizations – Home with Hope and the Tippecanoe County Probation Department. Our team is called “Database and Innovative Software for the Community” (DISC). I was awarded a service learning grant from Purdue University in 2006-07 for this project.

 

List of classes taught

 

In previous semesters I have taught:

·  ECE 695 (earlier ECE 572): Fault Tolerant Computer Systems (Spring 03, Spring 04, Spring 05, Spring 07, Spring 09, Spring 11, Fall 12, Fall 13, Fall 14, Fall 15) – a research oriented course on building dependable computer systems

· ECE 369: Discrete Mathematics for Computer Engineering (Typically every Spring) – a junior level undergraduate course

· ECE 368: Data Structures and Algorithms (Fall 02, Fall 03) - a junior level undergraduate course

Here is some advice for Plan of Study (PoS) of graduate students whose advisory committees I am serving on. [ html ]