Ka-Ping Yee

zesty.ca · Personal blog · on HN since 2008

Ka-Ping Yee writes about voting systems, with simulations and visualizations, plus privacy demos and small web experiments.

What HN saysHN links his voting simulations and Yee diagrams in discussions of ranked choice and instant runoff voting, noting IRV's non-monotonic behavior.
53HN people shared it
43linked it in comments
11stories submitted
108story points
6 months agolast shared
2008people per year2026

Most-shared posts

  1. 1
    Voting Simulation Visualizations
    34 people · 13 points · first shared 2008 · 1 comments on HN
  2. 2
    Zuck's Events (Facebook Privacy Hole Demo)
    8 people · 89 points · first shared 2010 · 41 comments on HN
  3. 3
    Crit
    4 people · first shared 2008
  4. 4
    Building Reliable Voting Machine Software (2007) [pdf]
    2 people · 5 points · first shared 2013 · 1 comments on HN
  5. 5
    Real-Time Chat Using Dynamic Animated Images
    2 people · 1 points · first shared 2013 · discussion on HN
  6. 6
    Chat
    2 people · first shared 2012
  7. 7
    54,47 77,64 13,10 irv.png
    2 people · first shared 2018
  8. 8
    Yee phd ch1to3.pdf
    1 people · first shared 2018
  9. 9
    Voting
    1 people · first shared 2015
  10. 10
    Usenix.pdf
    1 people · first shared 2015
  11. 11
    Voteline
    1 people · first shared 2021
  12. 12
    Zest
    1 people · first shared 2026
  13. 13
    1.4
    1 people · first shared 2013
  14. 14
    Homepage
    1 people · first shared 2011

What HN people wrote when they linked it

godelski · 2022-10-06
> There was a site posted to HN years back that mathematically analyzed a ton of these voting schemes, I cannot seem to find it on Google but it was some sort of hybrid scheme that apparently has the best overall outcomes. Do you remember what was on it? I'll just drop a few links https://electionscience.github.io/vse-sim/ https://www.youtube.com/watch?v=-4FXLQoLDBA http://zesty.ca/voting/sim/
kirse · 2022-10-06
Yea, it's been interesting to watch how RCV has filtered into the public consciousness over the past 5-10 years and slowly increased in terms of how many people parrot it as the answer to all our voting ills. There was a site posted to HN years back that mathematically analyzed a ton of these voting schemes, I cannot seem to find it on Google but it was some sort of hybrid scheme that apparently has the best overall outcomes. Edit: Given some of the comments below, some good material on these voting systems... https://news.ycombinator.com/item?id=13161396 https://ncase.me/ballot/ https://rangevoting.org/rangeVirv.html http://zesty.ca/voting/sim/
nitrogen · 2021-11-18
It looks like nobody's linked to this older visualization yet, so I will: http://zesty.ca/voting/sim/ The non-monotonicity shown there for instant runoff voting seems to be more undesirable than any downsides of approval voting. IMO the point of elected representation is to be representative, not to elect specific people, so the possibility of a lesser known candidate winning over a major party's favorite candidate isn't a problem.
simonthefox · 2021-06-22
I'm actually working on a follow up to build interactive yee diagrams for IRV (version of ranked choice that's getting popular in the US), but Ka-Ping Yee already has a post with some static versions. IRV has some really unpleasant effects that these diagrams help make visible. For instance, in some cases a candidate might want to actively move public opinion away from their position because it makes it more likely that they would win. http://zesty.ca/voting/sim/
jakelazaroff · 2020-04-28
I've never heard of STAR, but I'm not immediately convinced it's the best option. It would be interesting to see actual data comparing it to other voting methods (e.g. [1], not the table on the STAR website). I'm partial to ranked choice voting for most local elections and House elections, because you can do some interesting things with proportional representation. [1] http://zesty.ca/voting/sim/ [2] https://www.fairvote.org/fair_rep_in_congress#what_does_the_fair_repre…
baq · 2018-11-06
this post cites OP's http://zesty.ca/voting/sim/ directly as an inspiration. both are well worth the time.
roenxi · 2018-11-06
> IRV result is worse than the plurality result Huh? There isn't a clear-cut way of determining the best voting system, so how were they compare the two? That matters quite a lot. There are situations where IRV get so complicated it is unpredictable, but living in Australia that does sometimes feel like a feature - if the polity expresses no strong consensus preference, random selection amongst candidates is not a bad idea. > Approval voting and range voting are ... strictly better Yeah, totally [0]. Approval voting looks like the one to use just in terms of doing what a voting system does. Any system that lets neutrals and moderates in occasionally is better than plurality. And plurality is streaks ahead of having no choice at all. [0] http://zesty.ca/voting/sim/
kentonv · 2015-05-04
A capability is traditionally a noun, or sometimes the combination of a noun and a set of allowable verbs, but not simply a verb. If Pony were using "capability" to describe the combination of a variable and its qualifiers, then I'd say, yes, that's a capability -- it designates a thing, and the permission to use it. But they are using "capability" to describe specifically the _qualifiers_ on the variable, which is not correct, and is confusing. Here's a great paper discussing what capabilities are and the confusion around them: http://zesty.ca/capmyths/usenix.pdf Before you ask: Yes, Linux/POSIX capabilities (as described on the capabilities(7) man page) are similarly misnamed. This is covered in the paper, and has been a source of a lot of confusion.
joshbuckler · 2012-01-14
Instant-runoff is a terrible voting system and should never be used, see http://zesty.ca/voting/sim/ . Approval voting is simpler and better. Condorcet is best except that it is somewhat complicated.
gjm11 · 2011-05-05
Recommended online reading: Some high-quality discussion of this from Tim Gowers (mathematician, Fields Medal winner, very smart chap): http://gowers.wordpress.com/2011/04/20/is-av-better-than-fptp/ http://gowers.wordpress.com/2011/04/29/av-vs-fptp-a-supplementary-post… http://gowers.wordpress.com/2011/04/30/av-vs-fptp-the-shorter-version/ (if you're only going to read one -- and I wouldn't blame you, because they're very long -- read the last one). Some nice graphics illustrating some pathologies with AV: http://zesty.ca/voting/sim/ (note: http://zesty.ca/ is full of interesting things). Anti-AV material by an advocate of range voting (note: he dislikes plurality voting, aka first-past-the-post, even more): http://rangevoting.org/IrvPathologySurvey.html
nostrademons · 2026-02-25
FWIW most experts now favor approval voting [1] over ranked choice. Approval voting has similar advantages as ranked choice in allowing 3rd-party candidates and favoring moderate candidates. It avoids the chaotic behavior that RCV can exhibit [2] where shifts in the order of voters' down-ballot preferences can very significantly alter the outcome of the election [3]. And it's also much easier to explain to voters ("It's like voting today, except you vote for everybody you'd find acceptable and the best candidate wins. Sorta like when you're picking a restaurant to go out to with friends - you go to the place that is acceptable to the greatest number of people, not the one that a minority really want to go to"), doesn't require that you reprint ballots (you can re-use normal FPTP ballots, but you just count all votes instead of disqualifying ballots with multiple candidates marked), and is easily adapted to proportional representation and multi-member elections (you just take the top-N best candidates instead of the top-1). [1] https://en.wikipedia.org/wiki/Approval_voting [2] http://zesty.ca/voting/sim/ [3] https://www.reddit.com/r/explainlikeimfive/comments/1o1byqi/comment/ni…
uoaei · 2019-10-22
Shortly after the 2016 election I did some research into election and social choice theory. First-past-the-post is clearly the worst system possible. But ranked-choice also has strange artifacts where voting for your actual favorite as your first-rank choice means they might have a lower chance of winning. A much simpler method in my opinion is approval voting: the ballot instructs, "Who do you think would perform the duties of the office to your approval? Check all names that apply." Then whoever gets the most checkmarks in aggregate is the winner. No spoiler effect, easily-understood vote tallying system, and reflects true approval in the population of voters. It can be adapted to multi-seat races just by taking the top n winners. Ka-Ping Yee simulated elections using a number of recognized methods for counting votes[1]. I believe that the best system will be one which is easily-understood at the ballot box and behaves as similarly to the Condorcet method as possible. According to these simulations, it appears that approval voting is the best. No election method will meet all the requirements for an ideal one[2] so it comes down to which conditions you want to enforce and which are less important. IMO, monotonicity is very important while the later-no-harm criterion can be interpreted as a compromise which is necessary for strategic voting. [1] http://zesty.ca/voting/sim/ [2] https://en.wikipedia.org/wiki/Arrow%27s_impossibility_theorem
xvedejas · 2018-11-06
I'm continually upset and confused by Instant runoff voting's popularity. IRV is, by my reckoning, a much inferior (and more complicated) system than other systems, like range voting or ranked pairs. And it has some bizarre properties that make me wonder if it is even worse than the traditional first-past-the-post. One property of IRV that makes it so questionable is its non-monotonicity. This means that you can help a candidate by ranking them lower, and hurt a candidate by ranking them higher. It is extremely easy to visualize how ill-behaved IRV is in the charts on this website: http://zesty.ca/voting/sim/ Meanwhile, ranked pairs (a "condorcet" method) has the property that, if candidate A is more popular than all other candidates pairwise, then candidate A will always win. This is _not_ true in IRV. If you're interested in falling down the rabbit hole of electoral systems, I recommend looking at this chart that compares their properties: https://en.wikipedia.org/wiki/Comparison_of_electoral_systems#Comparis…
pxx · 2025-04-30
It doesn't matter. Hare/Instant Runoff voting (deceivingly marketed as "ranked-choice voting" in the US) neither empirically [0] nor theoretically [1] improves the viability of third parties. Honestly IRV is worse than plurality so there are plenty of reasons to oppose it other than a two-party domination conspiracy theory. Using IRV gives up monotonicity, possibilities for a distributed count, and some elements of a secret ballot (for even a medium-sized candidate list) for basically nothing. Monotonicity is not a theoretical concern. Alaska almost immediately ran into a degenerate case [2]. [0] https://rangevoting.org/NoIrv.html [1] http://zesty.ca/voting/sim/ [2] https://en.wikipedia.org/wiki/2022_Alaska%27s_at-large_congressional_d…
lalaithion · 2022-09-15
RCV != IRV. Everyone is reporting this as a failure of Ranked Choice Voting, but it's actually a failure of Instant Runoff Voting. There are other, better, more reliable Ranked Choice alternatives, and any serious expert in voting systems would tell you that IRV has as many weird failures as FPTP. http://zesty.ca/voting/sim/ is a good overview of different methods.
clarkevans · 2022-05-25
Ranked Choice does suffer from some mathematical irregularities, see http://zesty.ca/voting/sim/ (2006) Ranked Choice has had some notable unexpected outcomes, see https://bolson.org/~bolson/2009/20090303_burlington_vt_mayor.html See also https://www.starvoting.us/ and https://electionscience.org/library/approval-voting/
throw5away · 2021-06-22
I'd go as far as to say Approval > FPTP > IRV. FPTP has good properties like monotonicity (for a good example see http://zesty.ca/voting/sim/), easily distributed counting, and preservation of the secret ballot that IRV does _not_ have. You really don't get much bang for your buck by switching to IRV; I'd say it's a negative deal overall.
jdmichal · 2021-01-23
I'm familiar with the concepts. http://zesty.ca/voting/sim/ Instant runoff is listed as Hare, and it has some very... interesting results. I don't think it fixes any of the issues people have with first-to-the-post voting, and sometimes makes those issues even worse.
ScottBurson · 2020-09-26
I don't know whether you'll see this belated reply, but anyway: I have had some sympathy with your position, as you can see in my sibling comment, BUT as I read more about IRV, I am actually coming to disagree. Look at this page, especially the chart near the bottom: https://electionscience.org/library/approval-voting-versus-irv/ What this says is that in simulation, given mostly tactical voters, IRV doesn't do any better than PV (FPTP). This surprised me, but I'm starting to see why, as the rest of that page explains. Here's another: https://www.rangevoting.org/TarrIrv.html The most telling argument here, I think, is that a century of IRV hasn't freed Australia from two-party domination. Another page with simuations: http://zesty.ca/voting/sim/ What voting reforms have been attempted in your province?
Hitton · 2020-09-04
Frankly I have no idea why are people acting so impressed. ~15 years ago were extremely common images which showed user's IP address, it was usually done in PHP using imagemagicks. This is basically same, just with added cache of text which is then showed. I even remember POC html/server only chat which sent clients new gif frames as they posted new messages (found it [0], it's over 20 years old). That was much more impressive. [0]: http://zesty.ca/chat/chat.cgi
moultano · 2019-10-22
Borda count may be the only ranked choice voting system worse than Instant Runoff. The simulations here are more compelling than any mathematical argument I could make. http://zesty.ca/voting/sim/ Approval voting is my preferred system, both for its intuitive appeal and quality of outcomes, but I'll settle for any change at all.
CarVac · 2018-11-14
I don't understand why so many people working for reform support ranked choice voting instead of approval voting, which on top of performing more consistently [0], is simpler to explain and understand. It only takes one sentence to describe: "Vote for everyone you approve of." It also gracefully handles incomplete information—if you don't know about someone, just don't vote for them. [0] http://zesty.ca/voting/sim/
ChristianBundy · 2018-11-06
> It's very obvious in this visualization (from the site linked a few comments ago): http://zesty.ca/voting/sim/54,47_77,64_13,10_irv.png Just a friendly note: this visualization means nothing without context, and is far from "obvious". Unfortunately, I'd place this in the category of "things that are obvious to people who already believe it". Is there a better way to go about explaining your idea?
zestyping · 2018-02-23
This question is one of several that come up reliably in every discussion about electronic voting. The short answer is, the incentives and requirements for banking are very different. Would you consider taking a few minutes to read this? http://zesty.ca/pubs/yee-phd-ch1to3.pdf I put a bunch of effort into explaining these issues as well as I could, and that's the result. I'm pretty happy with it and sometimes wish that it were required reading for people participating in discussions about electronic voting.
anonymoushn · 2016-11-14
One desirable property of FPTP is that if you want to maximize the chances of your candidate being elected, you should vote for your candidate first before all other candidates. In IRV, sometimes you should not vote for your candidate first before all other candidates. Is that okay? Here are some interesting diagrams of the results of applying various voting algorithms including IRV: http://zesty.ca/voting/sim/
Kronopath · 2016-11-10
Disagree. IRV introduces some bizarre nonlinearities in the voting space that could lead to shockingly unintuitive behaviour. See these voting simulations for an example: http://zesty.ca/voting/sim/ A better system would be something like approval voting, or condorcet, both described in the above link.
sanxiyn · 2016-11-06
Instant runoff voting DOES NOT eliminate the problem of spoilers, see "Squeezed Out" at http://zesty.ca/voting/sim/ Approval voting is easy to explain and does not have theoretical problems of instant runoff voting. In approval voting, voters answer YES/NO for all candidates. Candidates with most YES win.
abecedarius · 2016-11-03
The issue of complexity is why I'd push for approval voting (i.e. you can upvote multiple candidates). http://zesty.ca/voting/sim/ shows some of the weirdness that comes up with ranked choice voting (what I'd always heard of before as instant runoff voting). It looks even more surprising than what we have! I've been wondering recently if California would go for a ballot initiative to change their primaries to approval voting or score voting or some other reasonable improvement. Since recently the state has open primaries, meaning you might end up with a general election between two Democrats, or two Republicans, and other weirdness. I can imagine less resistance to a change here, than for the mechanism of the general election.
simonw · 2012-09-14
I've seen this technique once before... Ka-Ping Yee built a demo that did this back in 1999: http://zesty.ca/chat/ It's an awesome hack, cool to see it being rediscovered/reinvented after so much time!
aheilbut · 2010-12-21
ThirdVoice http://www.wired.com/techbiz/media/news/2001/04/42803 Before that, Ka-Ping Yee made CritLink: http://zesty.ca/crit/

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close