So there is this character, the BOM, which is explicitly allowed by UTF-8 standard. And while it is not really necessary, nor recommended, you are still allowed to put it in your UTF-8 text files to signal that this text file is encoded in UTF-8.
Then there are all of these *nix programs, which don't know how to deal with these BOM's, simply because the first character in the file they're reading from isn't the shebang or <?php or something like that, but is instead this completely allowable BOM. and everybody believes MS should be fixing their product? am i missing something?