"HTTP Accept headers (and indeed, use of many fancy headers) are beyond what most client developers will bother with; including the response format in the URL with a ".xml" or ".json" is natural and obvious."
That was in a comment by Alex Payne [1] near the bottom. Obviously it's been quite a few years since he wrote that but it's what I personally think, too. The extent that many blog articles and comments take REST really adds far too much complication. Are client-side developers going to understand how to use your API? Always keep your target market in mind.
Honestly in my mind that's the most important point to take from this article.