Course Notes for GSIs
-
CS 3L. Introduction to Symbolic Programming
Class/laboratory schedule: One hour of lecture and six hours of laboratory per week and approximately five hours of self-scheduled programming laboratory. Average of three hours self-scheduled programming laboratory.
- CS 10. The Beauty and Joy of Computing
- CS 39J. The Art and Science of Photography: Drawing with Light
- CS 39K. Information Technology Goes to War
- CS 39N. The Beauty and Joy of Computing
-
CS 61A. Structure and Interpretation of Computer Programs
Class/laboratory schedule: Three hours lecture, one and one-half hours of discussion and one and one-half hours of self-paced programming laboratory per week.
- CS 61AS. The Structure and Interpretation of Computer Programs (Self-Paced)
-
CS 61B/61BL. Data Structures
Class/laboratory schedule: Three hours lecture, one hour of discussion, two hours of programming laboratory and an average of six hours or self scheduled programming laboratory per week. Recently, more and more students have been able to do laboratory work on their home systems.
-
CS 61C/61CL. Great Ideas of Computer Architecture (Formerly Machine Structure)
Class/laboratory schedule: Three hours of lecture, one hour of discussion, and two hours of in-laboratory exercises designed to help students develop skills needed for writing and debugging C and assembly language programs, and for simulating hardware using schematic diagram-based design and simulation.
-
CS 70. Discrete Math & Probability
Class/laboratory schedule: Three hours of lecture per week, or three hours of lecture and two hours of discussion per week.
-
CS 150. Components and Design Techniques for Digital Systems
Class/laboratory schedule: Three hours lecture, one hour homework discussion, one hour lab lecture, and three hours lab per week. There are 6 preliminary labs to familiarize students with the basics of digital design and the design environment in the CS150 lab, followed by a 7 week project period. The final project is worth 30% of the grade.
-
CS 152. Computer Architecture & Engineering
Class/laboratory schedule: Three hours of lecture and one hour of discussion per week and one large design project.
-
CS 160. User Interfaces
Class/laboratory schedule: The course meets three hours a week for lectures covering assigned readings and new material. A one hour discussion section will be held each week
- CS 161. Computer Security
-
CS 162. Operating Systems and System Programming
Class/laboratory schedule: Three hours lecture and one hour of discussion per week.
-
CS 164. Programming Languages and Compilers
Class/laboratory schedule: Three hours lecture and one hour discussion per week. The lectures focus on fundamental techniques for language design and compiler implementation. The course also includes a significant semester-long project, in which teams of two students build a complete compiler.
-
CS 169. Software Engineering
Class/laboratory schedule: Three hours of lecture and one hour of discussion per week.
-
CS 170. Introduction to CS Theory
Class/laboratory schedule: Three hours lecture and one hour discussion per week.
-
CS 172. Computers and Complexity
Class/laboratory schedule: Three hours lecture and one hour discussion per week.
-
CS 174. Combinatorics and Discrete Probability
Class/laboratory schedule: Three hours of lecture and one hour of discussion per week.
- CS 176/194. Algorithms for Computational Biology
-
CS 184/284A. Foundations of Computer Graphics
Class/laboratory schedule: Three hours of lecture, one hour of discussion, and three hours of laboratory per week. This course provides a capstone design experience.
-
CS 186. Introduction to Databases
Class/laboratory schedule: Three hours of lecture and one hour of discussion per week.
-
CS 188. Introduction to Artificial Intelligence
Class/laboratory schedule: Three hours of lecture and one hour of discussion per week
-
CS C191. Quantum Information Science and Technology
Class/laboratory schedule: Three hours of lecture per week.
-
CS 194. Advanced Digital Animation
Art of Animation-Brian Barsky
- CS 194. Advanced Operating Systems Structures and Implementation
- CS 194/294. Cellphones as a Computing Platform
- CS 194. Concurrency
- CS 194. Distributed Systems
- CS 194. Engineering Parallel Software
- CS 194. Hackatorium: Agile Software Development Lab
- CS 194/294. Image Manipulation and Computational Photography
- CS 194. Internet of Everyday Things
- CS 194. Introduction to Computer Systems
- CS 194. Introduction to Data Science
- CS 194. Introduction to Machine Learning
- CS 194/294. Large-Scale Decision Making in Complex Environments
- CS 194. Next Generation Technologies for Personalized, Interactive, Digital Learning
- CS 194. Programming the Cloud
- CS 194. Security
- CS 194. Self-Pace Pilot: Structure and Interpretation of Computer Programs
- CS 194/294. Software Engineering for Scientic Computing
-
CS 194. Special Topics in Computer Science
Art of Animation-Brian Barsky
- CS 194. The Art and Science of Digital Photography
- CS 194/294. The Art of Animation
- CS 195. Social Implications of Computers
- CS 250. VLSI Systems Design
- CS 252. Grad Computer Architecture
- CS 260B. User Interfaces to Computer Systems
- CS 267. Applications of Parallel Computing
- CS 270. Combinatorial Algorithms and Data Structures
- CS 271. Randomness and Computation
- CS 273. Foundations of Parallel Computation
- CS 280. Computer Vision
- CS 281A. Statistical Learning Theory
- CS 281B. Advanced Topics in Learning and Decision Making
- CS 283. Advanced Computer Graphics
- CS 288. Artificial Intelligence Approach to Natural Language Processing
- CS 294. Behavioral Data Mining
- CS 294. Social and Information Networks: theory and practice
- CS 294. Special Topics
- CS 301. Teaching Techniques
-
EE 1. EECS: The First Course
Class/laboratory schedule: One-hour lecture and two hours lab per week.
-
EE 20N. Structure and Interpretation of Systems and Signals
Class/laboratory schedule: Two 1.5-hour lectures and one three-hour laboratory per week are mandatory. A one-hour weekly discussion is optional.
-
EE 40. Introduction to Microelectronic Circuits
Class/laboratory schedule: Three one hour lectures and one three hour laboratory per week. One hour discussion per week.
-
EE 42/100. Introduction to Digital Electronics
Class/laboratory schedule: Two 1.5 hour lectures, one 1 hour discussion per week. Homework is 12%, and exams are 88% of the course grade. Students are strongly encouraged to take EE43 concurrently as exams cover concepts seen in EE43.
- EE 104. Linear and Nonlinear Circuits
-
EE 105. Microelectronic Devices and Circuits
Class/laboratory schedule: Two one-and-half-hour lectures and one three-hour laboratory per week.
- EE 113. Power Electronics
-
EE 117. Electromagnetic Fields and Waves
Class/laboratory schedule: Three one hour classes per week and five minilabs (approximately one hour long each) to be completed during the course.
-
EE 119. Introduction to Optical Engineering
Class/laboratory schedule: Two 90 minute lectures and a one hour discussion section per week. Seven half hour lab demonstration sessions per semester.
-
EE 120/120L. Signals and Systems
Class/laboratory schedule: Two two-hour lectures and one one-hour recitations per week.
-
EE 121. Introduction to Digital Communication Systems
Class/laboratory schedule: Three one-hour lectures and one-hour discussion per week.
-
EE 122. Introduction to Communication Networks
Class/laboratory schedule: Two ninety-minute lectures and one discussion section per week.
-
EE 123. Digital Signal Processing
Class/laboratory schedule: Three hours lecture, one-hour discussion and one-hour lab per week.
-
EE C125/C215A. Introduction to Robotics
Class/laboratory schedule: Three hours of lecture and one hour of recitation per week.
-
EE 126. Probability and Random Processes
Class/laboratory schedule: 3 hours of lecture plus 1 hour of discussion per week.
- EE 127A. Optimization Models in Engineering
-
EE 128. Feedback Control Theory
Class/laboratory schedule: Three hours lecture, three hours lab per week.
-
EE 130/230M. Integrated-Circuit Devices
Class/laboratory schedule: Three hours lecture and one hour discussion per week.
-
EE 131. Semiconductor Electronics
Class/laboratory schedule: Three hours lecture per week plus several one-hour mini-laboratories.
- EE 134. Fundamentals of Photovoltaic Devices
- EE 137A/137B. Introduction to Electric Power Systems
- EE 137B. Introduction to Electronic Power Systems
-
EE 140/240A. Linear Integrated Circuits
Class/laboratory schedule: Three hours of lecture and one hour lab per week.
-
EE 141. Introduction to Digital Integrated Circuits
Class/laboratory schedule: Three hours lecture, one-hour discussion and three hours lab per week.
-
EE 142/242A/242M. Integrated Circuits for Communication
Class/laboratory schedule: Three hours lecture and one hour discussion. There is an optional laboratory where students design, build, and test 900 MHz front-end building blocks such as amplifiers, mixers, and oscillators. Graduate students are required to do a challenging design project.
-
EE 143. Microfabrication Technology
Class/laboratory schedule: Three hours lecture and three hours lab per week.
- EE 144. Introduction to Computer-Aided Design of Integrated Circuits
- EE 145A. Sensors, Actuators and Electrodes
- EE C145B. Medical Imaging Signals and Systems
-
EE 145L. Introductory Electronic Transducers Laboratory
Class/laboratory schedule: Two hours lecture and three hours laboratory per week.
-
EE 145M. Introductory Microcomputer Interfacing Laboratory
Class/laboratory schedule: Three hours lab and two hour lecture per week.
- EE 147. Introduction to Microelectromechanical Systems (MEMS)
-
EE 192. Mechatronic Design Laboratory
Class/laboratory schedule: 1 1/2 hour lecture, 1 hour lab demo and typically 10 hours lab work per week to complete weekly design checkpoints.
- EE 194. Power Systems Engineering
- EE 219B. Logic Synthesis for Hardware Systems
- EE 221A. Linear System Theory
- EE 221B. Multivariable Feedback Systems
- EE 222. Nonlinear Systems - Analysis, Stability and Control
- EE 225B. Digital Image Processing
- EE 225C. VLSI Signal Processing
- EE 225E. Principles of Magnetic Resonance Imaging
- EE 226A. Random Processes in Systems
- EE 227A. Introduction to Convex Optimization
- EE 231. Solid State Devices
- EE 232. Lightwave Devices
- EE 235. Nanoscale Fabrication
- EE 240/240B. Advanced Analog Integrated Circuits
-
EE 241/241B. Advanced Digital Integrated Circuits
10 hour GSI only
- EE 245. Introduction to MEMS Design
- EE 246. Microelectromechanical Systems
- EE 249. Embedded System Design: Models, Validation, and Synthesis
- EE 301/375. Teaching Techniques for Electrical Engineering
- Advanced Topics in Artificial Intelligence
- Introduction to Embedded Systems
