What software should be doing is using XDG_CACHE_HOME, if it is set (along with the other XDG environment variables). That way cache directories will be where the user expects.
1. short and easy to read,
2. good for users, and
3. can be implemented in five minutes.
If we can't have programs follow this simple decades-old convention, we have no hope whatsoever of voluntary consistency in our computing world. It's literally because of the mentality espoused in this article that we can't have nice things.Unfortunately, we have nothing but social pressure and incensed HN comments to get developers to follow it. That's why the mobile world adopted a "you shall" model: a developer won't spent five minutes to save a million years of user time unless there's some social or technical guardrail forcing his hand.
The idea is quite reasonable: suddenly all tools that show disk usage will show this directory clearly and you can easily find what’s eating up you space with the same usual tools as always.
Some folk just don't want to configure every single application to unhide them (or have no idea that they exist in the first place).