"Flags are ... not for representing languages."
While I don't deny the truth of this, the reason it keeps coming up is that it's only half the answer. The other half is: What should we be using to represent languages? What's a good way of presenting language choice that provides a positive user experience, that's both practical and non-offensive?
Knowing what not to do is fine, but until an alternative option is readily available, people are going to keep reaching for the obvious thing, however wrong it is.