What is this?
Have you ever known something was going to happen, but didn't want to tell anyone in case it affected the outcome? But you would just love to be able to come back later and say "I saw that coming."
That's the purpose of this site. You can log a prediction, and then let everyone know later, "I told you so." Here's an example use case of the site:
- Alice is making some important decision for the company (you know, whether to use blue or green for the logo).
- Bob is absolutely certain that Alice will choose green, but he knows if he tells her what he thinks, it will influence her decision.
- Bob comes to whosawthatcoming.com and enters the prediction "Alice will choose green for the company logo." No login is required, and Bob is immediately forwarded to the prediction's private page.
- Bob saves a link to the private page for later, and then sends Alice a link to the public page, explaining he's made a prediction of which color she'll choose.
- Alice visits the private page, and sees a message telling her the date that Bob made the prediction, and giving an SHA512 hash of the prediction's contents. This is for verification later, in case Alice doesn't trust whosawthatcoming.com.
- Alice eventually chooses green, and Bob triumphantly sends her a link to the prediction's private page. Bob now basks in the glory of being proven right.
- Why should I send people the public link. Why not just send the private link when I'm ready to let everyone know my prediction?
- Take the case of Alice and Bob above. If he wanted to be sneaky, Bob could have created two separate predictions: one for blue, and one for green. Then, depending on the answer Alice gave, he could have sent her the appropriate link. By sending a public link before the outcome is known, you can avoid any second guessing like that.
- Since I can just enter anyone's name in the name field, isn't this whole site inherently insecure?
- To some extent, yes. The real answer is that you should never trust the identity of someone signing a prediction, and should verify who made the prediction by some other means (e.g., you got it in an email from the person, or they posted a link to the public page on their blog).
- What's this SHA512 business?
- When you apply SHA512 to some data, you get back a much smaller representation of the same data. It's impossible to recreate the original message, but the original message will always map to the same output. That means you can give out the hash of your prediction, and then later someone else can verify that the prediction you give them matches the hash value they got originally.
- Isn't this all a bit overkill?