2
1 Comment

The vote that was never counted — what I found when I finally tested my own product

I built Kingpin because I was tired of every "pay to get featured" directory being the same thing: whoever pays the most wins, forever, and the audience has no say. So the whole pitch of Kingpin is that you can pay to get position — but real people can vote you back down. Money buys the spotlight, not immunity.

A few weeks in, someone tried it and told me: "it shows successful vote and added one in UI but when I refreshed the page it disappeared."

I assumed a display bug. It wasn't. Voting — the entire mechanic the product is named after — had never actually worked. Not once, for anybody, since launch.

Here's what I found chasing it down:

•	The vote handler had no CloudWatch log group at all. In Lambda, a log group only gets created the first time a function runs. There wasn't one. My core feature had never executed in production, ever.
•	One layer up, the anti-bot check was rejecting every vote in 36 milliseconds — which is not enough time to make a real network call to Cloudflare to verify anything. It turned out the secret key for that check was an empty placeholder nobody had ever filled in, and the frontend had never even been built to send the token it was checking for.
•	Even after I fixed that: votes landed, but the counter stayed at zero. Turned out a database write was missing a required value and silently failing every single time — swallowed by a try/catch that just logged a warning nobody was watching.
•	And even after that, votes from brand-new visitors on image posts were being scored as basically worthless, because the "how long did you actually look at this before voting" timer only started for videos, never images.

Four separate bugs, stacked on top of each other, and every single one of them failed silently — by design, mostly, because a lot of anti-bot logic is supposed to fail quietly so attackers can't learn from the error message. Which is correct, except I'd built no way to tell "an attacker got blocked" apart from "the whole feature is dead," so it stayed broken for weeks with a perfectly healthy-looking dashboard.

I'm documenting stuff like this in public as I build — not just the fixes, but the actual reasoning and dead ends — because I think most "build in public" content skips the part that's actually useful to learn from.

Kingpin is live now, voting actually works, and I'm looking for the first real listings to prove the crowd mechanic out loud. If you've got something you'd want people voting on — I'll list the first 10 people who want in for free (or close to it), and I'll personally make sure real people see it. Comment or DM.

, Founder of Icon for KingPin
KingPin
on September 14, 2026
  1. 1

    Now that voting actually works, the interesting test seems to be whether it changes the marketplace behavior you built KingPin around. When the first real listings come in, what would convince you that voting is actually influencing visibility rather than just adding another interaction?