MathSoc, the students' society of the Faculty of Mathematics at the University of Waterloo, awarded me 1995-96 Instructor of the Year.
Term | Course | Size | Title |
Introduction to the Theory of Computation: | |||
S24 | CSE355 | 120 | Intro Theory of Computation |
F23 | CSE355 | 170 | Intro Theory of Computation |
F23 | CSE355 | 130 | Intro Theory of Computation |
S23 | CSE355 | 15 | Intro Theory of Computation |
F22 | CSE355 | 130 | Intro Theory of Computation |
S22 | CSE355 | 125 | Intro Theory of Computation |
F21 | CSE355 | 126 | Intro Theory of Computation |
S21 | CSE355 | 140 | Intro Theory of Computation |
F20 | CSE355 | 50 | Intro Theory of Computation |
S20 | CSE355 | 125 | Intro Theory of Computation |
F19 | CSE355 | 100 | Intro Theory of Computation |
S19 | CSE355 | 90 | Intro Theory of Computation |
F18 | CSE355 | 75 | Intro Theory of Computation |
F18 | CSE355 | 70 | Intro Theory of Computation |
S18 | CSE355 | 65 | Intro Theory of Computation |
S17 | CSE355 | 366 | Intro Theory of Computation |
F16 | CSE355 | 350 | Intro Theory of Computation |
S16 | CSE355 | 275 | Intro Theory of Computation |
F15 | CSE355 | 110 | Intro Theory of Computation |
F14 | CSE355 | 132 | Intro Theory of Computation |
F13 | CSE355 | 82 | Intro Theory of Computation |
S13 | CSE355 | 60 | Intro Theory of Computation |
S12 | CSE355 | 100 | Intro Theory of Computation |
S11 | CSE355 | 82 | Intro Theory of Computation |
F10 | CSE355 | 43 | Intro Theory of Computation |
S09 | CSE355 | 61 | Intro Theory of Computation |
F06 | CSE355 | 55 | Intro Theory of Computation |
Computer Architecture I: | |||
F20 | CSE 420 | 99 | Computer Architecture I |
F12 | CSE 420/598 | 64 | Computer Architecture I |
S08 | CSE420 | 40 | Computer Architecture |
F07 | CSE420/598 | 68 | Computer Architecture |
Theory of Formal Languages: | |||
F14 | CSE 457/598 | 35 | Theory of Formal Languages |
F12 | CSE 457/598 | 45 | Theory of Formal Languages |
F10 | CSE 457/598 | 8 | Theory of Formal Languages |
Combinatorial Algorithms and Intractability: | |||
F14 | CSE 550 | 45 | Combinatorial Algorithms and Intractability |
Foundations of Algorithms: | |||
F22 | CSE551 | 140 | Foundations of Algorithms |
S22 | CSE551 | 130 | Foundations of Algorithms |
F21 | CSE551 | 165 | Foundations of Algorithms |
S21 | CSE551 | 168 | Foundations of Algorithms |
F19 | CSE551 | 168 | Foundations of Algorithms |
S18 | CSE551 | 80 | Foundations of Algorithms |
F15 | CSE551/591 | 135 | Foundations of Algorithms |
Randomized and Approximation Algorithms: | |||
S24 | CSE 552 | 12 | Randomized and Approximation Algorithms |
F13 | CSE 552 | 33 | Randomized and Approximation Algorithms |
F10 | CSE 552 | 17 | Randomized and Approximation Algorithms |
Advanced Theory of Computation: | |||
S23 | CSE 555 | 7 | Theory of Computation |
S22 | CSE 555 | 35 | Theory of Computation |
S20 | CSE 555 | 30 | Theory of Computation |
S19 | CSE 555 | 20 | Theory of Computation |
S17 | CSE 555 | 6 | Theory of Computation |
S16 | CSE 555 | 25 | Theory of Computation |
S15 | CSE 555 | 49 | Theory of Computation |
S14 | CSE 555 | 30 | Theory of Computation |
S13 | CSE 555 | 45 | Theory of Computation |
Research Topics: | |||
S19 | CSE591/494 | 30 | Popularity in Storage Systems |
F16 | CSE691 | 6 | Interaction Testing Theory and Practice |
S10 | CSE591 | 4 | Perfect Hashing |
S08 | CSE591 | 6 | Interaction Software Testing |
S06 | CSE591 | 7 | Interaction Software Testing |
F04 | CSE591 | 9 | Network Reliability |
F03 | CSE591/CBS598 | 14 | Genomics: Sequencing and Mapping |
Others at Arizona State University: | |||
S14 | CSE591/MAT591 | 25 | Combinatorial Design Theory |
S12 (x3) | ASU 101 | 19 | The ASU Experience |
F11 (x2) | CSE301 | 55 | Ethics in Computing |
S11 | CSE591/MAT591 | 25 | Combinatorial Design Theory |
F09 | CSE424 | 19 | Systems Capstone II |
S09 | CSE301 | 55 | Ethics in Computing |
S07 | CSE434 | 39 | Computer Networks |
S07 | IEE598 | 26 | Optimization II (Integer Programming) |
S06 | CSE412/598 | 35 | Database Management |
F05 | CSE412/598 | 35 | Database Management |
F05 | CSE 534 | 20 | Advanced Computer Networks |
F04 | CSE434 | 27 | Computer Networks |
F03 | CSE434/598 | 55 | Computer Networks |
F02(2) | CSE310 | 80 | Data Structures |
Pre-2001 at Vermont, Waterloo, Auckland, Toronto, Saskatchewan: | |||
S01 | CS 103 | 30 | Programming Languages |
F00 | CS201 | 33 | Operating Systems |
S00 | CS 222 | 33 | Computer Architecture |
F99 | CS 101 | 39 | Computer Organization |
F98 | CS 266 | 23 | Network Security and Cryptography |
F97 | CS 265 | 22 | Computer Networks |
S97 | CS395 | 10 | Cryptography |
F96 | CS243 | 17 | Theoretical CS |
96(1st) | 415(CS).701 | 15 | Network reliability |
F95, F94, F92 | C&O438/638 | 15 | Combinatorial Computing |
F94, F91 | C&O434/634 | 14 | Combinatorial design |
S94 | E&CE203 | 90 | Discrete Math for Engineers |
W94, F92, S89(twice), W88 | C&O230 | 50 | Introduction to combinatorics |
W94, S88 (twice) | C&O351 | 40 | Network Flows |
F92, F91, S91, S88 | C&O454 | 30 | Scheduling theory |
F91 | C&O750B/CS756 | 10 | Topics on network reliability |
S89 | MATH 134b | 100 | Linear algebra |
W89 | MH371A | 24 | Discrete mathematics 1 |
W88 | C&O380 | 12 | Invention and discovery in mathematics |
S87 | CS766 | 14 | Topics in network algorithms |
S87, F86, S85 | CS466/666 | 40 | Analysis of algorithms |
F86 | CS234 | 150 | Programming principles |
F86 | C&O739/CS756 | 15 | Combinatorics of network reliability |
F85 | CSC2427F | 8 | Topics in graph theory |
S85 | CS756 | 17 | Topological design of networks |
S85, S84 | CS450/650 | 35 | Computer architecture |
W85 | CS435 | 30 | Computer Applications |
F84 | CS462/662 | 20 | Formal Languages and Parsing |
F84 | CS354/554 | 60 | Software Systems |
S84 | CS766 | 12 | Network Reliability: Algorithms and Complexity |
F83 | CMPT 419.3 | 3 | Computability and Complexity Theory |
F83 | CMPT 416.3 | 12 | Combinatorial and Geometric Algorithms |
F83, W83 | CMPT 230.6 | 70 | Software Design |
F83, F82, F81, F80 | CMPT 882.3 | 3 | Topics in the Theory of Computing |
W83 | CMPT 361.3 | 20 | Theory of Computation 2 |
W83 | CMPT 424.3 | 45 | Computer Communication Networks |
F82, W82, W81 | CMPT 313.3 | 90 | Software Design |
W82 | CMPT 419B | 1 | Introduction to Combinatorics |
W82 | CMPT 326B | 70 | Theory of Computation 1 |
F81 | CMPT 427A | 12 | Analysis of Algorithms |
F81 | CMPT 212A | 70 | Assembly Language Programming |
W81 | CMPT 419B | 5 | Recursive function theory and computability |
F80 | CMPT 180A | 240 | Introduction to CS |
F80 | CMPT 375A | 75 | Computing for accounting majors |
W80 | CSC 208S | 40 | Assembly Language Programming |
S79 | CSC 258H | 50 | Computer Organization |