I am very interested in coding theory and I wonder if there is a particular kind of codes used in practice. For example I read that Reed-Solomon codes are often used for encoding data on a compact disc.
In particular I would like to know which kind of code is mostly used in real life and in which contest. I know that it is not a specific question but I'm really curious to know how coding theory is used in current technology.
Moreover I'm also interested in knowing which is more or less the usual length of a code used in practice.
Thanks a lot for the answer
Here are a few:
The 10GBASE-T standard for 10 Gbit/s Ethernet over copper uses a $[2048,1723]_2$ LDPC code constructed from a generalized Reed-Solomon code.
RAID 6 implementations often use generalized Reed-Solomon codes to correct erasures caused by failed disks. I believe the Linux implementation of RAID 6 uses codes like $[n,k]_{2^8}$ where $0 \le k < n \le 255$; typically something like $k \approx 3$ and $n \approx 5$.
The object storage system Ceph supports a generalized Reed-Solomon code so that data is accessible even if several of the storage nodes are unavailable (erasure coding). I haven't looked into it carefully, but I believe the parameters are around the same order as those of RAID 6.
Error correcting memory often uses a modified Hamming code. According to an unknown Wikipedia contributor, $[72,64]_2$ and $[127,120]_2$ are popular parameters.
The McEliece cryptosystem is based on a $[1632,1269,69]_2$ Goppa code. Supposedly this cryptosystem is a candidate for post-quantum cryptography (cryptography that isn't broken by quantum computers).
ITU OTN uses a $[255,239]_{2^8}$ Reed-Solomon code for error correction on fiber optic networks.
In machine learning, BCH and (more commonly) 1-of-n codes are used to implement non-binary classification of data using a support vector machine. There's a wide range of parameters here depending on the application, but I'd estimate it's typically around length 10-1000.
In cryptography, Shamir's secret sharing scheme is a special case of Reed-Solomon erasure coding. I don't know what secret sharing is typically used for, so I don't know what the typical parameters would be.
See also Jyrki's answer to my question from a while back. He covers several telecommunications applications and their typical parameters.