See also: <a href="http://kunststube.net/encoding/" rel="nofollow">http://kunststube.net/encoding/</a> - which I personally prefer / is more thorough in my opinion.
This reminds me of D. Goldberg's very old "What Every Computer Scientist Should Know About Floating-Point Arithmetic".<p>[1] <a href="http://www.lsi.upc.edu/~robert/teaching/master/material/p5-goldberg.pdf" rel="nofollow">http://www.lsi.upc.edu/~robert/teaching/master/material/p5-g...</a>
There was a talk at DroidCon given by Jesse Wilson that discusses this more in depth (and with a little more clarity).<p><a href="https://youtu.be/T_p22jMZSrk" rel="nofollow">https://youtu.be/T_p22jMZSrk</a>
For another good article for programmers on Unicode, see this brilliant and excellent article by Joel Spolsky at <a href="https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/" rel="nofollow">https://www.joelonsoftware.com/2003/10/08/the-absolute-minim...</a>