Encodings are the bane of any developer who works with the web. The problem is, the world is filled with many different languages and the ways to represent them have evolved with the evolution of computers. In the beginning, each character was represented as a single byte. This was enough for many Western languages, and the ISO standards defined orthogonal character sets for that. For instance, most Western European languages can be represent with the ISO-8859-1 (aka ISO-Latin-1) character set. ISO-8859-2 has characters used by Central European languages and so on. Asian languages have many more characters and thus used more complicated encoding schemes like Shift JIS. What these means is that each page on the World Wide Web needs to specify its encoding to ensure it's rendered correctly in the browser (although the browser can sometimes guess).
As computers became more powerful and computer memory/storage became marke