What I’d love to know is: many fraudulent users try out different cards one after the other. How is it not the default case that Stripe blocks these users? It’s the most common pattern we see, easily identifiable by the repeated failed attempts with different cards.
A simpler deterrent would be to linearly increase cost of the next domain you buy. This is the opposite of bulk discounts, and should make squatting unfeasible (at least not in large numbers).
The formula/collusion ratio is exponential, but not factorial. The implementation however is very efficient: instead of applying the algorithm on the complete dataset of users, we apply it to each group of users within a post. This drastically reduces the running time.
The implementation goes over every post and computes the ratio for voters within that post. It then removes one user from that group and recalculates the ratio. If the ratio drops, it brings that user back in. If it increases, it keeps them out.
Running SimpleVoteRingDetection on the complete Product Hunt dataset (16k+ posts, 52k+ users) takes a few seconds. If you have a dataset for any other website/application, you can easily feed it into the algorithm and experiment with that.
Well, our method showed less than 1% of posts having a collusion ratio higher than 0.5. I personally think it's very reasonable for such a large community.
Yeah... but the purpose of the post is to explain the methodology not to point fingers. We kept the IDs because they are useful to demonstrate whether users created those accounts consecutively. Product Hunt's public API can be used to find the real names and even expand this method further.
Funny we landed on the same terminology. Will need to connect Stripe.