Pretty much everything to do with language depends on the speakers. And ones usage of the language will vary because of their upbringing, education, and influences. Someone speaking in Australia will speak a different vernacular than Americans, and the British. People from different states in those countries will have there own slang as well, even people from different towns will have their own slang.
To say it doesn't vary from person to person is wildly untrue. What you are thinking of is "standardized English", which still varies from country to country.
I personally find the word "fishes" as a mistake, like the word "yous", but it is true that some people do use it. And they are widely understood by the majority.
For non native english speakers this is a great way to revise it. While learning another language! (I forgot that little cat is kitten in the previous exercise and now I remembered that mice means "mouses") Also I typed rats for musoj and obviously it was incorrect. By the way rat in Esperanto is rato... which in my language means a "while".