# Learn coding theory with online courses and programs

### What is coding theory?

A mainstay of modern technology, coding theory is the study of algebraic and combinatorial codes used to encode information, as well as the applications of these codes. Such applications include data compression, cryptography, and error detection. Codes are invaluable to today’s hardware and software, since electronically encoding and transmitting information is prone to errors due to interference in communications channels.^{Footnote 1}

For example, when you stream a movie or TV show, stutters can ruin your viewing experience. Due to network latency and wireless interference, these sorts of issues are likely happening to you all the time, even if they’re not apparent. That’s because codes developed using coding theory are used by the streaming software to detect and correct these issues on the fly, making you more likely to get seamless viewing experiences with capable hardware and network capacities.^{Footnote 2}

Aside from codes themselves, other basic yet important objects in coding theory include channels, encoders, and decoders.^{Footnote 3} There are also four types of coding in coding theory: cryptographic coding, error control (channel coding), data compression (source coding), and line coding.

## Browse online coding theory courses

#### Stand out in your field

Use the knowledge and skills you have gained to drive impact at work and grow your career.#### Learn at your own pace

On your computer, tablet or phone, online courses make learning flexible to fit your busy life.#### Earn a valuable credential

Showcase your key skills and valuable knowledge.#### Coding theory course curriculum

If you are interested in studying coding theory, coursework can cover topics such as:

**Arithmetic coding:**Learners explore the algorithms used to detect and correct basic arithmetic operations (like addition and subtraction) that computers routinely complete. Arithmetic coding is used in data compression.^{Footnote 4}**Source coding:**Encoded binary data needs to be translated into other formats that receivers can understand. Source coding ensures that information can be recovered with minimal to no loss of clarity.^{Footnote 5}**Checksums:**Checksums act as fingerprints for files. They represent the number of bits in encoded, transmitted data, and are used for error detection during the decoding process.^{Footnote 6}**Linear algebra:**This mathematical field focuses on vectors, matrices, and linear transformations. In a coding theory context, data can be thought of as an independent variable — the vector — that factors into an equation to receive a code output.^{Footnote 7}

Want to learn more about coding theory and related topics? edX offers a variety of courses to help new and experienced developers learn valuable skills. Earn a __bachelor’s degree__, pursue a __master’s degree__, or study a more specialized skill with a __boot camp__.

### Explore jobs that use coding theory

Once you’ve learned coding theory, you may begin searching for jobs that put your skills to use. Job roles that can benefit from knowledge of coding theory include:

**Applied mathematician:**These experts use their deep understanding of mathematics to assist in many fields, from physics to engineering and computer science. Programming can’t exist without mathematics, so applied mathematician jobs can require coding theory knowledge.^{Footnote 8}**Communications engineer:**Communications engineers design and install communications equipment, including radio broadcast, microwave, cellular, and satellite systems. Coding theory can be critical for ensuring the integrity of all transmitted communications.^{Footnote 9}**Wireless engineer:**Wireless engineers have a firm understanding of wireless communication technologies. A great deal of communication is wireless, so coding theory can play a part in a wireless engineer’s job to correct wireless transmission errors.^{Footnote 10}**Coding theory instructor:**With a wealth of coding theory knowledge, these instructors can educate others on the underlying theories, techniques, and applications of error-correcting code design.^{Footnote 11}

Note that learning about coding theory on its own does not mean you have the skills required for the jobs listed above. Before deciding on an educational pathway, research potential careers that interest you.

#### How to use coding theory as a wireless engineer

Learning how to use coding theory for communications engineering and wireless engineer jobs can also require the study of a number of other technical topics. If you want to apply coding theory, topics that you may also need to develop a understanding of include:

**Cryptography algorithms:**Cryptography — the study of encoding information so only verified entities can access it — is linked to coding theory, since cryptography algorithms use codes developed with coding theory as part of the encryption process.^{Footnote 12}**Wireless communications:**Coding theory is foundational to all wireless communications, since traveling information is highly lossy. Information gets lost in the process, so codes are needed to detect and recover data for use by the receiver.**Discrete mathematics:**Combinations, graphs, and logical statements are all considered discrete mathematical structures. Codes are another discrete structure that must be explicitly defined to ensure the integrity of encoded transmitted data.^{Footnote 13}**Computer science:**Programming is the bedrock of coding theory, since computer code is needed to generate communications codes.

Ready to start learning about coding theory? Explore educational opportunities offered through edX. You can build your knowledge of the field by pursuing a __bachelor of computer science__ or earning a __master of data science__. Or you can sign up for a __coding boot camp__ that can teach you valuable skills in a shorter time frame to fit your busy schedule. Start your learning journey today.

Last updated