Friday, March 04, 2011

Aggressively neutral on the Wisconsin walk-out

A few people have asked me what I think about the Wisconsin collective bargaining rights walk-out, so I'll just tell the world my thoughts on the matter here.

Unions cause monopoly pricing in a market. What this means is they cause a "deadweight loss" - the union gains less of a benefit than the buyers (governments in this case) lose; the market loses overall efficiency. The exception is when there is only one entity buying all the labor - although this is true for some government positions, most (police, firefighters, teachers, etc) can work for a nearby town instead.

But when it comes to labor, there are other considerations besides pure efficiency in one market. If labor prices drop too low, people who can't support their families will simply turn to crime, or take dangerous risks to solve immediate problems. Put simply, poverty has a cost too. Efficiency in the labor market isn't always worth it overall.

EVERYONE, not just union members, deserves a life free of poverty, but unions are not the best way to do it. Governments can subsidize food, shelter, health care, etc, and provide it more efficiently through taxes (land taxes for example have no deadweight loss) than unions can.

So here's why I'm aggressively neutral. The proposed union-busting legislation does nothing to address how union members will be worse off afterwards. No raise to the minimum wage, no health care reform, no improvements to the working environment. It was entirely possible for the Republicans to propose something that helps literally everyone but they did not. They know better, too, but the tea party will not accept any socialism whatsoever, even if it merely guarantees what union members already have in a less disruptive way.

This is why we can't have nice things, people.

Labels: ,

Monday, September 27, 2010

What I've been up to lately

Ok, so I never feel like blogging at home, so here's what is up from my phone:
* Moved from Hartford to Los Angeles.
* Working a new job at a forge. Doing well.
* Have made barely any progress on that e-voting program. I've learned a good amount about SQL databases, though.
* Magen continues to be awesome.
* Encouraging all of you California folks to vote YES on Prop 19.
* Biking to the train, then to work, then back both again every weekday. Finally back below 200 lbs and feeling healthier. I'm on the train right now.
* The new apartment is starting to feel "ours". Also: rent controlled.

Saturday, February 06, 2010

I am less of a beast now.


Thursday, October 01, 2009

Delegated Democracy - Part 7

After bouncing the idea off a few people and thinking about it for a while, I've got the next iteration of my voting idea. I'm thinking we could use GnuPG to handle all the cryptography since it's free (as in speech), open source, stable, secure, and widely adopted. Here's how it works.

Three groups

Everyone involved in the process falls into one or more of the following groups:
  • The polling authority is the entity in charge of administering the voting process, and in this case would be a political party.
  • The voter is anyone eligible to vote, but not necessarily a member of this party. They choose a delegate to vote on their behalf. All voter information is confidential.
  • The delegates are entities that have been given authorization by voters to vote on their behalf. They can be people, computer programs, corporations, other political parties, or whatever else the voter chooses. All delegate-related information is public.
Step 1: Delegate registration

Anyone or anything wishing to serve as a delegate can submit a name, email address, and public key to the polling authority. An encrypted confirmation email will then be sent to the delegate. Once confirmed, the delegate is added to the key server. The public will have read-only access to the key server.

Step 2: Voter registration

A voter travels to the polling authority with an accepted form of identification and registers to vote. The voter then types in the email address of a delegate who has registered in Step 1. The voter can optionally specify multiple delegates, so if the voter's first choice delegate does not vote, their second (or third, fourth, etc) choice will be used instead. As a courtesy, voters can notify their delegates when selected or removed, but this can't be done by the polling authority without risking voter coercion or bribery. For most voters this step can be automated for complete privacy, but we'd also provide assistance on request.

Step 3: Call for votes

When it's time to vote, the polling authority publishes notice on the party website and mailing list. For example, a poll could look like this:

Poll 123456: "What will we have for dinner?"
001 Pizza
002 Salad
003 Toothpaste

Step 4: Votes submitted

The delegates who had registered in Step 1 would then:
  • Rank the choices from Step 3 in order of preference,
  • Save those rankings to a file,
  • Tamper-proof the file by digitally signing it, and
  • Email this ballot to the polling authority.
Since an unscrupulous attacker could block a delegate's registered email address during this step, we'd have to allow ballots from any address so long as the registered one is mentioned and the signature passes verification.

Step 5: Votes tallied

After a set amount of time has passed, the polling authority verifies all submitted ballots and tallies the votes. I'm a fan of the Schulze method, but there are some other good electoral systems out there for determining the winner. The winning choice and every other choice that has been ranked by over 1% of all votes will be displayed on the party website. The ballot from each delegate will also be publicly visible.

Other ideas

I've been thinking about Coriolinus' tagging idea from the last post, but I can't think of any good way to make it work properly. Everything I've got so far either introduces the risk of gaming the system or just wouldn't prioritize issues perfectly for everyone. I'm open to the idea, but I'm not 100% sure how I could make it work.

Labels: ,

Thursday, September 17, 2009

Totally my next vision upgrade

Color blindness CURED in monkeys!
"Ultra-experimental hacks that confer light- and color-perceiving powers on cells used in other aspects of sight would be that much closer to reality."

Sunday, January 11, 2009

Delegated Democracy - Part 6

I've been working on that idea for an online delegated voting system. Here's what I've got so far:

Three groups
  • The polling authority would be in charge of the voting process, and in this case would be the party.
  • The voter decides which options they like best for a given vote, and either vote on their own or delegate a third party to do it for them.
  • The delegates can be people, computer programs, Google, whatever you want. All that matters is that they've been given authorization to vote on behalf of someone. If you vote on your own, you are your own delegate.
Two types of ballot
  • The blank ballot is effectively your power of attorney with regards to delegating your vote. If you want you can give it to someone else, or you can use it yourself to make filled ballots (see below). It consists of three bundled elements, together encrypted with the polling authority's public key:
  • A filled ballot is what is actually submitted to the polling authority, and it says who you are and how you vote. It consists of three bundled elements, together encrypted with the polling authority's public key:
    • A blank ballot,
    • The vote number, and
    • Ranked options for the vote.
When the polling authority receives a filled ballot, it publishes the rankings and a cryptographic hash of the (blank ballot + vote number). If the username and password are valid, it counts the vote towards the final results, otherwise it is not counted. When polling has closed, the winning options and close runners-up are published.

Since you know what your blank ballot is, you can check how your vote was used once it's published, and if it's different than what you expected due to a security breach, you or your delegate can send an email to the polling authority telling them to blacklist that particular blank ballot.

You'd have to be physically present at the polling authority headquarters when you chose your username and password, but other than that the whole thing could be done online.


Labels: ,

Monday, December 29, 2008

Delegated Democracy - Part 5

I'm still working on that idea of mine, but after discussing the last iteration of the idea with Coriolinus I've been trying to refine the idea. Generally, here are the requirements of the system I have in mind:
  • Secret ballot - The citizen should have no way of proving to a third party how they have voted.
  • Delegation - The citizen should have the option of allowing a third party to vote on their behalf, who should be able to delegate the vote to a fourth party, and so on. The voter should be able to choose their own software or service to do this, rather than a single limited/bloated application.
  • Online voting - Voters should have to register in person with valid identification, but from that point forward should be able to vote from anywhere.
  • Voting records - The citizen should be able to check how their votes have been cast, and exit polls should be optional.
  • It should be as simple as possible

Labels: ,

Blog JUST for the engagement/wedding

Magen and I have started a shared blog just for information regarding our engagement and wedding: You Have That Effect On Me.


Friday, December 26, 2008

It's official!

Magen and I are engaged!


Friday, October 24, 2008

Massachusetts Marathon

Tomorrow Ralph Nader is going for the world record of most campaign stops in one day, in MA. Sorry to anyone who reads this too late, I only found out recently. Here are the times and locations, I'm planning on dragging a bunch of friends to the 5:40 stop in Auburn.


Sunday, October 05, 2008


In the wake of the bailout, something I've been thinking for a long time has become much more important. By now it's clear that the representatives in Washington are not representative of the will of the people, but in reality believe they know better than we do. I'm not going to get into how this is trickle-down economics with a scary sense of urgency, but instead focus on the real problem; the republic.

In this day and age of instant communication and mind-blowingly fast computation, why are we willing to settle for anything less than direct democracy? I don't know about you folks, but I want my individual interests to be represented just as much in government as anyone else's. With Obama and McCain unwilling to discuss direct democracy and electoral reform, it boils down to two options:
  • Vote for a candidate who supports the voting system that gave us George W. Bush and supports the "representation" that gave us the bailout, or
  • Vote for a third party candidate who supports voting system reform and direct democracy. If that's not Nader that's fine by me, but please don't vote for "good enough" or "lesser evil" when you have the opportunity right now to actually support governing ourselves.
If you disagree with me on this, please let me know, because I am honestly baffled as to why intelligent people are content with what we have now.
Freedom is participation in power. - Cicero

Labels: ,

Thursday, August 28, 2008

Fuck tactical voting

Up until recently, I've been a Barack Obama supporter. Generally, it was because I agree more with him than I agree with John McCain, and I was fool enough to think he would actually stand up for what he believed in, to represent me "closely enough".

After he voted for retroactive telecom immunity, that idealistic bubble burst, as he had previously stated that he would filibuster any bill that included the retroactive immunity provision. The reason this bothered me so much wasn't because I disagreed with his vote, but because he made promises that he would not keep. It calls into question everything else he promises; where else will he meet the neoconservatives midway? Torture? Health care? The war?

More recently, he selected Joe Biden, a man who is "pro-RIAA, pro-FBI", and "anti-encryption", as his running mate.

Fuck this, I've had enough. Barack himself is willing to meet tyranny midway, and if something happens, the guy who steps in is even worse. At this point, it's painfully clear that there are few real distinctions in the Republicrat machine, and those differences will fade more and more if and when Obama takes office.

I used to think that I'd be making the most difference by voting for whichever of the top two candidates agreed with me the most. Well the joke is on me. There are no top two candidates, there's just the one, and he's for sale.

If there's a direct democracy presidential candidate, please let me know. In the meantime, I'm going to vote for the only candidates who acknowledge the failure of the plurality voting system: Nader/Gonzalez. Call me an asshole for not voting tactically if you want, but the system is fucking broken and I refuse to game it any more.

Labels: ,

Saturday, May 31, 2008

Delegated Democracy - Part 4

I've been discussing delegated democracy with Coriolinus and Yev here and at Coriolinus's blog, and think I've got a good next iteration of the idea. The entire system as I originally proposed it was extremely overcomplicated, and now have a three-part process that I think cuts to the core of the idea.

Part one: Registration
  • Citizen enters the party HQ, checked for bugs & weapons.
  • Citizen registers, gets a username and provides a passphrase, then leaves.
  • Passphrase -> cryptographic hash function -> key generation function -> decode key, stored at party HQ.
  • Voters would also have the option of providing their own decode key directly, in the event that they want a higher entropy or don't trust the polling authority with their encode key.
Part two: Email
  • Citizen composes vote, then runs encryption program, entering passphrase, stored briefly in memory.
  • Passphrase -> cryptographic hash function -> key generation function -> encode key, stored briefly in memory.
  • Vote is encrypted with encode key, saved, then passphrase and key are wiped from memory.
    • The voters mentioned above who opted to provide their keys will skip straight to the encryption step.
  • Encrypted vote is emailed to party HQ.
Part three: Votes counted
  • Party HQ receives citizen's email.
  • Email is decrypted with decode key. If successful, this verifies the citizen's identity and that (s)he was not coerced.
  • Vote is added to tally for given question.
In essence, it is just an implementation of electronic direct democracy, but reduces the problems of
  • scale,
  • voter fatigue,
  • complexity, and
  • manipulation by time framing.
It does not address the problems of
  • demagoguery, which I think exists now in any form of democracy (direct or otherwise), and
  • self-interest, of which I also think everyone, including present-day politicians, is guilty.
People who do not have regular internet access would have the option of using several third parties to cast their votes for them, only one of which has the correct passphrase. This would allow for a great deal of automation, thus opening the doors to voting by phone, fax, snail mail, or in person at a third party location. Eventually the party could also support these alternative methods itself, and I think this idea could work for the elderly, disabled, or technologically disinclined.

Labels: , ,

Thursday, May 22, 2008

Delegated Democracy - Part 3

Coriolinus got me thinking about my delegated democracy proposal after my last post, with his security through obscurity point. Even though there would be no sure-fire way to prove which feed was yours, people could narrow them down based on opinions you've expressed in public and determine your entire voting record with near certainty. Not good.

So to give people the option of complete privacy in their votes, I think the party server should give the option of encrypting all communication with the "first delegate" servers. It unfortunately means three things:
  1. Participating voters would have to memorize at least one more password per entry,
  2. Increased complexity in the computer software, and
  3. It's another thing the party would have to agree on.
Not as perfect a solution as I had hoped, but I still like it, and think I'm going to explore it a little more.

Labels: , ,

Monday, April 21, 2008

Delegated Democracy - Part 2

Ok, I've come up with a few ideas that might reduce the problems I highlighted in my previous post, starting from a simple party-run computer system.
  • Authentication: When you first register your identity with the party, you use a computer at the local party headquarters. While using this confidential voting station, you can input a list of URLs, with one "used" entry, and an unlimited number of "dummy" entries.
    • No one will have to be a registered member of the party in order to input their list and participate in this system. The ultimate goal is to have elected officials who best represent the desires of the entire voting public, not just their own party.
    • You will be able to update your list at any time should you be in some way coerced (see below) or decide to use a different first layer of delegation.
    • (Update) Each URL would need the option of a password for encryption later in the process.
  • Delegation: Those URLs point to vote "feeds", which can be run by anyone in any way. For instance, you could simply delegate your vote to a feed controlled by one of your friends.
    • Another example for the more particular: you could delegate a private service anywhere on the internet that categorizes bills, which then accordingly delegates your favorite experts for each issue.
    • This means there are no limits as to how you determine your vote; any crazy method of your own devising is fine.
    • You could even publish your own opinions and convince people to delegate your feed. Keep in mind how you actually vote is still private, you just cannot hide what you openly endorse.
    • (Update) The feeds with passwords would encrypt all communication with the first proxy. From there, the voter could have any sort of privacy settings up to and including completely secret votes.
  • Resolution: When it's almost time for the party's elected official to vote, the party server queries all listed URLs, including the "dummy" entries. The final results (except of course for voter identities) are then made public.
    • This is to prevent intimidation and bribery - even if someone forces you to list a computer they control that logs hits, they have no way of knowing if theirs was your "used" entry or not.
  • Votes cast: The elected party representatives check to see what the winners were for each bill, and vote accordingly. Like in Senator On-Line, representatives will have to commit in writing that they will vote in accordance with the party view.
There's a good chance I'm missing something critical, so if there's something I haven't addressed or problems with my idea, go ahead and comment away.

Labels: , ,