That's a nice article. But I feel like tweaking something in it.
> The programmer should be able to use Unicode, so the source file _must_ declare its encoding.
Another Great Lesson we've learned, is to avoid clutter. So a reasonable rule, IMHO, would be that any standard Unicode encoding can be declared, but the lack of such a declaration is equivalent to a declaration of UTF-8.