Perhaps it is better to answer the "why is that so hard?" question instead.
I expect that it is because most people don't need or want that option. You could make an argument that there should be a checkbox for it in Finder preferences like in Windows, but even that isn't as straight forward as it sounds. Microsoft has split "hidden files" into multiple levels with UI checkboxes for two levels, "hidden" and "hidden system" files, though there are other files which are more hidden and never appear in Windows Explorer. Even people who want to see some hidden files probably don't want to see them all. And we've not even gotten into files which are backed by multiple file streams - you could make an argument for making it possible to show them too, since you might want to save disk space by deleting one stream but not the other.
But the real answer, I think, is that it is hard because these are the sorts of things you should probably be doing in the terminal in the first place, where ls -a works just fine.
I expect that it is because most people don't need or want that option. You could make an argument that there should be a checkbox for it in Finder preferences like in Windows, but even that isn't as straight forward as it sounds. Microsoft has split "hidden files" into multiple levels with UI checkboxes for two levels, "hidden" and "hidden system" files, though there are other files which are more hidden and never appear in Windows Explorer. Even people who want to see some hidden files probably don't want to see them all. And we've not even gotten into files which are backed by multiple file streams - you could make an argument for making it possible to show them too, since you might want to save disk space by deleting one stream but not the other.
But the real answer, I think, is that it is hard because these are the sorts of things you should probably be doing in the terminal in the first place, where ls -a works just fine.