Undergraduate Coursework

Structure and Interpretation of Computer Programs

CS61A is the entry course at Berkeley that exposes students
to functional programming in Python and scheme.

Data Structure

CS61B goes in depth with object oriented programming and in depth study of effiecient programs, data structures and algorithms. CS61B's topics range from sorting algorithms to graphs, A*, and data structures.

Designing Information Devices and Systems I

EE16 A is the starting point of EECS students in design courses, machine learning, and engineering.

Designing Information Devices and Systems II

EE16B finishes the EE16A/B pipeline with concepts in circuit desing, SVD, and machine learning.

Discrete Mathematics and Probability Theory

CS70 is the infamous math course at Berkeley. Discrete ideas such as modular arithmetic, graph theory,
computablity and countablity, probablity theory, and even continous Probability gives a depth to this course.

Great Ideas in Computer Architecture (Machine Structures)

CS61 C completes the Computer Science 61 series with the purpose of going to the lower levels of abstraction
and programming in C and RISC V.

Computer Security

CS 161 Computer Science 161 is the security class at Berkeley. Ideas in web securty, network security, and code vulnerabilities are introduced in CS161.

Effiecient Algorithms and intractable Problems (CS 170)

CS170

Introduction to Digital Design with FPGA lab

EECS151

Operating Systems and System Programming

CS162

Computer Architecture and Engineering

CS152