I have been building web apps for a couple decades and have some that operate in dozens of languages. My best practise is to only look at your region when your selected language has regional variations. However, that's true for most of the popular languages which is why it isn't as easy as the article suggests.
For example, your browser's language is set to English. Cool. But, are you in America or somewhere else? Oh you're in Canada, no problem neighbour. Spanish? Are you in Mexico or Spain? Don't worry, I'll give you the appropriate version of our Spanish translations then. French? You in Canada or France? Portuguese, Brazil or Portugal?
Not to mention, when you're operating in a lot of languages, and your application is in active development, you're constantly sending out copy for translation. Different translators have different turnaround times and they don't always make it into the release schedule. So, what happens when a translation is missing in a particular language? First we fall back to another region for the same language, then we fall back to English. American English to be specific -- that's the language the developers and product managers write in so there's always an American English translation.
Then, we also allow the user to override their browser settings and pick whichever language they want. That is saved to their user profile so wherever they're logged in they'll get the language they have set for our applications.
So ya, we give you your configured language whenever possible. But asking us to ignore region is not ideal for most users either.