We often associate coding with writing secret messages; however, this is usually called encrypting. Coding is a more general notion meaning to represent a message using specially designed symbols (AKA codes). Codes are not only the symbols used to code a message (sorry for this recursive statement), but are also the rules that control the processes of using these codes. The sole goal of a code is to be decoded. When we talk about secret codes, the goal becomes to make decoding easy for specific recipient and impossible to everybody else. This represents the encryption meaning of coding. In Greek kryptos means hidden. The other word that is often used for coding secret messages, is ciphering. The origin of this word leads us to the Arabic wo...