Show! Bom ponto! Um detalhe de limitar por usuário é que continua sendo fácil criar vários usuários para fazer um ataque, onde se você colocar o limitante do IP, apesar de continuar ser possível o ataque, já fica algo mais custoso de se fazer.
Então, nesse caso, como o usuário só pode votar se possuir tabcoins, um usuário novo e sem conteúdos criados não possui moedas para conseguir votar. Uma camada extra de segurança poderia ser colocar um limitador temporal também, por exemplo: Só consegue votar se for usuário a mais de uma semana por exemplo.
Assim, claro que eu entendo que essas melhorias demandam um tempo e muitos testes para serem aplicadas, então eu compreendo que limitar por IP realmente foi uma forma mais rápida e eficiente de resolver a questão!