Standards are less useful in the presence of fools

Standards are quite useless if fools do not adhere to them; unfortunately fools are everywhere. Therefore, one could almost conclude that standards are quite useless.

Specifically I implemented a data transfer protocol based on GET requests, and as specified in RFC 3986 "Uniform Resource Identifier" section 2.5.

... the data should first be encoded as octets according to the UTF-8 character encoding [STD63]; then .... should be percent-encoded. For example, ... the character LATIN CAPITAL LETTER A WITH GRAVE would be represented as "%C3%80" ....

However, they required me to send data Latin-1 encoded, rather than UTF-8 as according to the standard. I explained to them that this was wrong, that the character set is not a choice that is theirs to make. They simply replied:

We are sending with ISO-8859-1(Latin-1).

What can I do?

  1. Refuse to work with this company? (But management want me to "find a solution")
  2. Change my code to be non-standards compliant?

Obviously what I did was the second, but it felt so wrong.

P.S. I recently created a nerdy privacy-respecting tool called When Will I Run Out Of Money? It's available for free if you want to check it out.

This article is © Adrian Smith.
It was originally published on 13 Dec 2006
More on: FAIL | Web | uboot.com