I've been pretty interested in codes of all sort, both the cryptographic codes and the codes that are used to provide error detection and correction. While I've played around quite a bit with convolutional codes, I haven't really every bothered to develop more than a cursory understanding of the Reed-Solomon error correcting codes which have widely applied in many applications such as data storage (most notably for compact discs) and satellite data transmission. It's very cool technology.
Luckily, super smart guy Russ Cox has a very nice writeup on the theory and practice of Reed Solomon codes. Previously Russ had postings about fast regular expression matching which you might have read (or should have). I really like his postings: he has a very clear, pragmatic but not dumbed-down approach to both the theory and practice of programming. This series promises to go on in future postings, I'll be eagerly awaiting future installments.