These are slides developed for a mini-course on coding theory that was taught at IBM's Thomas J. Watson Research Center (January 2000) and at IBM's Almaden Research Center, San Jose, California (November 2000, Co-hosted by IBM and DIMACS).

- Lecture 1: Introduction , (gzipped) , (pdf) ,
- Lecture 2: Basic codes and constructions , (gzipped) , (pdf) ,
- Lecture 3: Algebraic Geometry Codes , (gzipped) , (pdf) ,
- Lecture 4: Limits on Performance of Codes , (gzipped) , (pdf) ,
- Lecture 5: Algebraic (unique) decoding , (gzipped) , (pdf) ,
- Lecture 6: Algebraic (list) decoding , (gzipped) , (pdf) ,
- Lecture 7: Linear time decoding , (gzipped) , (pdf) ,
- Lecture 8: Decoding from random errors and erasures , (gzipped) , (pdf) ,
- Lecture 9: Applications in complexity theory , (gzipped) , (pdf) ,
- Lecture 10: Complexity results in coding theory , (gzipped) , (pdf) ,