Em inglês, as palavras 'número' e 'contagem' podem atuar como substantivos ou verbos, mas é provavelmente mais comum ver 'número' usado como substantivo e 'contar' como verbo. Então você pode argumentar que 'o número de foos' ou 'num_foo' soa mais familiar do que 'a contagem de foo' ou 'foo_count'. Certamente parece mais natural para mim quando me referimos a uma quantidade que não muda constantemente. A palavra 'contagem', mesmo quando usada como substantivo, sugere-me um valor que está aumentando com o tempo.
Ruby e Python têm métodos .count, que demonstram a palavra sendo usada como um verbo, em vez de um substantivo. Em Ruby, você pode dizer:
foos.count # Count how many elements in the array 'foos'
Ainda assim, isso retorna um valor que representa o número de foos, que é exatamente o que você poderia esperar se referisse apenas uma variável chamada 'foo_count'. Então, de certa forma, o fato de 'foos.count' e 'foo_count' parecerem semelhantes é legal.
'Número' pode ser ambíguo em alguns casos, pois é comum armazenar números que não representam uma quantidade de algo. Outras pessoas já mencionaram IDs e números de cartão de crédito. Aqui está outro exemplo:
num_string
Olhando para o nome dessa variável, você consegue adivinhar o que ele representa? É um número inteiro que representa a quantidade de strings ou é uma representação de string de um número?
Então, estou apenas pensando em voz alta e dando alguns prós e contras para cada um, conforme os vejo. A razão pela qual estou nesta página antiga é porque estou usando os dois de maneira inconsistente e pensei que veria o que outras pessoas estão fazendo.
BTW, eu não gosto de 'nr_foo', pois 'nr' realmente não sugere ou soa como a palavra 'número' para mim. Soa como 'ner', ou talvez signifique 'não classificado' ou 'rugby nacional'. :-) E nem me arrisco a dizer como soa fooCnt. Apenas não.