Pun Salad Crackpot Proposal: Congressional "Fairness" Reform

2022 Update

[This is an update to a post originally made in April 2017, triggered by my recent read of a book by Lawrence Lessig, They Don't Represent Us. I still like the idea herein, even though it's failed to catch the attention of the outside world; it didn't even make the cut on Jonah Goldberg's "Remnant" podcast where he invited readers to send in crazy ideas for sharing with his audience. Ah well. The new stuff is mostly at the end, and (beware) it's pretty geeky. If you're arriving here from GitHub, don't worry, we'll get to those scripts eventually.]

Back in 2017, this article in Quanta caught my eye: How to Quantify (and Fight) Gerrymandering. Specifically, this bit (emphasis added):

Partisan gerrymandering — the practice of drawing voting districts to give one political party an unfair edge — is one of the few political issues that voters of all stripes find common cause in condemning. Voters should choose their elected officials, the thinking goes, rather than elected officials choosing their voters. The Supreme Court agrees, at least in theory: In 1986 it ruled that partisan gerrymandering, if extreme enough, is unconstitutional.

Similarly, Lessig's book concentrates on them not representing us. For a whole raft of reasons, including the gerrymandering issue, but also big money, the incentives representatives have to appeal to the most extreme members of their parties, and so on.

My gut reaction to the Quanta article back in 2017, and now: Unfair?! Hey, I'll tell you about unfair!

And after reading the Lessig book: Hey, I'll also tell you about failure to represent me!

I live in New Hampshire Congressional District 1. The November 2016 election results were:

Candidate Party Votes Percent
Carol Shea-Porter Democrat 162,080 44.3%
Frank C. Guinta Republican 157,176 43.0%
Shawn O'Connor Independent 34,735 9.5%
Brendan Kelly Independent 6,074 1.7%
Robert Lombardo Libertarian 5,507 1.5%

At least for the purposes of this post, I don't want to get into the details, personalities, and parties of my oddball district. Instead, let's concentrate on fairness, and what it means to have a "representative democracy", at least for the purposes of the US House of Representatives.

To wit: Carol Shea-Porter sat in the 115th United States Congress, with one whole vote therein. But it's clear from the table: she only "represents" a minority of voters in her district. A large minority, but still.

Specifically: she does not represent me, in any meaningful sense. (I voted Libertarian, if that matters.) I don't bother to write her about my views on the issues, because she doesn't have any interest in representing me. I'm alienated from the political process, and everyone tells me that's a bad thing!

I submit to you, reader, that this is the great unfairness of our current system, far greater than the kvetching about gerrymandering, big money, etc. It's winner-take-all, and if you voted for a loser, it's just too bad, chump. (Lessig has some suggestions in this area, but I like mine better.)

So here's my crackpot notion, which would require some Constitutional tinkering: Any candidate for the US House of Representatives who receives greater than 1% of the popular vote in the general election shall be entitled to a vote in the House equal to the fraction of the vote he or she receives.

So, if the 2016 election had been held under that system, and the same result obtained: instead of Carol Shea-Porter casting 1.00 vote, she would instead be entitled to cast a mere 0.443 votes on the House floor. Guinta would have had 0.430 votes. O'Connor, Lombardo, and Kelly would submit 0.095, 0.017, and 0.015 votes respectively.

Let's also assume that Congresscritter salaries are also in proportion to their votes.

Yes, this would greatly expand the size of the House, probably by a factor of between 2 and 3. This is more of an infrastructure issue than anything else, and arrangements could be made for secure remote voting.

Members not happy with their fractional vote and salaries can quit. Or just not show up for work. This isn't Russia, after all. But don't bother wasting the voters' time in the next election.

Advantages:

  • As long as their candidate got above that 1% threshold, people would have someone in office they thought of as "their representative", decreasing political alienation.

  • Conversely, the elected representatives would have a greater incentive to pay attention to (i.e., actually represent) the people who voted for them. And (for that matter) they also have an incentive to attract voters at the margins for the next election cycle. (Most House districts are "safe" these days, so incumbents feel little pressure to appeal to voters outside their party.)

  • Citizens residing in overwhelmingly "blue" or "red" districts are probably marginally discouraged from voting under the current system. Why bother, when the outcome is foreordained? Under this proposal, they'd have more incentive to get to the voting booth. Maybe even more of an incentive to get informed on issues of interest.

  • Gerrymandering becomes much less of an issue (and my guess it would be negligible), since just about everyone gets "represented" even if they've been shuffled into a district where a different candidate is a safe bet to get more votes.

  • It's far simpler than other schemes I've seen, e.g. ranked-choice voting.

Note: this scheme wouldn't apply to the Presidency. We can only have one President, not (say) a Schrödinger's Cat-like mixture of half-Trump and half-Hillary. (That would be scary, though.)

Nor would it apply well, I think, to the US Senate: Senators represent states, not people.

And I don't have any smart ideas how this would play out in House procedures, like committee assignments and the like. My hand-waving impulse would be to treat a district's representatives as a unit for the purpose of committees. So instead of having Shea-Porter with 1.00 vote in the House Armed Services Committee, it would be (again) Shea-Porter, Guinta, O'Connor,... with 0.442, 0.429, 0.094, ... votes respectively.

Office budgets? I dunno. Probably they'd need to be expanded (and, unfortunately, paid for). Maybe each representative would get a bare-bones staff, which could be increased based on their fractional vote.

The natural question: how would that have worked out in an actual election? I handwaved that back in 2017, but I made more of an effort this time around. I found an (allegedly) complete CSV file for US House elections between 1976 and 2020 at a page maintained by the MIT Election Data + Science Lab. I wrote a Perl script (also a Python script) to suck in the data for a specified election year, and output the results and party breakdown in the resulting Congress, assuming this crackpot scheme was in place.

For example, given the 2020 vote breakdown, here are the Congresscritter-counts and votes for each party that grabbed a vote fraction over 1%:

Party Representatives Votes
DEMOCRAT 440 219.85
REPUBLICAN 422 203.16
LIBERTARIAN 111 3.10
WORKING FAMILIES 24 1.25
DEMOCRATIC-FARMER-LABOR 3 1.17
CONSERVATIVE 24 0.93
INDEPENDENT 30 0.92
UNENROLLED 3 0.31
DEMOCRATIC-NONPARTISAN LEAGUE 1 0.28
GRASSROOTS - LEGALIZE CANNABIS 4 0.21
LEGAL MARIJUANA NOW 3 0.20
GREEN 9 0.14
CONSTITUTION 6 0.13
NO PARTY AFFILIATION 6 0.12
INDEPENDENCE 7 0.10
WORKING CLASS 4 0.09
INDEPENDENT AMERICAN 4 0.09
UNITED UTAH 2 0.04
PACIFIC GREEN 2 0.04
NO SLOGAN FILED 2 0.03
VETERAN FOR CHANGE 1 0.02
ALOHA AINA PARTY 1 0.02
WRITE-IN 1 0.02
SOCIALIST WORKERS 1 0.02
EDUCATION COMMUNITY LAW 1 0.02
D.C. STATEHOOD GREEN 1 0.02
INDEPENDENT PARTY OF DELAWARE 1 0.01
AMERICAN VALUES 1 0.01
BUILDING YOUR LEGACY 1 0.01
JUSTICE MERCY HUMILITY 1 0.01

Whoa, that's a lot of parties, many with funny names. Googling them can be amusing. For example, that last line in the table for the "Justice Mercy Humility" party reflects the strong showing of Jenna Harvey, in New Jersey District 2. She got 1.1% of the vote, beating the tar out of the Libertarian Party candidate, Jesse Ehrnstrom, who only got 0.8%.

I don't know anything about the Justice Mercy Humility Party, other than they are apparently based on the teaching of Micah 6:8. They sound nice.

Further: There are lot of ways of saying "Independent". And you'll note a few "Democratic-Farmer-Labor" members; they are from Minnesota, and they are as pure-Democrat as Hubert Humphrey and Walter Mondale. I don't know why MIT codes some Minnesota candidates as Democrats, others DFL.

Anyway, the grand total: 1117 representatives with 432.31 votes. Bigger than the current House size of 435 by a factor of about 2.6.

I.e., the Democrats had a slight edge in 2020 over Republicans in this alternate-fact universe, and a slight majority of overall votes. (The actual 2020 results were 222 Ds, 213 Rs.)

But I hasten to say: if the election had been held under this scheme, the voting incentives would have looked a lot different, so too the results.

Now into the semi-geeky weeds on the scripts I wrote to produce that result. You can peruse my scripts at GitHub. Don't like the details of my scheme? You can twiddle the scripts to your heart's content!

Further notes:

  • There are lots of columns in the MIT CSV file, but I only used a few: year, candidate, candidatevotes, totalvotes, party, district, and state.
  • I decided to ignore "undervotes" in the CSV data. These are people who failed to vote for anyone. That's fine, but you don't get represented. Similarly, I also ignored votes for "other" and "writein". (I assume if a write-in candidate had garnered a significant number of votes, he or she would have been identified by name.)
  • I wrote the Python script after I wrote the Perl script; it's a rough translation and (probably) not very good. It's my first (maybe my last) non-trivial Python script.
  • I did a lot of "how do you do this in Python" Googling. I found I really liked Python's command-line argument handling. The Python script is also noticeably faster than the Perl one. That's probably due to me slurping the entire CSV file into an array of hash in the Perl script, while the Python script just iterates over the file.
  • But why doesn't Python just have a printf function? Some religious reason no doubt. (It turned out to be easy enough to add.)
  • I was a little baffled about how to handle the party_vote and party_count dictionaries in Python. In Perl, non-existent hash entries will get auto-created when you use them. In the equivalent "dictionary" Python structure, apparently, you have to create entries with initial values first. A little clunky.
  • And I learned the hard way that there are no ++ and -- operators in Python. Another religious design issue.

Last Modified 2022-05-12 5:51 AM EDT