teaching
Teaching and Training
Semester-length Courses
While teaching is not a regular duty in my current job, I did help Dr. Lizette Zietsman reorganize the Math Department’s freshman curriculum and develop the Math in a Computational Context series (now Math 2405H and 2406H) for advanced undergraduates in Spring/Summer 2011. I have also guest lectured for a number of semester length courses:
- Computer Science Foundations for Computational Modeling and Data Analytics (CMDA 3634)
- Advanced Statistical Computing (STAT 6984)
- Computing Skills for CMDA (CMDA 1984)
- Math in a Computational Context (Math 2405)
- Finite Elements and GPU Computing (MATH 5414)
- Programming for Geospatial Research (GEOG 4984)
- Industrial Systems Engineering Graduate Seminar (ISE 5024)
- Topics in Applied Mathematics: Finite Elements & GPU Computing (MATH 5414)
- Physics Department First Year Experience (PHYS 2326)
- Programming and Mathematical Problem Solving (Math 3054)
- Integrated Science Lab (COS 2984)
- Remote Sensing Interdisciplinary Graduate Eduation Program (IGEP)
- Metagenomics Workshop
- Dynamics of Water and Societal Systems Research Experience for Undergraduates (REU)
- SIAM Student Seminar
- INFORMS (ISE Student Group) Graduate Seminar
Web Tutorials
I put together the following series of video tutorials for getting started with ARC resources (unfortunately, accessing these requires a Virginia Tech login):
- Login with SSH
- Using SSH Keys and Agent to simplify logins
- Open OnDemand
- Software Modules via EasyBuild
- Software Modules (Legacy version)
- Interactive and Batch Jobs
Short Courses
I have taught the following research computing-related short courses for faculty and graduate students:
- Distributed-Memory Programming in MPI
- Shared-Memory Programming in OpenMP
- Linear Algebra Libraries
- Numerical Computing in Julia
- Parallel Matlab
- Parallel R
- Programming for the Intel Xeon Phi Architecture
- Introduction to Advanced Research Computing Resources and User Environment
- Introduction to High Performance Computing