Head teaching assistant for CS100 - Introduction to Computer Programming (2019 Fall, 2020 Spring, 2022 Spring)

Undergraduate course, ShanghaiTech University, Shanghai, 2019

I was the head teaching assistant for CS100 - Introduction to Computer Programming at ShanghaiTech university in 2019 Fall, 2020 Spring, and 2022 Spring semesters. I designed programming homeworks and online judge platforms for this course. These course assignments and projects can be found at this link.

Learning Outcomes

  • Syntax of C and C++ programming language
  • Concepts of compiling, assembling, linking, loading
  • Variables & functions
  • Operators
  • Structures
  • Control flow
  • Recursion
  • Object oriented programming (Encapsulation, Inheritance and Polymorphism)
  • Templates
  • CMake
  • Basic multi-thread programming
  • Essential new features of C++11/14/17
  • Basic functional programming
  • Dependencies management (Eigen, OpenCV…)