Polls are a tricky thing to pull off when it comes to online websites. After all, you don't want a free for all where you have 5000 votes and 4000 of them come from the same person.
Earlier this year, I developed the Hunters Ale House Aley awards voting system. The problems presented were as follows:
How do we limit the amount of times an individual can vote?
The answer is complicated. The problem lies within the medium, the internet.
The purpose of the voting system was to find out who people thought should win an Aley. After all, the poll was to find out how many people thought so and so should win an Aley. This does not accurately represent how computer systems are setup.
One computer does not necessarily mean 1 user. Take the UPEI Libary, 1 computer there can be used many times throughout the day by different users. Then in other cases, you can have 1 person who utilizes multiple computers. i.e. I have 3 computer systems (my MacBook, my iPad & my Blackberry) sitting at the table with me at Starbucks right now. This means limiting things by using cookies isn't an easy answer.
The other complicated side of this is if you do not limit by computer, do you limit by IP Address? For those unaware, every device connected to the internet has an IP address. At Starbucks right now there might be 5 people with computers and we would all share the same public IP address. So if you limit your polls by IP, only one person in here could vote. Consider this when it comes to a place like Atlantic Lottery which has 1 IP address and hundreds of staff.
Another option is to use a website like Facebook to authenticate the user so that you can only vote if you have a Facebook account. Doing it this way, it limits you to only people on Facebook. And while it seems everyone is on Facebook, the reality is, not everyone is on Facebook. The way to hack this? Setup multiple Facebook accounts and you can rig the results.
So, what we did was combined a few of the factors. The bad news is, I'm not going to get into exactly how we limited it, we used a little bit of everything from the above and it seemed to work extremely well.
Here's an example of some of the votes you get:
Obviously this is an attempt by the same user to add a second vote to the system. The good news is our algorithm was setup great and was a success as it did not count the second vote.
Sadly, not all polls use the same sophistication. Some polls limit your votes by cookies stored on your computer which can easily be deleted or others are free for alls where you can vote as many times as you want.
Don't forget to subscribe to John's blog via email. This will notify you of all blog posts on web design, web development, social media and the odd post about PEI. Just enter your email address in the box to the left.