Madhu Sudan: Links to some courses I’ve taught
At Harvard, by topic
- Algorithms and Complexity (Harvard CS 125)
- Applied Algebra
- Computational Complexity (Harvard CS 221)
- Data Structures and Algorithms (Harvard CS 124)
- Essential Coding Theory
- Information Theory in Computer Science
- Introduction to Theoretical Computer Science
- Seminar on Effective Research Practices & Academic Culture
At MIT, by topic
- Introduction to Algorithms (MIT 6.046)
- Automata, Computability and Complexity (MIT 6.045)
- Spring 2000
- Spring 2014
- Advanced Complexity Theory (MIT 6.841)
- Transmission of Information (6.441)
- Essential Coding Theory
- Fall 2001 (under the title “Algorithmic Coding Theory”)
- Fall 2002
- Fall 2004
- Spring 2008
- Spring 2013
- Algebra and Computation
- Approximability of Optimization Problems
By term
- Fall 1997: Introduction to Algorithms (MIT 6.046) (w. Shafi Goldwasser).
- Spring 1998: Structure and Interpretation of Computer Programs (MIT 6.001) (Recitations)
- Fall 1998: Algebra and Computation
- Fall 1999: Approximability of Optimization Problems
- Spring 2000: Automata, Computability, and Complexity (MIT 6.045)
- Fall 2000: Introduction to Algorithms (MIT 6.046) (w. Seth Teller)
- Spring 2001: Introduction to Algorithms (MIT 6.046) (w. Piotr Indyk)
- Fall 2001: Algorithmic Coding Theory
- Spring 2002: Advanced Complexity Theory (MIT 6.841)
- Fall 2002: Essential Coding Theory
- Spring 2003: Advanced Complexity Theory (MIT 6.841)
- Fall 2004: Essential Coding Theory
- Spring 2005: Advanced Complexity Theory (MIT 6.841)
- Fall 2005: Algebra and Computation
- Spring 2006: Transmission of Information (MIT 6.441)
- Fall 2006: Introduction to Algorithms (MIT 6.046)
- Spring 2007: Advanced Complexity Theory (MIT 6.841)
- Fall 2007: Introduction to Algorithms (MIT 6.046)
- Spring 2008: Essential Coding Theory (MIT 6.440)
- Spring 2009: Advanced Complexity Theory (MIT 6.841)
- Spring 2012: Algebra and Computation (MIT 6.S897)
- Spring 2013: Essential Coding Theory (MIT 6.440)
- Spring 2014: Introduction to Automata, Computability, and Complexity (MIT 6.045)
- Spring 2015: Algebra and Computation (MIT 6.S897)
- Fall 2015: Algorithms and Complexity (Harvard CS 125) (w. Michael Mitzenmacher)
- Spring 2016: Information Theory in Computer Science (Harvard CS 229r)
- Fall 2016: Applied Algebra (Harvard AM 106)
- Spring 2017: Essential Coding Theory (Harvard CS 229r)
- Fall 2017: Applied Algebra (Harvard AM 106)
- Spring 2018: Computational Complexity (Harvard CS 221)
- Spring 2019: Information Theory in Computer Science (Harvard CS 229r)
- Fall 2019: Introduction to Theoretical Computer Science (Harvard CS 121) [Mostly observing]
- Spring 2020: Essential Coding Theory (Harvard CS 229r)
- Fall 2020: Introduction to Theoretical Computer Science (Harvard CS 121) (w. Adam Hesterberg)
- Spring 2021: Computational Complexity (Harvard CS 221)
- Fall 2021: Introduction to Theoretical Computer Science (Harvard CS 121) (w. Adam Hesterberg)
- Fall 2022: Information Theory in Computer Science (Harvard CS 229r)
- Fall 2022: Seminar on Effective Research Practices & Academic Culture (Harvard CS 290a) (member of teaching team)
- Spring 2023: Data Structures and Algorithms (Harvard CS 124) (w. Adam Hesterberg)
- Fall 2023: Essential Coding Theory (Harvard CS 229r)
- Fall 2023: Seminar on Effective Research Practices & Academic Culture (Harvard CS 290a) (member of teaching team)
- Spring 2024: Data Structures and Algorithms (Harvard CS 124) (w. Sitan Chen)
- Fall 2024: Computational Complexity (Harvard CS 2010)
- Fall 2024: Seminar on Effective Research Practices & Academic Culture (Harvard CS 2901) (member of teaching team)