GPA and percentages are weighted by recorded letter grades. UW
comparisons use the same terms. Cross-listed courses count once within
this department and once across UW; department totals should not be
added together. Grade counts are not unique students. Offering counts
reflect captured records, not a complete historical schedule.
Spring 2027
Recorded this term
8585courses with offerings
113113instructors recorded
Grades have not been recorded for this term. Historical results remain
in the overview above.
Computers in Medicine covers microprocessor-based medical instrumentation, emphasizing real-time ECG analysis through labs and projects involving biomedical digital signal processing algorithms.
Students noted that homework was the primary basis for learning and was very similar to exams. Some found the homework difficult even with lectures, requiring significant independent work outside of class.
Homework assignments were challenging and time-consuming, requiring significant effort. Students found the class became much easier when they actively collaborated with their group and attended discussion sessions.
Machine Organization and Programming introduces computer system structures and C programming, focusing on low-level performance impacts like virtual memory, caching, and assembly.
Software Engineering covers designing and modifying large software systems, focusing on processes, architectures, design patterns, and testing, with a substantial team-based programming project.
The course was described as extremely hard, particularly for undergraduates, with one student noting it made their brain hurt. TAs and the professor went the extra mile to break down difficult concepts.
The workload involved reading papers and completing a semester-long project. While students found the paper readings challenging, they described the exams as straightforward or easy relative to the course content.
Covers probabilistic, algebraic, and geometric data models, mathematical analysis of learning algorithms and optimization methods, and ML applications.
Computer Vision covers fundamentals of image analysis, including acquisition, geometry, enhancement, scene characteristics, segmentation, shape and texture analysis, and parallel algorithms.
Introduction to Optimization covers mathematical optimization from a modeling and solution perspective, focusing on formulating discrete and continuous optimization problems and equilibrium models.
Past student reviews · Michael Ferris, Laurent Lessard
Homework assignments were difficult and time-consuming, with one student noting they would ruin their social life, while another found them helpful for learning.
Introduction to cryptography covering secure transmission of digital information, distinguishing perfect from computational security, and introducing technical aspects.
Matrix Methods in Machine Learning covers linear algebraic foundations including SVD, regression, and regularization applied to classification, clustering, and neural networks.
Introduction to Artificial Neural Networks covering theory and applications including MLPs, CNNs, RNNs, SVMs, and genetic algorithms for control, pattern recognition, and object detection.
The course had a huge workload with many homeworks, exercises, and a group project. The first half was very difficult without a strong background in Linear Algebra or Calc 3.
Cooperative Education Program providing full-time workplace experience where students apply engineering theory and practical knowledge in a professional setting.
Exams were described as fairly straightforward if students completed the review assignment and period exercises. Preparing adequately for class was considered sufficient for success.
The flipped format required studying before class, and the material demanded a mix of memorization and application that could stack up quickly if you fell behind.
A laboratory course covering Kirchhoff's laws, inductors, operational amplifiers, and frequency response through hands-on circuit assembly and measurement.
The labs were described as lengthy, and the final test was open book, open note, and open internet. However, students noted that the practice bench exam did not resemble the actual exam.
Laboratory course on terminal characteristics, speed control, voltage regulation, and system applications of electric machines, emphasizing experimental problem-solving.
Laboratory course introducing semiconductor material and device properties via characterization techniques, covering charge carriers, energy bands, space charge regions, carrier transport, light emission, and lattice vibrations.
Optoelectronics Lab covers light detection, generation, and transmission with LEDs, lasers, and optical fibers; students perform optical characterization measurements.
The primary burden came from writing 5-8 page individual lab reports after each session. Students noted these reports required detailed sections and took approximately five hours to complete.
Introductory Microprocessor Laboratory covers software and hardware experiments with microcomputers, including assembly language programming, I/O interfacing, and interrupt processing.
Hands-on lab course introducing various sensor types and addressing implementation issues like interference, isolation, linearity, amplification, and grounding in electronic circuits.