Note that this is a question of biological gender (sex), not grammatical gender. In English, inanimate objects don't have a gender unless we we build it to look like a man or a woman. ( such as with a Barbie or Action Man doll).
And this is where the issue of ships comes in. Yes, there is a tradition of calling ships 'she'. This goes back a long way, to the days when sailors, fishermen, naval officers and so on were all men. Sailing was an entirely male world, and the only 'female' presence was their ship or boat (like a kind of substitute for a mother or a wife). Even today, if a sailing boat is given a human's name, it's always a female one, like 'The Mary Jane'. A man who is keen on fixing cars, for example, might call his beloved car, 'she'. Railway enthusiasts might call their engines 'she'. In the business world, we talk about 'sister companies', never 'brother companies'. In fact, any time that a completely inanimate thing is assigned a gender, it's always female. That's because these were male-dominated environments in the past, and a way of indicating affection and ownership of an object is to assign it a female gender. This has everything to do with sexual politics and nothing at all to do with grammar. Enough said.
In English we have a similar attitude to Russian when it comes to the pronouns used for animals. To call an animal 'it' is cold and unfriendly. Family pets are always called 'he' or 'she'. If you visit a person's house and refer to their cat as 'it', you will probably upset your host so much that you'll never be invited back again! Likewise, if you meet your neighbour walking their dog in the street or park, you will make yourself an enemy for life if you call the dog 'it'. Just as when you see someone with a small baby, you need to find a polite way of finding out the sex of the baby so that you know whether to say 'He's lovely' or 'She's lovely', you need to find out the gender of the pet, and then use the appropriate pronoun. Even farm animals are often referred to ask 'he' or 'she', especially if the gender is obvious, as with cows and bulls.
The choice of 'it' or 'he/she' is a question of attitude and level of affection. A cockroach or a spider would be 'it', for obvious reasons. So might a shark. An ugly mangey dog or cat in the street that is threatening to bite you or leave a smelly pile of something outside your door, will be an 'it', because there is no affection there. But a cute fluffy puppy or kitten will be a 'he' or a 'she'.
That's a really interesting point, Akera. I hadn't thought that German and English - in spite of being 'sister languages' :) - approach this in opposite ways. As you say, in German, " calling something "it" has a tendency to being affectionate", as in "die Maus" -> "das Mäuschen.
This is the reverse of what happens in English. English is an extremely weakly gendered language : in what other language can you talk about your friend, cousin, neighbour, boss, teacher, doctor and countless other people, without indicating a gender? So, traditionally, men in particular show affection (and ownership) and make objects more personal to them by using feminine pronouns. For example, in the days when you had to ask a petrol pump attendant to put fuel in your car, the conventional informal instruction used to be 'Fill her up'.
I guess the only time we show affection by objectifying a person is the sympathetic 'Oh, dear, you poor thing!'.
Evelyn, you've raised an interesting question. I wonder if there is a difference between the way that British and American people use pronouns for pets. I'm not sure there is. With your example about the dog -
"I heard Jane's dog got hit by a car. Do you know if it's alright?"
- I think that the average British person would say 'it' also, if only to make it clear that the 'it' refers to the animal and not the person. Also, when addressing a third party, we wouldn't be concerned about causing offence to the pet-owner. How about this (delivered in a tone of sympathy and concern):
"Hey, Jane. I heard your dog got hit by a car. Is ........... all right?"
"Hey, Jane. I heard Fluffykins got hit by a car. Is ........ all right?"
Wouldn't we use a gendered pronoun in these cases?