Open main menu

Wikiversity β

Error Control Coding

This article describes the resources to learn about error detection and correction codes.



  • Finite Fields
  • Linear Block Codes: Hamming code, Reed-Muller code, Hadamard code, Golay code, and LDPC code.
  • Convolutional codes: Viterbi Algorithm, Turbo code



  1. Shu Lin and Daniel J. Costello, Jr., Error Control Coding, second edition
  2. V.S. Pless and W.C. Huffman, Fundamentals of Error-Correcting Codes, Cambridge University Press, 2003

Offsite CoursesEdit

With video lecturesEdit

  1. Coding Theory (Course material), Andrew Thangaraj, IIT Madras, July - Nov 2010.
  2. Principles of Digital Communication II, David Forney, MIT, Spring 2005.
  3. Error Correcting Codes, P. Vijay Kumar, IISc Bangalore
  4. Introduction to Coding Theory, Vitaly Skachek, University of Tartu, 2014 spring (Other versions: 2017 fall, 2016 fall, 2015 spring)

Without video lecturesEdit

  1. Essential Coding Theory, Prof. Madhu Sudan, MIT, Fall 2004. (Earlier versions: [1], [2], and [3])
  2. Algebraic Error Control Codes, John Gill, Stanford University, Autumn 2012
  3. Mathematical Coding Theory, William Cherowitzo, University of Colorado, Fall 2009.
  4. Error-correcting codes, finite fields, algebraic curves, Paul Garrett, University of Minnesota, Spring 2003,
  5. Notes on Coding Theory, Jonathan I. Hall, Michigan State University, Spring 2014.
  6. Error-Correcting Codes, Alexander Barg, University of Maryland, Fall 2009.
  7. Coding Theory, Stefaan Delcroix, California State University, Spring 2014 and Fall 2011.
  8. Coding Theory, Yuri Bazlov, University of Manchester, 2013/14 Semester 1.
  9. Coding Theory, Peter Symonds, University of Manchester, 2011/12 Semester 1.
  10. Inference Methods for Codes on Graphs, Chih-Chun Wang, Purdue University, Spring 2012
  11. Error correcting codes, Christian Elsholtz, Graz University of Technology, 2005. (Earlier versions: [4], and [5])
  12. Introduction to Coding Theory, Yehuda Lindell, Bar-Ilan University, 2009.
  13. Error Correcting Codes, Saravanan Vijayakumaran , IIT Bombay, Autumn 2015. (Earlier version: Autumn 2014, Autumn 2011, Autumn 2010).
  14. Channel Coding, Georg Schmidt, University of Ulm, Summer 2005. (Earlier version: [6]).[1]
  15. Error Control Coding, Todd K. Moon, Utah State University, Spring 2006
  16. Coding Methods, Markku Liinaharja, Aalto University, Spring 2008. (Earlier version: [7])
  17. Error-Correcting Codes: Constructions and Algorithms, Atri Rudra, University at Buffalo, Spring 2011. (Book). (Earlier versions: Fall 2007, Spring 2009, Spring 2010)
  18. Coding Theory, Venkatesan Guruswami, Carnegie Mellon University, Fall 2014. (Earlier version: Spring 2010, Autumn 2006)
  19. Channel Coding for Communications, Henry D. Pfister, Texas A&M University, 2013.
  20. Advanced Channel Coding, Henry D. Pfister, Texas A&M University, 2014.
  21. Information Theory and Error-Correcting Codes, MOW Wai Ho, The Hong Kong University of Science and Technology, 2014.
  22. Coding Theory, Murali Krishnan K, NIT Calicut, Aug-Dec 2013.
  23. Channel Coding: Techniques, Analysis and Design Principles, G. David Forney, Stanford University, Winter 2007.
  24. Communication Systems III], Young-Han Kim, University of California, San Diego, Spring 2017.
  25. Coding Theory, Mark Jerrum, Queen Mary University of London, Spring 2008.
  26. Codes and Cryptography, Jeffrey S. Leon, University of Illinois at Chicago, Spring 2008.
  27. Error Control Coding, Todd K. Moon, Utah State University, Spring 2006.
  28. Coding theory and applications, Enes Pasalic, University of Primorska, 2013 - Linear Codes (Problems), Cyclic Codes (Problems)
  29. Codes, Cryptography and Cryptographical Protocols, Jozef Gruska, Masaryk University, 2017. (Earlier - 2016, 2015, 2014, 2013)

Other ResourcesEdit


  1. The page is not well formatted. In order to view it in correct format, you may select all the text of the page, right-click anywhere on the page to inspect element to open 'development tools' on which right click the html tag, select 'Edit as HTML' and replace the text.