Welcome to Term I of the Primer CS Degree program.

In the Ist term, we will be focussing mostly on Mathematical Courses. The effort will be to make programmer-friendly courses by using programming ( Python and Haskell ) to solve mathematical problems.

Below are the courses that are slated to be released and their tentative release schedule.  

December 2021

  • Python Regular Expressions
    Covers the fundamentals of working with Regular Expressions and how to use them in Python effectively.
  • Python II-IV
    Covers Object-Oriented Programming, Advanced Python Programming Concepts, and Design Patterns.
  • Data Structures and Algorithms
    An overview of commonly and less commonly used data structures and algorithms as well as how to implement them using Python  

January 2022

  • Short Sweet Haskell
    A short course designed to give learners a quick intro to Haskell. This course is a necessary prerequisite for learning Discrete Mathematics.
  • Functional Data Structures
    An overview of Data Structures implemented in a purely functional language such as Haskell. This course is based on the book Purely Functional Data Structures By Chris Okasaki
  • Discrete Mathematics
    Covers Discrete Mathematical Structures. We will be using Haskell as an aid to learning Discrete Mathematics. This course is based on the book Discrete Mathematics and Functional Programming by Thomas VanDrunen.

February 2022

  • Linear Algebra
    Covers concepts such as Vectors, Matrices, Eigenvalues, and Eigenvectors as well as details how they are used in real-world problems. This is course is based on the book Introduction to Linear Algebra, by Gilbert Strang.
  • Computational Linear Algebra
    In this course, we will take a look at the applications of linear algebra. We will be using Python to implement code to solve interesting real-world problems. This course is based on the Book Coding the Matrix by  Philip N. Klein.
  • Calculus
    A set of courses covering Single Variable Calculus and Multi-Variable Calculus with a focus on applications.

March 2022

  • Probability & Statistics
    It covers basic concepts of statistics and the logic of statistical reasoning.
  • Bayesian Statistics
    Covers drawbacks of frequentist statistics and introduces the field of Bayesian statistics and interference.
  • Numerical Methods
    Introduces numerical method and numerical analysis. We will be using Python to solve numerical methods problems.
  • Convex Optimization
    Covers recognizing and solving convex optimization problems. This course is based on the book Convex Optimization by Stephen