> Let me rephrase that, given the nature of this list. There's not > much science to simple string hash functions. Cryptographic hash > functions are another matter entirely. I'll also add that 31 > happens to be a prime number.
The first thing that struck me was that 31 in binary is all ones, as opposed to 32 that would be totally useless because it is just a shift (no scrambling). Of course mathematically, number representations should be irrelevant.