Current SemesterIn Fall 2021 I am teaching CS35 (Data Structures and Algorithms).
This is the second semester in a broad introduction to computer science. Topics to be covered include object-oriented programming in C++, advanced data structures (such as priority queues, trees, hash tables, and graphs), advanced algorithms (and analysis of asymptotic complexity), as well as software design and verification. These topics are central to every sub-discipline in computer science, and also connect to central concepts across the sciences.
- CS65 - Natural Language Processing (Fall 2020)
This course will introduce you to a broad range of topics in the area of natural language processing including language modeling, part of speech tagging, syntactic parsing, vector semantics, text classification, machine translation, and applications to cognitive modeling and psycholinguistics.
- CS21 - Intro to Computer Science (Spring 2021)
This course will introduce fundamental ideas in computer science while also teaching you how to write computer programs. We will study algorithms for solving problems and implement solutions in the Python programming language. Python is an interpreted language that is known for its ease of use. We also introduce object-oriented programming and data structures. This course is appropriate for all students who want to learn how to write computer programs and think like computer scientists. It is the usual first course for computer science majors and minors.