Seth Woolley's Blog

Occasional Musings


Election Law (and now Tax Law) Complaint

Initial Filing

Read the Cover letters to local election officials

Complaint w/o attachments with copies of articles:

Attachments composed of copies of newspaper articles:

Update #1 4:30pm 4-18

I have received a reply from Tim Scott, the Multnomah County Elections Director which I have provided here:

My reply is provided below:

Update #2 5:45pm 4-18

The reply from the Auditor is that they're going to defer to Scott:

Update #3 3:45pm 4-19

The reply from the SOS is that they're going to defer to Scott:

Things are playing out pretty much how I expected.  Stay tuned. More to come.

Update #4 2:25pm 4-23

I have now filed a report of possible tax fraud and tax evasion, supported by my communications with elections officials regarding Hales's residency and information in the original complaint.

You can find a copy at the address here:

(Still no follow up reply from Director Scott.)

Update #5 10:40am 5-04

I have also filed a new complaint regarding Charlie Hales's not paying Multnomah County ITAX:

Update #6 9:07am 9-28

I have submitted a new complaint document which addresses all replies above and makes jurisdiction and interpretation clear with references to case law.

The Secretary is required to investigate this matter and I point out that the county investigation was inadequate, not just incorrect.

Update #7 12:15am 10-24

Secretary Brown's office has been sitting on this for a few weeks now. The good news is they haven't rejected it, but sent back a form letter essentially saying they have received it.

That probably means they will actually do some sort of investigation.

In-process investigations are confidential in both tax and election law, so now we wait until an indictment comes down.  It will have to be one or the other according to most legal experts I have heard from.  If nothing happens, enforcement may be compelled through the courts.

Update #8 10:15:35pm 12-05

Portland City Council accepted a report today from the city auditor certifying the election of Charlie Hales based on election results provided by the Multnomah County Director of Elections.

Three Citizens, all of whom are listed as endorsers of Scott Fernandez in the primary mayoral election voter guide:\

Nancy, Cherie, and Rose Marie testified in opposition to accepting the certification until such time as the question of qualification is adequately investigated.  The Council, through Mayor Adams, in reply, made it clear that they were merely accepting a report and that this action would not prevent further action in courts regarding this issue.

You can hear 14 minutes of mp3 audio here:

The city attorney made it clear that council had no role in whether or not he would be removed if he were not qualified: the charter says that the office will immediately become vacant without any action by council.  They appeared to be washing their hands of the issue as much as they could and spent a considerable amount of time trying to cover themselves in case of any future litigation.

There still has been no reply to the Sept 27th filing.  If there is no reply, I may be forced to compel the Secretary of State to perform an investigation that she has not performed.  The County Director of Elections did perform an investigation but it was legally inadequate per case law, and the Secretary should direct them on how to determine voter registration and if they insist on improperly determining, they can step in themselves and make their own determination overriding Multnomah County Elections as Chief Elections Officer.  Such complaints (and it may take a series) to compel enforcement of the law would be filed in Marion County Circuit Court.

One might imagine a complaint to perform a timely investigation and perhaps another to correct the results of the investigation.  There are still many avenues here, and since I'm currently suing the Secretary over ballot access laws using the same power, she and others must know I know this power of judicial review of election law exists, and that I am willing to use it.

Update #9 11:59am 2013-01-18

I have just received a reply from Trout at the SoS office.

The determination was in Hales' favor, but no explanation for the determination was offered.  Instead, they are "confident" that Multnomah County Elections made the correct decision after communicating with them.

The above "sept27" version of the complaint clearly outlines what kind of investigation would be needed as per case law.  This doesn't meet those requirements, since it's just an affirmation of Tim Scott's "ask them where they think they reside" investigation.

As the complaint noted, that is specifically not an appropriate investigation according to case law.

Further, Trout explains that tax and election law residency or domicile are distinct with no explanation for why he believes in this case that tax and election law would allow him to have two different residences for residency or domicile purposes where he intends to return.  The complaint lays out how the minor differences do not apply in this case.  No explanation is offered to rebut that.

Trout further selectively quotes the law regarding who is in charge of determining registration.  The complaint fully quoted it and specifically noted that the Secretary must as chief elections officer validate registrations in later instances.  The county elections office verifies them in the "first instance".

Despite that selective quoting, Trout then goes on to agree with the county without explanation by stating they are "confident" the process used was correct.  The complaint already laid out why it was incorrect with much detail.  Again, nothing rebutted.

The letter also describes how they refuse to enforce the city charter regarding elections saying city charter and code violations are enforced by the city attorney in the city's name.

But ORS 221.315 relates to prosecutions in court, not elections processes and administration.  The Secretary as chief elections officer should instruct local election officials and county clerks on how to uniformly and accurately interpret their own laws as per actual election law, which was already noted in the complaint.

This matter is whether or not Hales was qualified to run and is qualified to be mayor.  While the complaint alleges a number of allegations of state election law that should be prosecuted, the additional city code and charter violations merely mean Hales would be "vacated" from office upon the determination of ineligibility as per the election law violations, where they clearly do have jurisdiction, also.

In sum, Enforcing the city code and charter would not be a court prosecution but an administrative determination and instruction.

ORS 221.315 clearly doesn't apply.

Despite a thorough complaint, there's no substance to counter it in this new determination letter.  A possible next step is 60 days to appeal the determination in Marion County Circuit Court and/or to compel enforcement.  Details on the exact form of the appeal will come later and will be posted here.

Update #10 11:48pm 2012-03-20

On Monday I filed a law suit with Marion County Circuit Court appealing the above determination letter.  You can read it in detail at the link above and the rest of this post for any other contextual details.

In the suit, I appeal the determination, asking first for a determination order, second asking for a review of the Secretary's order, and third asking for an injunction to order the Secretary to enforce election law as required.

You can donate to cover legal fees here:

Original Text

As you may have found out by now, I have filed a complaint with the Secretary of State, CC'd to local authorities in the City of Portland and Multnomah County Elections, alleging a number of violations of election law.

My Personal Background -- why me?

When I first heard about Charlie Hales's living in Washington and avoiding paying Oregon taxes, it piqued my interest because I'm intimately familiar with election law due to my 2008 run for Secretary of State on the Pacific Green Party ticket and was myself in a similar situation.  In 2006 through my Free Open Source Software connections, I was offered a job I couldn't refuse to work for a Silicon Valley startup on distributed supercomputing hardware.  I moved to Oakland, CA and told my wife that there is no better opportunity than in the Bay Area for people trying to break into the computer industry.  I told her that I planned on developing my resume at a few startups and then moving back.  We rented out our house in Portland that we had recently bought (and reside in now since Labor Day of 2007 when we moved back) and rented small apartments in the Bay Area.  I moved around never really having what I considered a real residence -- never staying in the same place for even a year.  I would come up to Portland and upgrade our house when I had time, including replacing our garage roof on one such trip.

At the time, I was, like Charlie Hales, heavily involved in Oregon politics, having been a leader with the Oregon Pacific Green Party. I looked at the law and determined then that though I intended to return, I didn't have enough legal standing to keep my Oregon registration.  I would be filing taxes in California instead of Oregon -- oh how I wanted to pay taxes in Oregon instead.  I reluctantly registered to vote in California.  I was so excited to be able to vote in Oregon once again in late 2007 and 2008.  I then ran for Secretary of State, having barely been a re-resident of Oregon for a year.  I looked up the qualifications for the office to be sure.

On Charlie Hales

That Charlie Hales continued voting in Oregon for so many years while enriching himself of about $30,000 in avoided Oregon income taxes, depriving Oregon of tax revenues in the process, concerns me as taxpayer who believes in the principle that taxation and representation are linked.  Charlie Hales was *not being taxed* while still *being represented*.  For a candidate to claim a history of fiscal responsibility and accountability while casting votes without having to pay the costs and experience the effects of those votes is not just hypocritical, it is contrary to the philosophical underpinnings of any just theory of taxation.  A just theory, however, is well-encoded into Oregon law in word and in spirit.

When I looked into the problem further, I ran into a major issue -- is Hales even qualified to run?  In my investigation, I came to discover that Hales's knowingly inaccurate voter registration in 2008 meant he wasn't registered to vote at his now-claimed address and so he isn't qualified to run as per the city code and charter.  This is a huge consequence for him.

On the consequences for the city and the state

If Charlie Hales is in fact ineligible, we must know now before we have to call another election and waste more taxpayer dollars, all as a result of the actions of Charlie Hales to avoid paying taxes in Oregon while claiming voting eligibility in Oregon.  I hope the process can move swiftly enough that Charlie Hales can be removed without having to call another election.  The Secretary should have acted sooner to protect Oregon taxpayers and Portland's election processes.

Solving the problem in the future

In addition to placing the legal spotlight on Hales, I think the Secretary of State should send the public record registration data to the Department of Revenue to cross-check against nonresident filers and ensure those who are not paying taxes in Oregon either do not get to influence the elections that all the other taxpayers participate in, or they get the revenue back.  That act alone may allow the state to reclaim millions of dollars in taxes it may be entitled to.  The Department of Revenue could ask each matched filer via a form letter if they would like to re-declare their domicile and if they are claiming temporary exception with no fixed residence, and any other clarifications the state may want to ask to ensure it is getting the revenue it deserves and to ensure the Secretary of State can properly check for election and voter law violations like this in the future.  A little cooperation can go a long way toward saving taxpayer money through preventing evasion-loss.

On the Secretary's and others' inaction versus upholding the law

The integrity of our election system requires that we have predictable, consistent rules and a fair application of those rules.  The current Secretary of State, Kate Brown, published an op-ed in the Oregonian on April 20, 2010 on the issue of voter fraud saying that they take the issue very seriously and note the Class C felony penalties as "perhaps the greatest deterrents" to voter fraud.  She also claimed that "believe me, we'll investigate" allegations of voter fraud in response to a mere phone call with "as many details as possible", not formally filed complaints.

Despite an impressive collection of journalism on the part of the Willamette Week and the Oregonian, the Secretary of State's Director of Elections Trout has indicated that without a formal complaint and hearing, there is not enough evidence to investigate. Apparently a series of phone calls from the media, highly skeptical articles from the established press, and tax law and election law expert weigh-in on the blogosphere and elsewhere isn't enough to start an investigation of a high profile case of voter and election fraud with more major impact than the examples listed in her op-ed.

When I started looking at the laws again to make sure my suspicions were correct, I found that there is a mass of evidence based on easily verified published and public record information that Charlie Hales had committed a series of violations of election law and/or tax law.  The filed complaint lays out that case.  At first I was expecting other people would file the complaint and I wouldn't have to, but as time went on it became clear that the other mayoral candidates had promised to remain "positive" and the traditional community institutions of Oregon and Portland were not inclined to either make the effort to lay out the complete case or were not willing to rock the boat.  Some I consulted had already made donations to a mix of the major opponents and so did not want to get too heavily involved, potentially detracting from their preferred candidate's election with a negative campaign that might propel the third person to the top of the polls.  I had a hard time finding expert attorneys who weren't involved in the mayoral race one way or another (or another) to help vet the issues.

This is all the more reason to implement campaign finance reform like Measure 47 from 2006, which is on the books but not being enforced.  Not only are our politicians corrupted, but conflicts arise from political leaders' unwillingness to participate fully in the process of ensuring law and order -- leaders who I greatly respect, but they feel they must counter money with money.  In this case, money has again acted to suppress speech.

I, too, believe that negative campaigns are not the best thing for a healthy democracy, however, when the rule and the spirit of the law are broken, particularly when it comes to the integrity of our elections and voting processes, consequences must exist for those who would violate that integrity, especially while standing for public office themselves, and also especially when false statements were made in an apparent attempt to avoid taxes.

Seth Woolley

3403 NE Stanton St

Portland, OR 97212


Seth Woolley's Blog

kate brown has lost the plot on voter suppression and ballot access(0)

Kate Brown seems to be thoroughly confused yet again. In her latest email blast, she makes some very unfortunate claims against the Republican, who I normally wouldn't defend, but the claims are so backwards something must be said to point out that she's the actual problem. She led off with this:

"As reported in the Oregonian, we now know that Republican Knute Buehler supports the movement to restrict ballot access that is gaining momentum in states across the country."

Buehler, as a former member of a third party, has actually supported making it easier for parties and candidates to get *ballot access*, something completely different from *poll access*. Ballot access is the ability of individuals to become named on the ballot. Kate Brown, on the other hand has illegally overinterpreted the ballot access laws in contravention of long-standing precedent so much so that she stated an intent to kick the Pacific Green Party entirely off the ballot by August 8th. I filed suit against her in Marion County Circuit Court to get the courts to tell her how the law should be interpreted, but the defense (the state) has oddly failed to reply in time as a possible delay tactic. Knowing full well the history of Democrats against ballot access going back many Secretaries of State, we knew we couldn't wait for the courts, so we coordinated a massive registration drive to make sure we were safe from being completely kicked off the ballot. The registration drive went better than we expected and we well overshot the numbers we needed in just a few months.

It cost us significant amounts of money we have very little of though, so please consider donating at and

Brown goes on to explain:

"If Buehler wins, he will support efforts that make it harder for citizens to exercise their right to vote. / Sign my petition right now and let’s tell Knute Buehler not to bring extreme voter I.D. laws to Oregon."

I've been to one of Buehler's "idea raisers" where the community asked for various ways of suppressing the Democratic vote. Knute was surprisingly moderate, rejecting the most extreme suggestions (like wiping the registration rolls clean and starting from scratch) out of hand. He also pointed out that voter fraud in Oregon was exceedingly rare and that we already have signature checks. That makes the next claim even more odd:

"Buehler has echoed false statements about fraud in elections and made it clear that he would support plans to disenfranchise Oregon voters."

Without a direct quote, it's surprising that such a claim can be made. Here's the Oregonian's voter guide on voter fraud in full:

"We can definitely do a better job defending against voter fraud. As I’ve traveled around the state it is clear that many people have concerns about the security of our vote by mail system. Many of the concerns I hear can easily be fixed – and should have been fixed by now. It’s inexcusable to have ambiguous election law language that seems, at least by some, to be open to interpretation. In my first year as Secretary of State, I would conduct a thorough audit of our vote by mail system and lead the legislature to clean up any issues that the audit finds so all Oregonians have the confidence their elections are administered fairly, openly and without fraud or partisan manipulation."

There's nothing about voter ID here. He didn't even claim voter fraud happens, but that we can do a better job protecting against it. He's probably referring to the fact that ballots were left not destroyed after election day as they are supposed to be by statute, where Brown says that other rules contradict it. Cleaning up ambiguity does make some sense. About this issue, Knute Buehler himself has written a blog post where he calls her claim an outright lie and says we already have voter ID through our existing requirement to sign our ballot:\

Maybe he was more moderate when I was in the room and on the voter guide and in public posts, but let's see who is making the more serious claims about voter fraud. That's right, Kate Brown has been claiming there is widespread voter fraud in initiative petitions so she can clamp down in the initiative process, where she feels she can throw out almost half of all signatures in statewide petitions and apply exorbitant and absurd fines based on no actual evidence aside from claims from a couple perhaps disgruntled employees (out of hundreds). Every chief petitioner pays hourly in this state, not by the signature, because the fines are absurdly high. Why would Bob Wolfe risk an eight figure fine by paying per signature? It doesn't pass the smell test. He was given a proposed fine without even talking to him about it first. She sent the press release out without Bob knowing it was even out. Now even Bob is running against her as the nominee of the Progressive Party, to debate her directly on these issues. Democracy needs serious, consistent, and good faith administration but Brown wants to play hardball against it. And to be precise, paying per signature, even if were true, wouldn't be fraud, it would be criminal, but not fraud. Her actions seem to conflate the two issues.

But back to the real issue of voter suppression that she was trying to bring up. We have to remember that voter suppression includes the petitioning process, not just registration. Brown claimed her election in 2008 gave her a mandate to restrict the initiative process and "clamp down on fraud". Fraud that they already had major penalties for. Who was spreading FUD about voter fraud? That's right, she was, and is.

On a related matter of actual election fraud, I filed a claim of voter fraud and she simply ignored the contents of the claim. You might remember that situation with Charlie Hales:

That's a situation of actual voter fraud.

She added, "I’m running for Secretary of State because I am thoroughly opposed to the war on voting that is happening around the country."

Speaking of a war on voting, I think throwing out 48% of the signatures out of a couple hundred thousand petition signatures is a war on voting. Signing a petition is a right that is fundamental to the voting process. The technicalities she uses to throw petitions out have very little to do with actual voter intent anymore. Forget to use a staple, use a paper clip instead? All thrown out. Correct a date with an initial? All thrown out. There are many more examples. Bob Wolfe got testimony from many who had their signatures thrown out as invalid attesting that they in fact did sign the petition. Calling signatures invalid without cause is like throwing out a completed ballot without cause. Shouldn't your petition signature count? Ask yourself what kind of government do we have when your petition for a redress of grievances doesn't count?

She even asked, "Please join me: Sign my petition..."

Ironic that now she likes the idea of petitioning just after the petitioning period ended this week and she set new records for rejecting signatures with completely arbitrary rules and last-minute rule changes -- such as deciding that signatures have to be turned in to a new date two full weeks before the statutory deadline or they can't promise to count them in time -- they interpret the final deadline as applying to how fast they can validate signatures, too.

I wonder how Kate Brown expects to win this election with confused appeals screwing up two issues at once -- ballot access and voter suppression -- where she and her actions are the real problem?

Seth Woolley's Blog

still around(2)

I've just been busy.

Seth Woolley's Blog

current status of irv campaign(0)

Who I am

I'm Seth Woolley, former State Secretary of the Pacific Green Party of Oregon, 2008 candidate for Secretary of State, and treasurer of the Portland Greens.  I am employed as a senior spatial database software engineer for a silicon valley startup, but my political passion is the entire gamut of progressive election reform.

I ran on a campaign of campaign finance reform, majority voting with IRV, and ballot access reform.  The ballot access reform was successful, and in 2009 the Democrats repealed a 2005 law they passed to prevent independent candidates from getting on the ballot by unconstitutionally throwing out most party-registered candidates from petitions and nominating conventions.  In supporting IRV, I also was one of the main opponents of measure 65 which was a corporate media and corporate-financed campaign to implement the Louisiana "Top Two" Primary system in Oregon that would make the problems IRV is intended to solve actually worse than simple first choice voting we already had.  It's like they went to a mathematician and asked how to make an election system that's vulnerable to more manipulation than our current system.  I was quite pleased that we Oregonians were collectively smarter than our neighbors in rejecting Top Two by a wide margin.

How does IRV work?

Instant Runoff Voting, also called Ranked Choice Voting and Alternative Vote, is a form of Preference Voting where voters are asked to fill out more than their first choice of preferences and then counting is done using multiple rounds off the same ballots.  The way it works is very simple.  If after counting all the first choice votes and somebody has a majority, they are immediately elected and the election is done.  If, however, nobody gets a majority of the first choice votes, the last place of first choice votes is eliminated, the ballots are transferred to the next choice on those ballots, and counting is re-done.  A majority is re-checked for after each round until there is a majority or there is only one candidate left.  This ensures, as best as possible, that each candidate has a majority support and that voter's ballots are never not considered in deciding the winner due to voting their actual preferences.

In our current paper ballot system, it would simply be a matter of having first, second, and third choice slots to the right of each candidate and having voters fill in their first, second, and third choices.  Voters may choose not to fill in a complete ballot, but it is to their advantage to avoid an "exhausted ballot" to do so.  Currently anybody who votes for a third place candidate automatically has their ballot "exhausted", not influencing the outcome of the election, and in a large field of candidates, particularly non-partisan races, and also very often in close partisan races, a minority of support may only be needed to win.  We try to get around this issue only for non-partisan races by holding two elections where if there is no majority in the primary, we take the top two, even if their total isn't a majority themselves.  IRV solves this problem by not needing to have a whole second election and by eliminating the last place candidate in repetition until a majority is attained.  In our case, we'd move the first and then only election to the general election which has more participation.  To learn more about how it works and where it is used, fairvote dot org slash irv is a good place to read up on it.

Why I'm supporting IRV

Currently, the two major reforms I am working on now are IRV and Public Financing.  Spencer Burton is already leading the Public Financing effort, so I'm taking the lead on the effort for IRV by shepharding the developing mass-movement around it.  Many people during the election approached me personally and wanted to get involved to support IRV, and so we're raising money and developing coalitions.  More on that later, but I want to talk about why it is needed first.

Why IRV is needed and other auxiliary nice-to-have benefits

IRV is needed because:

  • It accurately represents people's desires, improving on the rudimentary, simple plurality system we've been using for hundreds of years.

  • It saves money because it eliminates the need to have some but not all primary elections because all local elections are non-partisan already, obviating the need for partisan primaries, and in our case, public financing is cheaper since successul campaigns using public financing have so far required runoff elections, doubling the cost.

  • It improves the political climate by making negative campaigning a huge strategic liability, because with so many options to go above you, it is unwise to do personal attacks: while negative campaigning hurts you less than it hurts your opponent, the positive opponents surpass both you and your primary opponent in public support.

  • It allows majority support of elected candidates in diverse races that we often see in Portland while at the same time enhancing opportunities for traditionally disenfranchised communities like women.

  • It increases voter enfranchisement by moving candidates elections to the general election, doubling turnout of those who will be voting, as normally we have very few runoffs, two in the last decade, for example.

  • It increases the likelihood that our votes do affect the outcome for those who vote for up and coming parties and candidates by not requiring that we vote for one of the apparent top two since we normally only get a first choice.

IRV or Ranked Choice Voting in Oregon already established

IRV is a non-partisan good government majoritarian reform intended to upgrade our 300 year old election system that currently only allows first choice preferences to be noted by allowing people to rank their candidates in order of preference, first, second, and third. Over 100 years ago in 1908 by one of the first initiative ballot measures, Oregon voters already approved preference voting and proportional representation if enacted by law which is now encoded in Article II, Section 16 of the Oregon Constitution.  This allows the state and home rule chartered entities such as counties and cities to implement it without needing additional authorization.

Current Status of IRV campaign

In the past, under Secretary of State Bradbury, John Lindback, the former Director of Elections was strangely an opponent of IRV elections, blocking efforts at the state level to make things easier for county clerks by standardizing how IRV elections would be implemented state-wide, given that it's already in our Constitution.  He also opposed it by asserting state law overrides the Oregon Constitution, but the state law he invoked doesn't actually oppose IRV elections, the language doesn't contradict the Oregon Constitution to a reasonable reading and statutes can't contradict the Oregon Constitution anyways and be enforcable even if what he argued was true.  In any case, Lindback is now back out of state and we have a new Director of Elections, Steve Trout, under Kate Brown, my former opponent.  At first, we were cautious when dealing with Trout, but both he and Brown are supporters of good government reforms such as IRV and have been on the record supporting the idea, unwilling to stand in the way of honest government reforms.  This is refreshing because the main reason I ran against her was because Bradbury was a particularly partisan Secretary of State and I was concerned Brown might repeat that.  It's refreshing to be pleasantly surprised.  Just last week I was talking to Trout about how IRV as used in San Francisco (which allows up to three rankings) was upheld by the 9th Circuit Court of Appeals.  It's nice having well-educated administrators in Salem to talk to.  Right now we're building our grassroots support through small donor fundraising and outreach, having amassed well over a thousand donors through direct outreach on the street and door to door and we're in the process of building official coalitions and splitting off the group since it is a truly non-partisan reform that has wide appeal from all aspects of the political spectrum from any place good government is a critical issue.  The Democratic Party State Platform and Election Integrity Caucus, the Oregon Pirate Party, many Libertarians, the Oregon Education Association, Alliance for Democracy, and many others advocate ranked instant runoff voting, and in recent elections the Republicans have ironically badly lost elections that could be considered spoiled by the Constitution and Libertarian Parties.  Why they haven't supported good government reforms such as IRV is striking to me, since one could cogently argue that they lost the gubernatorial race and the US Senate race for this very reason.  One reason I think they don't is that they don't actually believe that good elections lead to more conservative candidates and they are looking at the higher-order influence of real election reform and see it working against corporate interests.

Plan to implement IRV

Our current plan is to get the city charter review committee to recommend the city commission's referring a ballot measure to the voters to amend the city charter.  If we run into any issues there, we'll file a petition and start collecting signatures.  In any case, public outreach and voter education is crucial to winning campaigns such as this and seeing it successful in the long-term.  Organizations like Fair Vote dot org are very effective in helping the advise local campaigns on these facets and we have access to established local experts such as myself, Dan Meek, Fillard Rhyne, David Delk, Paul Gronke, Janice Thompson, and Blair Bobier to help us as a community be educated.  One issue we had was that Amanda Fritz was elected using public financing and ironically didn't want to eliminate the two-stage runoff system because she got twice as much funds to help in her campaign for her own voter outreach.  Now that public campaign financing didn't pass, we're confident she will see the problem with requiring candidates and the city and county to spend twice as much money for elections.  When you have to raise money twice, it sure can be a drag.  We've already talked to some members of the Charter Review Committee and have some strong support already there on the inside, so we're probably not going to need to even bother getting our own people on that committee, which was a consideration at first.  All in all, we're progressing steadily, have no more state road blocks, and are excited for the future of the campaign.  If you want to donate toward it, please visit click the donate button and type irv in the canvasser field to ensure we earmark it appropriately so it gets to our soon-to-be-spun-off committee.

IRV implemented elsewhere and the impact on progressive politics

There are many jurisdictions which have already implemented this reform.  Australia uses it to elect an entire house.  Cambridge, MA uses a multi-seat form called Single Transferable Voting to elect their city council -- which is actually the a good form I'd like to talk about later as a further stepping stone on the path to better elections.  The not-that-progressive Liberal Democrats gained major influence in the recent UK elections based on their support of Alternative Vote, which is another name for IRV or Ranked Choice Voting based on the success of IRV as implemented in London already.  In jurisdictions with meaningful election reform Green Parties are seeing incredible victories in Europe.  In Germany die Gruenen "Realos" are winning state governorships for the first time ever and becoming coalition partners in (for Germany) highly conservative states.  The Libyan and other Wars, Fukushima incident, global warming and the success of Feed-In Tariffs, a Green Party proposal some of my friends are trying to implement here (Oregonians for Renewable Energy), have made the Greens highly popular in Germany.  Also, in France, despite having a not as good election system, the Europe Ecologie Green Party alliance has led to additional success in France, going from a few percent to 15% of the vote in European Parliament in PR party-list elections, despite having a quite terrible election system (top two and plurality) at the local level in France.  We've seen how dramatic election reform has empowered serious reform to take place around the world and now this is happening in the US.  Notably, San Francisco (San Francisco County) and Berkeley and Oakland (Alameda County) are paving the way on the West Coast.  Oakland recently had an incredibly successful election where a large number of candidates and voices in an election elected a minority candidate where in plurality elections a more reactionary white person would have won.  The Greens paved the way for this reform there through major help of Green SF City Commissioner Matt Gonzalez, a recent running mate for Ralph Nader's Independent run.  The system was so successful other jurisdictions began adopting it.  This is the model we'd like to see happen in Oregon, local elections lead to expansion as people are educated about the benefits of the system.

Add-on reforms that work together

Eventually, IRV too could pave the way for serious reform of the party system in Oregon by allowing people to run as candidates without the backing of a major party. In many places, there is a push to do non-partisan elections, and one way business interests have approved of is called "top two" voting, which allows them to buy the top two candidates right away and ignore progressive candidates the rest of the election cycle as the media focuses on their favored candidates creating a hardened spoiler strategy system that benefits the monied.  This passed in California and Washington with massive corporate, reactionary support, but failed in Oregon by a two to one margin. It does make sense to go non-partisan, though and IRV elections allow a meaningful general election without spoiling that can eliminate the primary run both by general top two and partisan ballots.  In IRV, you can vote third place for one of the top two corporate candidates while keeping your progressive choices first and second, making sure that no matter how many candidates the corporatists and corporate media back, you will have your vote counted while still being able to express true support for one or two principled candidates.

We are not pursuing Single-Transferable Voting in Portland at first because we have single-seat commissioner positions.  When IRV is enacted here, we'd like to take that issue up at a later date because as Janice Thompson of Common Cause noted, minority representation and proportional representation are major historical issues in on the Portland Council.  Also, when IRV is enacted, it will be much cheaper to implement public financing.  Successful public financing campaigns in this city, of which we've only had one with Amanda Fritz, required a runoff election, doubling the cost of public financing in those situations.  I'm also involved with the campaign to put public financing back on the ballot since it lost so narrowly due to in our opinion a perfect storm of ballot title, and political climate issues.  Eventually, too, I'd like to see none of the above options on the ballot, but that's mainly required in places that haven't implemented IRV that itself opens up races to more than two people.

Seth Woolley's Blog

position on or 2011 hb3074(0)

Update 2012-04-21:

I was wrong on this.  See the original Open Letter for the full update.

Trout simply made the processes secret.  I apologize for ever supporting Trout.


I updated my blog post with an open letter questioning Trout's hiring as director of elections:

After a couple years of dealing with Mr. Trout, the concerns mentioned in the below letter have been addressed and it is my belief that Trout administers state elections with integrity.  Paperless elections are indeed controversial, but Trout now works in a full paper ballot, auditable election system as an administrator under a progressive official.  In multiple opportunities I have had to interact with Trout, he has listened to concerns and not stonewalled as Bev Harris accused. In essence, the information that may be found online isn't as accurate as it may seem.

I suggest that people give Trout the benefit of the doubt and deal with him on a direct level before coming to their own conclusions and not jump to conclusions based upon hearsay.

HB3074 (2011) has been introduced that would enable electronic voting for what HAVA calls long-term absentee voters, intended to enfranchise military service members.  The current system of facsimile voting is flawed beyond belief and it needs updating.  By allowing the use of e-mail, better, more secure, more open technology can be enacted by rule.

The rules will be developed with the Department of Defense and election security experts.  It was interpreted by some that the statute changes don't address the trust issues that electronic voting has brought up since the 2000 election.  By deferring to rule-making process, in fact, I believe it does.  The worst elements of HAVA are where it went too far and added verbage that handcuffed the technical experts to make rules with more insight than the details of the statute, rendering them unable to complete its intent and vision.  HB3074 is actually well-written in my view and deserves support rather than opposition, to help lead us to better, more secure, more accessible voting, electronic or otherwise, in the future, where, I hope we can have open, paper-backed, cryptographically secure elections for everybody.

By attacking Trout personally rather than the issues of the bill, the bill's detractors have unfortunately gone down the wrong path.

I suggest they work with rather than in opposition to the elections division in formulating a better bill.  Perhaps during rule-making their complete concerns can be addressed under the stated intent of the statute, the spirit in which the bill was offered, and what testimony for or against it parameterized the goals of the Oregon community.

Seth Woolley's Blog

response to blueoregon kari chisholm on automated redistricting(0)

I was limited to 3000 characters, so I decided to post on my blog and link to this post.

Kari, since you're a partisan hack (this is blueoregon after all), it would make sense that you would oppose non-partisan ways of redistricting.  All of them.

However, as a spatial database expert, I can tell you that it is actually not that difficult to do redistricting.  There is only one reason people hate computer redistricting: fear that the lack of political process involved will prevent them from having their political goals included.

In 2001, Bill Bradbury drew maps that were absurdly partisan.  The Republicans thus have a lot of ground to cover to gain a more fair map that distributes voter power more proportionally.

Most of the work on computerized redistricting comes from people who introduce new ways of analyzing districts and you gave a couple mentioned.  I should note that Brian's method is a heuristic method and it depends on how you seed its initial conditions and randomness generator, so it's got a weakness there from the standpoint of completely automated.

But it's not a bad way of doing representative districts that intend to represent geography.

A basic fact is being missed in all this discussion -- what people want to see: a fair election system.  Too many people are ignoring that.

Districts-by-geography are a form of proportional representation -- proportionality not by ideology inherently, but proportionality by location.  There are many advantages to having a house that has this proportionality, but there are countless disadvantages.  For one, the boundaries are not determined by voters, but through a political process.

The goal of election reform should be to find ways to maximize the determination that can be done by voters themselves and to minimize how much determination is done by special interests, monied lobbyists, and entrenched parties.

If we followed that goal we would be maximizing true self-determination in our elections.

Fortunately, there is a reform that is much more important than redistricting -- it is proportional representation by ideology.  And not entrenched parties.  Ideologies.  This is what most students of politics call proportional representation -- and it is most often implemented by means of a party list.

I know your examples are on the federal level, but I think state reform is more possible.

We don't need a party list system -- our Oregon Constitution in Article II, Section 16 outlines the two reforms that could be combined to create a non-partisan house of representatives that truly represent us.  We could leave the Oregon Senate districted by geography -- possibly ignoring "communities related to non-geographic interests" because we will use the House to create a system where communities of ideological interest are best represented.  Right now communities of interest of the ideological stripe cannot be incorporated into a district map unless they are "kinda" close enough to draw a boundary that doesn't look too bad from above.  That's why the problem is so hard to solve -- the election method itself is to blame, not the computers trying to optimize for parameters.

The two election reforms I mention are proportional representation itself and preference voting.  There is a form of preference voting called single-transferable voting that is commonly used in advanced societies like Scotland and Cambridge, MA to allow voters to express their proportional representative interests through the rank ordering of candidates -- and since they are done using preference voting, the spoiler effect that allows strategy plays by entrenched power players is virtually impossible to exploit.  If a minority votes in a block with others of their kind, they will find the outcomes will match what they voted for in the outcome of the election because the votes transfer to concentrate election behind the ideologically similar candidates with the most votes higher in preference.

So all of this tempest could be done by computer if we wanted to.

The beauty of this system is that it actually acts as a true check and balance system -- geographic distribution and proportional distribution can team up to block a bad bill that doesn't satisfy a majority from two different styles of bodies.  The ideological house, I expect, would likely lean more left, but the geographic senate with its communities of interest split up will likely lean more right.  Multipartisanship will be required to get anything through.  The number of viable parties in Oregon would skyrocket as people would feel free to vote their ideologies -- their consciences, rather than hold their noses and vote for Kari's monied candidates.

If we really don't want to make our elections more useful, we could stick to two nearly identical looking geographically divided legislative bodies and then make a computer program that encompasses the statute-based required elements in ORS 188.010.  Showing us pictures of districts not based on the already defined parameters doesn't help us much.

The only thing that should be political about the process is how to decide what coefficients go into the weighting system.

But that is an easy problem, a very easy problem.  I would solve it by asking each sitting legislator to propose the coefficients that fit a given equal power equation -- for example, all multiply to a given number.  They will do this after having been given access to the source code that takes all of the elements of the ORS into account.  The numbers will then simply be geometrically averaged to equal the same power equation.

The ORS defines some interesting aspects, like communities of interest.  I would propose that any communities of interest be decided by simple scientific sampling -- you ask people what communities of interest they feel most associated to (they can vote more than once) and give them five communities to list.  The ones with the most cumulative votes at the end get input in proportion to others multiplied by the aforementioned coefficient.  So somebody who doesn't like communities of interest for one reason (ethnicity) would have to bias against communities of interest for them (say farmers) at the same time.

Everybody gets their say, but the computer outputs the final output in an unbiased manner.  I believe this meets all of your substantive objections, Kari.  Truly, not a bad idea at all.

Seth Woolley's Blog

avoiding tmp files(2)

In an IRC chat an expert linux admin chagrined that every now and then they catch themselves in a rookie mistake:

sort /tmp/broken | uniq > /tmp/broken

Since sort and uniq are happening in parallel in a pipe, the > clobbers the input of sort since they are acting on the same file.

Another person asked if there's a way to do it without tmp files:

sort /tmp/broken | uniq > /tmp/broken2 &&
  mv /tmp/broken2 /tmp/broken

Since this is a unix filesystem, we can abuse inode file access counts and directory reference counts to avoid a tmp file, but I have to use fuser to avoid a race between the two parallel spawns so that the rm happens after the sort opens the file:

sort /tmp/broken |
    while fuser /tmp/broken; do sleep .1; done;
    rm /tmp/broken;
    uniq > /tmp/broken;

Sort opens and the subshell opens

If sort opens the file first, fuser returns zero and the rm is issued.

If sort has not opened the file first, fuser returns one, introduces a .1 sleep and tries again and again until it has been opened -- since consuming the input doesn't happen until the rm happens (uniq comes after), sort will block holding access to the file even if it fills the buffer completely -- it won't close the connection until the file is consumed, in sort, meaning that there's no race for the end of the sort's fill of the buffer.

Once the file is removed, the reference count of the directory is now zero and the link to the inode underneath is deleted.  Since we have assured that the file is open with fuser before doing this the file doesn't go away because the file access reference count is still not zero and we are left with an orphaned inode that the filesystem will remove once all accesses to it have stopped.

uniq operates on the orphaned inode's data with the input data we care about after filtering through sort and it writes to a new inode and new file reference to the inode.  When uniq is done, the orphaned inode is closed and the filesystem deletes the inode and its contents.  The new inode that uniq created contains the expected data.

It's kind of cheating because one might think the orphaned inode as a temporary file that the operating system takes care of later.  That leads to the philosophical question -- is an orphaned inode with file contents a "file" if it has no file name?

Seth Woolley's Blog

miniature font second update(0)

If you look at the following comparison of the uclibc kernel font (converted to X11), the misc-fixed size 6 font, and my size 6 fonts, you'll see I've done some more work.

The last update at was mainly to solidify and finalize the serif and sans-serif versions with the 4 pixel x-heights.

What I've done is take swoolley2, the san-serif version, add some serifs, but not all over the place, to improve character disambiguation, rounded out the number series, ensured there were at least two pixels of differences between characters, including significant differences when characters were underlined, and also made a 20% shrunk version to match the sizes of the uclibc and misc-fixed six point fonts.  I managed to improve on both of those in readability by adopting the aforementioned practices.

I also created a swoolley8 that's one character wider, 6x6, but that I didn't include in the image below.

Then I also created an 8x6 font called swoolley9 that is about as "big" as I can get with single line leading.  I think if I go to a size 9 or 10 font I can't go much more readable than that.

Here's the comparison image, too big to inline in this blog post:\

I used instead of the motif version of the bdf editor, the author has now put out gbdfed that I've updated to and have been using.

You can download the uclibc kernel font X11 conversion and swoolley6 and swoolley7 here:

Seth Woolley's Blog

response to three letter abbreviations for parties on ballots(0)

Oregon Elections Director Trout,

It has been brought to my attention that the state wishes to replace our name, carefully chosen, "Pacific Green" with a three letter abbreviation, while the law that I helped pass (2009 SB326) and campaigned for clearly states, as you have been notified by others, that the actual name must be given on the ballot next to the candidate name.  I am not an attorney, but my plain reading indicates that this would be an illegal act, and we are considering taking legal action to ensure all parties are recognized by their full names as required by law.

The bill already handles the issue of space constraints by limiting cross-nominations to three names.  Since this issue was already addressed there is no need for you to pursue it further.

Furthermore, when the law was passed, the legislature was fully aware of the existing party names, and no party names are unreasonably long.  If this were an issue, the statute would have been made to address it.  The intent clearly was that the full names should thus be used.

If there are software problems, it is up to the counties to comply with the law and request software patches.  As a software engineer myself, I understand that this is a very reasonable process, and you should be spending your time actually fixing any supposed problems rather than depriving parties of their right to be placed recognizably on the ballot that they earned under law.  I understand that new software would need certification steps.  I suggest you begin the process as soon as possible to comply with the law.

If you do choose to violate the law, the abbreviation we request is PGP, but note that neither Pacific nor Green are identifiable in that abbreviation.  There truly is no three letter abbreviation that is readily recognized by Oregonians for our actual Party name.  Dem., Rep., and Ind. are fairly recognizable, but PGP is not.  A better alternative would be PacGrn, but you have limited it to three letters.

Ballots already cut off common formality words such as "Party", "of", and "Oregon" from most of the full party names.  If the problem is that there is a specific character limit, you should ask each candidate if they would like to assist the selection of a suitable abbreviation for all of their endorsing parties as the issue arises if there is an issue.

Cooperation would be a good way of ensuring that compromises can be made where a candidate can choose to accomodate an administrative error on your part for failing to prepare to comply with the law.

In 2012, I will likely be challenging your employer again in the general election.  If more issues like this come up, it would only provide more reason to question her selecting you as Oregon's Director of Elections, which I openly questioned when the appointment was made.

Seth Woolley Secretary, Pacific Green Party of Oregon 2008 Pacific Green Party of Oregon Secretary of State Candidate.

Seth Woolley's Blog

jeff lawrence and his incoherent debate response(0)

3rd District Oregon candidate Jeff Lawrence tries to debate the economic meltdown and fails at basic logic:\

This is my response:

His first sentence is wrong.  Lopez wasn't the "sponsor".  All three candidates were equal sponsors.  But let's get down to the nitty gritty.

Jeff says that government intervention is to "blame" for the greedy behavior of individuals that led to the economic meltdown with the argument that entities follow laws and regulations rationally.  That assumes that people are rational (no they are not as he is demonstrating now).  Being self-interested is not always the rational thing to do.  People are more self-interested than rational.  Yes, some people will try to get away with as much as they can, which is generally what happens in non-productive financial markets where dishonest work is worth more than honest work. But that dishonesty doesn't mean that it is the fault of those who are supposed to limit dishonesty.  People who are dishonest are first themselves morally wrong, if not legally wrong.  And where they are legally dishonest, that's a failure of the regulatory system to regulate them so that they are not dishonest.  I do agree with him that if the rules are lame the outcome is lame, but that doesn't imply his conclusion.  Big government can become corrupted by big business, but it doesn't make big business right to corrupt big government.  It makes it smart to limit both big business and big government.

That's where Libertarian analysis fails utterly.  Libertarians would demolish big government and leave big business intact, free of any regulation by big government.  The Green ideology of limiting both is much more sane.  If one limits both big business and big government, it decentralizes political power back to the people and individuals and create freedom.  Libertarians are anti-liberty by arguing for policies that help big business to take away people's freedom through economic hegemony, manipulation, and outright deception.

Greens centralize through the creation of diplomacy and protocol negotiation only where necessary to protect the decentralization of the individual and power.  Things like the Internet, for example, which works on common protocols decided by committees of intelligent people under the auspices of government, is an excellent creation and role of government.  Utilities and infrastructure are also examples of good uses of government.

Libertarians would privatize everything, including the Internet, allowing net non-neutrality and big corporations controlling vast amounts of the public sphere and marketplace.  Libertarians don't see how equally distorting big business is compared to big government.

And that is why I could never be a member of the Libertarian Party.

The rest of his analysis is so shoddy I won't even bother with much of it. Blaming Fannie and Freddie, which were an insignificant part of the problem, for example, demonstrates how ignorant he is of how huge the derivative securities problem was and how the removal of insurable interest enforcement created a predictable scenario that actually led to the meltdown.  Neither the Republicans nor Democrats have proposed meaningful regulation of the fiasco, and the Libertarians have their heads so far in the ground so as to only exacerbate the problem were they in power.  Greens consistently opposed the bailouts to ensure not just moral hazard was enforced, but so that the smartly operating small businesses and homeowners like myself were rewarded by being able to buy cheap bank assets in bankruptcy proceedings, keeping the brick and mortar banking system moving forward.

Further, his pathetic attempt to take over the term "sustainability" and claim that enterprise is ipso facto sustainable is shocking in light of the economic  meltdown because it was the financial enterprises, deregulated not by just government, but by all private oversight too (thanks to private rating agencies dropping the ball entirely) that specifically caused the unsustainable bubble.

For those that want responsible government, spending within its means and in a long-term sustainable fashion, the Green Party recognizes that the public sphere saves money in the long run due to leveraging *economies riding on public infrastructure*, not just economies of scale.  It also recognizes that rather than saying one should never tax, that taxes are an important part of ensuring the viability of the public sphere to drive the economy.  Greens also recognize that meaningful government derives from the people and that local, democratic control is more efficient than centralized government that can be manipulated and bought by equally large powerful interests. That being said, Greens also recognize not just where government is useful, but also where business is useful, and that free but honestly regulated markets where the public is informed is the best way to ensure rational markets.

Reactionary thinking from Libertarians opposed to all regulations, taxes, and promoting only private ownership can only lead to an irrational market, free not to create prosperity, but free to be manipulated by those who control large aggregations of capital.  Free markets can be good, but only if they are kept free for everybody to participate in, working under a common regulatory framework designed to create universal transparency into the economic system, to allow people to make rational choices that will be mutually beneficial.  Ignoring the reality that information disparity does in fact lead to failure of the market to create mutual benefit doesn't indicate to anybody that the Libertarians actually understand economics.

Further Greens recognize that information disparity is endemic and to balance out the inability of government to completely open the markets, progressive taxation should be used to redistribute large gains more equitably back to the people, especially through infrastructure reinvesement, so that all can continue driving the economy through novel and innovative ways of using the public-private hybrid marketplace.

Back to Libertarians, in fact, much of the modern Libertarian economic philosophy comes if not from the teenager-trying-to-break-free-from-their-mom magnet Ayn Rand that helped inspire a radical right group of professors in Chicago, from a man named Ludwig von Mises who established the Austrian School of economics.

In conservative circles there are two main schools of economic thought -- the Chicago school, which has recently been completely discredited by the failure of Milton Friedman's Monetarist policy under the direction of Alan Greenspan (if we ignore his fascist support of dictatorial regimes like Pinochet's) -- and the Austrian school, founded by von Mises.

Von Mises wrote a book called "On Human Action", available on a far right website near you, linked by chat rooms frequently, where he used a form of philosophical rationalism to create an economic ontology that starts from one simple fact: Humans Act.  Stealing a page from Descartes, von Mises then claims to derive some very bold statements about how to run a socioeconomic system, stopping short of claiming that god's existence can be proven by it.

As justification, he refers to Kant's analytic/synthetic and a priori/a posteriori distinctions.  Normally, I would respect somebody aware of Kant's philosophy, but von Mises then takes a curious turn.  While Kant claimed that the synthetic a priori exists in a now discarded turn at philosophy of math, von Mises claims that human action is the synthetic a priori despite the general view of philosophers of not just his time period, but in Vienna, that such claims were wholly meaningless.  In his book he makes no attempt to critique the separate critiques of synthetic a priori arguments made by his contemporaries making it a rather shoddy work of scholarship, other than to appeal to ignorance and claim it to be prima facie true.

But what is truly shocking is that after the prima facie arguments are made, it is further argued that economic systems are inpenetrable to analysis, and that only by being left alone completely will they be able to work their divine hand magic.  They don't say if completeness includes deregulating small things like murder and rape -- that would be too much nuance.

After the failure of Republicans and the Chicago School to run the world economy intelligently, the far right has recently found it convenient to resurrect von Mises' ideology, which criticized such Chicago School precepts that economic systems were in fact understandable by analysis and could be controlled (with the application of monetary policy, fiscal discipline, and structural adjustment programs).  Their basis for such critiques?  Besides the utter failure of monetary policy and rise of indigenous populations against foreign intervention in the test bed of Chicago School ideology, South America (the latter they don't even bother mentioning), they write articles assuming Austrian School precepts and then declaring Chicago School ideology wrong.

Personally it's rather fun to read articles by Mises and Cato Institute "scholars" where they arm-chair write about complex economic systems, claim it can't be understood, while claiming to understand economic systems enough to say how they should be run -- or really, not run.  It's a turn very simliar to Creationism, where any incompleteness in any theory of biology turns into insurmountable proof that Creationism is right.  But besides the fun, it is also quite dangerous.  These followers of von Mises are essentially stating that any attempt to investigate and put morality back into the economic system is impossible by ontological definition.

So meaningful regulation of the market to prevent another economic meltdown would be anathema to this new breed of Libertarian.  Where the old Libertarians would wax philosophical of Ayn Rand and cite Milton freely, perhaps throwing in a reference to Rothbard or Hayek, the new guard can get away with merely asserting the correctness of their position.

I actually pine for the days when the Chicago School was taken seriously, when one could actually bring up emperical data to a discussion instead of having to read armchair philosophers like Jeff Lawrence who can make statements in a vacuum without any data, merely asserting that their philosophical ideology is true with a bite or two of an example of how some government involvement, like Fannie Mae or Freddie Mac, spoiled the entire economy.  If only the free market weren't so fragile, maybe we could live in one of their utopian visions of money (or gold really) running everything.

Because, really, if you're Austrian, you believe that gold internalizes the entire human ethic, and that if we just traded with each other without pesky moral and government-enforced boundaries, we'd all be better off.

Maybe I'm reading too much into Libertarians like Jeff Lawrence, and that he's really just parroting some ignorant soundbyte and doesn't have any real philosophy underpinning his ideology other than said soundbytes.

I sure hope not, so I am being audacious and presuming that he's another "educated" Libertarian.

Seth Woolley's Blog

got my fcc ham license(0)

FCC amateur radio license

General classification, callsign: KF7IOR.

Check it out on or or

Updated my signature, domain to reflect:

Seth Woolley's Blog

javascript irc bot(3)

Sieve of Eratostenes:

+js var buffer = ""; function dump() { return buffer += arguments[0]; }; var n=659,i=2,m=Math.sqrt(n),c = []; while (i <= m) { if (!c[i]) { var s=2; while(s <= n/i) { c[i*s]=1; s++; } } i++; } i=2; while (i <= n) { if (!c[i]) dump(i + " "); i++; }; dump("");

Euclid's Method:

+js var buffer = ""; function dump() { return buffer += arguments[0]; }; var e=600851475143, f=e, i=2, s=Math.sqrt(f); while (i < s) { if (e % i == 0) { dump(i + " "); e /= i; if (e == 1) { i=s; } } i++; } dump("");

Fibonnaci Sequence:

+js var buffer = "1 "; function dump() { return buffer += arguments[0]; }; var n=10, f=0, g=1, v, i = 1; while (i < n) { v = f + g; f = g; g = v; i++; dump(v + " "); }; dump("");

Seth Woolley's Blog

response to the allen alley plan to tax government to pay for vital services(0)

This is the grand idea we've been waiting for?

Oh please.

This is a terrible proposal, but I see the groupthink has already begun. Why do I have to be the person who thinks outside the box and points out the obvious? Here goes.

Federal funds can't be diverted at the state level like he is proposing without being directly related, like administration, so he's not talking about 3/4 of the budget, but less than one half. We can lobby to change this all we want to no avail, and the Democrats in Washington, specifically the Oregon delegation, are not going to vote to change this for him, period. Unless he explains how he's going to get around the legal issues here, he needs to stop including this.

The "other funds" category of the budget is that way because those programs are specifically funded so as to have stable funding. Taking money from everything else in violation of stable funding sources is moronic. Now you expose every other program, many of which have stable funding sources that come from users directly, to being robbed.

If this were implemented, it will be impossible to eliminate wasteful or bad programs (like the lottery) because a portion of them will go to fund education! Government will try to expand those "other services" as a way of leveraging its "tax" on those services. People who want to legalize Marijuana want to tax it so that government will protect the tax program and thus marijuana. This seems like an obvious problem with his proposal. Why does he not see it?

And since these services are non-profit, they shouldn't need to be taxed, just like we don't tax non-profits already. It's akin to taxing non-profits in my eyes. It would make every dollar put into a program harder to deliver on by government than a non-profit (except non-profits have much higher administration costs than government, so it wouldn't be that bad). If we want to fund education, fund it directly!  Alley is playing a game with the budget that any accountant would mock, rightly so.

Does Alley have a position on kicker reform that every sane person has been advocating except hard-right Republicans? We can fix the problem with a more substantial and reasonable rainy day fund created by eliminating the rest of the arbitrary kicker, which was a problem created by his own team. Even the right-wing Oregonian editorial board supports this idea.

Lastly, and probably most importantly, Alley needs to stop lying about the growth of government. Government did grow, but that is when you include federal revenue that is passing through (with increased caseloads brought on by the recession) population increase, and inflation. If you take the first out, which will happen when the recession ends anyways, you are left with a per capita reduction in expenses and a corresponding drop in the budgets. The state is already collecting fewer dollars in inflation-adjusted dollars per capita than we were 20 years ago. Alley keeps misleading the public about basic facts of the sustainability of state government while mouthing sustainability. If he keeps doing this, he's going to lose every debate he gets into with anybody who has done five minutes of research.

I'm willing to help him learn these facts, but he has to be willing to think outside the box to be innovative. I think perhaps he's too old and set in his ways to truly innovate (which is why his company has been on a downward slide of 20% year over year decline in revenues while mine has 60% year over year growth).

Seth Woolley's Blog

response to Oregonian editorial against measures 66 and 67(0)

Rick Dancer sent me a link to the Oregonian editorial:\

Here follows my response:

Yes, I have seen the Oregonian editorial.  They're a corporation and thus have no innate credibility except as a mouthpiece for their corporate advertisers and owners.  Why would I say that?  Allow me to explain.

First, the tax measures are actually so well-drafted, I doubt I would change one thing about them.  They support local business by penalizing large out-of-state corporations with language that can pass 14th amendment challenge by going after a tiny portion of gross receipts and raising the minimum tax so that even foreign corporations that channel their local profit to tax shelters still have to pay some of their way.  This is a huge win for Oregon.

Second, since some of the very wealthy make their income through not being a C corp, they target payroll taxes, too, and in such a way that zero middle and lower class people are impacted, protecting consumer spending that drives 60 percent of the economy.  On top of that they are partially permanent, so that we can better save up our rainy day fund in the future.  The permanent part increases in progressivity by raising the minimum application of the tax graduationally so the bulk of the reform still applies to the grossly rich!  Ingenious idea!  Everybody who is complaining about the permanence either hasn't looked at the bill or is making so much profit or gross receipts they'd still apply -- we're talking tens of millions here.  The opposition talks about a hundred thousand dollars to profitless corporations, but the only companies that could apply to are those bringing in over a hundred million dollars.  A corporation making over a hundred million dollars might have to pay a hundred thousand dollars, or 0.1% of their gross receipts.  Let me explain how profitless companies work (as I've worked at multiple startups and have stock in them).  Companies that are losing money who haven't fired their employees to become profitable aren't going to fire more because of 0.1% gross receipts tax, for they have chosen to hire people with loans or reserves and they think the return on those employees more than makes up for the loans plus their risk.

Third, it provides tax relief for recipients of unemployment.  I get all the newsletters of every elected politician in Salem to my email.  Even the Republicans were supporting this part!  And they are right.  The unemployed are almost assuredly going to be spending that money in the economy thus making it a direct injection into the recovery and keeping people out of further trouble and keeping them in their homes.  HUGE WIN.

Fourth, it's important that we spend money on some projects that we'll get federal matching dollars for.  If we don't do that, we lose it, and the injection into our economy would be cut in half.  It would be insane not to use that funding source because Oregon is not able to perform Keynesian economic recovery itself due to needing a balanced budget -- only the feds can do it constitutionally.  Another big win for Oregon.

Fifth, the Oregonian says that a valid alternative is kicker reform.

This is a case of direct deception.  Bear with me for a little background.  The kicker only takes effect during economic booms, not busts.  So reforming the kicker only helps us in the next recession not this one.  So we don't have to do it now.  Furthermore, The Oregonian suggests we reform the kicker INSTEAD of raising taxes -- putting an alternative up that the business community will go after later anyways.  Vote down this so you can vote down that in the future!  It's an excellent divide and conquer strategy for business.  I do fully expect the kicker (of what remains) to be reformed to apply to the rainy day fund in the future when we start pulling out of the recession -- when it will actually matter.  That is if the Republicans are still ineffective in the legislature and refuse to be a part of the solution as I watched in awe during the session.

But most importantly, the Oregonian is talking out of two sides of its mouth.  Rick Attig, associate editor and editorial board member drafted in article back in May where he wrote:

"The Oregonian's Jeff Mapes reports that one of the primary supporters of kicker reform, Sen. Ginny Burdick, D-Portland and chairwoman of the Senate Revenue Committee, says kicker reform may have to wait at least until next February. Burdick and other legislators are worried about putting any tax-related measure, even kicker reform, on the ballot this year. That's because anti-tax activists are likely to force to the ballot at least one of the tax increases the Legislature is likely to approve this session. If kicker reform wound up sharing a ballot with, say, an income tax surcharge, it's likely voters would shoot them both down.  /  That political calculation makes sense ..."

So we know the editorial board knows quite well the plan for kicker reform -- it's going to come later.  In the same article Attig even explains how the kicker works in booms and busts.  So the only reason to say no on 66/67 while saying "they could have done the kicker instead" is by PURE DECEPTION.  Yes, they would like to see an "ideal" (in their mind) world with just kicker reform and no tax increase, but THAT DOES NOT SOLVE OUR RECESSION PROBLEM NOW, so the legislature MUST act with this type of tax increase NOW or we risk massive cuts in the public sector, a primary driver of economic recovery, as empirically-minded economists already know.

Sixth, As far as using more of the rainy day fund as they suggest too?  That's one of the few smart things Kulongowski did -- sticking to his guns on not over-raiding the rainy day fund.  That led to more reasonable budget work on the part of the legislature who managed to close a whole swath of old exemption loopholes and thus created less of a need for more tax increases in the future.

Seventh, we don't have to worry about companies moving their offices to Washington or California, because the corporate tax structure for both is worse than it is for Oregon.  I even talked to a tax lawyer for a large semiconductor fab in Vancouver who told me that they regretted locating in Vancouver due to the worse business climate in Washington compared to Oregon, even with these measures.

Lastly, in the opposition statements I've read the complaint that the size of government has increased in Oregon in terms of raw numbers.  The Oregonian has steered clear of this argument, which is good, but I'll explain the problem with it.  None of the figures given accounted for population increases, inflation/deflation rates, Measure 57 implementation, nor the fact that most of the increases were due to temporary federal stimulus dollars only.  The fact is that Oregon government is actually getting more efficient and providing more services per our own income dollar.  To further this, Oregon has put up one of my campaign ideas: a transparency website that helps people understand government expenses and potential waste.  I've already begun datamining the website looking for more ways to improve efficiency.  I do not have this same level of access and accountability to almost all corporations.

This bill has tons of upsides and virtually no downsides.  If corporate personhood were overturned (it was judicial activism in the Santa Clara decision that interpreted the 14th amendment as applying to corporations, as there's no existing law granting corporations personhood) I would have amended the gross receipts language and made it apply to foreign corporations only, but the US Supreme Court has made the language in there now the best of the existing world.

In full disclosure, I've donated a thousand dollars to a mailing to Pacific Green Party members containing material in support of the measures and my wife is a teacher, who would be affected by seven days of school closure and a corresponding pay cut if the measures fail.  She's also already in a pay increase freeze.  I do not make enough money to apply to any of the taxes.  I'm also volunteer State Secretary of the Pacific Green Party of Oregon and volunteer Treasurer of the Portland Metro Chapter of the Pacific Green Party and on the elected volunteer State Coordinating Committee of the Pacific Green Party of Oregon.  I was their 2008 Secretary of State candidate and am currently a legislative spokesperson for the Party (I testify in Salem on behalf of the members of the party).  I work in Portland as a Senior Software Engineer for a Silicon Valley based startup company that is one of those not-yet-profitable non-Oregon corporations.  I estimate my employer of around 100 people might be affected indirectly to the tune of about $70 as a result of these measures passing.

Seth Woolley's Blog

Open letter Regarding Trout Hiring(0)

Uodate 2012-04-21:

On the very issue of HB3074, if you look at the rules they actually implemented, they weren't as I was told by Trout.

So yeah, no integrity.  See for yourself, look at OAR 165-007-0310 that specifies that the processes will be SECRET.  Way to go Trout.

I guess I was right to be suspicious about him all along.

Trout got the benefit of the doubt with me.  There's no doubt any more.

Update 2011-05-24:

After a couple years of dealing with Mr. Trout, the concerns mentioned in the below letter have been addressed and it is my belief that Trout administers state elections with integrity.  Paperless elections are indeed controversial, but Trout now works in a full paper ballot, auditable election system as an administrator under a progressive official.  In multiple opportunities I have had to interact with Trout, he has listened to concerns and not stonewalled as Bev Harris accused. In essence, the information that may be found online isn't as accurate as it may seem.

I suggest that people give Trout the benefit of the doubt and deal with him on a direct level before coming to their own conclusions and not jump to conclusions based upon hearsay.

HB3074 (2011) has been introduced that would enable electronic voting for what HAVA calls long-term absentee voters, intended to enfranchise military service members.  The current system of facsimile voting is flawed beyond belief and it needs updating.  By allowing the use of e-mail, better, more secure, more open technology can be enacted by rule.

The rules will be developed with the Department of Defense and election security experts.  It was interpreted by some that the statute changes don't address the trust issues that electronic voting has brought up since the 2000 election.  By deferring to rule-making process, in fact, I believe it does.  The worst elements of HAVA are where it went too far and added verbage that handcuffed the technical experts to make rules with more insight than the details of the statute, rendering them unable to complete its intent and vision.  HB3074 is actually well-written in my view and deserves support rather than opposition, to help lead us to better, more secure, more accessible voting, electronic or otherwise, in the future, where, I hope we can have open, paper-backed, cryptographically secure elections for everybody.

By attacking Trout personally rather than the issues of the bill, the bill's detractors have unfortunately gone down the wrong path.

I suggest they work with rather than in opposition to the elections division in formulating a better bill.  Perhaps during rule-making their complete concerns can be addressed under the stated intent of the statute, the spirit in which the bill was offered, and what testimony for or against it parameterized the goals of the Oregon community.

Seth Woolley

End Update

( See the press release at )

Secretary of State Kate Brown:

I write to you regarding your recent hiring of Stephen Trout as the new Director of Elections.  I have a few questions, but first, I will provide the context in which my questions originate.

A number of people have brought to my attention Mr. Trout's history as an elections administrator.  Frankly, the information, which can now be found online, is disturbing.


Bev Harris, of the nation's premier election oversight group Black Box Voting (BBV), says he is, "a supporter of paperless touch-screens and worse, has demonstrated a dreadful attitude towards citizen oversight."

He was on their "Gotta Be Replaced" list of election administrators who are hostile to election transparency.

Mr. Trout tried to keep BBV from auditing the election in San Bernardino County and is closely tied to Scott Konopasek, who was famously quoted by the NY Times as saying he has to sometimes "massage the data" when asked how the vote totals went down in the middle of a count for a progressive candidate. Konopasek and Trout were ultimately dismissed from both positions there for cause, including not being responsive to superiors when problems were pointed out.

Black Box Voting in 2006 listed Stephen Trout again when they updated their "Gotta Be Replaced" list, highlighting the relationships among the top four on the list:

Elections work is extremely challenging, but it's made worse when a small percentage of obstructive and vendor-friendly officials achieve positions of influence. It's one thing to have a mishap or two, but certain elections officials seem to be in trouble all the time. [...]

Some of the "Gotta Be Replaced" list remain in office, embattled. Those who have remained try to hire those who resigned, as consultants, to come in and give seals of approval to problematic elections and equipment.

Scott Konopasek: Was elections chief in Salt Lake County (UT) went to Snohomish County (WA) where he ushered in Sequoia touch-screens; from there he went to San Bernardino County (CA) where he also pushed through Sequoia touch-screens.

In August 2004, Konopasek admitted to Black Box Voting investigators (unbeknownst to him, in front of a New York Times reporter) that he had occasionally had to "massage" the data on election night. That admission made the New York Times. Two months later Konopasek apparently offended county supervisors so badly that he was terminated.

Konopasek and his sidekick, Stephen Trout (formerly of the Bill Jones regime at the California secretary of state's office), formed an elections consulting company.

Conny McCormack: McCormack had been in charge of jury selection in Dallas County (TX), where she became head of elections. Shortly after taking office, Drake-McCormack was hit with violations of the Voting Rights Act of 1964 over an incident related to installation of voting machines. She subsequently came under investigation by the Texas Attorney General on allegations that she had manipulated an election by shorting ballots in African-American districts.

While still under investigation, McCormack went to San Diego County, CA. She took over from San Diego's Ortiz, who had been indicted. McCormack turned over the reins in San Diego County and took over in Los Angeles County.

Conny McCormack appears to be related to Scott Konopasek through marriage (her sister-in-law is a Konopasek.) Black Box Voting has an unconfirmed report from local citizens that Konopasek's new consulting firm participated in a vendor meeting with McCormack regarding a telephone voting system.

Mischelle Townsend: (Riverside County, CA) - After a contentious stint as Registrar of Elections in Riverside County, where Townsend brought in Sequoia paperless touch-screens, shared a public relations company with Sequoia, appeared in commercials for Sequoia, and allowed Sequoia technicians intimate access to her voting system during live elections, Townsend resigned. She took a position with Konopasek's consulting firm to make it Konopasek, Trout and Townsend.

Curiously, Mr. Trout has purged his San Bernardino and ForeFront Elections information from his Linkedin account, only choosing to highlight his CA Secretary of State work, and then zooming forward to his current company, Election Solution Providers. ( )

In your release, you note that a qualification listed was his "defense" of "election processes" in court.

Under his Election Solution Providers moniker, he has attacked the California Secretary of State for decertifying election software when CA Secretary Bowen became convinced the machines were not secure enough to ensure accuracy of the election:\

He was clearly working in the interest of the vendors.  Why? He makes a living implementing computerized touchscreen voting.

In addition, I found that it was reported that Mr. Trout didn't just resign from San Bernardino County Asst. Registrar of Voters. He was placed on administrative leave with some sharp criticism from his superiors.  The administrative leave was essentially a firing, as they had already appointed a replacement and said the leave was required to ensure a smooth transition.\

The Daily Press reported:

Former San Bernardino County Registrar of Voters Scott Konopasek and Assistant Registrar Steve Trout are on paid administrative leave. Konopasek, who started in January 2003, had come under criticism for problems at the registrar's office.

"I've been consistently a critic of the Registrar of Voters during the past year due to the fact that Scott Konopasek has always had a difficult time working under the management or leadership here in the county of San Bernardino," said First District Supervisor Bill Postmus.

Postmus cited problems with preparing and mailing sample ballots in the primary and general elections this year. Konopasek ignored a county commission's suggestions to solve problems in the primary election, the supervisor said.

Konopasek will receive $9,416 a month while on paid administrative leave through Dec. 24. County spokesman David Wert said the paid leave is necessary so Konopasek will be available to the county as needed. His salary was $113,000 a year, plus benefits.

Trout will be on paid leave under the same circumstances through Jan. 15.

In a press release, county officials credited Konopasek and Trout with successfully establishing electronic voting in San Bernardino County and making provisions for disaster victims to vote during the 2003 wildfires.

His resignation was forced: His administration was bungled.

It's interesting that the article notes "success" implementing electronic voting while at the same time criticizing his lack of success actually implementing a key part of the election that provided transparency and ignoring the county commission when instructed to fix the problems.

Is that what we actually want in Oregon?  Paperless computer voting, poorly implemented?

You are quoted in the Statesman Journal:

"Oregon is very fortunate to get someone of Steve Trout's caliber for this job," Brown said in a statement. "I'm confident he will continue Oregon's tradition of fair, impartial and accurate elections. He has the knowledge, creativity and on-the-ground experience to secure the integrity of our elections and foster the innovative strategies that have made Oregon a model for this country."

I write software for touchscreen systems on Windows, the most common platform for election touchscreens, and am an elections administrator myself for the Pacific Green Party of Oregon. I can tell you from professional experience that I would never accept an electronic voting system except as open source software with a full paper trail.  HAVA ties my hands here, as a subsidy for electronic voting, for I would rather not use electronic voting at all except in tally and tabulation with a stringent, strong statistical hand-count.  I have also myself written online election software and processes that are open source and designed for secure online voting for computer science professionals aware of how to use advanced cryptographic software.

Sequoia touts its proprietary source code as a security "benefit", in violation of the Kerckhoffs-Shannon principle, "The enemy knows the system."  The California Secretary of State's Audit of the Sequoia systems by UC Berkeley found 800,000 lines of code just for an elections system application, not including the operating system and library code (based on virus-prone Windows).  That such a system, without public review, is trustworthy is not taken seriously by any reputable security researcher.  As a security researcher with a dozen discovered vulnerabilities to my name, I cannot consider it trustworthy, especially without a paper trail.  Vulnerabilities in Sequoia systems, including those that claim to have a paper trail, are widely known:\

Computer scientists have figured out to how trick a widely used electronic voting machine into altering tallies with a technique that bypasses measures that are supposed to prevent unauthorized code from running on the device.

The research team - from Princeton University, the University of California at San Diego and the University of Michigan - pulled off the attack by obtaining a Sequoia AVC Advantage legally off the internet ( Without access to any of the source code, they reverse engineered the hardware. They were then able to reverse engineer the software it ran by analyzing the machine's ROM.

Sequoia and manufacturers of other brands of e-voting machines frequently discount vulnerability research into their products by pointing out that the underlying source code is closely guarded. Researchers in many studies, they argue, have unrealistic access to the devices' inner workings.

"What we have shown or what I hope we have shown in this paper is that that criticism in untrue," Hovav Shacham a professor at UC San Diego, told The Register. "It might take a little more work if we don't have the source, but nevertheless we're able to find vulnerabilities and exploit them in useful ways in machines where the only access we have is the physical artifacts themselves."

Sequoia in the past has gone to great lengths to prevent outsiders from peering into its proprietary voting machines. Last year (\
it threatened to sue after a county in New Jersey asked Princeton University researchers to inspect election gear suspected of malfunctioning during the presidential primary election.

I am concerned that Mr. Trout's advocacy of paperless touchscreen voting and past work against election transparency will interfere with his ability to provide Oregonians an accurate election, as BBV noted, "Those who have remained try to hire those who resigned, as consultants, to come in and give seals of approval to problematic elections and equipment."

It is simply not acceptable to have a known advocate of paperless, unauditable elections heading Oregon elections.  A democratic election is one that is transparent and can be audited. In addition to his anti-democratic advocacy, we risk his hiring or paying as consultants the rest of his associates.

Due to my concerns, I have a few questions regarding his hiring:

1. Were Mr. Kanopasek or any on the BBV Gotta Be Replaced list used as a reference for Mr. Trout?

2. Were any electronic voting system company employees or consultants, especially for Sequoia, used as a reference for Mr. Trout?

3. Did anybody do a basic web search for information on Mr. Trout and his references?

4.  Did anybody inquire as to the circumstances around Mr. Trout's dismissal as the San Bernardino County Asst. Registrar of Voters?

5.  Who was on the hiring committee that was mentioned in your press release announcing his hiring?

6.  Were there any representatives of election machine vendors on the hiring committee, specifically Sequoia?  If so, which ones?

7.  Were there any representatives of public advocacy groups on the hiring committee that could properly screen Mr. Trout?  If so, which ones?

8.  Based on the record provided, did Mr. Trout mislead the committee or fail to provide any relevant facts at any point in the hiring process?  What is the redress process if this did happen?

9.  What is Mr. Trout's detailed opinion of the security issues inherent in proprietary voting systems and the need for a paper trail?  Is he at least open to open source voting?

It is unfortunate that these questions need to be asked, but, for the sake of Oregon's election system, somebody must do the asking.

I opposed you in the 2008 general election for Secretary of State based on Bill Bradbury's historical work as a partisan hack, viciously working to keep ideas and candidates he disfavored off of the ballot and rigging the redistricting process.  Your historical support for 2005 HB 2614, initial shyness regarding finance reform, and other democratic election reforms were why I entered the race. You also stated that you wanted to run the office like Bradbury did.

While Bradbury was terrible, I was concerned you were going to end up like him if I did not provide a progressive challenge.

After the election was over, I was hopeful that you were changing the direction of the Secretary of State's office from Bradbury's historical work as a partisan hack by at first keeping John Lindback from giving false testimony against ranked ballots to the state legislature, and the election reform community was quite excited to see Lindback leave his position.

Things were looking up.

This new appointmentment, however, while it doesn't look partisan, appears to have been a major gaffe.  I encourage you to review the suggestion of your hiring committee and exercise your power to seek the answers to my questions and take any appropriate action you deem is necessary to correct the situation.

I am CC'ing a number of reporters who have reported on the appointment and a number of newspaper editors who may also be interested. I'm sure they would appreciate a reply to my questions as well.

With great concern for our democracy,

Seth Woolley

Secretary, Pacific Green Party of Oregon

2008 PGP Candidate, Secretary of State


"Kate Brown, Secretary of State" <>


"Jeff Mapes, Oregonian" <>, "Peter Wong, Statesman Journal" <>, "Mark Zusman, Willamette Week" <>, "News Editor, Portland Mercury" <>, "Tim King, Salem News" <>, "Eric Howald, Salem Monthly" <>, "Jack Wilson, Register-Guard" <>, "Kim Jackson, Albany Democrat-Herald" <>, "Mark Garber, Portland Tribune" <>, "City Desk, Bend Bulletin" <>, "News Desk, East Oregonian" <>, "Bob Hunter, Ashland Daily Tidings" <>, "Oregon Voter Rights Coalition" <>, "Bev Harris, Black Box Voting" <>, "Rick Dancer, 2008 Rep. SOS Candidate" <>, "Jeff Alworth, Blue Oregon" <>

Seth Woolley's Blog

web 2.0 company lock-in(0)

Somebody wrote me:

Can we get an ["AddThis"] button, so that people can share and distribute [...] news and content, (such as news, announcements and press releases) with social networking sites -- to get our message out there, distributed far and wide?

We should, also, include an [AddThis] button in any and all press releases and announcements sent via email and on our lists... they make available that option. And our [affiliates] should use an [AddThis] button on their websites.

I have an aversion to the "latest web 2.0 corporation" that hopes to replace an already existing standard.

What we have instead is the RSS icon.  You should be able to see the orange RSS icon on there.  That's how you can syndicate the content automatically in websites that support RSS aggregation.  AddThis is slightly different in that it's push-based rather than pull-based (client-server terms, I apologize if you didn't get that, just continue reading), but I'll explain why I have an aversion to it.

All "web 2.0" websites work on this formula:

1. release an expensive service for free

2. lose a bunch of your venture money

3. when you get big for being such a humanitarian, start advertising the heck out of it and raising your fees

4. profit

5. watch as your userbase cringes, puts up with it and loses money, or scrambles to replace your service.

6. at least you're still getting the not so savvy people paying you a web 2.0 tax or being subjected to your ads.

AddThis is no different, as it's backed by at least two venture capital firms and a number of private investors.

They are banking you people like you sending emails like this out to people who aren't aware of their business model.

What we should do is simply setup our own (preferably open source) system that does the same thing AddThis does, but until then, what's so hard about pasting a link into e.g. facebook and letting facebook grab the summary?  Nothing, in fact.  AddThis isn't so useful a widget after all.

In fact, if they weren't a corporation and really wanted to make a useful widget they would have just made some javascript that didn't need to send content to their servers.  They pay people (like me) instead to ensure that they have a way to monetize it in the future by crippling the communication with the social networking sites by routing it through their service (which isn't technically necessary).  Ironically, that one service is their only true recurring cost.  So you pay their recurring costs to be hooked to them if you want to maintain the features you've introduced to your own site.

The first question to ask every corporate website offering the latest cool thing: 1) how do they or will they plan to make money?

The answer to that is often enlightening.

Seth Woolley's Blog

postnet number to utf-8 postnet barcode(0)

The postnet number is the 9 digit zip code, plus the code point (usually the last two digits of the house number), plus a parity digit (ten minus the sum modulus ten).

Here's a perl script to do it to zip+4 97212-2744 code point 03, parity 9.

perl -ne '@h=("┃┃╻╻╻","╻╻╻┃┃","╻╻┃╻┃","╻╻┃┃╻","╻┃╻╻┃","╻┃╻┃╻","╻┃┃╻╻","┃╻╻╻┃","┃╻╻┃╻","┃╻┃╻╻");s/./$h[$&]/ge;chop;print "┃$_┃\n"' <<< '972122744039'

Seth Woolley's Blog

response to carl reynolds on union control of politics in oregon(0)

Carl Reynolds wrote in response to\

Sunday, August 2, 2009

Jeff Mapes' front page news article, "Oregon conservatives launch nonprofits to push initiatives" states: "All of them lost (Bill Sizemore's five initiatives in 2008) after opponents, relying heavily on money from Oregon's powerful public employee unions, urged voters to defeat anything tied to Sizemore." How does Mapes know that union money was decisive?  In effect, Mapes' statement, while  purporting to be a news article, certifies as a matter of fact the main argument of the new conservative group seeking to resurrect the right wing reputation regarding the initiative process. The question is , should such a certification be part of a news article?

Controversial specifics that are ignored by Mapes in making his supposed factual report. 1)"Powerful"  is a highly relative term. Recent history shows the public employees' union, along with all other worker unions, losing influence and membership and political influence. Ths is clearly reflected in the drastic reduction by the Oregon legislature of members' bargaining rights. In particular, the ongoing limitations sought and achieved by business and conservative political organizations on the issues available for contract bargaining. One very specific example: teachers, ( represented by Oregon Education Association,OEA, and other unions) have in recent years lost all rights to bargain over classroom and teaching methods and practices. 2) Mapes claims the money from public employee unions was a decisive factor in the defeat of Sizemore's initiatives. Proving this claim would require some considerable research, with statistical analysis and would most likely never be decided with any certainty. 3) What business is it of The Oregonian's news reporter to accept and certify without question the main argument of a new group seeking to define itself? Quite possibly the voters rejected Sizemore's initiative proposals just because they were bad ideas, not having  much to do with the fact that Sizemore was the sponsor..

Responsible journalism would confine such opining to the editorial section. Sneaking such opinions into news reports is one of the more deceptive tactics of successful propagandists.

Carl Reynolds Sherwood, Oregon


I don't see the statement "relying heavily" as inaccurate.

In my research, I've found that union money represented the first money for almost any Democrat running for office, if they didn't already have seed money from a previous campaign -- and even then they were usually the first to donate upon their entrance into a particular race.

Following that union money was a fundraising apparatus that broadened the funding sources using union resources, connections, and other administrivia.

As a supporter of union rights, it alarms me greatly that unions have the sole power to make or break Democratic politicians (and initiatives) in this state. That is the honest truth, and Mapes was just honestly reporting it.

The checks the unions gave to Kate Brown to run for Secretary of State, the office that controls the initiative process, was with the expectation that she would advocate "reforming the initiative process" -- where they have been attacked and had much of their resources drained.  Almost every fiscally (and in some cases socially) conservative ballot measure has been mainly opposed by the unions if you look at the major donors.  In the No on Measure 65 campaign, it was essentially unions that ran the only printed literature against it, for just one example.

Against the anti-tax measures, expect the unions to spend whatever they've got left in the kitty.  Their membership has the most to lose by repeal.

I will be on their side in this match, but I feel insignificant against their gargantuan power regarding initiatives.  The union Dems already tried to gut and stuff HB2414 (a bill I was watching closely in its original form) to reverse the language of the repeal so that it would be more likely to fail (turning it from an affirmation to a rejection measure).

Brown will be doing all the parliamentary tricks she can do -- and she's taken hundreds of thousands from unions.  Even if she would have done so anyways, now at least it looks terrible and awefully similar to a bribe a priori.

Also, the biggest opponents of campaign finance reform from the left *are* the unions, who believe they will lose any influence they have left.  The unions are a conservative force when it comes to CFR and our democratic initiative rights.  They're liberal with lots else, but they really aren't endearing anybody to support them with that behavior.

Knowing all I know about the initiative process and campaign finance reform, I don't know how you can claim it's not how it really is and call out Mapes for what's simply the honest truth.  We should be using our energy opposing the "tax breaks for the rich" measures directly.

I don't see ANY value in going off-message.  You should say, yes, the unions have exercised a lot of influence, but it's no worse than the corporations bankrolling the other side.  And furthermore, the unions happen to be right because of X, Y, and Z.

Defending the unions for the sake of defending them just makes people cynical of the rest of your argument.  I always try to rely on honest and factual arguments, rather than calling upon somebody to re-check their facts without giving any of your own to counter.

You need to make the argument *not* about unions.  Your argument here just continues the debate to be about unions.  That's a losing strategy.

Defend Oregon is doing the right thing -- they are coalition building and making it look like there's a whole lot of supporting groups who realize what the legislature did was both necessary and fair.

The appearance will be true and no doubt that's a direct refutation of the corporate argument that it's just unions exercising their influence.

We can point to California and laugh at them while patting our legislature on the back, saying the corporations would merely prefer we look more like them all in the name of corporate profit and greed.

And if you like unions so much -- when we win this fight, the unions look like they are fighting the hard fight for a better Oregon, and the tarnish will instead end up being a vindication.  So why not let them try to waste their energy on it while we talk about every service that was saved, and all the classroom hours saved, and all the projects putting people back to work, and all the ... you know ...

The positives!

Note that you end saying that "Quite possibly the voters rejected Sizemore's initiative proposals just because they were bad ideas, not having  much to do with the fact that Sizemore was the sponsor."  If that were the case, then why worry about the attack on the unions?  If their strategy is going to be a success, then the unions were right in attacking Sizemore as they were also effective.  I don't see how you can get it both ways.  You seem to defeat your own argument here.

So I'd say, 1) the unions do influence politics greatly in Oregon, with zero campaign finance restrictions and heavy "power-play" spending, 2) union money was decisive in defeating his initiatives, but if it is not then your letter is moot anyways, and 3) the business group can fairly criticize the unions and have it reported as fact just as the unions criticized Sizemore and had it reported as fact when it was fact.  You didn't actually say it wasn't a fact -- you brought up an unrelated point about union growth (fact is that, good or bad, union political donations have steadily increased).

The statistics are complicated, but the more I look, the more I see.  Kate Brown's rise to power is an example of union contribution influence. Even Willamette Week called her out on it, despite endorsing her for essentially everything she's ever run for.

Want to know who influences the power brokers?  See who brokered them into power by being the first to donate their seed money.

Seth Woolley's Blog

ascii to utf-8 double-width character perl script(0)

Inspired by some Japanese spam:


perl -pe 's/./($&eq" ")?"  ":("\xef".((ord($&)<96)?(chr(hex("0xbc")).chr(ord($&)+96)):(chr(hex("0xbd")).chr(ord($&)+32))))/ge;'


perl -pe 's/\xef\xbc(.)/chr(ord($1)-96)/ge;s/\xef\xbd(.)/chr(ord($1)-32)/ge;s/  / /g;'\

Here's the range, ascii 33-126 (all ascii printables)

three-byte UTF-8 = ASCII
239 + 188 + 129 ! 033 !
239 + 188 + 130 " 034 "
239 + 188 + 131 # 035 #
239 + 188 + 132 $ 036 $
239 + 188 + 133 % 037 %
239 + 188 + 134 & 038 &
239 + 188 + 135 ' 039 '
239 + 188 + 136 ( 040 (
239 + 188 + 137 ) 041 )
239 + 188 + 138 * 042 *
239 + 188 + 139 + 043 +
239 + 188 + 140 , 044 ,
239 + 188 + 141 - 045 -
239 + 188 + 142 . 046 .
239 + 188 + 143 / 047 /
239 + 188 + 144 0 048 0
239 + 188 + 145 1 049 1
239 + 188 + 146 2 050 2
239 + 188 + 147 3 051 3
239 + 188 + 148 4 052 4
239 + 188 + 149 5 053 5
239 + 188 + 150 6 054 6
239 + 188 + 151 7 055 7
239 + 188 + 152 8 056 8
239 + 188 + 153 9 057 9
239 + 188 + 154 : 058 :
239 + 188 + 155 ; 059 ;
239 + 188 + 156 < 060 <
239 + 188 + 157 = 061 =
239 + 188 + 158 > 062 >
239 + 188 + 159 ? 063 ?
239 + 188 + 160 @ 064 @
239 + 188 + 161 A 065 A
239 + 188 + 162 B 066 B
239 + 188 + 163 C 067 C
239 + 188 + 164 D 068 D
239 + 188 + 165 E 069 E
239 + 188 + 166 F 070 F
239 + 188 + 167 G 071 G
239 + 188 + 168 H 072 H
239 + 188 + 169 I 073 I
239 + 188 + 170 J 074 J
239 + 188 + 171 K 075 K
239 + 188 + 172 L 076 L
239 + 188 + 173 M 077 M
239 + 188 + 174 N 078 N
239 + 188 + 175 O 079 O
239 + 188 + 176 P 080 P
239 + 188 + 177 Q 081 Q
239 + 188 + 178 R 082 R
239 + 188 + 179 S 083 S
239 + 188 + 180 T 084 T
239 + 188 + 181 U 085 U
239 + 188 + 182 V 086 V
239 + 188 + 183 W 087 W
239 + 188 + 184 X 088 X
239 + 188 + 185 Y 089 Y
239 + 188 + 186 Z 090 Z
239 + 188 + 187 [ 091 [
239 + 188 + 188 \ 092 \
239 + 188 + 189 ] 093 ]
239 + 188 + 190 ^ 094 ^
239 + 188 + 191 _ 095 _
239 + 189 + 128 ` 096 `
239 + 189 + 129 a 097 a
239 + 189 + 130 b 098 b
239 + 189 + 131 c 099 c
239 + 189 + 132 d 100 d
239 + 189 + 133 e 101 e
239 + 189 + 134 f 102 f
239 + 189 + 135 g 103 g
239 + 189 + 136 h 104 h
239 + 189 + 137 i 105 i
239 + 189 + 138 j 106 j
239 + 189 + 139 k 107 k
239 + 189 + 140 l 108 l
239 + 189 + 141 m 109 m
239 + 189 + 142 n 110 n
239 + 189 + 143 o 111 o
239 + 189 + 144 p 112 p
239 + 189 + 145 q 113 q
239 + 189 + 146 r 114 r
239 + 189 + 147 s 115 s
239 + 189 + 148 t 116 t
239 + 189 + 149 u 117 u
239 + 189 + 150 v 118 v
239 + 189 + 151 w 119 w
239 + 189 + 152 x 120 x
239 + 189 + 153 y 121 y
239 + 189 + 154 z 122 z
239 + 189 + 155 { 123 {
239 + 189 + 156 | 124 |
239 + 189 + 157 } 125 }
239 + 189 + 158 ~ 126 ~

This  is  an  example  of  the  output!

The meme has begun:

Seth Woolley's Blog

homeopathic dangers(0)

I linked to this in a discussion forum:\

And got this reply back:

Yes, interesting.  That would be back-door proof that homeopathics are in fact effective, if it's actually homeopathic.

And so I wrote back:

It's only "2X", so only 1/100 dilution, which in the case of zinc is actually allopathically potent.  Normally a "2X" dilution is a very "weak" solution according to the rules of homeopathy, 10X to 20X being more common and supposedly more "potent".  10X and 20X means it's diluted to 10 or 20 zeros, extremely diluted such that there's only a few or no molecules of the active ingredient left.

It's the lack of "dilution" in this particular product that causes the "efficacy" at damaging the nasal membranes.

In this case, the manufacturer was trying to use the homeopathic exemption "understanding" to avoid having it cleared for marketing by the FDA.  The FDA is disagreeing and saying they can regulate so-called homeopathic products if they exhibit real negative dangers, especially since it makes a medical claim on the box.

I think the main thing the FDA wants is 1) a warning and 2) an application to market the product as a new drug as it and its use are not on the currently approved list.

Because of part of the FDA's assertions of its powers, it could open a floodgate of the FDA's regulating most homeopathic claims in my mind.  I don't know why the FDA hadn't asserted its power over this kind of snake oil in the past, but it would be refreshing to see people have to go to a doctor (naturopathic even) and get a prescription for homeopathic products instead of trying to self-manage their homeopathic treatments, leading to not just problems like this, but people's underlying problems continuing due to their use of what is effectively a placebo.

While placebos are effective, I believe their use must be done under the direction of a competent physician who can ensure that the symptoms can be managed psychosomatically without an underlying condition that if left untreated would lead to more danger and thus rising health-care costs for all of us.

Seth Woolley's Blog

letter to wweek(0)

To the editor, Willamette Week,

Thank you for the article, "Minor Parties' Major Roadblock."

As the only citizen to testify at the hearing in the Oregon Senate on SB 326, I found your coverage timely and important.

But Senator Devlin and fellow Democrats have by their actions in recent weeks not only shut off discussion of House Bill 2414, allowing cross-nomination of candidates, and of Senate Bill 326, repealing a discriminatory restriction on candidate petitions and nominations; Devlin has, which is of greater significance in the fight for fair and democratic elections, blocked Senate Bill 29.

That bill would allow the implementation in Oregon of ranked voting in multiple-candidate races.  Once voters have the option of listing several candidates in order of preference, and counts decide eventual winners by instantly selecting the one with the highest total preference (so-called Instant Runoff Voting), the spoiler effect, where solid plurality votes override split tickets, would disappear.

For example, if IRV had been in place in Florida when Bush ran against Gore, the Nader voters who put Gore as their second choice would have assured Gore a decisive victory.

The Oregon Constitution (Art. II, sect. 16) explicitly guarantees the voters of this state the right to ranked ballots.  It is a democratic reform dating to the Progressive Era in our history.  The former Oregon Director of Elections under Bill Bradbury, however, issued a technical opinion to halt such implementation.

The present Democratic Secretary of State, Kate Brown, on the other hand, promised during her campaign in 2008 to overturn this misinterpretation, which has so far been a failed promise.

Instant Runoff Voting, which has been waiting for nearly 100 years for its guaranteed implementation, is a major electoral reform which will allow minor parties to receive electoral support without the prospect of spoiling the election.  This is the number one reason voters give for withholding support or votes from minor parties.  It represents a deepening and broadening of recording the wishes of the people, the real purpose of democratic elections.

Because Senator Devlin has been a problem for election reform this session, as you've so well illustrated, the Pacific Green Party has been recruiting candidates to run against him for his Senate seat.  We are working with other minor parties to put up candidates on his left and center, while asking the far right parties to stay out.  Perhaps he will see directly how spoiling an election really works and thus see the need for reforming our election system even though his big union backers provide him with large donations checks I affectionately call "expensive blinders."


Seth Woolley

2008 Secretary of State Candidate, Pacific Green Party of Oregon

Secretary and Coordinating Committee Member, Pacific Green Party of Oregon

Seth Woolley's Blog

simple prime factorization of small numbers(0)

prime factorization in one line of perl

See also

perl -le '$e = 600851475143; $f = $e; for ($i = 2; $i < sqrt($f); $i++ ) { if ($e % $i == 0) { print $i; $e /= $i; exit() if $e == 1; }}'

Not as good as some mentioned here:

Seth Woolley's Blog

gun control(0)

whodevil> got into a debate with my grandpa last night, he thinks assault rifles should be out lawed

WormRunner> outlaw people instead.  that would solve all the problems

swoolley> whodevil: why ban assault rifles?  I think anything used by the army should be made legal, to defend ourselves against a standing army

whodevil> swoolley: that was my point too

WormRunner> yeah.  how can I defend my stash without assault rifles

swoolley> no, my argument is I'm fine banning them, I just don't want our army to have them either

WormRunner> hmm

swoolley> the point of the second amendment was to prevent an arms imbalance between the standing army and the people. that was a good amendment to ensure there was no arms imbalance. but it can use a slight update to be more specific to its original purpose

whodevil> totally

swoolley> also, it didn't apply to warships and such, large armaments. "bear arms", they were thinking common weapons used by the average person. so the question I think is more relevant is should we allow tanks. should we allow a standing army to have tanks since the people will likely not have them. the problem is foreign countries may have tanks and if you don't have tanks you'll get clobbered. there's a solution to all these problems. allow anybody to own anything, but the requirements for a soldier to be certified for a tank should be identical to a civilian to be able to operate and own one. they aren't outlawed, but they are permitted for any militia member to be able to use so long as they qualify at the same level as a standing army soldier. that allows the people to build up their own army as needed -- and Oregon could build up its own self-defense army with only a slight need for a federal army. as far as I'm aware, the federal government was mainly to be used to coordinate the various state armies and militias.

whodevil> swoolley, I'm on board with that idea. I feel like gun regulation is fine: background checks, maybe mandatory gun safety classes/

swoolley> whodevil: I've passed all those already to be a hunter

whodevil> it seems to me that gun violence is statistically low compared to gun ownership

swoolley> seems like that system worked well for something that wasn't specifically corrupted by second amendment misinterpretation, and canada has similar systems

Seth Woolley's Blog

post-election recap(0)

results are in

The results are finally in.  In my first run for public office, I got 3% of the vote, but it was for a state-wide race.  Support varied from 2% in rural Oregon to 4% in Coastal and Urban Oregon.  My total was about the same as the sum of the Pacific Green Party's Congressional Peace Slate of candidates, showing that probably most people simply voted party-line.  In total I spent a thousand dollars on the race (for the voter guide statement), and drove about two thousand miles touring the state.

My vote total was the second highest of the election for a US state-wide candidate that had opposition from both major parties.  In West Virginia, the governor candidate Jesse Johnson, whom I represented as a delegate to the national convention in Chicago for the Presidential Nominating Convention, got about five percent of the vote.  In prior runs he didn't get as much as I got, so it looks like if you keep running you keep getting more votes.  That's my plan -- in another four years, I'll run again, for the same office, but I think I'll change my tact a little bit.

lessons learned

limit donations reasonably

First, I took zero donations.  That made a lot of sense to me -- why take anybody's money when the point of my campaign was to eliminate the influence of money.  I'm actually ok with taking some money, as long as it's in small amounts and not from special interests.  "General interests" supporting candidates are good.  I'd rather all elections be financed through public requirement to give free coverage to all qualified candidates as exchange for private monopolies having the privilege to use our public airwaves in an exclusive manner.

We need to ensure that ideas like the "public financing" of elections (AKA Voter Owned Elections or Clean Elections) shouldn't ever imply that government is supporting one form of speech over another.  Money for clean elections should never be allotted based on past performance of a party or candidate -- that works toward the status quo and is how federal public financing is run.  My tax dollars pay for D and R elections, but not third party elections, even in proportion of popular support.  Limits on campaign donations, and specifically limits that challenge Buckley vs Valeo's interpretation of "free speech", as well as limits in Oregon along the lines of Measure 47, if we have something like Measure 46, are my preferred way of reforming the system. self-donations should be limited as well, but Valeo strikes us down again there.  Portland's public financing system is candidate-based, so it appears to work well.  There are a few glitches in it -- candidates can opt-out (which isn't so much Portland's fault, but the US Supreme Court's doing), and it's not based on ballot qualification.  If you qualify for the ballot, you should be supported by public funds, otherwise it's quite unfair.

I think to be more consistent, I should have taken the time to find a treasurer who would handle taking donations for me, but who would also enforce the provisions of Measure 47, which is the law of the land in Oregon, despite the Secretary of State not enforcing it.  I think the first step of any candidate is to find a treasurer who is willing to take on legal liability and stick it out.


I think I did pretty well with the media -- for the most part they all have newsworthiness requirements and the Secretary of State isn't very newsworthy, being an administrative position and not a legislative position.  Most people don't realize that it's almost as important as governor because a lot of legal interpretation goes on (along with the attorney general) that can dramatically affect the effect of legislation past, present, and future.

But I was able to use Measure 65 as a way to get about half my news coverage.  The other half was just about the Secretary of State race. The work against Measure 65 greatly helped my ability to be confident in front of large crowds and/or cameras.  For the first few events I was visibly nervous, but by the last month, that feeling gradually went away, and I was kind of a natural politician.  Some of that definitely involved developing very clear talking points that are short enough to work into a sound-bite or print-bite.  For example, I learned that for TV, they will often just take one sentence, so you have to be very on-point, and either begin or end with a coherent summary punch, particularly if it's pre-recorded.  Often the reporter will summarize for you and let you end with a punch, or they'll just take a random sentence and use it.

For print media, my main problem was probably not being able to follow up with places that wrote articles.  One paper talked about my position on ballot measures, but a lot talked about my desire to ban payment for signature gathering, often pointing out that it would likely be overturned by the courts.  The Eugene Weekly even went so far as to call that position politically naive.  I beg to differ -- it's politically necessary and regardless of a court, the whole point of politics is to present ideas to the marketplace -- those courts follow the market just like every other interest group.  They know they will lose their status in history if they make too many unpopular moves.  Courts have political capital, too.  Another paper liked my auditing and legislative redistricting ideas.

Oddly enough, few papers wanted to talk about my main issues of Campaign Finance Reform (Measure 47) and Instant Runoff Voting.  As much as it would have been good to talk about lots of issues, I think ultimately talking about a lot of issues dilutes some of my message.  But is it a really bad thing?  I think for this position it isn't so much a bad thing, and in particular third party candidates I think need to set themselves apart by having a breadth of knowledge of the issues, unlike the D and R counterparts -- who come to the table supported by one special interest or another.  I think I struck a delicate balance here by ensuring my voters's statement, limited to space available, and my public speeches, also limited to time available, were on point and not drifting.

I often get conflicting advice, to not have long policy documents published or anything that might turn off a voter.  My goal isn't to get as many votes as possible, although that would be nice -- my goal was to educate the public about alternatives that are available to them -- thinking outside the box, as it were.

But, back to media -- I think I lost a little bit by having a policy of only doing media when directly asked to do media.  Sometimes I had scheduling conflicts even with that!  A serious statewide candidate needs somebody who will specifically schedule the candidate for events, seek out events not in the schedule, and make sure the candidate is working full time on the campaign.  My campaign was limited in that I had a regular job I had to do, so I didn't want anybody having to tell me I had to do certain events and thus having to miss work.  I missed enough work as it was with just the events that sought me out.

That being said, the whole issue of media bias is rather interesting -- I think most of it is based upon perceived support of parties, and the necessity to balance articles not to be equal and fair, but to proportion the articles to their readership to maintain group-think with their subscribers.  News organizations should realize that it's the alternatives that are more important than the status quo. when it comes to democracy, and thus they should report on all ballot-qualified candidates equally (and those that aren't qualified when the standard is too high to be meaningful).  "Wasn't enough room," is a common refrain.

That being said, I used to think you had to have political experience to get elected to high office, but it turns out that in my race, the Republican, with no experience, got pretty close to winning.  I think it's a combination of experience and party support that works well.  The Republican was able to tap into Republican donors and then run an effective campaign based on xenophobia (illegals voting), while at debates backing off and saying it's "mostly a perception problem", pointing out that election fraud in Oregon is statistically low.  The real fraud in elections is our not using preference voting (to ensure candidates are supported by a majority) and our having no proportional representation in the legislature.


Debates were my favorite party of the entire process, but most probably don't realize that debates have to be prepared for.  I often spent the entire night before preparing what I'd do at every moment, and re-reading my position points making sure it rolled off the tongue correctly.  It takes a lot of skill to do these debates, and I think I'll only improve.  That being said, I kind of have to thank the Republican for ensuring I was even in the debates.  Normally both major parties shut out third parties from debates to ensure it's a two-horse race, but when there's only one third party in the picture, the incentive to negotiate to get the third party in by the opposite viewpoint goes up since there's no majority vote requirement, and they can win with a minority of votes.

Also, the League of Women Voters has always been good to third party candidates -- they typically use ballot qualification to invite for debates.  The entire reason the CPD (Commission on Presidential Debates) is just the two major parties is because the League refused to moderate a debate limited to just the top two parties, which had been negotiated after the 1992 Perot "spoiling" to help keep him out in 1996.  Nader and Robertson were kept out of the debates in 2000 by the CPD, and the CPD has been doing two-party debates ever since.

So, I think third parties should figure out a way to collude together to ensure that only one third party is running at a time in specific races. I don't think it's going to work for, say governor, where there's a chance somebody viable from many third parties would try, but since a lot of seats go un-challenged, any place where a candidate exists already on a third party ticket, any fourth party entering the race essentially spoils the chance of the third party from being in debates. Maybe that's not a major issue the more local debates go because in a lot of cases, only the League of Women Voters will be organizing a debate anyways.

That being said, I want to put out a general pitch for membershop in the League of Women Voters.  They take men, too, I found out.  :)  They are a hyper-democratic, true "democratic" organization that really behaves in a non-partisan fashion.  They reliably invite third parties to debates, support campaign finance reform and better election methods, and are strong proponents of voter education in general.


I'll probably go back through and edit this blog entry a bit more as needed to encapsulate more information as I remember it.  Expect me to run again in four years -- my account is still open, so contact me to see if I'm going to start taking donations.  I still need to think about it.  Two million dollars were spent on the race and I have to raise a million to win next time around.  Kate Brown's a very effective fundraiser, and well-connected, but if she doesn't enact the reforms we need to increase democracy, she should expect another challenge from her "democratic" side.

P.S. I don't have a lot of time to ruminate right now, as I'm catching back up with work, so I didn't even re-read this entry -- I hope it's not too jagged to read, but feel free to email me if you have any questions or I've missed something.

Seth Woolley's Blog

response to confused voter(2)\


I'm surprised you voted for Kate, given that she and Rick both agree in the only capacity to change that the office provides -- the state land board. Both Rick and Kate agree to the 40,000 board foot plan that's the "compromise position" in the debate. 70,000 are up for grabs, and of course, we'd like to see none of it cut. I'm the only one who has a plan to cut none of it while not taking from the common schools fund (see my plan on my website about the forests fund).

If you think I'm not "green" enough, I've put thousands of miles on my bicycles by daily bicycle commuting, at one point I had a fifty mile combined train and bicycle commute. For seven years straight, I did consulting and employment commuting by bicycle and I've had my license for about a year, for the purpose of long distance travel to rural Oregon for the purpose of being able to campaign.

The office of Secretary of State doesn't demand that I tell everybody "I'm going to save the earth through manipulating elections." That's simply the wrong way to campaign for that office. It's best to talk about the issues, and Brown's another Bradbury, keeping Greens off the ballot and redistricting more gerrymandering.

Furthermore, about my endorsement of Brownlow, it's clear you don't know anything about his positions other than his pro-life position. I wrote an article about my endorsement below:\

When Brownlow campaigns, the right to life is the last thing on his agenda. Watch his videos, see him speak. I've met the guy on the campaign trail.

I've put the above link next to my endorsement so as not to confuse people, which I did here.

Brownlow's tons better than Merkley on pretty much every issue _except_ abortion. If you're a single issue voter, that's fine, vote for Merkley, but I'm not a single issue voter.

But if you're anti war, anti-drug-war, and more, Brownlow is clearly the worst of three evils.

You'll also note that in the recent surveyusa polling (they publish it on their website), Brownlow is polling about evenly from the left and the right in Oregon, both by party registration and by self-identified liberals and conservatives.

Merkley is not somebody who deserves the Green Party's support.

Seth Woolley's Blog

Oregonian reporter replies to my comment about lack of coverage(1)


Dave replied back

Seth - I took your posted comment as a snarky, personal attack and I responded in kind. I apologize for getting personal in response. Here's what I should have said: Seth, you said "Please say it ain't so, Dave." It ain't so. I've gone back and looked at the article you commented on. It was eight paragraphs long. It described the biggest contributors to the secretary of state and treasurer candidates. I did not have room to mention contributors who gave less than $20,000 each. You're not taking raising large amounts of money for your candidacy, therefore I did not mention you in the article. When I've spent much of the past five years or more trying to spotlight how much money is in Oregon politics and the influence associated with that money, I take it personally when someone suggests that not mentioning them - or any other topic, for that matter - is somehow an indication that now I or The Oregonian believe everything is hunky-dory when it comes to campaign money. That is not a fair or accurate characterization of where I or the newspaper have been on this topic for years now. Anyone can go back and read the articles that have spotlighted this issue again and again. From your note and your website, it sounds to me like we both want the same thing - more attention to the impact of money on Oregon's political system. I wish you nothing but success in that regard.


Dave Hogan

And I replied


Yes, that's what I'll interpret you meant with the first response. :)

I had written before I edited it out, "You could have just said what everybody else says, 'I didn't have room.'" But I didn't because I still think it's important to highlight both the positive press with the negative press and room should be made, as that's what the comment I made really is about.

But I understand that from the reporter's view, there really isn't room and editors don't really give them leeway to stray off very specific topics to go editorialize on positive aspects, particularly on a candidate their editorial board didn't even want to talk to.

I hope you have a good rest of the day,



I wrote a comment to Dave Hogan's article in the Oregonian:\

My comment to Dave Hogan's article

It probably would have made sense in your "race draws big money" article to point out that one candidate, myself, Seth Woolley, the Pacific Green Party nominee, is not taking anybody's legal bribes from big money. Surely that's newsworthy.

It's startling to see that you characterize this race as a battle of proxies for special interest groups (unions and timber companies), as if that's somehow expected behavior of a race, despite the fact that a candidate on the ballot is specifically opposed to that special interest dealing, is campaigning to end such legalized bribery, and isn't taking such bribes himself.

Maybe you can do the public a favor by actually mentioning, you know, one sentence about that.

If you do not, it leaves your readers with the impression that special interest proxy candidacies are exactly what the Oregonian is perfectly content with in our election system. Please say it ain't so, Dave.

Dave Hogan replied:

Dave Hogan's reply

Seth - I'd be a lot more inclined to mention a candidate who demonstrates he's been paying attention to the issues he claims to care about. Open government? Campaign finance limits? Initiative law? Major party control of Oregon's political system? I don't know how many times I've written about those in the last five or six years, but I would guess it's been dozens of times, if not hundreds. Anyone who suggests that "special interest proxy candidacies are exactly what the Oregonian is perfectly content with in our election system" isn't paying attention. If you're going to run for a statewide office, how about getting your basic info straight instead of suggesting that somehow we're trying to keep things the same by taking the time to report on campaign contributions?

Dave Hogan

My comment to Dave Hogan's Comment


First, thank you for your response, although I wasn't expecting a personal attack.

I've broken my response into two sections -- the first about my experience so far with the Oregonian in regard to my campaign -- and second about your specific response

My experience with the Oregonian

I come to every article with the expectation that since I'm on the ballot, I should be covered fairly.  The Oregonian wrote an article that discussed "both" candidacies.\

The first half of the article talks about just the two major parties with words like "both", phrases that the two, "have waged a low-key, civil race for the office of secretary of state", etc.  Then there's two breakout boxes with extensive information on the other two candidates.

I get about 11% coverage at the very bottom of the article and no photo.

Even the one comment there (I have no idea who JMStargazer is) says:

'What a lame story. It should've been titled, "HEY LOOK THESE TWO ARE RUNNING PAY ATTENTION TO THEM and oh yeah so's this other guy."'

That type of coverage only makes sense if special interest support is what should determine coverage, not whether or not a candidate qualifies for the general election ballot under state law.

But at least Janie called me at the last minute.  In your case, you didn't, although to be clear, in your article, ORESTAR has all the info you really need.  It still would have likely improved the article to have a quote from me saying, "A million dollars of legalized bribery certainly does affect the outcome of our elections, indeed, even some media outlets use it in criteria for their own coverage, possibly because this money goes indirectly back to them for campaign ads."

I got a phone call after Janie's article from a frustrated subscriber who was an attorney who pushed the idea of requesting his money back and suing in small claims court for violation of warrantee because the paper says it prides itself on accuracy and fairness.  We'll see if anything happens there.

To even get in the Oregonian online voter guide, I had to beg multiple people for the access code to type in my answers.  My first email went completely unanswered, despite it being the one the voter guide says to contact.  Later, another candidate told me which underling was actually running that section so I could get the necessary code.  In the meantime the website said I had refused to respond (same with all other third party candidates).

My response to the Dave Hogan

But back to your article where you failed to mention my candidacy at all, despite my calling Brown and Dancer out in debates and events for raising lots of special interest money.

You'll note that I did say, "the Oregonian", not your name.  I did that because I've called reporters before and they read to me what their article did say before it was edited and explained that the editors often chopped up the article and introduced awkward bias later.  So I've learned not to ridicule the authors right away.

In this case, I called out the lack of mention of my candidacy.  You could have ridiculed my candidacy in other ways, specifically by pointing out my supposed ignorance of campaign finance, government openness, initiative law, etc.  That all would have been fair game. Certainly pointing out ignorance does voters a favor.

It could have looked like this:

"While Woolley is not taking legalized bribes, he's also an ignorant baffoon because he's simply wrong about X, as he mentioned at Y."

If true, how could I complain about that?  I've written a lot all over my website, plenty of information a reporter could ridicule, in theory.

What started out as a run because of my extreme dissatisfaction with Bradbury has turned into a great learning experience for me.  I've started with what I believe and I've modified my views in the process as more information came in.  I'm a strong believer in the scientific method of hypothesis and falsificiation.  Politicians these days fail to lead with hypotheses and fail to listen to falsification.  So if I'm ignorant, I'd gladly be educated.  I'm still young and have a lot to learn, but I believe I know enough to move the office forward rather than backward.

Your point of disagreement of X, though, is that the Oregonian doesn't like special interest money in our election system.  I actually said that leaving my candidacy out of the article "gives the impression" of X.  That kind of context implies that it's for this one case only, not for your own context, which you mention, and rightly so, as I even asked for it with, "Say it ain't so".  You could defend the Oregonian by pointing out the context of your articles, which you have done in private.

So I invite you to publicly defend the Oregonian (perhaps with a comment on the page).  And I even invite you to ridicule my knowledge as you have done in private, although you can leave that part out if you agree my statement was actually specific enough to avoid your criticism as I state above.


Seth Woolley's Blog

VoteFair webmaster asks me about electoral reform(0)


I've been to your website already and have read about your method.

My personal philosophy is that for legislatures, condorcet method is inadequate, but for executive offices like President and Governor, that a method that satisfies Condorcet's criterion is best.  For issue seats like Secretary of State, BOLI, Treasurer, and any seat in the legislature, I believe the criterion should not be Condorcet's criterion, since the point is not to represent the candidate favored by most of the electorate.  The point of a legislature should be proportional representation, and for a single-seat regional system like we have, IRV is my preferred method.  In any case, all elections should have preference voting because single-choice, single-round elections are inherently filled with all sorts of negative consequences.

Part of my opposition to Measure 65 is that while it doesn't actually ensure the Condorcet criterion is met, they claim that it elects "centrist" candidates.  The evidence is to the contrary -- that extreme candidates often find their way to the top two.  But even if they wanted to elect "centrists" to the legislature, the problem is that it removes all proportionality we currently have in the legislature.  People claim partisanism is inherently bad, but parties are just people coming together expressing a common vision.  They want to remove the ability of people to come together to put their candidate forward and instead have an election system where unlimited money limits allow the top two money-getters to end up in the top two, furthering the entrenchment of money in our election system.

All that being said, I think there are more issues than single-seat "fairness" (which your method will do) to consider in elections -- there's proportionality of representation, which goes against "fairness" in a regional basis.  To balance that, I'd be content with one house voted "fairly" in the sense of many single-seat regional proportional representation.  and I'd support a lower house with an at-large proportional representation system such as party-line (method of equal proportions) or STV or Range-PR.  That's "fair" by viewpoint/opinion to ensure we have a diversity of opinions creating the dialogue necessary for the regions to vote for.  That would be a proper checks-and-balances system, in my mind.


Richard Fobes wrote:

Seth Woolley ~

I too sent a letter to the editor of Willamette Week expressing disapproval of Measure 65.  Your letter, coming from a current candidate, is more compelling, and therefore was the right one for them to publish.  I've included a copy of mine below.  It includes an example that I think you'll find interesting.

I'll introduce myself by saying I live in Portland and I'm the author of "The Creative Problem Solver's Toolbox."  While writing that book I created a vote-counting method I now call VoteFair popularity ranking.  I later learned that it's mathematically equivalent to the Kemeny (or Kemeny-Young) method, which is now correctly recognized as meeting the Condorcet criteria.  Later still, I wrote a second book, "Ending The Hidden Unfairness In U.S. Elections," in which I explain and promote VoteFair ranking (which also involves VoteFair representation ranking, VoteFair party ranking, and other refinements).

I have a website at  The most popular part of that site is the American Idol poll where about 1,000 people rank the contestants each week during the American Idol season.  It has been a great way to educate lots of people about how voting -- and especially vote counting -- should be done.  The software at that site (which I wrote) calculates VoteFair ranking results (for free).

On Wikipedia I've been communicating with other voting-method experts.  I also got involved in Ontario's attempt at election reform, and continue to communicate with others in Canada who are working for voting-method reform.  In Canada, vote-splitting is more obvious because liberals split their votes between the Liberal party and the New Democratic party and end up unfairly losing riding-specific Parliament seats to the Conservative party.

I did a radio interview here in Portland about my voting book, but didn't find much local interest in what I've been promoting.  So I'm happy to see that a fellow Portlander is interested in true election reform.

Inasmuch as we have a mutual desire to implement ranked-choice ballots (a.k.a. 1-2-3 ballots or order-of-preference ballots), I would be interested in talking with you about a possible future collaboration for true election reform.  Of course you must be quite busy right now, so please contact me when you have time.

Richard Fobes Author of "Ending The Hidden Unfairness In U.S. Elections" 503-246-5067

Mark Zusman, WW Editor ~

Your election recommendations are excellent, with one exception.  You support Measure 65, which would create "open primaries."  If enacted, it would soon lead to bizarre results.  Under that system, if four similar Democratic candidates and two similar Republican candidates ran in a district that has a slight majority of Democratic voters, vote splitting (see Wikipedia) would cause the two Republican candidates to win both of the "top two" spots, leaving no Democratic candidate in the general election.  As the author of "Ending The Hidden Unfairness In U.S. Elections," I have done the math, and open primaries don't add up.  The flaw is the continued use of single-mark ballots, which are downright primitive in this age of computers.  The way to fix (in the good sense) our broken election system is to use 1-2-3 ballots (which Wikipedia calls "preferential voting") and use a pairwise-counting method such as VoteFair ranking (explained at  Using fairer ballots and a fairer counting method in both parties' primaries would finally enable us, the majority of voters, to elect problem-solving leaders instead of special-interest puppets.

Richard Fobes - -

Author of "Ending The Hidden Unfairness In U.S. Elections" and "The Creative Problem Solver's Toolbox"

Seth Woolley's Blog

why pacific greens should vote for brownlow(0)

On my website I've endorsed David Brownlow for US Senate.  He's the only person outside of my party that I am endorsing publicly.  Since he's supposedly on the far right and I'm supposedly on the far left, some explanation would help.  Note that while I'm Secretary of the Pacific Green Party of Oregon and on the State Coordinating Committee, I do not speak for the Pacific Green Party on this matter in any official capacity.

First some background, I do not believe that the left-right dichotomy is meaningful anymore in this country.  The Cold War is over.  Communism isn't a "threat" to anybody, and capitalism is all but bankrupt in this country after the recent economic crisis.  Market socialism is going to be the way forward and that has been a rather well-proven consensus.  Really the division has turned to a "top" versus "bottom" question.  Who will be the benefactors of our market socialism?  The haves or the have-nots?  Both major parties are essentially unified (take a look at the recent bailout bill) that socialism will be used to benefit rich bankers.  There are other recent examples: the bankruptcy bill, tax breaks for the rich, unregulated trade, etc.  The Democrats fight for a little help for the middle class while the top tax bracket loots our economy, and the Republicans fight for the top tax bracket to have as complete a giveaway as can be had without inciting an immediate revolution.

In the case of the US Senate race in Oregon, we have Gordon Smith and Jeff Merkley.  Smith is a Centrist Republican and Merkley is a Rural Democrat who can leverage Obama's tide to unseat a popular incumbent.  Gordon Smith votes 90% of the time with Bush and Merkley will likely vote 90% of the time with the Democrats.  But don't forget the fact that the two party consensus in Washington essentially limits what actually is voted upon so that their disagreements are more like five or ten percent of the overall debate that we would see if we had proportional representation elections in this country, where Greens, Libertarians, and Constitution Party candidates could have seats at the table.  In his ads, Smith touts his support of "green jobs", "education", "health care", "gay and lesbian rights", "Mt Hood wilderness", and "crossing the aisle" in general.  Merkley, of course is a yes man, too, but he seems to differentiate himself by not being a Republican (not associated to Bush) and for protecting a woman's right to choose, which isn't even up to him at the federal level.  Erosion of the right to choose happens at the state level.  With Obama in power, you can also expect nothing to change on the federal level now with the third trimester ban compromise.  That issue's pretty much dead except to Democratic Party operatives who continue to use it as a wedge issue to get votes despite every other time they have sold out.  The Constitution Party also uses it as an organizing issue, but I wonder how long that issue will last before they have to switch horses.

But back to why for the US Senate race we should vote for Brownlow, despite his being in the Constitution Party.  First, I'd like to mention Brownlow's public stances and how they fit Green values:

  • Fervently anti-empirialistic, against wars of aggression: Decentralization and grassroots democracy, sustainability, peace and non-violence

  • Believes in the proper delegation of power from the federal government to the states: Decentralization and grassroots democracy

  • Opposed to abortion: Decentralization.  While I would fervently disagree with his stance here, at the federal level this is a non-issue.  He would recognize that even murder is prosecuted at the state level and thus be forced to move the issue back to the states rather than back a federal ban.  He would probably remove federal funding of all sorts of abortion programs, but those should be handled by the states as well.  We must admit that while the right to choose is important, it's not anywhere near as life or death as every other issue, combined.

  • Brownlow recognizes that we can't reasonably just cut everybody's taxes now that we've dug ourselves into such a big whole: Sustainability

In essence, Greens are federally conservative and locally liberal.  Voting for a conservative who also is anti-imperialistic and pro-states-rights, oddly enough, is in 100% compatibility with Pacific Green values.  That being said, I couldn't rightly endorse him for state-level races, although, he's in favor of the Oregon Health Plan, despite being against federal single-payer health care.  That's actually quite consistently Green.

As for the other two candidates, Gordon Smith voted for War, and Merkley is going to push us into Afghanistan in keeping with Obama's "change we can believe in" message -- I can believe he'll change which country we'll send most of our conquistadors to occupy.  A peaceful partisan thus cannot vote for either of these imperialists.  Merkley went so far as to refuse Hala Gores' donation merely because she was a prominent secular Palestinian rights activist at the behest of AIPAC, a major pro-empire lobby.  Gordon Smith was "for the war before he was against it", but again, he won't be bringing our troops home either for similar reasons Merkley opposed the Iraq war -- wrong tactics.

Another major reason why I support Brownlow is that he's not taking lots of money -- really he's not fundraising much at all.  He's pretty much financially independent, has stable work, and is self-sufficient.  He's not running to be a proxy for some special interest that's been helping put him into office.  That to me is a huge plus.  I believe then he'll be able to actually uphold the Constitution (c.f. the abortion caveats above) and even work toward decentralizing power back to the states where it belongs.

Also, any third party candidate is more likely to receive my support.  I have a policy of not endorsing the other two party candidates because anybody who runs under those parties is invariably already sold out to their large network of money.  I still am open to the possibility, but the fact of the matter is that once you've entered the two major party machinery, you've dirtied your hands in blood money and corruption.

And probably most importantly, if he gets a lot of votes, it will send a strong message to the Republicans that preference voting in the Oregon Constitution (Article II, Section 16), should be enabled.  The more Greens vote for Brownlow, the more it will look like Republicans squandered their (apparently large) majority by opposing real electoral reform, while at the same time Smith will be going after the middle -- for renewable energy investment and other majoritarian ideas that Oregonians like.  We win in both cases, and there will be a false appearance of a conservative mandate while a Democrat will win anyways.  Wins all around, while not giving Merkley the appearance of a mandate (by not gaining a majority).  If you vote FOR Merkley, you weaken our chances in four years of getting our platform adopted.  And while Merkley's in office, the next time we run, with Merkley's non-majority, the Pacific Green Party's candidate will be VERY influential in the next race, as Merkley will be forced to adopt much of our platform to silence our eventual candidate, if we don't have IRV by then.  Voting for Brownlow thus pushes IRV majority elections in two separate election cycles.  It's much easier for Greens to run against a sitting Democrat than a Republican.  We can actually run against a candidate after seeing how he votes rather than a "fake" Democrat that runs as an opposition candidate to a "big bad Republican".  Voting for Brownlow is a big win all around.

So, with all that said, for many reasons, and with no significant issues, except for the right to choose issue, which I think is not a significant issue in this particular race at this time, I believe it is not only safe to vote for Brownlow, but it's the best vote a Pacific Green can do given the three choices on the ballot.  He's really the best person for the job in the race and won't be a lesser of three evils choice (where an undervote or write-in would have been necessary).  So please, vote for David Brownlow for US Senate if you support Pacific Green values.

Seth Woolley's Blog

oregonian writes article about big money in SOS race, neglects relevant facts(0)

My comment to:\

It probably would have made sense in your "race draws big money" article to point out that one candidate, myself, Seth Woolley, the Pacific Green Party nominee, is not taking anybody's legal bribes from big money.  Surely that's newsworthy.

It's startling to see that you characterize this race as a battle of proxies for special interest groups (unions and timber companies), as if that's somehow expected behavior of a race, despite the fact that a candidate on the ballot is specifically opposed to that special interest dealing, is campaigning to end such legalized bribery, and isn't taking such bribes himself.

Maybe you can do the public a favor by actually mentioning, you know, one sentence about that.

If you do not, it leaves your readers with the impression that special interest proxy candidacies are exactly what the Oregonian is perfectly content with in our election system.  Please say it ain't so, Dave.

Seth Woolley's Blog

wweek says I'm not campaigning(1)

I'm unsure why WW says I'm not running much of a campaign.  It's true that I do have a regular job, but I have been getting around the state, as I list a plethora of events I've attended or will be attending on my website:

As far as the other candidates, have they been campaigning full time?  It's hard to say.  Kate's website has been rather empty of updates from since the primary to October, when she came out "in favor" of campaign finance reform -- my major issue.  She doesn't list any substance as far as events.

It's curious that you don't mention my candidacy at all when you reported that sudden change of heart.  Am I not influencing the debate if the newspapers don't publish that the debate happened?

Yes, I'm not employed by large special interest donors, so I can't do the campaign full time, and I'm not a trust fund kid, but when has that ever been a requirement for public office?

Oh, right, it is to Willamette Week -- somebody has to buy political ads from them, the TV stations, and the rest of the media.

Tell you what, Willamette Week.  How would you like to be required to cover all ballot-qualified candidates equally in exchange for use of the public sidewalks for distribution points?

If you live in a democracy, when you abuse your power, you lose it.  The question that remains is whether or not we live in a democracy instead of a plutocracy.  Why don't you editorialize on that?

Seth Woolley's Blog

open source voting not allowed by the feds?(0)

(Another letter to Kate asking her about her opinion on open source software for elections.)


You mentioned on KLCC that federal law somehow prevents Open Source software from being used.

That's the first I've heard of that.  In fact, some jurisdictions have used Open Source software.  San Lois Obispo County experimented with a straw-poll using entirely community-driven software:

California's SOS is a strong advocate for open source software:

The Open Voting Consortium hasn't pointed out any problem with federal elections.

In the federal bill to require open source software,

Section 301(a)(2) of HAVA is modified to add a requirement.  There is no "amending" to remove any closed audit provision.


  (a) IN GENERAL- Section 301(a)(2) of the Help America Vote Act of 2002 (42 U.S.C. 15481(a)(2)) is amended to read as follows:

...[SAW: snip out sections A and B related to paper ballots]...

               `(C) SOFTWARE AND MODEMS-

                    `(i) No voting system shall at any time contain or use undisclosed software. Any voting system containing or using software shall disclose the source code of that software to the Commission, and the Commission shall make that source code available for inspection upon request to any citizen.

                    `(ii) No voting system shall contain any wireless communication device at all.

                    `(iii) All software and hardware used in any electronic voting system shall be certified by laboratories accredited by the Commission as meeting the requirements of clauses (i) and (ii).'.

That only adds a requirement.

(Corresponding Senate bill: )

I'm not aware of any federal law that prevents a local state from administering its own elections in an open manner.

Secretary of State Bowen of California seems to think it only takes an assembly bill:

Also, New York provided certification fee exemptions for open source software.  Why would they exempt something that's illegal?

If you know of a federal law that would prevent this, I'd like to know so I can concentrate on the "source" of the problem.

Seth Woolley's Blog

computers not taking into account ethnic data?(0)

(An open letter to Kate Brown, clarifying what computers can do regarding redistricting.)


On KLCC, you said that computers can't take ethnic data into account.

The US Census data has ethnic data galore in it down to the census block.

ORS 188.010 specifically mandates that ethnic groups should not be split.

It's easy to control for ethnicity.  That was in fact one reason why I proposed it be automated -- so we can maximize all the variables, otherwise one might get overlooked.

There's also a community input requirement, which can be easily implemented. If the community states that a certain area is a community that's not defined by the geographic unit membership (settlement/municipality/county/etc) details then it can be added as a membership boundary with a priority higher than, for example, county.  The same can be done with ethnic groups as determined by Census data.

The easy way to implement the program is to score each candidate boundary based on the criteria of how good it would be to place a boundary there, and then to place the existing boundaries on the map, and then gradually move the lines (keeping identical population counts within each area) in simulation until the boundary scores are maximized where the lines are also short, not zig-zagging around.  The map improves as more simulations are run, a few thousand runs and then you can publish it and see if there are any abberations.  Chances are there will be very few.  If there are any, you can tweak the heuristic benchmarks.  I designed and wrote the software that crunches every digitized road in the world on a hundred processor supercomputer in a matter of a few days with extensive processing, compression, and generalization.  Certainly Oregon's boundaries couldn't be more complicated than that, and that project took less than a year.

This also works from the standpoint of existing boundaries, as one of the criteria should be not to move the boundaries much further than they already are (my employer actually has software that does exactly this kind of line generalization as we have to stay within 5 meters of the digitized road to not throw off GPS tracks, while removing as many shape points as possible).  So the program would have a curve function that disweighs the boundary lines as they move further from the existing lines (since it's maximizing for an "area", it should be a simple quadratic (squared) function on the linear distance deviation).

Seth Woolley's Blog

statesman journal editoral board questions(0)


Seth Woolley


Oregon Secretary of State


Pacific Green


Portland, OR

How long in district:

Since 1999, minus 18 months in Silicon Valley


deCarta, Inc., Senior Software Engineer


Rickie Woolley, Spouse


Willamette University, Computer Science Major

Employment and military:

Senior Software Engineer, Spatial Database Technology

public offices elected:


unsuccessful candidacies:


other civic/political/government experience:

       Pacific Green Party of Oregon:
         2008      Nominated Canidate for Secretary of State of Oregon
         2008      Oregon Delegate to the Pres. Nominating Nat. Convention
         2008-now  Appointed Secretary   2008 Elections Administrator
         2007-now  State Parliamentarian 2005-2006 Joe Keating Webmast.
         2003-2005 Appointed Secretary   2004-2005 Elected Fin. Coord.
         2004      Teresa Keane Webmast. 2003-2004 Elected Comm. Coord.
         2003-2005 Database Consultant   2003-2004 Elections Administrator
         2004      Oregon Delegate to the Pres. Nominating Nat. Convention
       Marion-Polk Green Party (PGP chapter):
         2000-2004 Elected Secretary
       Citizens for Livable Communities:
         2003-2004 Elected Secretary     2002-2005 Webmaster
       Willamette University Socialist Union/Campus Greens:
         2001      Co-Chair


3403 NE Stanton St, Portland, OR 97212


major endorsements:

none yet

convictions/professional discipline:


bankruptcy/tax delinquency/sued for not paying:


Three closest advisors:

Rickie Woolley (wife), Blair Bobier (Pacific Party founder), James Nicita (Green Party of Michigan founder, now in Oregon City)

Why endorse:

I'm the only candidate not bought and paid for by special interests. There's a saying, "Nobody got fired for buying IBM". Endorsing Kate or Rick is like buying IBM. If you believe in election reform or campaign finance reform, an endorsement would go a long way toward holding either candidate accountable to those issues, in particular, the Democrat, who is likely to win anyways.

experiences that prepared you for this office:

I'm the only candidate that I can tell has the following experience:   deep geospatial database experience (I write the core engine code)     -- think redistricting in a fair manner   computer automation and website experience (consulting and employed)     -- think opening up government to deep accessibility to the media   election administration experience (minor party elections are not public-run)     -- Instant Runoff Voting and other advanced election methods.   auditing experience (security consulting)     -- again, opening up government to have public performance audits   non-profit board experience (e.g. Salem CLC, Source Mage GNU/Linux)     -- the job includes managing policies for large state departments

provided leadership:

After two coworkers left my startup, nobody with any expertise was left to manage a key component of the core technology for my employer.  Despite being the youngest engineer without as much experience as most engineers in the R&D department, I volunteered to take ownership of said key component (I can't get into too much detail for NDA reasons), rewrote a major part of that component against deadlines to improve performance enough to ship the product in an 8 figure deal.  They trusted me because I had already successfully tackled a major research project to compress the spatial data to fit onto a tiny flash card.  I was given a major promotion and went on to rearchitect the data format for the next major version of the product.


I don't work in a bipartisan fashion, but a multi-partisan fashion.  I often end up facilitating meetings of the Pacific Green Party, which can be a literal mess of ideas.  The Pacific Green Party actually shuns Robert's Rules of Order and uses the Quaker-inspired Consensus Process.  The point of facilitation instead of "chairing" a meeting is to coalesce ideas into a cohesive, more consensus-derived whole.  When people oppose an idea, they are free to express their concerns and the facilitator tries to integrate the ideas into a plan that works for everybody.  The goal of the consensus process is to actually seek 100% consensus.  The Party does use a modified version, where you seek consensus at least twice and then fall back to a majority vote because in some cases true contradictions may exist.  When the goal is consensus, you often get ideas that are even true alternatives to real contradictions.

One example of an apparent contradiction is HB2614, which I've been working to repeal as part of my campaign.  The proposal was put forward in the name of ensuring that independents don't get the right to nominate more than one candidate for office.  The whole purpose was flawed (non-affiliated voters are not a party, so should not be treated as a single association).  The true motive was to keep independents off the ballot by making it many times harder to get on the ballot and to prevent a party's membership from defecting to an "independent" who's really just dissatisfied with their "original" party's corruption.  While I think the entire bill is faulted (members of a party should be able to defect to keep the party honest), the major problem, regardless of the partisan issues, is that true independents are killed in the crossfire.  True independents may have broad appeal across all parties, and those that do are unfairly penalized.  To make up for that fact, the signature counts should be reduced or a primary for independents should be created to make getting independents on the ballot.  I've put a compromise proposal forth to reduce the signature count required.  That would correct the bill to not hurt true independents but not advantage candidates that aren't merely attempting to attack a party from outside, which is likely the main impediment to direct repeal.

rate incumbent:

This is an open office, but the existing Democrat would get a D.  Bill Bradbury has nothing significant to his credit while in office.  He used the office to run for governor later.  He's a member of the DLC, which is an organization setup by Republican Democrats to move the entire party to the right on economic issues.  He only doesn't get an F because he's been so ineffectual that he's been criticized by unions for not going after Sizemore more.

The region's demographics have been moving Democratic for some time and the youth registration has gone up, too.  I intend to push youthful energy and ideas into the debate to help modernize the future of Oregon's elections, to be more democratic, to distribute power to more Oregonians by providing voices to more people than just the two, old, major parties.

Five issues:

Campaign Finance Reform: I'd push to ban all payment per signature for initiatives and I would implement Measure 47 because every initiative must be enforced unless it's been enjoined or struck down.  I would push for initiative primaries.

Independent Ballot Access: I've described above what I'd do for independent ballot access, first in at least an enhancement to HB2614 and second with a non-affiliated approval-based primary.

Ranked Voting: I would work to start the process with county clerks to implement Instant Runoff Voting, first not opposing the local option and second to work to implement it state-wide, starting with the state-wide elections.  If Measure 65 is passed, I would work to modify it to instead of being top two, to eliminating primaries altogether and having an IRV single general election, which would fix it to be fair to third parties and independents.

Redistricting: We need to make redistricting neutral by being extremely open about how the boundaries will be re-drawn.  With my spatial database expertise, I would implement ORS 188.010 algorithmically and invite computer scientists and political scientists to assist in making a system that is fair to everybody and compliant with the law.

Open Auditing of Government and Elections: First, we need to open up performance auditing to the public by heeding the advice of the Princeton Center for Information Technology Policy to standardize our financial reporting into open formats, frequently updated, and modernized.  Second, we need to ensure our election software and hardware is fully public, open source and open hardware, to avoid trade secrets from being any part of the functioning of our democracy.  Statistical sampling of elections should be increased as well.

Issues no compromise:

I would never compromise on being fair and open in how I administered the office.

I would never compromise on preventing the parties from benefitting due to redistricting.  It would be illegal to compromise in this manner.

I would never compromise on reducing the influence of money in politics.

Issues compromise:

Instant Runoff Voting needs to be gradually rolled out, starting at the local level and expanded county by county with input from the county clerks.

Independent access to the ballot has a number of issues as I addressed above that need compromise proposals.

The exact method of campaign finance reform should be discussed.  Measure 47 is a good start, but it might have provisions struck down.  Voters might want to have another chance at Measure 46.  Public financing might be a way forward.  Brown wants to consider looking at the political tax credit.  The Green Party gets half its donations from that, so I would be wary of eliminating it, but I would consider modifications, particularly better oversight and tracking.

Two innovative ideas:

I'd like to think my ideas aren't all that innovative because most have been already very well studied.  Most of my issues are not a part of the two party debate, though, so if that was the criteria, I would say, first, opening up access to government electronically, and second, using computer automation to drive redistricting in an unbiased fashion in full, unquestionable compliance with the law.  Promoting IRV is certainly not mainstream yet, either.  Probably my most innovative idea is my Forests Fund to gradually ween the Common Schools Fund from extractive revenue sources.

Raising a community:

Weening our land board off of timber revenues will have a long-term positive effect for our children.  I believe any increase in democracy, as I support, helps the future of our children by enfranchising everybody in our future generations.

Effective constituent service:

Increased openness and public access, more and more online, will increase the office's efficiency.  Open auditing will allow constituents to see more into how every operation of government works.  Allowing voters to rank their votes will allow everybody to feel their vote MEANINGFULLY counts.  The only constituents that might not like what I do are large monied interests and those who disagree with the precepts of democratic society.


Pavel Goberman endorsed me. :) I was chair of the Willamette Socialist Union. I'm an unashamed atheist.

Support Measures 54-56, oppose 57-65

Seth Woolley's Blog

measure 65: a top two jungle primary, not an open primary(0)

It's important that people know that Phil Keisling's Measure 65 is NOT an Open Primary.

The media and the public should refrain from calling it an "Open Primary", and instead should call it a "Jungle Primary". An Open Primary is when each party still has a ballot and primary and the voters simply choose which party ballot on the day of the election. It's closer to a "Blanket Primary", where everybody votes for one candidate regardless of party and the top vote-getter from each party (well, officially recognized party) goes on. That was struck down by the Supreme Court, so Washington State went from a Blanket Primary to a "Jungle Primary", or "Louisiana Primary", after the only state where it was used.

Open Primary is a known definition in political science, also called a "Montana-style" primary. It's not even just a misnomer, but a misleading attempt to frame the debate. Open Primaries have advantages and disadvantages that are totally different than a Jungle Primary. The proponents know this but are lying to the public about it because they want to call it an "Open" process, which itself is misleading because it greatly damages the ability of third parties to participate in elections, effectively encoding the two party system into the election system even more than straight plurality voting.

It's odd that in Oregon, the proponents of the Jungle Primary would call it an Open Primary because Washington used to have a real Open Primary (2004 election), again, Montana-style, until an initiative changed the system to the Jungle Primary, Louisiana-style, system.

Since the Keisling would likely oppose the use of the name "Jungle Primary", the more neutral name, "Top Two Primary" should be used.

To prevent confusion, the media should clarify the definitions so people can honestly compare the systems other states have used. Calling it something it simply is not isn't just false, it's an injustice to intellectual honesty.  Measure 65 is a Jungle Primary, a Louisiana Primary, or a Top Two Primary, not an Open Primary, nor a Blanket Primary, two different systems.  Some would even say that Louisiana-style systems are not even technically "Primary" elections, which are normally the processes used for parties to select their own candidates, since parties would be unable to select their own candidates except at their own conventions, really, by endorsement, rather than nomination.  In some sense, it may be considered to be a violation of the freedom of parties to associate by selecting their own candidates, and has been defeated in court on this basis:\

Seth Woolley's Blog

no on 65 signs(1)

Measure 65 bans party primaries and puts the top two into the general election. Third parties would be eliminated from ballot access in favor of centrists. (Although it's poor at electing centrists.  E.g. David Duke in Louisiana.)

For more info:\\

Some signs:



    VOTE NO ON 65!








     VOTE NO ON 65!

    VOTE NO ON 65!











Seth Woolley's Blog

washington state top two results(0)

I just looked at all the results for Washington, and a few results stood out that kill the argument for Measure 65.

Note: The end backslash means the rest of the address is on the next line, and delete the backslash.\

L 11% D 89%\

D 80% G 20%\

D 58% N 42%\

N 24% D 76%\

I 36% D 64%

In EVERY case where a minor party or an independent made the top two, THERE WERE ONLY TWO IN THE RACE TO BEGIN WITH.  And they are all against Democrats in heavily Democratic districts.  The Republicans could have run a candidate, any candidate, and third parties would have been kept out of the debate.  The Libertarians should be particularly concerned.

In 3/5 of the cases, the Dems could have run two candidates as well with NO WORRY, as they had a combined 2/3 of the vote.  In the other two cases, the Republicans could have run, and neither of those two were from minor parties, but instead were independent or non-affiliated voters (there is no organized Independent Party of Washington) from suburban areas (Snohomish an Clark counties -- the two places in washington where I have a lot of family mambers).  A Republican would have easily beaten those two.

Also note that when two candidates from a major party run, if a third party candidate runs, the third party vote is suppressed because people want to be able to "pick from the winners", not support the third party, regardless if there are two of the same party or two different parties.  Add any spoilers and ringers and people react strategically, particularly when their party tells them how to vote.

In each of the above cases, the general will be no different than the primary, and the general under the existing system would have the same result anyways.

So, we can see that top two is definitely no help.

Further, let's look at some anomalies that even defied expectations:\

Republicans don't beat out two Democrats -- something Phil's ok with.\

And again -- who's to say the Republicans didn't cross over and pick which Democrat they'd rather have thinking their Republican would make the top two?  We'll never know!  It's just a strategy guess in these small races.\

Here the Republicans have their vote split, and they would have made the top two with just one candidate running.  Instead two democrats go on to compete in the general, leaving out 26.7% of the populace that would have defeat a Democrat with 26.23% of the populace.  That's not democratic.\

General election will just be a re-run of the primary -- among two Democrats.\

Here three Republicans prevent people from seeing two Republicans like they "should have".  The one Democrat pulls in only 26.54% of the vote in a four-way race.  Republican challengers Neal and Ted combined could have pulled in 33.22% of the vote against an incumbent Republican as they represent disatisfaction with the incumbent Republican (who in our system would be the "endorsed" Republican).

We can see spoilers and ringers are a fact of life.\

Here the sole Democrat gets 30.01% of the vote, and no Republican beats that, but there are 6 Republicans in the race.  Could have easily been two Republicans there but for ringers.\

Here's an example of a third party kept out of the general election.\

And another.  This is supposed to be good for third parties?  Whatever, Phil!

Note that there are even more I don't point to.\

And again, a repeat of the primary with two Republicans in the race.\

Here we have five Republicans and no other party.  The top two both have between 26 and 27% of the vote.  only 53% of the population got to pick who moved on to the general election.  47% didn't get any say, and that's just of people who voted in the primary, which is around half the voters.  Effectively, 1/4 of the voters picked who went on to the top two for one to be rubber-stamped.

To see for yourself:

The proponents of measure 65 cannot point to Washington and say it works better for anybody but Republicans and Democrats.

Seth Woolley's Blog

rick dancer and the top two primary proposal(0)

Rick's Dancer's Blog on the top two proposal is interesting.  He pastes a big long op-ed from Phil Keisling and then asks people their opinions.\

(It's curious that he uses blog software I helped security audit and contributed code for -- wordpress.  I actually wrote my own blog software for my website: )

Every comment Rick got (seven out of seven) is against the top two, and all for various different reasons and all across the political spectrum -- greens, independents, republicans.

What's he doing supporting it?

Today in his endorsement meeting he said he's officially supporting the top two primary -- a decision today to support it.  Huh?

But he sent in a ballot statement on August 26th:\

His statement clearly indicating he supports "opening the primary election".  If that's not "already supporting it", I'm not sure what is.

He also "interprets" the comments that say, "gee, I could do away with party labels, but the implementation is wrong," and then says, "I like that I'm hearing that we should get rid of party labels."

What's going on with Rick Dancer?  To be honest, I'm not sure.

I posted another comment just to clarify another issue Rick seemed to bring up:

In response to the common refrain that minor parties and non-affiliated voters don't get their primary processes paid for the solution is easy:

Pay for their primary processes just like we do with the other 60%, the two major parties.  It wouldn't cost that much more with modern technology.  And for non-affiliated voters you hand them a ballot with non-affiliated candidates with a none-of-the-above vote option.  Anybody who beats out none-of-the-above is nominated to the general election.

This doesn't destroy parties (and third parties), equalizes access for independents on the ballot, and costs the same as Phil's proposal.

There are simple solutions, and then there's Phil's dangerous top-two proposal.

Let's consider direct solutions that don't upend the system we already have that's providing a place for third parties to be heard -- instead let's improve the dialog by opening up access to the primary process for non-affiliated voters directly.  Centrists should also create their own party, instead of gerrymandering the primary system for their own benefit.

Seth Woolley's Blog

measure 65 talking points for opb(0)

Turns out I didn't get much time, but Paul Gronke, a Professor at Reed did a good job of countering Phil Keisling.  You can hear me here:

I'm on around minute 43.

I'm releasing my prepared notes just in case anybody else could use them.

(35 seconds:)

Measure 65 is a huge and complicated gutting of our current system that has the effect of undemocratically destroying third parties, allowing manipulation through "ringer" candidates, limiting options in the general election, increasing the cost of elections, and relegating endorsements to back-rooms.  A better solution is available in our Constitution: Ranked Choice Voting, or ranking candidates in order of preference to ensure candidates are elected by a TRUE majority of the voters.  Oregonians need MORE choices in a spoiler-free counting method, not fewer choices in spoiler-rich elections caused by encoding our two-party system into law with a "top-two"-only primary system.

(if they don't let me ramble, and cut me off, I might get asked a specific question.  Prepared answers are below.  I might have to go off-script, though, depending on the nature of the specificity.)

(30 seconds:)

There are a dozen reasons why Measure 65 is bad for democracy:

   1.  65 would destroy third parties

   2.  65 limits choice in the general election

   3.  Ringers would be commonplace, spoiling made easy

   4.  65 leads to longer, more expensive campaigns

   5.  Endorsements would be back-room deals

   6.  Ranked choice voting (IRV) is a true majority reform against spoiling

x  7.  Independent candidate nominations can directly be made easier

x  8.  65 supports a "center" party at the cost of all others

x  9.  65 doesn't enable fusion voting

x  10. 65 is not an open-primary

x  11. 65 is funded by big business groups and centrist panderers

x  12. Voter apathy demands more choices, not fewer

(x = additional points to mention if I have time)

             A dozen reasons to oppose Measure 65:

1.  65 would destroy third parties (15 seconds)

Oregon ballot access rules are not the same as Washington.

Measure 65 will destroy third parties by eliminating our ability to get to the general election ballot where we normally get our 1% to maintain ballot access.  After one election cycle, we wouldn't be able to endorse at all.

2.  65 limits choice in the general election (20 seconds)

Measure 65 limits voter choice in the general election, period, regardless of party.  Forcing voters to vote for the lesser of two evils should never be enshrined in our voting system.  In a study of Louisiana and Washington, the only two states that have similar systems, only once out of 1400 races was there an independent candidate promoted to the general election.

3.  Ringers would be commonplace, spoiling made easy (25 seconds)

Under Measure 65, primary elections could become a game of "ringers," with political consultants recruiting candidates just to split the votes of the other parties. Republican consultants could recruit people to register and file as "Democratic" candidates, splitting the Democratic vote. Democrats could recruit phony "Republicans." Both of them could recruit phony "Independents" and phony "Libertarians," further increasing the party identity theft.

4.  65 leads to longer, more expensive campaigns (10 seconds)

Measure 65 will make campaigns longer and thus more expensive, as more campaigning would have to be done in the primary phase.

5.  Endorsements would be back-room deals (10 seconds)

Measure 65 will move political endorsements to a much smaller set of party insiders without state funding of major party nominations. Let's fund all parties and independent primaries instead of this!

6.  Ranked choice voting (IRV) is a true majority reform against spoiling (40 seconds)

Ranking Candidates in order of preference, first, second, and third, etc. was legalized in 1908 in Article II, Section 16 of the Oregon Constitution. Ranked Choice Voting, AKA Instant Runoff Voting or IRV eliminates the spoiler issue, reduces the length of elections to just one election, and actually ensures a majority get to elect candidates.  Measure 65 has none of the benefits of IRV and all the downsides of our current non-majority simple "plurality" voting.  We should enforce our right to rank candidates by preference instead of throwing more money at elections for no democratic benefit.

7.  Independent candidate nominations can directly be made easier (30 seconds)

Measure 65 doesn't solve any primary right to vote problem: All Oregonians have the right to vote in party processes, including primaries, by state law.  However, Non-affiliated voters have a very difficult time getting on the ballot due to my Democratic opponent's championing of HB2614 after the 2004 Nader fiasco in Oregon.  To fix that is very simple -- repeal HB2614 of 2005 and reduce requirements for independents to get on the ballot.

8.  65 supports a "center" party at the cost of all others (20 seconds)

Measure 65 supports centrist candidates who differ only minutely on wedge issues from poll issues -- partisan bickering on a narrow range of debate will continue.  The centrists should instead create their own Republicratic Party rather than effectively banning third parties they disagree with and violating the freedom to associate of the two parties they more closely align.

9.  65 doesn't enable fusion voting (15 seconds)

Measure 65 doesn't enable fusion voting.  Multi-partisan endorsements are legal already.  Multi-partisan nomination will be outlawed under it after as well as before.

10.  65 is not an open-primary (10 seconds)

Measure 65 is NOT an open primary, which is when you get to pick your party ballot when you show up at the polls.

11.  65 is funded by big business groups and centrist panderers (15 seconds)

All of the 20 "for" pamphlet statements for Measure 65 were funded by big business and centrist politicians who favor business interests -- about the only thing both major parties agree on.  There is no grassroots campaign for the measure.

12.  Voter apathy demands more choices, not fewer (10 seconds)

Oregon's growing non-affiliated voters are sick of both parties -- they don't want to be stuck with two candidates who are half-way between two types of corruption.


It seems I get asked every time, "but you might get in the top two." What if we did get in the top two?  It never happens in state-wide races with a top-two system and even if it did, look at District 42 where we're running a Pacific Green against an unopposed Democrat -- or look at Congressional District 4 where there's no Republican, or Congressional District 5 where there's an Independent and a Green versus a Democrat, or Congressional District 2 where there's a really weak Democrat and we've been successful organizing even within Democratic Party rank and file.  We get those kinds of advantages with the current ssytem.  We also get to influence the major candidates by way of spoiler power -- as much as I'd rather not have a system of spoilers, spoling is the only power we have in large races.  We would never be a spoiler issue at the state level, erasing our power there.  We have all the advantages they claim we'll have, but we'll have more with the current system.  Anything that hurts minor parties just because they don't want to create a "center" no-issue party for ceaseless corruption is bad.

Seth Woolley's Blog

salem city club questionnaire(0)

1.   Describe your background as an Oregonian and the experiences you have had with the workings of government here in the state.  How do those experiences, and your temperament, best qualify you to hold the position of Secretary of State?

I was born in a Seattle bedroom community where I lived in a mobile home until moving to Salem to attend Willamette University, across from the Capitol.  There I became involved in the local Green Party chapter as the founding secretary and co-chaired the Campus Green Party.  I later became the State Party Secretary and a three-term State Coordinating Committee member.  I'm now the most senior and youngest SCC member.  My major activities in Salem were to support Ralph Nader, oppose endless wars and Measure 9, and campaign for Bill Burgess, Anna Braun, and Bill Smaldone.  I became Secretary of the Agenda for a Livable Salem's offshoot, Citizens for Livable Communities, and managed the website while they were active.  After Taylor was elected through the effort of some "knuckle-dragging neanderthals" awash with corporate money, I made a decision to leave Salem for the more modern climate of Portland, where it was better for small businesses.  I now own a home with my wife, whom I met in my first week at Willamette and married in Salem. We now live in Portand's Grant Park / Alameda neighborhoods.

I best qualify for the position of Secretary of State because I'm the only candidate untainted by corporate cash and PAC money.  I'm also a senior software engineer with domain expertise in security auditing, high performance, high capacity supercomputer clustering, and spatial databases.  Particularly, I work at the company that runs 90% of the mobile navigation market world-wide and to whom Google paid to power the first versions of its Google Maps software.  I'm currently the principle spatial and relational compiler engineer.  There are only a handful of experts in my domain, worldwide, which is uniquely relevant to state administration, including opening access to government and redistricting.  Being 27 years old, I also represent the future of Oregon.  People my age are in majority refusing allegiance to the two so-called "major" parties, who are astonishingly out of touch with future generations of Oregon's leaders.

2.  What has motivated you to seek this position and what goals do you expect to accomplish?  How will your approach to the position reflect both the letter and the spirit of the requirements?

I seek this position because I grew tired of Democrats ignoring Preference Voting and Campaign Finance Reform, both enabled by voters, while preventing third party access to the ballot, particularly in two notable cases.  First, the fiasco in 2004 with the wanton illegality surrounding Bradbury's successful bid to keep Ralph Nader off the ballot.  Second, Bradbury's and Brown's successful, and under the radar, passing of HB2614 in 2005, which made getting an independent on the ballot virtually impossible.

The two most important functions of the Secretary of State are elections and auditing.  We can't just say, "Every vote must be counted."  Rather, "Every vote must be meaningful."  Our votes are meaningless without preference voting to eliminate spoiled elections and campaign finance reform to end legalized bribery.  The two major parties gave us two wholly inadequate candidates: a stunningly unqualified Republican and an insidiously partisan Democrat.  My Pacific Green principles of unfettered participation, strong protection of direct democracy and initiatives, and true, multi-partisan pluralism inform how I would execute the office.

Seth Woolley's Blog

league of women voters questionnaire(0)

Candidate Name
Seth Woolley
Seth WOOL-eee
Contact Name
Seth Woolley
Contact Information
3403 NE Stanton St
Portland, OR 97212
Cell: 503-953-3943
Occupation and Experience: Software Engineer in high-performance, high-bandwidth, location-aware databases; Security Auditor and Consultant; Pacific Green Party Elections Administrator, Secretary, and Parliamentarian.
Should the Secretary of State's office be non-partisan? Rather than removing a candidate's freedom to associate with a party of their own choosing, we should directly address the issue of difficult non-partisan, independent access to the ballot.  For example, Seth's Democratic opponent supported Oregon House Bill 2614 (2005), making it nearly impossible for independents to get on the ballot.  Ironically, that bill received support testimony from only one group: the so-called "non-partisan" League of Women Voters.
If the Legislature does not agree upon a redistricting plan, how will you involve the public and develop a plan? If Seth is elected, the legislature may agree to a redistricting plan because it contains two parties interested in gerrymandering to eliminate more contested seats.  Currently, most seats are uncontested by the other major party.  As a spatial database expert, Seth would organize districts by communities and geographic boundaries that make sense, not partisan voting patterns.  For example, the boundary between Congressional districts four and five unfairly splits the major Benton County communities in half.
What key issues do you wish to address in the capacity of this office? As the only candidate not beholden to corporate and PAC money, Seth will enforce the voter-enacted campaign finance reform Measure 47 (2006) to get money out of politics.  He will also open ballot access to independents by working to repeal HB 2614 (2005) and eliminate the third-party spoiler-effect by implementing instant-runoff voting, which was passed by Oregon voters in 1908.  Seth will also modernize and open up auditing to the public Internet.
Easy Guide Questions
Town where I live: Portland, Oregon
Job/experience: I'm a computer program writer and computer security investigator.  I also run Green Party elections.
Top three things I want to do if I win: End legalized bribery by limiting money donations to small amounts. (Image 50) Let voters rank candidates for office as first, second, third, and so on to ensure those elected are supported by most voters. (Image 46) Make it easier for independents to run for office and to investigate waste of tax money. (Image 37)

Seth Woolley's Blog

what makes a green(0)

One question I have been asked is whether or not the Green Party should ever endorse a Democrat or a Republican.

The policy I always hold to and fight for is to never endorse RepubliCrats unless they've already defeated a first choice in a primary.  If they re-register Green I will consider endorsing them.  If they cannot reregister, that's sign of importance number one they will not hold to green values when elected.

Our future as a meaningful party depends on our integrity.

We are NOT an endorsing party, we are a nominating party, and that means when you seek our support we expect you to be a member of at least a party that has principles.  I'd consider endorsing a Libertarian over a Democrat because I know where the Libertarian stands (and I agree with them 90 percent).

Our very existence relies upon the fact that we are a trusted and consistent alternative that speaks truth to power, no matter how polished power may have manifest.

I'm ever watchful that we, as a true alternative party may fall into the old Hegelian model of left versus right and line up with the Dems when they appear far enough left.  A verdent party such as ours is not left, nor right, but Forward.

We do not favor central governments to manage all our problems -- we want local, decentralized control and communitarian values, instead.

We do not favor corporate bankers, New York advertising firms, and Hollywood Enternumbment -- we want to take back control from corporate interests and assert our rights as humans to drive our own destiny.

We do not favor large corporate monopolies paying small franchise fees for exclusive utility contracts or getting tax abatements in enterprise zones to contribute to urban sprawl -- we want to foster small, independent businesses (including cooperatives and public districts as well as small propreitors) who use their own associations to interoperate and develop extensive systems of international standards backed by the power of local governments.

As a divergence, I want to mention some things about decentralization and how it relates to transcending the old left-right dichotomy.  Kind of a blog post, as it were:

The Internet has proven that decentralization works.  There's more peer-to-peer traffic on the Internet than all other traffic, combined. That scares the metaphorical shit out of the powers that be, and Richard Clarke has said that the US has an Internet PATRIOT Act just around the corner if we get a major cyber attack.

But thanks to a few maverick professors and students at Berkeley (Jon Postel and Vincent Cerf, a couple examples), who created the Internet Engineering Task Force with ARPA funding (now known as DARPA), the Internet has been most resilient to cyber attacks.  Ironically, despite its origination of the Internet, the US is WAY behind its connectivity rates compared to other countries.

You may have seen the news about the happenings in Georgia, but in addition to tanks, Russia launched a cyber war on Georgia, trying to prevent their administration from communicating internally and externally.  Right now, China is in a cyber war against the US (and has been for the last couple years).  The Air Force has a cyber command center specifically to address that.  China is not only targeting government channels, but it has a system of state-sponsored electronic espionage against corporate trade secrets all over the world.  The skirmishes often go unreported due to the nature of trade secrets and the sensitivity of large corporations to their image of security, but I know many in the security industry and that's what they talk about (minus details in public).

China hasn't been very successful in its cyber war because it doesn't grok decentralization.  In fact, spammers love China because they decentrally control vast bot networks within China for diseminating mass emails and attacks.

Decentralization can be robust, but it has to be a coordinated and conscious decentralization that balances anarchy with community.

If you've been watching the Olympics at all you'll see the stark contrast between those sports where ingenuity is involved versus repetition.  In gymnastics, diving, and weightlifting, the Chinese dominate.  In team sports and evolving sports like basketball or beach volleyball, western nations dominate.

They still have to buy their engineering know-how from IBM when they bought their ThinkPad division (hopefully Apple is headed to replace them as the corporate standard laptop).  The core silicon fabrication facilities are all still outside China.  In China you don't find the agents of change anywhere, just conformity to specifications.

China may have discovered gunpower, but they've created a nation of over a billion conformists to a central government through propaganda and pseudo-leftist ideology -- perhaps with the help of that gunpowder.

But what is the alternative?

Robert Reich's 1970 classic The Greening of America laid out the vision we must seek to complete: the overcoming of the first and second consciousnesses (classical liberalism of the individual and statist liberalism) to move to a third consciousness, the Greening of America -- a more true synthesis than Marx or Hegel ever dreamed.  If we, as a nation, are unable to move beyond those two consciousnesses, the Chinese's Second consciousness is nearly complete, and they are ready to dominate us, stuck back here debating the merits of the first and second consciousnesses.  They are a shining example of what this nation would be like if controlled by the likes of the Democratic Party: nearly full employment under a centrally planned economy moving rapidly to industrialization.

Interestingly, the Republican administration acts completely corporate and statist -- the hallmarks of the Second Consciousness.  Some might call it fascism.

The Second Consciousness, though, depends on ready access to fossil fuels.  That dependency is also its Achillies heel.

In the US, fiscal conservatives in this country have managed to somehow revert the clock of time and deindustrialize the US into a low wage service-based economy, while the control the Democrats have leaned areas it controls toward higher wage K-sector economies.  We have to remember though that both of the parties are capitalistic to the core, for even in their empty promises, one stresses the individual, the other stresses the urban corporation and sometimes (and decreasingly) its union of employees.

As true progressives, we can't give into the pressure to turn back the clock to reactionary politics, but always consider the alternatives: instead of a direct copy of the British National Health System or an expansion of medciare, we need to empower local doctors and have state-level administration of our universal health services.  Indeed, European countries are about the same size as our states.

Instead of sales, whole property, and payroll taxes (favored by capitalists in the two major parties -- remember bankers got the federal reserve and the federal income tax passed) we need to consider expanding the estate tax and changing to geonomic and resource extraction taxes: true shifts to the Third Consciousness.  We need a minimum income guaranteed by 100 percent estate taxes to enable creative souls to create wonderous artistic, utilitarian beauty without being insecure about their basic sustenance.

Instead of public financing of political campaigns, the state could mandate the public airwaves provide free political information disemination and ban all money in politics as legalized bribery.  Rick Metsger, who lost in the Democratic primary, champions this issue, although he supports the backwards blanket primary.

Instead of blanket primaries, Instant Runoff Voting can be used. Runoffs and range voting (although judges that don't use strategy to manipulate ranges work really well in range voting, the same success cannot be expected by the voting population compared to IRV) seem to work for the Olympics.  It can work here for us -- in 1908 Oregon voters had the foresight to enable preference and proportional voting into our Constitution.

In the USSR and China and during the New Deal, you still have/had compulsory wage slavery.  You could choose the CCC (or the CCCP) or starvation.  We have the resources to move beyond that with our incredible ability to automate, but we need the sustainable, Green vision to lead us not on the path to self-destruction, but, instead, to universal creativity.

The two major parties like to talk about Green jobs, however it's not the audacity of hope that will lead us forward, but the ingenuity of innovation.

We need innovative politics, innovative businesses, and innovative communities to really move us forward into Reich's Third, Green Consciousness.

All three of those require innovative people.

If we can remake our society in a Green vision, the prize is a future for our planet.  If not, wars for oil will dominate a slow, petroleum-lubricated path toward a charcoal-smoked planet.

If society slides down that path with unabated thirst for oil, there only lies humanity's self-immolation, suspended by Eisenhower's Cross of Iron.

Seth Woolley's Blog

top two is a bad proposal(0)

I'm Seth Woolley, Secretary and Elections Administrator of the Pacific Green Party of Oregon and its nominee for Secretary of State.  The Pacific Green Party of Oregon is not a "left" or "right" party, although it's often called "left".  Greens are instead for peace and nonviolence, decentralization and local control, social and economic justice, and environmental sustainability.

It's important to know what the five goals of the proposed top-two, blanket (not open) primary are (from the text of Measure 65) and why they aren't satisfied by the measure.  The last goal is even mathematically false.

   1. All Oregon voters should have the full and equal ability, at every election, to choose those whom they believe are best suited to govern them.

Section 6 of the measure changes the requirements for access to the "blanket partisan" (called "voter choice") primary to match non-partisan primaries.

Thus "equal" ability would be true -- but not "full" by any measure.

By moving more deadlines for candidate nominations for third parties and independents to the primary date, it becomes more difficult for third parties and independents to recruit candidates who've been disenchanted by the major parties after seeing how candidates have changed their rhetoric after the primary -- and that's for parties that falsely play to another party's base.  For major parties that don't play to a third party base (or to an independent with a special interest), the candidates providing the increased range of debate are essentially shut out of the general election and relegated to the primaries -- those candidates who propose new ideas almost always start out unable to win majority support against a field of establishment candidates.

As an aside, the ballot measure process has been the preferred location in Oregon for new ideas -- in fact, Green Parties in states without a ballot measure direct democratic system tend to be, all other things being equal, much stronger than in Oregon, although with the increased use of pay-per-hour by big-business-backed conservatives has made it nearly impossible to gather signatures for progressive ideas without money due to growing voter disenchantment with the corruption of the process spurred on by the Oregon Supreme Court's equating money with speech.  Only Campaign Finance Reform to implement Measure 47 will solve this problem, as well as many others.

Secondly, the only reason the major parties in the past have played to another party's base (for example, sometimes Democrats try to take Green votes with empty greenwashing rhetoric) is to secure their own party's nomination -- which wouldn't even happen in the open public with this proposal -- it would happen instead at their private endorsement meetings.  It thus further limits the debate of non-top-two candidates to the primary election, where less voter turnout is expected.  Yes, they would have the same prima facie ability, but as it turns out, it won't be the same "real" ability.   Later I will show that in fact, they will have even less ability due to the mathematical non-monotonicity of the top-two, plurality, single-delayed-runoff, blanket-primary proposal.

   2. Competitive and open elections that encourage thoughtful debate and maximize participation are healthy for democracy and strengthen citizens' trust in their government.

The measure does open some elections (but not all) to independent candidates better; however it raises requirements for third parties.  An additional signature drive or filing fee will be necessary for third party candidates above and beyond the existing signature drives, registration drives, and/or vote results that are already required for third (and major) parties.

It also raises requirements for major parties, to actually hold separate elections where they do "voter choice" endorsements.  Such endorsements would typically be done through an extra level of representatives (people who attend their conventions, particularly at the state level).  The type of choices that would get the nod of each party would then be more of those of the "apparatchik" and not the party membership.  Otherwise, the state parties would have to seek more funds for a third level of plenary elections, increasing the cost of elections.

   3. Citizens should be able to register and affiliate with any legal political party, or none at all, according to their beliefs and without any coercion or diminishment of their rights as voters.

Quite simply, this problem could be fixed directly by repealing the Kate-Brown-championed HB2615(2005) that changed the requirements for independents to be independents-only without a corresponding reduction in the signature requirements, or with a wholesale reduction in the signature requirements to be drastically fewer to be more, say, fewer than those needed to create a party in the first place.  Nader is creating a "Peace" Party solely to get on the Presidential ballot, due to the huge difference in the level of difficulty.  Secondly, to complete the repair, we would need to have the state pay a proportional subsidy to each third party or independent based on their registration base to fund or pay back the costs for third party primaries or party or independent elector conventions.

Lastly, the "voter choice" elections it proposes doesn't even apply to all elections, for example, for President, so the "any" qualifier is simply false.

If the backers of this measure truly believed in this statement, they'd support Instant-Runoff Voting and Proportional Representation.  If the Green Party registers ten percent of the population, we can't expect nine seats in the legislature because we don't have true Proportional Representation -- THAT would be cleaning up a diminishment of our rights as voters to be properly represented in the legislature.  The top-two proposal certainly does not.

   4. Political parties should be able to endorse and support any qualified candidate, or none at all, according to the beliefs and choices of their members and without any compulsion or diminishment of their rights through operations of the law.

This measure would equalize the ability of parties to endorse candidates by removing the ability of parties to use the primary as a form of subsidized publicity for their candidates, currently unavailable to minor parties and independent candidates, as I've mentioned.  Moreover, the measure actually implements fusion voting to the extent possible by allowing each endorsing party to endorse a candidate and have it listed.  Of course, we're already able to do such endorsing as it is, as there won't be any partisan nominations at the general election, nor the primary election and form SEL430 and the voter pamphlet have dedicated space and subforms for many-to-one endorsement lists.  Also, in section 5.1, it leaves open the possibility of charter-rule top-N partisan elections to remain consistent with ORS 254.065, which mandates plurality vote (requiring that the single highest or N-highest are elected), despite Article II Section 16 of the Oregon Constitution which specifically allows Proportional Representation and Preference Voting such as IRV.  If one's going to modify statutes and the election process so drastically, we should fix the law to allow home rule charters to override plurality or simply repeal it altogether and replace it with IRV (and additionally Proportional Representation to really protect minority rights).

   5. A primary election process that advances the two candidates receiving the most votes to the general election ballot, and that allows every qualified voter to vote on which candidate to advance, helps to ensure the election of officials supported by a majority of the electorate, thereby promoting citizen confidence in their government.


This measure does not ensure a majority of the electorate.  There is simply no guarantee that all candidates in the primary who are the "top two" are approvable by all the electorate.  For example, I would not approve of Kate Brown or Rick Dancer if I were not nominated to the general election as a "top two" candidate.  It thus does exactly the opposite: it LIMITS choices available for the general election that actually decides who is to be elected.

The Math of Measure 65:

Mathematical qualities of a two-round plurality vote don't improve upon the spoiler problem at all and leads to an exacerbated non-monotonic behavior (rank improvement leading to a failed election) that's the number of candidates minus two times higher than what could happen with IRV.  A converse failure of the monotonicity criteria is actually the fundamental problem with plurality voting that leads to the spoiler issue -- e.g. ranking Neville over Novick leads to the election of Merkeley.

Top two is, in mathematical terms, a degenerate form of Instant-Runoff Voting, except it doesn't have the main benefits that IRV provides in the real world -- instant counting, spoiler elimination, and majority approval.

First, it isn't "instant" -- costing taxpayers more money than needed.

Second, you'll hear claims that "top two" will solve the spoiler problem.  That's demonstrably false.  The "spoiler" is a term used only for candidates that are the "third or more" major-media-considered-electable candidates because plurality really only works when there's a choice between two options (identical to the IRV winner, the Condercet winner, the approval winner, the borda winner, the range winner).

Consider an election in inner SE Portland where there's no Republican or a weak one, a major-party Democrat, and a Green candidate (as in the case of District 42 and the Green Party's Chris Extine) -- the election is essentially between the Green and the Democrat -- a Republican entering the race would technically be the spoiler.  Furthermore, to avoid such a situation, all the Democrats would have to do is run a second nearly identical candidate.  All of a sudden, the Greens are called the spoiler between the two "legitimate" Democrats.  Ignore the fact that at least one of the Dems is going to be promoted -- the problem is still there -- perhaps the other Dem was really "better".

Then consider a contested election between two major parties: the third candidate in the primary is still a spoiler -- if they pull enough votes to trip one of the candidates from being in the top two, the election will likely be between two extreme candidates, neither of which is guaranteed the support of the majority.

Third, in the case of only one candidate (or option), the measure (similar in behavior to non-partisan races), calls off the election and doesn't even ask us for approval.  In that case, there is no "majority vote" -- there's no opportunity even to "write-in" anything else to support the candidate's not receiving a majority of the votes.  No vetting would be allowed.  If the criteria of election was simply that a majority of the voters had to approve them to be elected, the election would be thrown out as not electing anybody and we'd simply hold a runoff with new candidates until somebody was elected.

With IRV, a static election majority threshold automatically supports an implicit none-of-the-above election.  The top-two solution is a ruse that moves the spoiler problem into a more cluttered and lower turnout election where the spoiler problems, in fact, are magnified.  In theory, the general election will be devoid of spoilers, however, the spoiler problem doesn't, in fact, go away, because those who didn't like either nominated candidate will be "spoiling" their vote by either refusing to vote or voting a write-in (thus unable to express their real preference).  It again forces people into casting a vote for the lesser of two evils, creating a false mandate.  In IRV with a static-threshold or a dynamic threshold (threshold recomputed after each round to eliminate ballot spoilage) with "none of the below" ranking, they would be able to express both preferences at the same time.  In Louisiana, candidates like David Duke end up winning elections because voters hated the "crook" more than the "klan", though Duke only got into the general election with only a small fraction of support (1/3 or less -- in a primary too).

Combining the theory with the empirical reality (which Blair has addressed), it's clear that Measure 65 is a poor and often non-solution for the problems it purports to solve and at the same time hurts diversity of viewpoints and fails to decrease election anomalies compared to either straight plurality or IRV, all in the name of bipartisanism.

Seth Woolley's Blog

Unknown Rebel(0)

The Unknown Rebel vs The Tank


Seth Woolley's Blog

google corrupts firefox(0)

My take on Google, Microsoft, Democrats, and Republicans all rolled up into one:

02:38 < somebodyelse> i so hate the web now
02:38 < somebodyelse> leaving 10 pages open in firefox consumes 84% of a 1GHZ cpu
02:38 < swoolley> flash by any chance?
02:38 < somebodyelse> all this javascript and flash
02:39 < somebodyelse> yeah i wish firefox would shut that shit down when it's not in view
02:39 < swoolley> noscript is a wonderful plugin
02:39 < somebodyelse> yeah need to get noscript and adblock on here
02:39 < swoolley> and abp
02:39 < swoolley> those two are the essential two for any firefox install
02:39 < somebodyelse> agree
02:40 < swoolley> if it weren't for google's sponsoring firefox, it'd be done already
02:40 < swoolley> but then again, google's evil, and google likes advertising because 99% of its revenue comes from it
02:40 < swoolley> so a few million thrown at firefox is a good guarantee not to eliminate 20% of their revenue.
02:40 < swoolley> which would happen overnight...
02:41 < somebodyelse> yeah
02:41 < swoolley> I can't stand google fanbois.  At least microsoft only tried to attack from outside.
02:41 < swoolley> google's attacking the web from the inside.
02:41 < swoolley> it's like microsoft is the republicans and google's the democrats
02:42 < somebodyelse> heh
02:42 < somebodyelse> hmm
02:42 < swoolley> they both aim to screw you over, but from two different orifices.
02:42 < swoolley> the democrats say one thing, only to lie about it.
02:42 < swoolley> the republicans are at least up front that they want to screw you
02:42 < swoolley> even when they aren't up front about how they're going to convince you to screw yourself.

Seth Woolley's Blog

self-modifying scripts(0)

Put this in a file (say, script), chmod +x it, then run it with: ./script

sleep 1; echo "When will I stop?"
echo "$(tail -n 2 $0)" >> $0

Seth Woolley's Blog

response to vicki walker on irv(4)

Vicki Walker, Democratic Candidate for Secretary of State sent a response to a member of FairVote Oregon clarifying her research on advanced election methods such as Instant Runoff Voting.

It appears that she's just leapfrogged the intelligence of Brown and Metsger on the IRV issue, and she brings up a number of important points to consider about the issue.  Here, I will directly address her response:

I support many election reforms -- campaign finance reform, fairness in initiative reform, greater accountability in auditing the vote counts and final election results, fusion voting and some other system of voting that makes Oregonians feel as if their votes count -- as evidenced by my endorsement today from the Voter Rights Coalition and the Independent Party of Oregon.

Vicki's certainly leading the pack in reform organization endorsements.

I spent a lot of time reviewing IRV because that seems to be the favorite option among many Oregonians.  My first question about IRV is whether it would interfere with fusion.  That question has been answered satisfactorily that both methods can work in tandem.

Correct.  One is a method of labeling candidates, the other is an actual counting method.  Wholly distinct.

The next concern was with regard to the Oregon statutory authority. It is clear there are at least four provisions of the Oregon constitution that would apply to the use of IRV in local elections, and a home rule county or city would only need to adopt a change to their charter to facilitate IRV.  However, questions have arisen as to whether state statute is necessary to implement IRV.  There was a bill in the 2005 legislative session, HB 2638, that would have provided the enabling legislation but it did not even get a hearing and died in committee.  There may have been a similar bill in 2007; I do not recall.  I suspect the failure to move forward on this issue is that the current Election's Administrator, John Lindback, does not support preference voting, believing it gives some voters more votes than others. His other objection that our election equipment would not facilitate IRV is no longer valid because voting machinery and software is coming on line now that would allow for such voting methods.

I agree that John Lindback appears to be the main anti-preference advocate.  In my opinion, he's abusing his position to put forward incoherent objections to preference voting in the name of protecting his party from legitimate and fair competition, but I'm going to reserve calling that a fact until I can talk to him personally about the mathematical mistakes he's making.

First, it makes no sense that some voters get "more votes" under an IRV election.  Mathematically, every "republican form of government" (as opposed to, for example, direct democracy) voting system cannot accurately represent the electorate because the number of representatives is always fewer than the number of people it's intended to represent.

Technically, the closest way to approach accurate representation is to select representatives out of a completely random sample, but historically, that's difficult to audit because one man's random is another man's conspiracy.  Even though we have mathematical methods to analyze randomness, such a determination wouldn't be able to build confidence among the represented body because the processes are most likely above people's heads, and if jury selection is an example of how we currently attempt random selection of a jury of peers, I'm not sure it'd be a whole lot better than what we have now.  The other problem with random selection is that making coherent laws is a specialty that requires some expertise.  The entire system would require changes where new representatives are educated as they come in within a framework. We'd have to essentially have something akin to judges that oversee the process, and that also might introduce issues.  In theory if these hurdles can be overcome, it's my preferred method of selecting representatives, though.

Arrow's theorem shows us that given some arbitrary metrics of fairness, no election system can provably satisfy all of them due to inherent contradictions in the ideas of fairness that he chose to include.  Many election reformers and researchers have been attempting to resolve the fairness questions by changing his ideas of fairness to meet what they consider important or not and then picking the "best" system from their criteria.

I think the way around the issues of Arrow's theorem and related theorems is to understand that government is composed of checks and balances.  Since you can't satisfy everybody all the time, you should at least try to satisfy everybody at least some of the time.  What I mean by that is we should use different election methods for different purposes and ideally set them off as checks and balances against the biases of each other.

With that philosophical foundation, selecting election methods becomes a matter of understanding the point of each branch of government or elected office within those branches and designing a system that works to maximize the value of each type of election method.

But now, back to IRV and why it doesn't do what John Lindback thinks, according to Walker, "It gives some voters more votes than others."

Fillard Rhyne gave a mathematically sound response to this complaint: after each round of voting and the elimination of candidates as per its criteria (which is the source of its "bias", which I will get into later), each vote is counted.  The only way a voter can lose their vote in a new round is to not fully specify their preferences.  That's a decision the voter makes akin to not even voting in the first place, so I don't see that as an issue.  The important characteristic of IRV is that, if voters fully-specify their preferences, the candidate selected by IRV is ensured to have majority support as the highest ranked candidate among those not already eliminated due to not having enough votes in the previous rounds.

The major complaint against IRV that I'm aware of is that by using the highest ranked candidates in previous rounds, it's ignoring "general-but-not-highest" support of candidates who may be more favorable in average, but not the most favoriate of a substantial number of people.  This introduces what's called "non-monoticty" (one of Arrow's criteria) -- that ranking a candidate higher may actually hurt the candidate due to a secondary effect that it may cause votes that would have gone to them to go to another candidate because they still aren't high enough to prevent the candidate from being eliminated and the downranking of the higher up candidate may lead to the election (or near election) of a candidate higher up on their ballot.

This is where the bias of IRV comes from: how candidates are eliminated. It eliminates those who show the the least amount of "strong" support after each round, so, naturally, it elects those who have the strongest support of the majority (or near majority in the case of not-fully-specified ballots) of voters.  In the extreme, between a candidate with 100% approval but not strong approval versus a candidate with 51% approval but in all cases stronger than the the other candidate, the 51% approved candidate will win.

It's important to note that compared to normal plurality voting (where only one round is used), IRV is in all cases superior.  Plurality voting in fact has a very similar bias: in the situation above, the 51% approved candidate would win anyways!  IRV's weaknesses compared to single-round (or technicaly "fewer-round") plurality are thus from being too similar to plurality voting in the first place!

That's why such objections without a coherent replacement are merely advocates for keeping the even worse plurality system.

One valid reason for liking plurality voting over IRV voting, other than the simplicity arguments, is that when given multiple candidates, the two highest candidates end up facing off against each other with a stress on cooperating and eliminating the other candidates for the risk of spoiling.  They thus create a duopoly, when the process is repeated in subsequent elections (iterated, in math terms).

If you're a fan of the two-party system, then, plurality voting seems awefully favorable.

That's exactly why we need to get rid of it: because the two-party system is not an accurate representation of the electorate.  Two-party systems when themselves iterated (remember, repeated in successive elections), create positions where each candidate of the two major parties only wants to differentiate themselves on a few single issues and otherwise be as non-descriptive of their platform as possible.  If a candidates can successfully frame the debate betwen a set of gerrymandered litmus tests (for example, abortion rights, as happened recently, easily splits the country in two along rural/urban lines), the two parties can effectively gerrymander the electoral process to eliminate third parties.  Ironically, opposition to the occupation of Iraq, long a staple of third-party politics, is becoming a litmus between Democrats and Republicans in many parts of the country.

That's simply not an acceptable way to run government.  While I can personally disagree with occupation and war in the middle east and be pro-choice, it's frustrating that we can only address one issue at a time, and those issues are merely one part of a myriad list of issues that need to be addressed that run the gamut from Universal Health Care to Voter-owned Elections.

Finally, IRV is just one form of preferential voting.  As I have learned, there are numerous variations:  Borda, Bucklin, Condorcet, Range Voting, Runoff Voting, Exhaustive Ballot, to name a few.  In addition, the mathematical theories as to why one system is better than the other are so complex they make my head spin.

In my research, I've determined that the Preference systems with the most mathematically positive properties are IRV (and related STV), Condercet (and the related and much easier to count Range Voting).

One of the other methods can usually be reduced to having similar properties of those classes.  I tend to group them in two ways: those methods ideal for Proportional Representation (non-monotonic) and those methods ideal for General Representation (which usually happen to be monotonic).

In my platform, using my philosophy that we could simply use both categories of preference voting depending on the desired type of candidates we seek, I outline how we can use Condercet, IRV, and STV together in a very well-balanced electoral system, where we use IRV for issue-based seats like statewide offices such as Attorney General or Secretary of State (and local commissioner seats where they oversee specific parts of government), Condercet for Governor (and executive-like seats like mayor), and STV for representative bodies, where we use multiple seats to ensure some form of proportional representation.  State-wide, I also proposed keeping some form of regionalism by breaking up the multi-seat House of Representative elections into large super-regions to ensure bioregional interests are still intact).

The bottom line is that Oregon should explore using any one of these methods or a combination thereof to make its election system work in a way that every Oregonian feels their vote is counted.  IRV seems to be the most popular in the U.S. -- San Francisco has been using it in nonpartisan elections since 2003, and many other cities have joined in, and several states have enacted legislation that will eventually allow IRV.  As you know, Australia started using IRV in 1893 and continues using it today.

Yes, Oregon should explore and begin implementing preference voting in honor of the centennial of voters wanting it in the first place.

My record in the legislature has been strong, consistent and unwavering on giving every Oregonian a voice and a seat at the table.  I am open to supporting any efforts to improve upon the plurality voting system we have now. If the legislature is not willing to have public hearings on this issue, then as your next Secretary of State I will commit to appointing a citizen commission to begin the public discourse.

That's a good first step, but as Secretary of State, you'd have the ability to not only begin the public discourse, but to allow it to be implemented at the local level without even enabling legislation.  The entire "enabling legislation" idea is a ruse created by Lindback, probably at the behest of Bradbury.  The fact is that the state statute that requires a plurality to be elected is entirely consistent with IRV. IRV just adds an additional requirement that rounds be done to make sure that the plurality becomes a majority.  It's not mutually-exclusive. It's merely a failure to understand the math behind IRV that could lead one to think that plurality excludes IRV as an election counting method.

Here's some links I discovered in my research that you might find useful. I particularly appreciated the analysis by FairVote as to why the 2001 Eugene ballot measure failed.

I've helped publicize range voting in the past, and consider it a viable system for selecting for selecting a governor or executive among multiple candidates, although it's not without its strategic gaming possibilities (most people will just choose all or nothing) and it's incompatible with none-of-the-above directly (although one could say candidates that couldn't get greater than half the range could be indirectly interpreted as "none of the above".  Bayesian regret, though, appears to be low.  I'm leaning toward Condercet-style elections, personally.

I'll note that the votefair person (a local of Portland, OR) makes some fundamental arguments that mistake IRV.  IRV can support equally-ranked candidates.  The votes are just split in half and counted thusly.  In reality though candidates are truly never equal, so this is mostly a non-issue if a slight improvement is made to typical IRV counting methods.

Secondly, the votefair person's arguments against proportional representation are specious and illogical.  PR works in countries without prime ministers and with presidents.  It can also be used in single-seat elections when you have many seats in the form of IRV, but it requires specific "tasks" for each office to be distinct and representative of issues in government (environmental officer, elections officer, attorney general, etc.).  It also criticizes party-ballot-line PR and blasts STV (the form of IRV they mention).  It seems they fail to understand (as published in a recent paper on the issue of non-monotonicity and PR), that STV's non-monoticity "unfairness" is precicesly what makes it create proportionality.  If monotonicity were required, the majority could take all the seats, leaving no minority representation, regardless of the strength of the minority's passion. the "votefair" method is unable to do PR by design.

Furthermore votefair appears to be just a slightly improved variation of Condercet (vulnerabile to Arrow's Theorem as well) with equal ranking allowed and with a tie-breaking method.  All my references to Condercet voting would thus apply to votefair, except for the above modifications. It might be usable for a Governor race or other executive, but because it is terribly bad at allocating proportional representation, it is entirely unfair for multi-seat elections and wouldn't be desirable for issue-based and task-based single-seats.  Be wary of persons promoting a silver bullet for all elections: they don't know what they are talking about.  He also doesn't acknowledge his debt to Condercet voting adequately, and his comparison table leaves out a number of additional criteria one may consider more important than his.  (this was a very comprehensive discussion)

Again, thank you for your inquiry.  And please understand that while I support a wide variety of election reforms, my top priority upon my election will be directed at campaign finance reform, because I believe all roads lead back to the fundamental problem of big money pervading the functioning of our democracy.

Here, I definitely agree with Vicki Walker.  THE major stumbling block to implementing key election reforms and bringing government auditability back into the public discourse is big money and a lack of campaign finance reform.  I think Metsger's position on opening up the airwaves back to the public is the most key federal action we can do (FCC being a federal body), but locally, putting in place already-voted-upon-and-passed campaign finance regulation is the first step of any truly progressive Secretary of State.

Seth Woolley's Blog Seth4SOS

election integrity forum protest(0)

On May 3, Pacific Greens from across the state will gather at Portland's First Unitarian Church to protest lack of inclusion of Pacific Green Secretary of State Candidate Seth Woolley at a forum designed to address election reform issues that prevent increased participation of third parties in the electoral process.

"At first, the Pacific Green Party chose to endorse the [...] forum," said Woolley in a published statement regarding his lack of inclusion in the forum, "Then we heard minor party candidates weren't going to be included on stage with the other candidates seeking their party's nomination.  After trying to address the issue with the organizers, the Pacific Green Party's State Coordinating Committee was left with no other choice but to unanimously rescind its endorsement of the event."

After the Party revoked its endrsement, Woolley was forced to do a personal endorsement just to have an opportunity to table at the event.

The conflict left Woolley perlexed, "Honestly, I think the organizers are very well-intended people and I'm 100% behind the issues being presented getting their fair hearing with the all SOS candidates, but they let the issue of my lack of inclusion fester unresolved for long enough that once they realized it was an injustice they didn't feel they had time to go back to the candidates and tell them minor party candidates could be included."

"The party recognized, correctly, that lack of time was just a cop-out." He added, "The so-called 'spoiler' issue has, as we see, worked to prevent participation even within groups knowledgeable about the problem of leaving out diverse voices.  If anybody's a spoiler, it's major-party candidates like Bill Bradbury, our current Democratic Secretary of State, who work to pass legislation against the participation of third parties."

The May 3 Forum on Election Integrity is a cooperative forum of six different election integrity advocate groups promoting the issues of electoral accountability, reliability, and accessibility.  Seth Woolley is the Secretary of the Pacific Green Party of Oregon and is seeking the Pacific Green Party nomination for Secretary of State of Oregon.

Woolley's published statement follows:

In the U.S. today, the spoiler fear is so entrenched into the American Psyche thanks to the two-party duopoly's propaganda campaign similar to other totalitarian governments.  In Soviet America, you're given up to two choices for election, two pre-selected candidates with major funding and the Republicratic apparatchiki behind them.  Not voting for one of those two candidates (if there's even a contest) is  tantamount to treason in the eyes of either party.  It's simply "unamerican".

No, it's totalitiarian.  We must, as a people get over the Fear, Uncertainty, and Doubt campaign of the major parties, to vote our hopes and not our fears.

Yes, we can fix the problem.  We can eliminate the two-party stranglehold where debate has a focus on one issue that both parties can go along with.  How?  Eliminate the spoiler effect and implement Instant Runoff Voting (a form of Preference Voting), which has been Constitutionally enabled in the Oregon Constitution in Article II Section 16 for one hundred years.  Passed by Oregon voters in 1908 through the initiative process, now is the time we can choose to overcome the problem of voting for the lesser of two evils.  We can work to pass Instant Runoff Voting in the legislature, work to implement it with a ballot measure initiative, or just demand that our Secretary of State overcome the bipartisan agreement that the idea that the voters' preferences are not how to count public support for our representatives and directly implement, or even just allow at a local level, Instant Runoff Voting, where voters can specify their preferences so that candidates MUST get a majority of the people's preference.

Ironically, there was going to be a forum where the Secretary of State candidates could discuss the issues of opening up the process.

But it turned out not to be the case -- only the duopoly's candidates could discuss the issues.  Why?  "Lack of time to get buy in from the other candidates."  So, I, as a third party candidate, am left out of the debate, as usual.

It didn't look all so bad.

At first, the Pacific Green Party chose to endorse the election integrity forum.  Then we heard minor party candidates weren't going to be included on stage with the other candidates seeking their party's nomination.  After trying to address the issue with the organizers, the Pacific Green Party's State Coordinating Committee was left with no other choice but to unanimously rescind its endorsement of the event.

Honestly, I think the organizers are very well-intended people and I'm 100% behind the issues being presented getting their fair hearing with the all SOS candidates, but they let the issue of my lack of inclusion fester unresolved for long enough that once they realized it was an injustice they didn't feel they had time to go back to the candidates and tell them minor party candidates could be included.

The party recognized, correctly, that lack of time was just a cop-out. The so-called 'spoiler' issue has, as we see, worked to prevent participation even within groups knowledgeable about the problem of leaving out diverse voices.  If anybody's a spoiler, it's major-party candidates like Bill Bradbury, our current Democratic Secretary of State, who work to pass legislation against the participation of third parties.

Read more about the issues in my platform document, published here on this website, and then, send a message that enough is enough: vote for me for Secretary of State as a protest vote that you aren't being heard.

Even more importantly, It's not really an issue of "spoiling" the election in this case -- the Democrats and Republicans both have a history of abusing this office equally.  There's no "lesser evil" candidate to vote for.

Vote Seth for SOS -- help end the two-party system in Oregon.

Seth Woolley's Blog Seth4SOS

secretary of state(7)

Seth Woolley

Seth Woolley, Pacific Green for Secretary of State

The Secretary of State (SoS) is an important part of Oregon's Democracy. The SoS manages our elections, handles government corporation filings, sits on the State Land Board, manages the state computer systems, and performs auditing of state government.

The Democratic Party's control of the Secretary of State's office in recent times has proved to be hostile to democracy and transparency despite their public posturing. I outline in my detailed platform below problems that can be solved immediately with a change in leadership and ideas that can carry us toward more progressive, systematic reforms.

Immediately we can enact Preference Voting in the form of Instant Runoff Voting to eliminate the so-called spoiler effect, which is already enabled by our Constitution in Article 2, Section 16, but in the long run the most important position of the Secretary of State will be as a public advocate for openness, accessibility, and accountability. Issues like Campaign Finance Reform being ignored, despite the will of the people, and the reckless and often illegal violations of the right of voters to see independent or third-party candidates on the ballot should not go rewarded by electing more of the same two-party power-brokering candidates.

If you've ever had a reason to vote third party, now is the time. I invite you to read my platform and have the hope and faith that together, we can make a better world possible by breaking the chain of the status quo by voting for me, Seth Woolley, Pacific Green for Oregon Secretary of State.


"My job is to comfort the disturbed, and disturb the comfortable." -- Clarence Darrow

"The known is finite, the unknown infinite; intellectually we stand on an islet in the midst of in illimitable ocean of inexplicability. Our business in every generation is to reclaim a little more land." -- Thomas Henry Huxley

"Three passions, simple but overwhelmingly strong, have governed my life: the longing for love, the search for knowledge, and unbearable pity for the suffering of mankind." -- Bertrand Russell


Any Pacific Green Secretary of State of Oregon candidacy should apply the GPUS Ten Key Values and International Green Four Pillars to the requirements of the position. The following are corollary:

  • Elections should ensure that:
    • Representatives accurately reflect the electorate.
    • The initiative process is protected and viable.
    • Special and large-money interests are curtailed.
  • Auditing power should be open and decentralized: full transparency.
  • Sustainable use and protection of resources while on the Land Board.

Platform Contents

To those principles, the following platform derives itself.

  • Preference Voting e.g. Instant Runoff Voting
    • No Fusion instead of IRV, doesn't improve diversity
    • No Top-two false "open primary", gerrymanders and hurts diversity
  • Initiative Process must be made easier with true finance limits
  • Ballot Access should be more open
    • Affiliated voters must be able to nominate non-affiliated candidates
    • Funded primaries for minor parties with IRV
  • Legislative Redistricting
  • Further Systematic Election Method Reforms
    • Same Day Registration
    • Proportional Representation
    • Single-Transferable Voting for House
    • Condercet Voting for Governor
    • Instant Runoff Voting for Senate and other statewide offices
    • Binding None of the Above Voting
  • Alternative Systematic Reforms
    • Range Voting
    • Party Ballot-line Proportional Representation Voting
  • Election Reforms Regarding Ethical Elections
    • Campaign Finance Reform
    • Public Financing
    • Campaign Reporting
  • No More Black Box Voting
    • Open Source voting software and processes
    • Statistical sampling needs improvement
    • Paper ballots are good but not enough for full verification
  • Auditing and Central Computer System Administration
    • Central Computer Administration
    • Reducing the government's paper footprint
    • Identify exemptions we don't need
  • Represent All of Oregon
  • Land Board and Schools
  • Civic Education
    • "Youth" civic education
  • Corporations Division
  • Separation of Church and State
  • Bradbury and Brown represent partisan politics at its worst

Take-home message -- Why VOTE for SETH and the PACIFIC GREEN PARTY?

  • Campaign Benchmarks are gradual
    • Send a powerful message that voting for "the winner" cannot
    • Help maintain ballot status for future Greens and grow the party
  • Greens CAN and DO affect change
  • Register Green, Vote Green -- for your future

Detailed Platform


Below, you find my detailed platform. It's full of ideas and information.

I'm also open to discussion and more information. Until I get a forum setup, please send me email (seth at with ideas with a mind for both criticism and suggestion. One of the nice things about not being part of the power-elite is that I don't have a source of power other than from individual activists like you, so I can improve my platform and path, rather than being locked into one set by puppetteering power-brokers.

Preference Voting (e.g. Instant Runoff Voting)

Preference Voting is a Good Thing

The Secretary of State's office, under Democratic Leadership, has been illegally misleading legislators, the public, and local jurisdictions, in violation of Article II Section 16 of the Oregon Constitution, that Preference Voting requires "enabling legislation". Even if the SoS felt that state law that requires plurality for elections contradicts preference voting and would require a law change, it is merely the responsibility of the legislature to change the law to become compliant with the Constitution. No enabling legislation is first required.

Not only do they disagree about enabling legislation, they think that the Democratically-controlled legislature doesn't have the political will to change it.

But what's even worse is that they warned local jurisdictions that they would be sued by the state. Note that it is the purview of the Secretary of State themselves to pass off election law issues to the Attorney General!

That the Secretary of State's office misunderstands the key role of our Constitution isn't the problem. They aren't that dumb. They understand, actually, that preference voting would serve to fix the "spoiler" issue that enables them to manufacture consent for the two-party system. Such behavior is unethical and immoral.

We must be allowed to express our preferences accurately through being able to rank candidates like we've been "enabled" to do since 1908 when Oregonians enabled it in the first place. We've seen spoiled elections with Perot and Nader and even Kulongowski. When will we decide that the people's preferences actually matter when it comes to electing representatives?

The Democratic Party of Oregon supposedly supports IRV in its own platform! That was a nice platitude, but it doesn't actually fix the problem. We need action now and none of the existing candidates dare talk about this issue, although Rick Metsger seems to have shown some willingness to consider it. It now also appears that Kate Brown, also in private, "likes the idea". We need to keep the pressure on to make sure that actions follow words to completion. (c.f. HB 2761, Peter Buckley)\
documents an example exchange with Greens working on the Ashland Charter Review Committee and the Secretary of State's office if you'd like to read more about the issue.

To see Bills previously introduced in the House and Senate by a Pacific Green in 2001 that were ignored in the legislature:\

Preference voting also saves money in the case of running non-partisan elections (you can skip the primary). You'd still need to allow parties to select their own candidates for partisan races.

Fusion is NOT a replacement for IRV

Fusion voting is NOT Proportional Representation. Brown thinks that Fusion will help third parties. Fusion voting prevents third parties from having their own slate of candidates distinct from the major parties. Look at the failure of fusion voting where it's been used (New York, for example). There are no real third parties at the table. It's just a way to allow people to pick slates based on the already existing and nominated candidates. Nobody's incentivized to participate in third parties other than as an endorsement vehicle. Guess what? The Democrats and Republicans are so alike, why would we desire to join that debacle? What we want to do is to add new ideas, not to say which existing ideas we want to support! Of course Brown wants to "consider it". It's another waste of time that gets us nowhere.

That being said, as long as parties could choose whether or not to participate in such a system by their own choice, other parties could choose fusion as their own endorsement vehicle, but the Pacific Green Party generally and historically does not believe in endorsing members of other parties. But be sure that fusion is NOT a complete solution to the spoiler problem.

Phil Keisling's Top-two "open primary" is a BAD thing

A top-two "open primary" would relegate minor party candidates to the primaries and it would also prevent parties from voting on selecting their own candidates. The second a violation of freedom of association in general by allowing people to state the affiliation by which they will appear on the general election ballot without the party being able to ensure they match their principles without a primary filter and the first is a violation of our right to run candidates in the general election. It doesn't solve the "two-party" system problem at all, it just assumes a Hegelian view of the world where everything is merely a dichotomy. The top "two" still get to the end, and in most jurisdictions it will just be two members of the same party. It's effectively a form of gerrymandering.

Initiative Process

Democrats want to eliminate our form of direct democracy because it might replace them or make them irrelevant. The initiative process is a critical part of the state's functioning. Yes, there are issues with it as it stands, but the issues have more to do with a lack of campaign limits (foreign and large donations from special interests) and public financing than they do with the idea itself. They would like to raise signature limits for constitutional changes, preventing the people's completely circumventing the legislature when it fails to act, like on Death with Dignity, Campaign Finance Reform, or Medical Marijuana, for example.

Right now I rarely run into signature gatherers who are true volunteers. Instead we need to ban all payment for signatures -- yes, even hourly, and correspondingly lower the signature requirements. Perhaps the best algorithm is to take the top ten signature gatherers above a certain low threshold so as to self-balance the process.

Ballot Access

Independent elector nominations not allowing registered members

The Democratic Secretary of State's office has failed to follow through with its obligation to provide open access to the ballot. The Secretary of State legally has rather loose rules for himself to put candidates on the ballot, but when third party or non-affiliated candidates desire ballot access, Bradbury worked hard to prevent it, violating the sacred trust his constitutents placed with him by electing him to administer our elections in the first place.

Eliminating the ability of voters in a primary to approve an independent elector nomination is absurd on its face -- non-affiliated campaigns provide a powerful check against party corruption and it is a violation of the right to free association to prevent people from getting candidates on the ballot that represent them. Rick Metsger is now airing television ads criticizing the other Democratic candidates for voting for this blatant power-grab (though Walker now admits it was a flawed vote). HB2614(2005). Third parties (in particular the Independent Party, who helped activist Greg Wasson sue the state, c.f. ) have also rightly criticized the law even though it doesn't directly apply to them -- although it was the reason for Linda Williams and Dan Meek creating the Independent Party of Oregon, in the first place -- Nader supporters could no longer get him on the ballot outside the Green Party, which was interested in running more progressive candidates than Nader.

Note the complete contradiction that is present when Brown talks about supporting "fusion" voting, which would blur the same party distinctions that she championed as her rationale for preventing registered party members from nominating non-affiliated candidates for public office. I don't like fusion voting myself because it prevents third parties from having its own slate of candidates distinct from the major parties, but there's no reason why we should prevent a non-affiliated candidate from registering their support from the entire population of Oregon. There simply is no "non-affiliated party" that can be "harmed" by allowing non-affiliated candidates from running. In fact, since more than one non-affiliated candidates may appear on the general election ballot and electors may sign as many petitions as desired, there's even no harm done there, too.

What it really comes down to is that Brown and Bradbury are merely trying to punish independent candidates when the true fix is to support Preference Voting such as Instant-Runoff Voting or Condercet Voting that prevent third parties and non-affiliated candidates from introducing non-majoritarian inconsistencies when they attempt to run for office.

Brown herself seems to confuse non-affiliated voters with the new Independent Party, which as I mentioned was created to work around the unreasonably restrictive changes in independent elector nominations in the first place. She seems to think that all non-affiliated candidates should just seek to run on the same ballot line in the same party as Nader just to have access. That's another violation of freedom of association -- freedom to not have to associate. The whole debacle now even more confuses voters.

It was simply a huge mistake all in the name of preventing access to the ballot to legitimate candidates as a form of over-reaching party protectionism.

Funded primaries for minor parties

In this age of computerized printing, it's absurd that minor parties have to pay for their own separate process for nominating candidates. Everybody registered with a minor party receives a generic non-partisan ballot. Well, they actually do have a party. Other states don't seem to have such a problem as we do. We need to modernize and provide the same level of service to minor parties that we do to major parties, otherwise it's subsidizing major parties unequally. The cost to send out the ballot is virtually identical and drains the coffers of minor parties. We know how to leverage economies of scale here and the technology is already there -- provide state-run primaries for minor parties. Also, making state-funded primaries would enable minor parties to use more creative election methods such as IRV. Oregon voters thought we could do it in 1908 when they passed a constitutional amendment to enable it.

Legislative Redistricting

Senator Brown is prepared to lead the gerrymandering-as-usual. She already has experience with federal redistricting and has shown to be able to get her plans through the legal process of the courts. The sad state of affairs with how the federal districts are split up is a prime example of how not to lay out districts. We've now got one contested seat (Hooley's) out of five. 80% of the electorate is now left out of the congressional debate.

I think it's clear that if a Green is elected for the Secretary of State that gerrymandering districts to promote one party over another would finally be eliminated. I don't think I could trust Brown in particular, as she's time and again discovered that her power comes from the party machinery and its core backers, not from the general electorate.

Unlike any of the other candidates, I'm a spatial data expert. I can ensure that districts are derived programmatically based on criteria we can all agree on through consensus, without regard to the no-nos of gerrymandering, and that do follow more natural boundaries that are easy to understand.

Systematic Election Reform

Note that these reforms below are often not immediately enabled and I'd advocate for enabling legislation for some of them at the state level. I believe it's possible just to implement, for example, IRV through an administrative rule since it doesn't violate any existing laws (yes, even the plurality requirement in my judgement). Though, to be realistic, if I'm not elected, state-level IRV would have to be mandated through, for example, legislature or ballot measure initiative.

I'd be most active, at first, with allowing the local option for IRV on a trial basis, developing the knowledge, software (open source, of course) processes, and procedures to further expand the program until we can run a state-wide IRV-based election later on, but one of the easiest accessiblity reforms is really just a minor tweak -- reinstating same day registration.

Same Day Registration

Same day registration was eliminated to protect against same-day residency changes from throwing rural elections. The better fix was to require 21-day residency before registration while still allowing same-day registration. The more people vote, the better, and this is one way to immediately raise turnout. The Green Party's own processes allow same-day registration for nominations.

Proportional Representation

To enable true representation we'd take our fake-bicameral system and turn the house into a proportional representative body with ten regional districts of six at-large members elected through Single-Transferable Voting. No parties need be involved and the anathema of partisanism is allayed.

Single-Transferable Voting

Single-transferable Voting (STV) is a Proportional Representation system that involves ranking candidates. Getting enough first-place votes above the threshold (one out of the number of seats plus one) qualifies you as elected immediately. If there aren't enough people elected in the first round, the overvotes to those elected are fractioned and transferred to the next preferred person. When repeating overvote down-transfering, the last place person is removed and anybody who was voting for them has their next preference voted for. The process is repeated until all seats are filled. It creates proportional representation because any candidate with 14% preference can be elected instead of requiring 50%. It also goes against people who are "generally" agreeable and refuse to elucidate what they believe because they don't want to be politically-incorrect because it's those who have a strong base of support that get elected, not those who just shook hands and kissed babies and said the right things with lots of money. That's what Condercet voting biases toward. STV is a "superset" of Instant-Runoff Voting (IRV). think of IRV as a form of STV but with only one elected candidate.

We'd leave the Senate as a regional-representative body of 30 members of 30 districts as a check, with Instant-Runoff Voting to ensure they are majority-selected but representative of strong interests within each region. See also the section below on Party-line PR.

Condercet Voting

I'd then use Condercet Voting for the governorship to ensure that the governor represents everybody most accurately. Condercet Voting is where you use a computer to evaluate ranked preferences (first, second, etc.) by exploring all permutations of candidates and count who wins the most elections. It elects the most generally favorable and is monotonic (unlike IRV/STV). Monotonicity is a property of elections systems where placing a candidate higher in the preference never hurts the candidate's chance of getting elected. See also the section below on Range Voting.

Instant Runoff Voting

Lastly, I'd use IRV for state-wide elections other than the governor. That way, candidates who are most passionate about using the office for its particular purpose get elected, and not smiley-gladhand-types that Condercet would bias toward (like the Governor).

Binding None of the Above Voting

If candidates are forced to work against "none-of-the-above", when combined with preference voting, negative campaigning can be virtually eliminated. Particularly as part of the general election, none-of-the-above should be a required option to ensure that the people can reject all the candidates and finally get somebody that truly represents them. People historically unlikely to run because of vitriolic campaigns may be more likely to put themselves up for civic participation if they realize the voters do have an option to really express their preferences without having to worry about the Fear, Uncertainty, and Doubt surrounding business-as-usual politics.

None-of-the-above also works well with preference voting such as STV and IRV by never eliminating a fake "none-of-the-below" candidate in a preference scale for each ballot. That way, anybody below that line can never use the preferences underneath it to gain elected office and a new election is called to fill any remaining seats left afterwards.

Alternative Systematic Reforms

Here are a couple ideas that I think are also interesting and could be done as part of a more long-term systematic reform or may be used in place of some of my proposals above, but don't fit exactly into the platform above.

Range Voting

Range Voting is where you rank candidates from a scale (say, 1 to 10) instead of by decreasing preference, which is already allowed by our constitution. Due to the language, I'm unsure if range voting would qualify under our Constitution, but one could certainly argue that it does. Most of the benefits of range voting are a combination of Condercet voting and Instant Runoff Voting. Range voting is not a form of proportional representation and won't bias toward the person with the most support of a passionate majority (in that it maintains monotonicity), bug rather it would bias toward those who are generally favorable as in Condercet Voting. However, Range voting has been shown to exhibit "least bayesian regret" (c.f. my slashdot submitted article: ). It's also rather easy to count (just add it up, similar to approval voting, but with gradations). The only substantial reason to not do IRV and do Range voting instead is if you are not seeking proportional representation and you're not using a system of none-of-the-below. Without an elimination option, IRV ballot spoilage is more likely (people will simply not place their disfavored on the ballot, which is kinda a roundabout way of getting disfavor) so it's hard to determine whether or not there's substantial negative sentiment toward the winner if they win in very late rounds (which is exceedingly rare but plausible). Range Voting as a non-proportional system is rather inferior for multiple-seat elections in portraying and representing the electorate.

Party Ballot-line Proportional Representation Voting

Party-line voting is where parties select a slate from first through the number of seats available and voters cast votes for parties directly. Preferences are limited to what can be expressed through unique parties. This tends to work once parties become more established. I like single-transferable voting (STV, described above) voting to more directly select representatives, though, because there's also a say in what order the reps show up at the same vote. In a party-line vote, the same representative order function can be computed by a partisan primary using range voting or STV within the parties. Party-ballot with STV is already "enabled" by the Constitution, but it would require a constitutional amendment to, for example, make the house selected by party-line voting as in the proposed initiative text for Oregon archived at\
(Greens like Blair Bobier were influential in this campaign back in '97 as well).

Election Reforms Regarding Ethical Elections

Campaign Finance Reform

Oregon voters have time and again voted for campaign finance regulations only to have them thwarted by a complex misinterpretation of the Oregon Constitution that has through the court system equated money with speech. The legislature, however, has been unwilling to act to remedy the situation itself by referring a one-line constitutional change to the voters (money is not speech) to the voters with its endorsement. The existing swath of candidates has talked a little about enabling it, finally, so we can catch up with the rest of the US in this regard, but nobody has made it a core issue of theirs. Third parties (members of the Pacific Green Party and the Independent Party) have been instrumental in pushing for this popular change that the two major parties have been unable to come to terms with. It's time to elect a leader to the Secretary of State position who will support the systemic reforms we need to keep the Enrons and the Sizemores from legally (well, in Sizemore's case -- not so legally) bribing our public officials and public processes.

Public Financing

Public Financing of campaigns is another critical part of returning ownership of the electoral process to the voters, not to big-money. Corporate papers all over the state are trying to find ways to criticize Portland's experiment with voter-owned-elections, but the Secretary of State should be leading the way by learning from Portland's experience, improving it, and then implementing the lessons state-wide.

Campaign Reporting

Crippled by the Oregon Supreme Court's misinterpretation equating money with speech and being unwilling to actively support Oregon Constitutional changes to clarify the situation, Brown and Bradbury have made a system of legislation that requires fines and reporting and double-accounting to provide some sense of campaign openness. One side-effect of their red-tape creation is that it's prohibitive for small campaigns to effectively raise funds without hiring people to double-enter every transaction and to be personally liable for large fines for accidentally failing to report campaign contributions exactly as the law requires (it's not very simple as it is now).

The SoS already requires separate bank accounts and for one to file the bank account information with them. They also have a bank-like website, ORESTAR, where people have to then enter their information in. People have to be hired to enter or automate transactions details and it is almost prohibitive for a candidate to be their own treasurer due to all the paperwork (although now most of it is "on-line". Since I'm a Software Engineer with an ability to automate filings like this, it doesn't affect me as much, so I can be my own treasurer, but I can see that the bar is raised unreasonably high by extra red-tape.

Instead, the Secretary of State should just become a bank for those who choose to use them, where any funds going into it will be checked by their staff for compliance before even going in. The liability then is removed from the candidate, and it's much more simple for grassroots candidates to raise their own funds this way. Of course, Public Financing will help make this solution moot, but as a backup plan, I don't see why it won't make everybody's life easier. The SoS can then use the interest on the account to help pay for its administration just as regular banks do.

No More Black Box Voting

Open Source voting software and processes

As a software engineer in both proprietary / open source software, computer security researcher / auditor, and elections administrator, I've kept up on the technical issues with voting machines and verification processes used in elections. To ensure openness and transparency of our elections, we need to shift to more fundamentally secure systems in the vein of Kerckhoffs' principle, that anybody who knows how the system works will be unable to exploit it if it's designed properly.

Statistical sampling needs improvement

Even though we use all paper ballots in our trendsetting vote-by-mail system, the Diebolds and the Sequoias still end up counting our votes, plus, as has been pointed out by the Oregon Voter Rights Coalition, the sampling used to verify those systems is nowhere near a precision that can mathematically thwart systemic election fraud or software bugs.

Paper ballots are good but not enough for full verification

A further issue remains with our vote-by-mail system. While at least there is a paper record, the process by which ballots are sent out and returned is far from secure and depends upon security by fine and fiat.

The vote-by-mail system is overall a good thing for improving the accessibility of our democracy, however, and I would propose changes to improve it, not scrap it.

Using the mathematics of asymmetric encryption which uses public-private key encryption and digital signatures, like FIPS PKCS (Federal Information Processing Standard Public Key Cryptography System) or Matt Zimmerman's PGP (Pretty Good Privacy), which is now an IETF (Internet Engineering Task Force) standard with OpenPGP, we can study how to use computers to ensure transport of our vote, and even the proper counting of the vote. The GNU/Linux distribution I volunteer for uses a voting system I helped design that uses end-to-end encryption and full-publicly-auditable digital signatures to ensure that the votes are counted, regardless of the desires of the vote counter itself while still maintaining a secret ballot. See for my short program that creates anonymous receipts in a PGP ballot system and for its framework.

Additionally, it's possible to ensure that only the vote counter (which can be fully automated) can know the identity of the votes (and not the general public through their own receipts) while still ensuring an independently verifiable vote by incorporating an additional escrow key that's only released to election notaries who are responsible for verifying for the voters. The receipt signature is salted with the escrow key before being made public. Recounts can be performed by turning over the votes (untied to identity) and escrow key to an independent implementation and tabulated to double-check. Individuals may then approach an election notary with the escrow key to ensure at least their vote was counted accurately. That adds some complexity but has protections for both the voter and the vote counter (to ensure the voter doesn't sell their vote, which would only be possible with the collusion of a notary and the leak of the escrow key). Preventing the leak of the escrow key can be done by certifying escrow key management implementations and maintaining them under tight security so that even notaries don't have to have it, but instead use their own public/private key system to authenticate with the secure notaries. It's even possible to split the escrow key up into many portions and distribute unique escrow keys to each notary who are then responsible for recounting a different portion of the vote. The recount allocations may be doubled and overlapped so as to prevent a single notary from falsifying their certifications.

The technology is already here to do full verification of elections to ensure no votes are ever miscounted, but it will take some time to get there. The processes need to be designed and vetted and made open. The implementations need years of open certification time to ensure proper peer review, and trial runs need to be executed to work out usability kinks and to familiarize voters gradually to enable work out public acceptance.

It's unfortunate extremely poorly-designed computer voting systems have ruined the reputation of the power of mathematics for those not experts in the field. For now we must rely on paper-verifiable and recountable ballots with proper statistical sampling to ensure the integrity of our elections.

Auditing and Central Computer System Administration

In the tradition of ORESTAR, but much better implemented, we need to open up access to all branches of government. Walker came up with some great political ideas here, like requiring individual branches of government to pay for their own audits, but we need to go further.

My professional experience performing computer security auditing informs how I would do audits. Right now the state has only a couple dozen people responsible for tracking the entire state's budget. We need to help those people perform their job better by opening up budget information in an open fashion. We shouldn't require a request to trigger an opening up of data. All of government's functions can be made open and accessible (except for uniquely identifiable information, which the existing government auditors would have sole access to). We'd then put a small bounty on finding ways to identify waste. Just like the bottle bill that incentized people to pick up litter, even when they weren't the ones littering because of the inherent value of the trash, I'd allow people to make a reasonable living rooting out problems and inefficiencies in government. Any waste-hunter may file reports with the auditors, who would then review it with a committee with other waste-hunters, which would then lead to peer-reviewed proposals for resolution that would be given to the ways and means chair for consideration. The media would be able to publicize waste proposals that weren't voted on and the SoS website would have a searchable interface and a breakdown of all potential sources of waste presented graphically by department or region. Here again I'd use my spatial data expertise to mash up the data into an easy-to-use and discoverable format.

Outside of confidential hiring and employee review matters, everything government does needs to be more open than it is now. I'm the only candidate qualified to really open up the process. Vicki Walker is probably the best mainstream candidate to fill this role, but I think I can do it better.

Central Computer Administration

The Secretary of State also administers the computer systems for the state government. I'm the only candidate (other than Wells, who is running a ballot-statement-only campaign in the Democratic Primary and thus who I won't be challenging in the general election) who has any substantive computer technology experience. Over Wells, though, I have administration experience in mission-critical (e.g. health care) and large installs (national laboratories). I've worked with everything from supercomputing hardware used for nuclear munitions testing, oil and gas exploration, and digital animation, to writing core engine code for the technology that powers most of the Internet and cellular mapping applications. In working for the State of Oregon, I'd essentially be getting a pay cut as well, so you know I'm definitely not in it for the pay. I've been contacted by the State's recruiters to work in an analyst capacity for the State, but I'm already employed and was considering running for this office so I didn't pursue it.

Reducing the government's paper footprint

The Secretary of State's office publishes most of the paper put out by the state government. As Secretary of State, I'd ensure that staff and the public should be able to do as much work on-line, without fax machines and mass printouts as possible. Paper is still a very important backup system for certain kinds of static data, but where possible, decentralized electronic backup systems would be the norm as long as the carbon footprint of the computers underweighed the paper carbon footprint.

Identifying Exemptions We Don't Need

As auditor, it would be my duty to find and point out problems in the tax code. Here are just a few examples.

Property tax exemptions that can be removed:

  • Religions shall not be subsidized by the state, period. They must pay their fair share along with everybody who doesn't want to go to a church. I would strike the exemption of 307.140 Property of religious organizations.  If an organization wants to keep their tax exemption they can become true non-profits and be subject to the corpus of law surrounding transparency and anti-discrimination for real non-profits.
  • Likewise, 307.136 Property of fraternal organizations. Why are we subsidizing exclusivistic clubs of old white men?  Seriously!  Federal tax code allows fraternal organizations to participate in religious exclusivism and still get tax exemptions.  Not on our property tax dimes anymore, I say.
  • And here, Paul Allen has enough money as it is: 307.171 Sports facility owned by large city. Any sports facility owned by a city with a population of at least 500,000 is exempt from taxation, even if leased to or operated by a taxpaying entity.
  • Exemptions for higher education facilities and schools which require religious instruction that are exempted by e.g. 307.145 and 307.195 would be taken away. If you want to proselytize, it shall not be subsidized by people of other religions.
  • Exemptions would be removed related to the military reserve portion of of those persons actively deployed in wars of aggression such as Iraq and Afghanistan under 307.286 Homestead exemption for Oregon National Guard, military reserve forces or organized militia of any other state or territory of the United States in active deployment.
  • No corresponding exemption for homeowners improving their own homes, so I'd remove this: 307.330 Commercial facilities under construction.

I'm sure if that got added up, we'd save millions and also force the sale of many unreasonably protected buildings for better purposes. Some of our most valuable property is held by old institutions getting an undeserved free ride, often in violation of the first and fourteenth amendment rights of others.

Income tax is another beast in itself, and most of my issues with the local tax code I cover further down under the Separation of Church and State that deal with closing the loophole for religious institutions -- especially those performing political lobbying.

Representing all of Oregon

Currently, there are no young people represented at the state level. All my competitors have been politicking for twenty or thirty years in the public limelight (yes, even the Republican, even though he likes to think he's some "Average Joe", when he's really just been a "mouthpiece" for the corporate media). Instead, you can choose an activist experienced with research and development and automation who is not afraid to talk openly and honestly about relevant issues in order to directly solve problems. Think about it -- we have three television reporters (Rick Dancer, Rick Metsger, and Bill Bradbury himself) -- are we really so sheep-like that we vote for the talking-heads on television? I know Governor Tom McCall wasn't a bad pick (he also was a TV reporter), but seriously, let's be at least a little more creative.

I may live in the city and bike to work, but most people don't realize I'm also a big game hunter, familiar with firearms, and was raised by mixed-party parents in exurban schools in the Pacific Northwest (Vicki Walker's birthtown of Monroe, WA). My father grew up on a farm in Minnesota to become a fourth grade teacher and a truck driver trainer and my mom is an elementary school secretary who's been elected to the local park board (up in Monroe). They taught me the family values they grew up with from the blue collar life of my maternal side to the agricultural life of my paternal side. At no time was I taught the life of the lawyering or teleprompter-reading power-brokers politicos of today's political climate in Oregon.

Land Board and Schools

The State Land Board is a trust for Education that the SoS sits on. You can read about it here:

One thing to note is that Senator Walker wants to use the State Land Board to: "Encourage further exploration of creative projects and public-private partnerships to develop destination resorts and planned communities on state trust and in-lieu lands in Central Oregon and other high-growth areas of the state, such as the Stevens Road Tract." and to "Encourage the production of alternative energy on state trust lands and utilize Article XI-D of the Oregon Constitution to help develop these projects."

First, Green policy would require that we privatize as little as possible -- full ownership of profits would be how to maximize revenue for schools. Secondly, Article XI-D does not enable alternative energy, just hydroelectric power. Greens don't advocate the use of hydroelectric build-outs, particularly on streams where salmon spawn. I'm unsure why Article XI-D is even needed for such alternative energy investment in any case. On land suitable, wind power and solar-hydrothermal power may be very profitable, but we should be careful not to impact environmentally-sensitive areas, and I'd see how much land can be used for environmental education and enjoyment with impact-fees assessed to provide profit for the schools.

Additionally, Walker wants to increase the corporate tax for schools, but I wouldn't advocate an increase in the corporate tax unless it applied only to foreign corporations and we taxed the profits and losses directly in the state as an alternative computation. Corporations should never be able to use interrelationships between foreign and our own tax structures as shelters to avoid paying taxes on profits extracted from Oregonians. Money should stay in Oregon whenever possible. We shouldn't increase the corporate minimum tax because it can hurt small businesses just trying to get a start. Instead we should repair it so that it affects businesses that do make profits -- or whose executives make egregious salaries as an alternative form of profits.

Civic Education

On the issue of Civic education, Metsger is correct that we're woefully undereducating Oregonians about the political process. In just one example of how astonishingly dumb our state can be about on-line access:\

If we're required to know the law, and yet we're unable to communicate the law to others verbatim -- there's a real problem of justice. Require an "as-of" date or require its being up-to-date or some other such requirement, but not allowing other websites to place the laws on-line in a more accessible way runs counter to modern notions of education.

"Youth" civic education

Brown has suggested that we text message young people with "civic" education. First, I would make sure we require telcos make these free messages as part of the franchise fee for operating within our borders, and second, we'd have to have a way to opt in to such messages depending upon the type or source.

I find it a little humorous that a bunch of late-forties and early-fifties people (a generation older than me as I'm approaching my late twenties) are trying to figure out how to get young people involved. The Green registration numbers show that an astonishing number of new registrants are in the 18-29 age group. Perhaps they could try to be more frank and progressive to try to get interest. Perhaps they could shine a little light and hope into the process by not being such sticks in the mud about new ideas. Perhaps they need to visit high schools for once. Walker would have us give graduates from high school a registration card as part of their matriculation. Guess what? Most kids turn 18 their senior year and should already be registered. In fact, we're allowed to be registered here while we're 17 in preparation for being 18. We could also lower the voting age to 16 for certain elections to make high schools a viable place to get the vote out. Perhaps legislators could have Hawaiian t-shirt Fridays or something along those lines. Same-day registration and on-line communication with legislators where people can see how their messages align with others' communications and discussion forums rather than "committee meetings" where you have to drive to Salem to be heard would help. Think-social-networking instead of think-of-the-children.

Also, elected officials don't realize that the young age group is a lot more educated and aware than their own generation, particularly with regard to cynicism about the process. Wikipedia is the new television. Interests are a lot more diverse. The Information Age is finally coming to fruition. They just don't align with the old left-and-right debate anymore. It's much more nuanced, and dare I say, independent. To young people, Bush and the Republicans just want to send them off to war or tell them what they can and can't do or make education more expensive and the Democrats just want to prevent them from downloading music because it might hurt their Hollywood donors. Remember that it was Tipper Gore that championed the cause against explicit lyrics in music. Also, there's no trustworthy translation from legalese to titles. "No Child Left Behind" "Healthy Forests Initiative" "Patriot Act". The younger generation has learned not to trust any party.

They can't trust the Democrats to prevent rotten trade deals that lose factory jobs that might have helped them enter the middle class. They can't trust the Republicans to stay out of their lives. The Democrats can't even be trusted to get us out of a war despite their ability to defund it. Instead they have to wait for a power grab for the presidency. 98% of historians think Bush's Presidency is one of the worst in history and most think it's THE worst in history and the Democrats have nothing to muster but a preach-but-do-nothing "minister of hope" and a rigid attack-machine former Republican woman.

Everything exciting about politics has come from the ballot measure initiatives. Why? The legislature is the last place to expect real change anymore -- why do you think young people aren't paying attention to it? Maybe they are actually smarter than you think and it's not been worth their time for the lack of gains they see -- and that they are outnumbered by the old people messing everything up for them. Provide the ability to register and read about the candidates in an on-line system that's much easier to use than the one we have and perhaps we'd increase the youth turnout dramatically.

Corporations Division

As the administrator of the Corporations Division, the Secretary of State should champion legislation that calls for the revocation of state charters for law violations of corporations so that they are unable to do business in the state. Human or labor rights violations, political bribery, violations of tax abatement agreements, and other illegalities should permanently lead to a revocation of their corporate charters. Corporate personhood is a concept whose time was born of railroad robber baron corruption and now its time is here to die. Corporations must die if they gravely violate the law.

The corporation should be separate from the state, but only inasmuch as it it's a law-abiding member of society. Like a church may not violate the social contract by killing its members in ritual sacrifice, so too should not a corporation sacrifice the public on the altar of profits.


Separation of Church and State

The Secretary of State's office is in a unique position to champion the separation of church and state due to its control over both the Corporations and Elections Divisions. Similar to my stance on separating Corporation and State, it should be a paramount goal of the state to ensure that no church impedes the state's power of the state's affairs.

Lobbying government, supporting candidates, and other political activity of churches should nullify the church's tax abatements, which they should never have had in the first place, as they violate the wall of separation between church and state by being effective subsidies of religion. This is in line with Section 501(h)(5), relating to 501(d) churches, preventing churches from using section 4911 of the Federal Internal Revenue Code for lobbying expenses.

Even without that premise being established (as it's not the direct role of the Secretary of State, but perhaps the Secretary of Treasury), any church that leaves a non-profit mission and begins to advocate political changes effectively changes its mission from non-profit to "for-prophet" (another form of a for-profit entity, except a "for-prophet" entity is rooted in a deeper sense of hucksterism than corporations can manage: a gravity of false promises that extends its pseudo-reward-con-artistry to beyond the grave). With that change in behavior, candidates who accept such in-kind contributions as attending candidate forums that fail to document such in-kind contributions should be fined for failing to report under existing campaign finance openness requirements. Churches who are reported to be giving in-kind contributions to political candidates or campaigns shall have their non-profit corporation status revoked and they will be immediately liable for back-taxes covering the period when they changed their mission. If a church wants to participate in politics, expect it to file its own PAC and to pay property taxes just as any other non-relgious organization would be required to do. "no law" includes structural favoritism and government subsidies. Furthermore, if a 501(c)8 fraternal organization uses 501(i)1b, to discriminate based on religion, it should also be subject to revocation of its charter if it participates in section 4911 of the Federal Internal Revenue Code.

While it would be nice to close the loopholes federally, we can still close them at the state-level through charter revocation and adjustments to our own tax codes.

In addition, I'd leverage the Auditing Division to root out government grants awarded to faith-based institutions and have them flagged as examples of government waste as violations of the 1st and 14th amendments. Government payouts to faith-based entities are merely forms of subsidy to the churches who want it to appear that they are actually helping the community, when in fact, it's merely taxpayer money that is providing the basic services. If church members want to support a cause, they can file a separate organization with non-profit status that forbids any religious interfering with the mission. No proselytizing to receive the benefits of government subsidy, for example. No preventing access to valid medical procedures for religious reasons if you want to receive state subsidies, as well.

Bradbury represents the national DLC and DNC, not local Oregonians

Bill Bradbury, the current Secretary of State was a member of the Democratic Leadership Council (AKA New Democrats), a right-wing organization designed to move the Democratic Party from its base and try to steal confused swing voters while taking funds from corporate interests who would like to see a more Republican-lite Democratic Party. Currently he's a member of the Democratic National Committee and has superdelegate status. By participating in the Democratic Party's undemocratic superdelegate system, he's demonstrating that he doesn't truly believe in a one-person-one-vote system for candidate nominations, but rather, special status for party leaders, who get an extra vote that counts the same as tens of thousands of rank-and-file members. And this is the man and Party we've entrusted with our elections. It's time for change.

Bradbury and the DNC is being sued for violations of civil rights

Bradbury is currently being sued by Ralph Nader, et al. over clear violations of election law pertaining to preventing Nader from being on the 2004 ballot as an independent. While the Greens were not running Nader and still are not (Cynthia McKinney is doing rather well in the delegate counts for the Greens), Greens hold strong and fast to the idea that open access to the ballot is a critical part of the democratic process. Diversity of opinion is the bedrock of our democracy.

Bradbury changed requirements without giving campaigns time to meet new, arbitrary rules, and supported efforts to rig candidate nomination via convention by promoting unethical loopholes (stand-ins at independent elector conventions as well as independent elector signature sheet vandalism) that deprived a legitimate candidate of their right to be on the ballot.

Democratic Secretary of State Bradbury further had the power to right the wrong by fiat according to state law, but it was already his declared intent to find any way possible to deprive somebody of their well-earned right to be on the ballot. Were it not for a politicized Oregon Supreme Court that arbitrarily overturned the decisions of two lower courts in chastising Bradbury's behavior, Nader would have been on the ballot in 2004 in Oregon.

Kate Brown follows in Bradbury's mold

Senator Brown has been touting Bradbury as her mold to follow. She wants to follow in his successes. If that's the case, we can also expect more of the same failures of leadership.

Seth Woolley -- Pacific Green for Secretary of State

The spectre of another Bradbury prompted my run for Secretary of State.

I couldn't in good conscience let the Democrats, who tell us they're for the little guy, close up our election processes and sit in the halls of power without any checks on their accountability.

I've seen too many good ideas ignored by the self-proclaimed progressive Secretary of State for being "not politically viable". That's a lack of clear leadership. Part of the office is to be that leadership for Oregon, for our future, the future that my generation represents.

Campaign Benchmarks are gradual

Some people may be wondering what benefit a minor party candidate provides and why they should vote for one?

Send a powerful message that voting for "the winner" cannot

Every person who votes to spoil an election is another reason why we need election reform. Be that message. This is THE office where I CAN make a difference if elected. If you care about supporting minor parties AT ALL, THIS is your time to vote third party.

I go into this with no illusions, but I ask for your hope and faith that a better world is possible.

Help maintain ballot status for future Greens and grow the party

Oregon law has various benchmarks for a statewide races for candidates of minor parties. I'm likely the only statewide candidate for the Pacific Greens, so you have to vote for me to help the party out with these benchmarks. Please register with the Green Party to get involved, but even if you have not, you can still use the power of your vote to help the party.

  • 0.1% helps maintain ballot status for the next election
  • 1% helps maintain ballot status regardless of registration numbers
  • 5% would ensure that some of the Green's more palatable proposals are taken seriously
  • 15% would give the greens major party status and fully-funded primaries
  • 34% would be enough to elect me in a three way race if it's close
  • 51% would be enough to guarantee my election

Greens CAN and DO affect change

In 2004, I helped Teresa Keane get the largest percentage of any Green in a US Senate race (against Wyden and King) in a two month campaign on a platform emphasizing Universal Health Care.

Now Ron is advocating universal health care in a non-election year for him. That's just one recent example. Greens help CHANGE THE DEBATE. We make the ideas palatable so that the power structure can no longer ignore them.

Without third parties, we wouldn't have women's suffrage (right to vote), the civil rights movement (e.g. black panthers), the 40 hour work week and the labor movement (socialists like Eugene Debs), the end of slavery (with the Republican Party), the direct election of senators (used to be appointed by state legislators). Progressive and populist parties popped up and then had their ideas adopted by the major parties of the time, or they completely replaced another party.

Register Green, Vote Green -- for your future

If you haven't thought of registering Green, or you have but just didn't have a reason to -- now is the time. And remember, vote your conscience, not how people tell you to vote because of fear, uncertainty, or doubt created by the power-elite. Be your own voice for change. Realize that your actions transcend a single election. Look to the future, not the now. Together, we can make a better world possible.

Seth Woolley's Blog Seth4SOS

open letter to steve novick(0)

Steve Novick,

I'm the elections administrator of the Pacific Green Party of Oregon, and I've followed your campaign with interest. A number of our members have donated to your campaign as a strategy within the Democratic Party as a hedge that the Democratic Party will still restrict ballot accessibility and continue to suppress third parties. I know we both despise what the Democratic National Committee and their DLC/New Democrat-types have done to your party, and the Green Party has gained a lot of traction as a voice for those made voiceless by the DNC's corporate takeover, but if we can get a commitment that you'll champion Section 16 of the Oregon Constitution with your fellow Democrats, which enables preference voting and proportional representation, in particular, preference voting, perhaps the Greens can gain some traction in getting preference voting implemented at the local level. Bill Bradbury, our Democratic Secretary of State has been opposing our local campaigns vigorously to get things like IRV into local jurisdictions like cities and counties, and even a bill in the state legislature, which he was instrumental in killing.

I'm not old enough to run for U.S. Senate against the Dems, but I can find somebody who will, particularly if you fail in the primary.

If you're really part of the Democratic wing of the Democratic Party, then the Green Party needs your help to help keep the Democrats honest to their core values without having to force Democrats to "spoil" our elections against Republicans. As you know, if there are only two viable parties in a first-past-the-post system, they will get as close to indistinguishable as possible in an effort to grab the middle of the political gamut. That's basic game theory. A preference voting system would enable people like you to take back your own party. If you fail in this effort, know that the Green Party is here for people like you. We're the ones out trying to change the system so that people like you can get elected without being gamed by centrists.

I'll get to my point, though. We're inclined to stay out of the race if you win the primary, but if we don't hear anything from any of the candidates on the ideas of election reform, including you, we will run a candidate. Teresa Keane (I was on her campaign committee) got fifty thousand votes in a two month campaign against Ron Wyden and Al King. If it comes to it, we'll run another candidate and point out that we need election reform, now.

Regardless of what we believe in, without election reform to enable true representation of the people, regardless of view or party, nothing we believe in will get traction, because the game theory shows us that it's really just centrists that get elected and never any outside voices.

You've spent your life fighting for the little guy. Well, the little guy has no voice because Oregon won't enact Section 16 of the Oregon Constitution, which was put in place in 1908 to enable us to be truly representative. You can help by making it a part of your public view. You don't have to make press releases or anything, but if people view your website and it covers this issue, it would greatly help inform people of the eventual need to be more open and accessible about their voting system, without any of Phil's absurd open-primary lunacy.

Seth Woolley's Blog

Those who...(0)

Gubfr jub haqrefgnaq EBG13 ner qbbzrq gb ercrng vg.

Seth Woolley's Blog

hunger strike - temple of the dog(0)

There's just something about this song that touches a nerve for social change:

Seth Woolley's Blog

nader-mccain conspiracy(0)

I got sent this link:

He just had to bait me.

McCain got corporate money out of the candidate's hands, established hard money donation limits, and provided transparency to federal elections.

That was no small task.

And he sent a lawyer to help get a candidate on the ballot while the Democrats were trying to violate his first amendment rights.  They succeeded in Oregon and he's still suing them.  He's absolutely right to sue them.  They should be tried for treason.

Sounds like those were upstanding actions on McCain's part to me.  Why would Nader refuse either?

I didn't know about the indirect connection between Nader and McCain, but it's not really that big of a deal to me.  Don't forget that McCain is the only major party candidate with any anti-corruption and electoral reform credentials.  McCain might even be able to get Nader into the debates, particularly as an independent where there will be no long-term party-building happening?

Do you think then Democrats will finally understand that they need to fix the voting system?  And who better to help them do it than McCain, who's got the reputation to pull it off?  And with no mandate because Nader spoiled the election by a large portion, and with an even stronger Democratic congress as a result of Nader voters voting Democratic downticket, how's McCain going to be able to prosecute the war?

Oh, right, the Democrats will roll over and play dead like they've been doing the last two years.

McCain serves no risk to this country, even if he is elected "thanks to Nader".  It's the Democrats who will be the real culprits, as they are right now.  They could implement IRV with a stroke of a pen and their loss of the presidency wouldn't be so carved in stone.

There's no moral courage in the Democratic Party anymore.  It went to the Greens with Cynthia McKinney, who was redistricted, then open-primaried out of her district -- both actions of the DNC.  If you're pissed about Republicans helping somebody get elected, look at Cynthia McKinney's last primary.  The Democrats teamed with Republicans to open up the primary system so that tens of thousands of Republicans could vote against McKinney in her primary.

I didn't even get into the multi-hundred-point conspiracy lawsuit against the DNC in that much detail -- eleven points relating to the Oregon Democratic Party's successful attempt to violate Nader's first amendment rights.  Sections 69 and 167-177 in here:

Bipartisanism is ok for the Democrats, but getting help on your free speech campaign from a Republican with a small ounce of moral courage is not ok?

Seth Woolley's Blog

is obama green enough?(0)

The Black Commentator's Larry Pinkney:

It is both sad and simultaneously horribly fascinating to observe so many euphorically pinning their hopes and dreams on Barack Obama, a chameleon who speaks liberally of "change" but who is, himself, beholden to the very same blood-sucking corporate vampires (including Lockheed and others) who are ravaging the peoples of America, and the entire planet. It seems we have moved euphemistically from Dracula to a corporately repackaged Blackula in the person of Barack Obama. In the very name of "change", Obama is moving America euphorically backwards.

Me?  Cynthia McKinney offers real, structural change.  When Obama says he'll support structural changes in voting by mandating true, multi-party public financing of elections (making bribery truly illegal), proportional representation, instant-runoff or single-transferable voting, none-of-the-above voting, and Condercet voting, then he might be considered an advocate for real change.

Merely being publicly audacious does not change a man's true colors (no pun intended).  Being able to talk the talk is very different from walking the walk.

If you go to Project Vote Smart, you'll note that what Congress votes on is mostly superfluous to the real issues that affect people today.  True representation, true decentralization, true public financing of elections.  The two parties express their dissents in tokens of change.

Where has the Democratic Congress and Obama (DCO) been on Impeaching Bush?  Repealing Taft-Hartley?  Subsidizing Renewable Energy?  Repealing NCLB and the bankruptcy bill?  Single-payer Universal Health Care? High-speed rail and alternative transit?  Completely subsidizing college tuition?  Building and repairing schools?  Raising the estate tax to prevent the generational, unearned transfer of wealth?  Raising capital gains taxes and reducing payroll taxes?  A national minimum income?  An environmental/green CCC/WPA?  Ending the doctrine of corporate personhood?

Sending Bush, Rummy, Dick, Rove, and Condi to the Hague to stand trial for war-crimes?  But only after they've been jailed for grave constitutional violations?

When an issue comes up, like telecom immunity for complicity in constitutional violations (which is dubious in any case since legislative decrees cannot change the constitutionality of an act!), that we know will go the wrong way anyways, even in the Democratic Congress, Obama is the first to solidify his left-credentials.  However, he's the last to actually take meaningful action.  Obama is not Green in any sense.

If you want to see somebody take meaningful action to challenge the status quo, look at Cynthia McKinney, not Barack Obama: he's all talk.

Seth Woolley's Blog

carbon offsetting is a ruse(0)

the promise

By now you may have heard of "carbon offsetting".  Carbon offsetting is the use of a powerful new tool where you can purchase Certified(TM) carbon credits.  An industry that generates energy (such as, but not limited to, electric power) without carbon may, in effect, trade its right to call their energy carbon-emission-free.

In theory, if you're allowed to trade carbon credits (actually, carbon-emission credits, because carbon sequestering would be a credit as well), a use of carbon that is difficult to fix can buy an equal amount of carbon emission displacement, leveraging the economies of scale in, say, mass wind turbine deployment.

Sounds like a silver bullet, right?

the problems

The main problem with carbon credits is that the credit applies to the amount of CO2 released into the air that has been "avoided", however, those who purchase carbon credits for the purpose of carbon offsetting don't differentiate different types and uses of carbon.

For example, let's say you want to fly to Thailand.  The amount of carbon in the air can be "offset" with a purchase of a certain amount of wind energy production.  that wind energy production will be sold to the grid as non-renewable energy.

That's problem number one -- you have to have non-renewable energy purchasers to make the system viable who don't care that they just subsidized reducing your guilt-quotient.  This applies to all uses of the credit system.  I guess to enable you guys to feel better about yourself, I shouldn't buy the credits on my electricity bill.

Now, let's say you tell others you've offset the carbon from the airplane.  It cost like ten bucks to do this.  The fuel costs are actually closer to $150.  There's a 15:1 differential in this case between _market_ cost of the two types of carbon.  Not all uses of carbon are the same, and some are just more expensive than others.  This is a way to remove the guilt of a really expensive carbon at a cost less than the cost to actually display use of that very carbon use.  That's just market cost, not even cost-to-replace.

The real question should be, even if we assume that problem number one is no big deal for you, is did you actually offset the same type of carbon.  Did you pay for somebody's flight to Thailand on all renewable carbon?

Then there's the third issue.  Is the carbon a net carbon or a total carbon reduction?  How much carbon was used to build the wind turbines? That has to be taken into account, because if you don't, then you're using extra carbon just to create extra wind farms to handle your carbon credit purchase.  The amortized, full-cost of the carbon must be considered (many places to this, but the FTC is actually now beginning to step into the picture to see if this actually takes place).

There's a fourth issue as well -- that it has ponzi effects.  Let's say the entire world desires to offset its carbon and the entire electric grid has plenty of power all powered via renewable energy.  Because of the difference of "types" of carbon I mentioned earlier, now nobody can afford the carbon credits because they've now gone way up in price, since they aren't available anymore.  The windmill industry is making less and less money off of the turbines it has and is being forced to build new ones just to offset a continuing source of pollution.  So early adopters get cheap carbon credits and late adopters have to pay a larger amount for carbon credits unless we find more and more ways to offset carbon that end up being cheaper.

Then there's the fifth problem -- until carbon credits are actually classed by type of carbon, we won't be able to ever solve the problem of airplane travel by electricity from a windmill because there are other cheaper ways of doing carbon offsets.  Until carbon credit costs start approaching the cost of eliminating the native carbon, nobody will solve that problem, especially if oil just happened to be a very efficient use of that carbon.

And Sixthly, let's say you want to be direct about it and you'll promise to directly invest in a company that is going to work on solving the particular problem carbon that you're using:  Jet Fuel.  How do you price that?  Early adopter price?  Late adopter price?  In theory, the late adopter price.  But what will actually happen is that the company will charge the same rate down the road as it wants to make as much profit as the market will bear, so you're really not reducing the price for anybody down the road.  By them using the alternative, they've also justified (via the company's profit) the fact that you in the past used carbon.  Maybe that one-time cost is worth it, but all it means is you've transferred the guilt to another party even when the technology is available.  i.e. you've really offset nothing.

Seventhly, there's the problem that the accounting might require plastic components that aren't ever converted to CO2, but they still are extracted, pollute, and end up in landfills.  Is that carbon counted? Maybe it's counted "differently".  What about other forms of pollution that aren't carbon, let's say it releases a certain amount of arsenic into a stream while they make the wind turbines, or they use mercury cf's for lighting.  The offset creates an entire industry around it that potentially pollutes.  Are we only going to count CO2 emissions?

Eighthly, what if we do carbon sequestering -- you'll pay the cost of putting the carbon into the ground that you put into the air.  Better, but how sustainable is that?  Are you putting it into the ground (or sequestering) in a form identical to the type used such that it's extractable again with a cost less than or equal to the original extraction cost (considering all environmental costs of extraction too)? If not, we'll end up running out of a useful type of carbon quickly only to have a surplus of sequestered carbon that's perhaps not as useful as the old carbon and you've not properly accounted for that cost

Ninthly, so yeah, what about tree planting as a sequestering method? What was there before the tree, a field that was likely sequestering just as much carbon?  How do you know, did you check?  Is somebody going to come along and cut it again for the fuel or wood?  How do you track that wood to the end of its life so that never gets incinerated?

Al Gore at the end of all of his speeches says everybody in this room can be carbon neutral today if they just go to his website and buy some carbon credits for their entire life.  I looked at his credits and they look to be of the invest-then-sell-as-non-renewable type, which have all the problems mentioned here.

Whatever.  If we want to support carbon credits, we need to be realistic about what we're paying for, and then 50% of the world still needs to not care about polluting for it to work so they'll buy your pollution guilt.

We have, for eaxmple Volkswagen selling carbon credits for the first year or 15k miles of the car, and optionally more.  People who would otherwise ride their bike might be duped into buying and driving a Golf thinking they're not really contributing to global warming.

Carbon credits, as they exist today, are thus not an actual solution to any real problem.  They just transfer carbon-guilt to somebody else who just doesn't care about the problem.

the solutions

Reduce your use of carbon directly.  Pre-invest in technologies where you aren't using it as a guilt-transfer.  Develop sequestering technologies that are imminently usable in hard-carbon uses.  Convert hard-carbon uses into non-carbon-requiring technologies such as electricity, then use renewable energy directly to power your electricity.  Pay for windmills that directly replace your local coal power plant and buy that power (so that you're not leveraging regional wind differentials.)

There are so many better ways of handling the issue than carbon credits, that the only reason they are being heavily popularized is due to one of the problems listed above.

Seth Woolley's Blog

google is insidious(0)


The definition of insidious, according to is:

1. intended to entrap or beguile. 2. stealthily treacherous or decietful. 3. operating or proceeding in an inconspicuous or seemingly harmless way but actually with grave effect.

I think this is the most apt word to describe Google.  Why?

First, Google is secretive.  It operates stealthily and under the radar with how it actually processes its vastly collected store of data. Secondly, while secretiveness is not enough, it also processes the data in such a way as to gravely effect those who use the service.  The grave effects exist because their power is so strong that they can wipe a business off the Internet, or they can gain license to all sorts of private, personal information.

Who would have thought that an ISP would be reading your email?  Google does, and if you use gmail, you're letting them.  Why are they better than most email services (in interface)?  It's because they're making lots of money off of advertising to you by reading your own private messages.

Maybe you're ok with that.  Maybe you're ok with a giant company owning your personal data?  That's their intention: to entrap you into using their service.  Even if they were not using their data for evil means, the fact is that they store your data for government intrusion, which they so far have ultimately handed over rather than accept the consequences.

I sure am not ok with that.  To anybody like me, their behavior is insidious.  Massive concentrations of power are not acceptable.

Now they are planning on coming out with an ad-supported phone.  What will they think of next, analyzing your instant messages, not just telephone conversations?  Whatever happened to privacy of communications and the expectation of privacy?

How did they do it?

They give services away for free, let early adopters test their own systems, then release it upon the masses early.  The crack that their services offer is accepted -- but why?  Haven't we all figured out that they're just going to use your personal data for computer-automated advertising?

Have we not figured that out by now?


In order to communicate with people without intrusion, I think it will be necessary to implement end-to-end encryption throughout the communications infrastructure people are using.  With end-to-end and opportunistic encryption (which is slow on the uptake with corporations, e.g. ipsec), then companies like Google will be unable to analyze your personal data for their own advertising.  Why do you think they've made it so hard to encrypt your emails in gmail?  Because it stands to hurt their profits.

Remember, since the release of Adwords, Google is an advertising company first, and an Internet company second (however, weren't we all wondering how they would monetize the thing?).  Their goal is maximizing shareholder value.  Whatever psuedo-environmental guilt that Brin and Page claim to have, they are ultimately part of a system of mass communications deception and trickery.

Google is simply insidious in everything it does.

Seth Woolley's Blog

note to recruiters(1)

I'm not currently looking for work at the moment, employee or contract-wise.  However, there are a few things for any recruiters to consider:

  • I'm nice to recruiters.  If you call, I have a policy of being interested in almost anything, even if I don't think it's a good fit at first.  Why?  Because I'm a curious individual that likes to look at all opportunities, and you provide opportunities (despite your getting paid by the employer).  That being said, you shouldn't forward my resume to anybody when you know I don't fit there.  I'll "let" you do that, but you are ultimately responsible for the quality of your search.
  • I like to know the name of the company before doing any work figuring out if I'll like the job spec.  I know you're not supposed to tell me.  No, I'm not going to bypass your commission.  I know it's a lot of money.  I just like to know the circumstances of the company before I commit to it -- where I work is like an investment.  If I don't think the company is going anywhere, I won't invest in it -- nor will I work there, even if you have a need and are willing to pay for it.  I'm not really in it for the money, but the opportunity.  If I were in it for the money, I'd be a hedge fund manager.
  • You got here most likely via a search engine.  You might want to learn how to use the + and - operators to narrow down your search.  I look at the server logs when I get a call and see how you got here.  Most search engines give help pages for more advanced features.  You're getting paid a lot, so use the intelligence you're being paid for.
  • Given that, if it's not in the Pacific Northwest, particularly in Portland, Oregon, or it's not someplace where I can live downtown and not have to drive, then you have to pay for me to get there.  I'll ride my bike if I have to, but I'm not going to spend time wasting my time behind a steering wheel, sitting down, doing nothing.  Working remotely is also an option, but that all depends on the type of work needed -- you have to be realistic.
  • Right now there's a labor shortage.  Expect to pay with that in mind.  When there's a labor surplus, you guys don't pay reasonably anyways, so you win some, you lose some.  Welcome to the age of at-will employment.
  • You have to be ROI-aware with a supply of capital.  If you can't make the investments to make the money, you're wasting my time.  You need to realistically be able to budget for hardware to perform the tasks needed, if hardware is involved.  Go back and get an MBA (in a program that stresses statistics) if you don't know what I'm talking about.
  • Engineering know-how has to permeate the middle management.  Yes, they are two different problem domains -- engineering and management.  However, the management needs to be capable of engineering or have a history of engineering know-how.  I mean this all the way to the executives.  Senior execs that lack technical engineering skill need to be able to engineer in at least some softer field.
  • I'm a fast learner and am adaptable.  Don't look at my resume for the bullet points on it -- as I've probably forgotten more about what I did in the past than what I will work on in the future working for you.  That's why it's called research and development, not code monkeying.  If you need a code monkey, I hear Bangalore is nice.
  • I like to think about the entire stack I'm working with at the moment and contribute to its architecture if there are flaws from the engineering standpoint.  I also like to work out the architecture in advance before setting out to building the system.  Unless it's a contract position that pays very well, I like to feel that I've put some form of ownership and responsibility into what I've created.
  • I'm an evangelist synthesizer of sorts and am very familiar with processes and procedures for quality control.  If you extend your agile/extreme programming methodologies too far, you're not going to be working on a real platform for future development.  While there's something to be said for getting to market quickly, there's even more to be said for getting there with the correct framework.  The Internet is riddled with old-comers and filling out with new-comers who have built solid foundations.  The geocities and the AOLs of this world are dying.  People are getting more savvy and have come to ignore shiny demos without a purpose -- well, VCs aren't there yet, but they lag the marketplace in this matter.
  • The passphrase is: Invisible Pink Unicorn.  This passphrase signifies that you have at least skimmed this note.

Seth Woolley's Blog

lake helen(0)

Lake Helen underlooking Lassen Peak

Here's a four-photo combination of Lake Helen in Lassen Volcanic National Park in cylindrical projection -- 172 degrees:

Lake Helen

Here's a 19 MB version:

Seth Woolley's Blog

tahema caldera(0)

Lassen's Mount Tahema Caldera

Here I am overlooking the Mount Tahema Caldera at Lassen National Park.

Mount Tahema Caldera

Seth Woolley's Blog

bumpass hell(0)

Bumpass Hell

Here's a snapshot of ten photos put together, in cylindrical projection, of Bumpass Hell in Lassen National Park, facing north-northwest, at 40.4567 degrees north by 121.5003 degrees west, 2510 meters high, at 11:30 AM 5 Jul 2007 PDT, with a combined 286 degree by 86 degree field of view:

Bumpass Hell

For a 42MB image:


  • Model: Canon EOS DIGITAL REBEL
  • ExposureTime: 1/800
  • FNumber: 3.5
  • ISOSpeedRatings: 100
  • ShutterSpeedValue: 9.64
  • ApertureValue: 3.61
  • ExposureBiasValue: 0
  • MaxApertureValue: 3.61
  • MeteringMode: Average
  • Flash: No
  • FocalLength: 18
  • ColorSpace: 1
  • ExifImageWidth: 3072
  • ExifImageLength: 2048
  • SelfTimer: 0
  • Quality: Fine
  • FlashMode: Flash Not Fired
  • ContinuousDriveMode: Single Or Timer
  • FocusMode: MF
  • ImageSize: Large
  • EasyShootingMode: Manual
  • Contrast: Normal
  • Saturation: Normal
  • Sharpness: Normal
  • MeteringMode: Center-weighted
  • ExposureMode: Manual
  • LongFocalLengthOfLensInFocalUnits: 55
  • ShortFocalLengthOfLensInFocalUnits: 18
  • FocalUnitsPerMM: 1
  • FlashActivity: Did Not Fire

Seth Woolley's Blog

vexels - style or technique?(0)

Style or Technique

It has come to my attention that my last installment on vexels didn't adequately address a particular debate around what counts as a "vexel".

I mentioned that the community should decide what's really a vexel and what's not, however, some may want to know what I think.  Here it is.

The Debate

The particular debate revolves around the original style of vexels -- images that look like linearly posterized vector graphics that are originally concieved in a raster format.  While the technique remained similar, one longstanding member of the vexel community, as I understand it, began to add gradients to the layers.  The vast majority of the techniques used were identical and this was portrayed as a gradual evolution of the process.

The question was: is this change significant to create a new, different category of art that is not called a "vexel".

My Response

I don't believe a "gradient vexel" is not a true vexel, and here's why:


  • Vector graphics applications already support gradients natively.

  • As a results, VML, SVG, Flash, AI, and other vector formats all natively support gradients.

  • Gradients also scale like normal graphics.

  • Gradients are described with the same direction and magnitude as normal vectors in addition to specifying at least two colors (and optionally control points and curve descriptions) for the gradients.

  • The definition of a vexel, which I discussed in my previous post, which relies upon its relationship to vector graphics in a rasterized medium, doesn't preclude gradients -- I never made an exception for them.

  • The addition of gradients to the layerization process thus may be considered a more sophisticated form of "vexel" graphics.


The only major arguments against that I recognize are that:

  • The archetypical vexel when the term was coined did not use true gradients.

  • The addition of gradients may make vexels less recognizable an distinct as a style.

Why Ignore the Cons

While these are both true, they don't change the fact that the term and definition of "vexel" is just too general to prevent "gradient" vexels from being called proper vexels.

Further, they are the arguments of Platonic Idealism -- that Vexels have a "form" that they must follow, and that the nominalistic variations are not true to the "perfect" and "archetypical" form of the perfect "vexel".

I've never been an adherent of Platonic Idealism -- I'm an Ockhamic Nominalist.

Resolving the Dispute

Now that we know that gradient vexels are true vexels we should create a texonomy of vexels by making a couple terms for those that are "gradient" vexels or "non-gradient" or "classic" vexels.

I'm not going to say everybody should use my definitions, but I have some suggestion of "adjectives" that the community could use to modify the noun "vexel".  Which ones are the better adjectives (which may not even be these) will be determined by actual use in the community.

for "gradient" vexels
for "non-gradient" vexels


Send me an email to seth ta swoolley tod homeip tod net to provide feedback.  I'll likely reply to the comments in this blog, so please say if you don't want your email to me shared to the public.

Seth Woolley's Blog vexels

yosemite waterfall(0)

Yosemite, hugin, nona, and enblend

Here's three snapshots of a waterfall I saw, merged together.

It's twice the height of Niagara Falls. so I took three vertical shots in landscape orientation zoomed out as far as my lens would go.

Came out pretty well, I think.  Yes, that's a rainbow from the mist that was getting on my camera.

I used autopano-sift, hugin, nona, panotools, libxmi, enblend, and gimp to process the images.  What used to take hours of painstaking by-hand assembling and blending now is done by the computer in minutes.  It's in equirectangular projection.

There's also a slight trick with the polarizer.  The top two photos were polarized to suppress reflection to bring out the water against the rock.

The bottom one is with polarized light passed through to get the rainbow reflection properly, which also contributes to the extra mistiness near the bottom.  So you really couldn't take this picture with a single photo.

86x98 degrees field of view!  Imagine it plastered on a wall ten feet high (but curved on a square arc of a partial sphere quadrangularly), stand five feet (half the height) away with your eyes 5 feet off the ground to get an equivalent view of the camera.

Vernal Falls

The next image is also pretty good, but I overexposed the top.  It's due to not changing the exposure to do high dynamic range compositing later (since I had only room for three more shots).

It's of the Grizzly Giant in the Mariposa Giant Sequoia Grove.  Three portraits merged together in transverse mercator projection (so as not to make Rickie show out of proportion).

There are 50 degrees of horizontal field of view -- but 107 degrees vertically, just to demonstrate the size of the tree!

Grizzly Giant

The last image is a cylindrical projection panorama with vignette correction.  On this image I should have corrected the polarizer for each shot, but neglected to and had to do a little post-processing.

Hugin did a pretty effective vignette correction, and autopano-sift did an excellent job fitting the images together.

This is four landscape shots with a total 54 degree vertical field of view and 224 degree horizontal field of view, which required a cylindrical type of projection (as opposed to a flat projection).

The subject is Little Yosemite above Navada Falls on the northern side.

Grizzly Giant

And a full size 2783 x 512, 3MB image:

Seth Woolley's Blog photography

sieve of eratosthenes(0)

raw numeric

perl -le '$n=$ARGV[0];for$i(2..sqrt$n){(next)if$c[$i];for(2..$n/$i){$c[$i*$_]=1}}for(2..$n){(print)if!$c[$_]}' 10000000


perl -e 'use Time::HiRes;print `tput clear`;$x=`tput cols`;$y=`tput lines`;$h=`tput home`;$r=`tput rev`;$o=`tput sgr0`;$n=$x*($y-1);for$i(2..sqrt$n+1){(next)if$c[$i];for(2..$n/$i){$c[$i*$_]=1}print"$h ";for(2..$n){print$c[$_]?" ":"$r $o"}print"$o\n";$|=1;Time::HiRes::sleep.02;$|=undef}'

Seth Woolley's Blog

graphviz vml output plugin(0)



Internet Explorer doesn't support SVG, but every browser does.

Graphviz has an SVG output driver, but nothing for IE.


Internet Explorer supports VML, but no other browser does.

Implement a VML output plugin for Graphviz.


Now we get antialiased lines in any browser with graphviz!

Seth Woolley's Blog webdevel

security by obscurity(0)

A lesson in bad security coding


I was looking at an article on the Orange County Register:

The article's actually pretty bad.  It's by a guy from the Discovery Institute, a right-wing, religious, fascist organization that's pro-creationism/ID, anti-environment, pro-religious/state-interference, anti-assisted-suicide... just basically wrong on almost every issue.  The name of the institute is rather funny as I watched the movie Name of the Rose (based on the Umberto Eco novel) recently.  In it, Sean Connery's character (a Franciscan monk with a scientific bent) remarks that religious fundamentalists believe that no new knowledge can be created -- that their only purpose is to catalogue and *discover* the knowledge that "God" bestows upon his people.  That's the mindset of the Intelligent Design crowd -- we won't be figuring out nature with new knowledge -- we'll just be discovering processes that were planned ahead of time -- for there's nothing truly innovative in evolution.  It's such a sad worldview.

In any case, I was going to comment, but I noticed a pretty bad looking captcha that would be easy to reverse.  However, before putting work on it, I thought -- I should just try the url.


In this case, the captcha said "f62f7"

So I use a trusty perl one-liner to reduce the %HexHex strings into binary:

perl -pe 's/%([0-9A-Fa-f]{2})/pack("c", hex($1))/ge;'

I pasted in:


and I got back:


which looks like another urlencoded string, so I pasted that in and got:

                            look here

That looks like an attempt to obfuscate the captcha string.

I did it again:

                            same spot

Then I noticed, you really only need the first filtering pass to see it:

                                                            right there

But actually, if you look at the original urlencoding, you see they aren't even requiring one pass!:


This makes perfect sense, given that urlencoding doesn't normally operate on alphanumeric characters in any way.  They probably just used the built-in php function for it.  Maybe they could at least use their own to additionally obfuscate the alphanumeric characters.

The HTML Source and making your own image

Then, looking at the page source code, you can see that the image url is not generated via javascript.  What happens is the server creates a string and then associates to a sessionID (located at the end of the url, after the second exclamation point).  It puts the random string -- which is actually five characters of hex after the first exclamation point, in the image url along with the sessionID.  To generate the image, the server just looks at the characters in the list of weird characters -- it already knows where to find them.  (This is only a guess -- it could be much worse.)  I just changed those characters and then resubmitted them and it sent back my image with my own characters.!%2524%2525%255E%2526%252A%2528%2528%2524%2523%2524%2525%255E%255E%2523R%255E%252A%2526%252180bdf31d5a7a52cbf6a67dd4a390d933

I then did a binary search to figure out what characters could be removed, and got it down to this:

which is this, deencoded twice:


They just have some "magic" in there.  Change the first five chars to whatever you want.

The JavaScript and client-side validation

Then I did some more looking:

wget -O - --referer='' '' 2> /dev/null

I was going to look at that code, but then I noticed in the source code for the page it says:

var gTheWord = '6824b';

The captcha's image text is loaded in the page already, very clearly visible!

After I stopped laughing, I looked at the javascript.  I have to see if they are doing client-side validation.

    if(frm.password.value != gTheWord) {
       alert("Please enter the correct password.");


The bad-character filter for the name, 1900 character limit, and the profanity filter are client-side as well.  They probably don't even filter them out at the server.

I'll leave those for the reader.


Even if they did check the captcha on the server, the fact that it's checked by the client too makes the algorithm for figuring out the captcha automatically a trivial operation -- otherwise the client couldn't do it.

That's on top of the fact that the captcha is derived from a poorly obfuscated double-urlencoded string that actually does no real obfuscating.

Seth Woolley's Blog

google publishing research?(0)

I came across a couple papers on drive failures today.  I saw one by CMU's Parallel Data Lab co-authored by Garth Gibson.  The Paper won best paper at USENIX FAST '07.

Read it here:\

That's how you write a good paper.  I used to work at Gibson's company, Panasas.

Now, note that Google submitted a paper too!

Reading this paper was so boring.  I learned nothing but for one empirical fact:

Drive failures are correlated to low smart-reported temperature.

They then suggest that environmental temperature need not be too cold.

Before anybody buys that second conclusion line, I think they should actually control for a few more factors:

SMART temperature values aren't very reliable.  In fact, they vary quite a bit.  Anybody who's ever cold-booted a drive array and read the smart temps off each drive knows they vary a lot.

Now that we know their temperature readings weren't reliable and not backed up by secondary figures using something better than a cheap sensor, we can make a few observations:

  • yes, it's true that if you're reading smart parameters and see a low temp value, your drive might fail sooner.
  • but that's because the temperature might be quite underreported
  • and that can enable firmware hacks that turn on background verify at lower temperatures
  • which can lead to increased wear as well as increased error detection
  • and drive-overheating can't be detected by the drive firmware to initiate drive back-off.

Where I used to work, we used heat chambers to test drive firmware funkiness with temperature.  We disabled any firmware that tried to do background verify automatically, as that lowers performance.  Our software handled failures automatically and did its own background scrubbing based on real parity checks.

The crux is that google failed to use independent variables and failed to correlate their data with performance, which is controlled in firmware to correct overheating using data from the same sensor they're reading from.  It's simply not an indepedent variable anymore.

Secondly, drive failure at the beginning of the curve is under-represented.  They make no mention of initial OS installs or initial burn-in testing on hardware that their own operations processes have.

Perhaps they never had their operations people review the claim that drive birth defects are not significant on drive failure.  I know for a fact that birth defects are common, having worked on factory processes for a storage vendor that had burn-in testing and kept track of failure statistics.

So, before you listen to Google, study drives.  They appear to not know anything about actual drives, other than to try to read indirect indicators.

And remember, Google's an advertising agency.  What do they know about science?

Seth Woolley's Blog google hardware

spongebob ghetto(1)

Art in Graffiti (Tagging)

Every day on the Capitol Corridor Amtrak line, I see a pretty cool picture of the "Spongebob Ghetto".  For the best view, geocode 799 Kevin Ct, Oakland, CA 94621 in your favorite mapping program.  Look across the tracks to the back of the NBC Warehouse building.  The view there is relatively unobstructed (except for a short fence).

Here's four photos put together:

An image of the spongebobghetto by kufu, done, krash, original funkateer, baagie amend, sig1, and del

10mb large image:

Note that the tag signatures are (as far as I can tell):

kufu, done, krash, (underwater) funkateer, baagie (amend), sig1, del

Part of it, including with the pre-bra topless mermaid, is also on flickr:

Seth Woolley's Blog photography

google ads are a sellout(0)

on selling out

On the page I read about the Clash selling out their Punk legacy to Jaguar.

The article itself has google ads, 3/4 of which advertize Hummers.  The irony.


Seth Woolley's Blog google

editblog script(0)


I've added a draft of a script to canonicalize managing my fsweblog blog tool.

For people who don't want to read the documentation or don't know filesystem details, it makes it easier to administer my blog tool.

Seth Woolley's Blog bloginfo

fsweblog now has categories(0)


I added category support to fsweblog.  Now I can add categories to my posts that are aggregated and searchable.

Seth Woolley's Blog bloginfo

amtrak feedback(0)

November 2, 2006

I arrived at Jack London Square at 9:24 for the late 527 San Jose train that was supposed to come at (estimated on-line when I left my apartment at 9:04am) 9:29.   At 9:29 a train showed up, but was labeled Sacramento (error 1).

No arrival announcement was made on the reader board in the waiting area outside (error 2).

No arrival announcement was made orally by station attendants (error 3).

No arrival announcement was made orally by the 527 (error 4) conductors despite their train being labeled 518 to sacramento (which I didn't realize was wrong and was from hours before until I checked the schedule).

The reader board continued to say that 527 was "delayed" for twenty minutes after the train left and included no arrival time in the delay notices before and after the train's actual arrival (error 5)!

The train showed up and left without me because no indication had been made that it was my train!

I've been doing this same exact commute daily since September 1 with monthly passes.  The price just went up five percent for the pass and now I get even less value out of it to the tune of another five percent (one day in twenty work days is totally messed up).

I can't assume that southbound trains are the correct train for a few reasons.  Trains other than my own show up late and out of order that are originating at okj or are continuing to oac and stopping or turning around.  The okj trains are few.  When I miss an okj train I have to wait hours for the next one.  The next one wasn't until the afternoon.

I bike nine miles a day for this commute and am a strong advocate of public transit.  For two years I was State Secretary of the Oregon Pacific Green Party, was on the Coordinating Committee for another two years, and was a local chapter secretary for another two years.  I helped run candidates whose platforms were to subsidize public transit for positions ranging from governor to senate to transit district representatives.

I even work at a company that's responsible for many of the multi-modality routing systems available and navigation systems you'd find in everything from cell phones to websites.  They even subsidize my train ticket through reimbursing most of the cost.

My faith in public transit will never waver, however, it's not my faith you should be concerned about.  I can excuse the lateness due to freight traffic since I know freight has priority on the Union Pacific lines ever since we privatized and subsidized the private train industry to the point of granting them human rights in the Southern Pacific v. Santa Clara decision the 1880s.

But, if conductors, station agents, and other employees are simply unable to do a crucial part of their job all at once, public transit is not feasible.

A system where people are irresponsible in assuming "somebody else" will communicate the proper train signage is not way to ensure train travel is usable.  All parts of the system should be working to high degrees of efficiency so that when the fallback communication methods are needed they fall into place and actually work.  If only half the time each component works, In riding the train over eighty times, assuming an equal distribution of error, a five factor redundancy system such that you have would require the probability of each component working to be around 58.37%.  Almost half the time, each part fails to participate. 58.37% is an F grade.  In reality train signage is almost never wrong.  The times it is wrong, I've seen once on bart, and a couple times on amtrak.  Thus the probability for the other contributing error events to happen is even higher, on the order of most of the time.

As I'm a participative individual, I expect a response on what corrective action has been taken to ensure that the probability that each element of the communication system works.  Personally, I think most of the problem can be attributed to the conductors simply not paying attention to their own train's signage and taking corrective action, however I'm at a loss to understand why all the other signage was void of information that could have given a hint that the train that was at the station was actually the 527 train.

If an expert and non-disabled user such as myself can't get on the correct train, what are we also to do about disabled people?

I look forward to your response and I am willing to help craft a solution that can improve service to the point that an error such as this is simply intractable.  There may have been a systemic problem that can be remedied that caused the cluster of errors to form, but I'd have to have detailed knowledge of how the communications infrastructure works to correct it.  I am curious to learn more so that I can assist the board and authority to come to a realistic solution to improve service.

Seth Woolley's Blog politics reallife

source mage simpler introduction(0)

Source Mage GNU/Linux

Source Mage is a free and open source project founded on the principle of returning control back to System Administrators.

Our main project, Source Mage GNU/Linux, is an operating system distribution.

We also provide a complete ports-like system with a package management system based on our philosophies of software freedom and returning choice to the administrator.

The package manager is written almost entirely in bash. The ports are intended to be as close as possible to the upstream vendor's vision from source code as downloaded from their website.

The distribution is provided with an easy-to-use basic system installer from which administrators can rebuild to their specification.

The package management core is first-tier, feature-complete, and well-designed.  Custom configuration is exposed at every opportunity for the needy administrators and tweakers of all kinds.

Port scripts are easy to write because of a rich set of libraries and interfaces into the package manager that is balanced with the need for simplicity for simple packages.

The community of developers and users also offers friendly chat rooms, mailing lists, a bugzilla database, and freely viewable and modifiable source code.

All flaws are open and available for review or improvement, and contributions are accepted and guided through peer review and compliance with our core principles and policies.

For ease-of-learning, the command names are based on a sorcerous metaphor of "cast"ing and "dispel"ling "spells" from a "grimoire".

If you're ready for GNU/Linux so advanced, it may as well be magic, then it's time you tried Source Mage GNU/Linux.

Seth Woolley's Blog sourcemage



I'll add things I observe here:

Fixed bugs I've noticed

  • My manual page viewer supports the sliding menu now with only one small change as noted below.

  • I think the > selector is now actually working on IE7.

Bugs I've noticed

  • to get display: block/none css menu stuff to work in IE7, you need to place the CSS (all instances, including an xml preprocessor stylesheet) _after_ the doctype so that it renders in standards-compliant mode.

  • the IE DOM Viewer seems cool, but it won't send refreshed data to validation services.

Seth Woolley's Blog webdevel

pure css menu hacks(0)

pure css menus

I've been working on some code to get CSS menus working in both IE and Firefox.  I stole an implementation from GRC and hacked it down to its fundamentals.  They used list items which required three times the code.  This is much better, IMO.

the xhtml

<div class="menu">
  <div class="key">Key</div>
  <div class="value">Value</div>

the css

.menu {
  position: relative; /* this is needed to get children to be relative to it */
  display: block;     /* not needed if using divs instead of spans /*
  height: 18px;       /* needed to have a reference for the top value below */
  width: 20em;        /* width of the menu */
  background: white;  /* not transparent! (could be same color as parents) */

.menu .value {
  position: absolute; /* this is needed to be placed relative to parent menu */
  display: none;      /* hide it by default first */
  top: 18px;          /* this is relative to the height of the menu container */
  left: 0px;          /* this is relative to the left of the menu container */
  width: 20em;        /* width of the drop down menu */
  background: white;  /* not transparent! (could be same color as parents) */

.menu:hover .value {
  display: block;     /* show it when we hover over the parent */

Seth Woolley's Blog webdevel

muir woods(0)

image updates from muir woods

new background image

I added a new title background image to my website of muir beach (the old one was mount hood: )

a maple tree nesled in redwoods in muir woods

An image of a maple tree in the Muir Woods redwood forest

a curved redwood tree in a stand of other redwoods

An image of a curved redwood in the Muir Woods redwood forest

a stand of redwoods toward the canopy

An image of the redwood canopy in the Muir Woods redwood forest

along redwood creek

An image of the redwood creek in the Muir Woods redwood forest

a big barky redwood

An image of a large redwood in the Muir Woods redwood forest

a blacktail mule deer grazing along the redwood creek

An image of a blacktail mule deer in the Muir Woods redwood forest

rickie and seth

An image of Rickie and Seth in the Muir Woods redwood forest

Seth Woolley's Blog photography reallife

old high school research(0)

Shades of High School

Every couple years I google people I remember from long past.  Well, I finally got around to putting some of it up on the net!

Seth Woolley's Blog reallife

roger williams and his bloody tenent of persecution(0)


The Church or company of worshippers (whether true or false) is like unto a . . . Corporation, Society or Company . . . in London; which Companies may hold their Courts, keep their Records, hold disputations; and in matters concerning their Societie, may dissent, divide, breake into Schismes and Factions, sue and implead each other at the Law, yea wholly breake up and dissolve into pieces and nothing, and yet the peace of the Citie not be in the least measure impaired or disturbed; because the essence or being of the Citie, and so the well-being and peace thereof is essentially distinct from those particular Societies; the Citie-Courts, Citie-Lawes, Citie-punishments distinct from theirs. The Citie was before them, and stands absolute and intire, when such a Corporation or Societie is taken down.\


In 1644, Roger Williams wrote his famous tract, the Bloody Tenent of Persecution.  In it, he argues, from analogy, that, the success of the corporate model should be applied to religions, and religions should be made subject to the state and civil authorities as corporations are.  The church should no longer have domain over the state.  Religions should rise and fall and that should be of no consequence to the state.

But, let us note, that back then, corporations _were_ subjects of the state (See ).  Corporate charters, until 1886, in the United States, with the Santa Clara decision ( ), were granted by the authority of the state and had no rights except those granted upon review of the state.

It is ironic now that Santa Clara would be the battle ground for corporate personhood as it was.  I take the Union Pacific (formerly Southern Pacific) tracks via amtrack on my daily commute to San Jose, through Santa Clara, from Oakland.  Furthermore, the Santa Clara station is called "Great America", and ... as lofty as that sounds, it's just a small platform underneath a city street overpass.

With that decision, and the power of corporations to aggregate wealth, the people of the United States lost its sovereignty.  The largest corporations are now bigger than most countries.  Those corporations, while identical in every respect to any other country and human, are distinct in only one way: they have no sovereign land of their own.  They may own land and obtain private property, but they may not set the laws on the land that it purchases which are sovereign of other countries.

Still, this is a small token of restriction when you look at the massive power that corporations have to control government policy.  Because corporations are considered people, they have the right to plead their cases in courts, and have standing as a human, to sue a human (not just another corporation, or within the limits of their corporate charter).  Their rights transcend any charter.  Their charters are drafted by the members and wholly ignored by the state, unless, by chance, a member of the corporation itself presses violations of their charter.

Perhaps what we need to do is completely separate the corporate religion from politics, as Roger Williams expected in his diatribe against the corporate analogy -- churches intertwined with the state.  We should forbid it all access to our state political system, as is the great bargain with the churches.  We can even eliminate all their filing taxes for this bargain, as we also did with Churches -- but they must not be allowed to violate laws or we shall seek charter revocation.  Corporations are unique in that they are like humans, but vastly more powerful.  If we are ever to contain their corruptions and nepotisms, we have to triumph over hundreds of dead mens' fortunes, through their family political funds, and erect a wall of separation between corporation and state.

If we eliminated the taxes, we could eliminate all intermediary holdings that a corporation could accumulate, not through taxes, but by considering all its holdings the divided property of its shareholders.  By returning to a full liability system, we can clean the perversions of justice that corporations, typically large and aggregated ones, routinely exhibit.

Who thought up the limited liability system, anyways?  Why did we legalize running away with the corporate money?  When did we legalize fronts for criminals to organize their crimes?  It's not a conscious decision that we make.  It's a political decision, and we'll never attain any visions of these proposals unless and until a progressive majority chooses to enact them.  Why did we do a mere right-turn with regard to persection and decide that the better vehicle was the corporation instead of religion to spill the blood?

I don't think we ever did.  It took an activist court in the 1880s to give rich, white Republicans their free meal tickets to money.  Perhaps now it's time to rally the activist people to tell the courts to give us back our personal and democratic sovereignty over what we have demonstrated can become of the concept of the limited liability corporation with human rights.  Let's choose to abolish corporate personhood.

Seth Woolley's Blog politics

new commute route(0)


I've been doing the new commute for over a week now:

  • 3.5 miles to the Oakland Jack London Amtrak Station on bike, downhill.
  • 40 miles to the San Jose Amtrak Station.
  • 1 mile to work, Santa Clara and 2nd Street.
  • reverse, but uphill.

9 miles of biking has turned out to be 10mph downhill, 8 mph uphill, for about an hour total time, averaging 9 miles per hour, which is pretty good, given the stoplights and traffic I have to deal with.

I figure I burn about 300 calories on top of my existing 2200 calories base rate, for a total of 2500 calories.  I think I'm going to see how many calories I eat and track it in gnucash.

Seth Woolley's Blog reallife

the world of microsoft windows(0)

Windows Hell

I've had my new Windows laptop (from work) for one week.  One week of hell.  Just a few of the problems I've encountered are:

Windows and the pervasive VPN

Why do Windows people insist on using VPNs?  I'd much rather have an SSH tunnel bastion host so I can limit accesses to the boxes I care about and setup specific applications for connection through the tunnels I want them to go through.  My last place had both, one for Windows users, and the ssh for linux users.

In most unix programs, I can tell it to connect through a certain interface, say, my wireless connection, directly, for my ssh connection to my home box, and through the vpn.  Take ping, for example.  In ping, I can use -I on my linux box to specify an interface, or -j to specify a source routing.  I didn't see a -I on cygwin, so I just tried -j, to no avail, it didn't seem to work, and failed silently.  Yay for Windows being annoying.  I can start a connection before opening my VPN, but if the Venturi crap doesn't work, I end up disconnecting the VPN to reconnect to my home box, then reconnecting, which often messes up the default outlook install when it tries to connect to an address that doesn't exist.  This is just crap.  SSH tunnels have none of those problems.

I could setup pptp without giving it the default route, and setting up ssh tunnels to my work box, I guess -- when my desktop finally comes in.  For now I've been using my linux laptop at work and leaving it there since the battery finally died on it and it's useless mobilely (and I can't find any of its batteries new online).  This is much easier in linux than in Windows.  I suppose I could also add static routes for every destination too, but where do I put this, in a script I have to run after the stupid gui connects to the vpn?  My workaround has been to spawn rasphone in a script (rasdial I have as an option too), so I could put it in there, but it's a pretty dirty interface.

Windows still is unstable

Windows crashed trying to get it out of stanby.  Then, Explorer wouldn't open after coming out of hybernation until I did a cold reboot, not a warm reboot, for some reason (which was associated with the standby crash above and a chkdsk run).

Replacing the default shell

Blackbox for Windows doesn't support full maximization properly, so I'll just be using Blackbox auto-hide.  Other than that, Blackbox has really made my computing easier (workspaces on Windows, with one workspace containing a rootless X in cygwin -- nested blackbox).  I also loaded my miniature font for Windows, so it matches my linux installs.

Windows is always preloaded with crap and screen annoyances

  • Bluetooth systray icon, Volume Control ssytray icon, Eject systray icon -- Windows uses the system tray for both system and application crap.  They should have two trays, with the ability to hide system versus application notifications based on user preferences that can be quickly modified, such as a drop-down menu for system crap.
  • ZoneAlarm Pro
  • Norton Antivirus Corporate Edition
  • IBM Message Center (if you don't get the hint, I don't care about your messages IBM).
  • IBM ThinkVantage Access Connections in addition to the Windows Connections in the status tray (six icons this way).

Verizon cellular Internet Access

Venturi-something came with my VerizonAccess crap.  See -- it replaces TCP!  VTP advertizes preventing connection losses, but when I had it running on linux using straight TCP, I had fewer dropped connections and reconnections got the same IP, so my ssh connections ran just fine.

It also recompresses, caches, and compresses websites.  But good website designs already pre-compress, have integrated caching, and recompression is unneeded.  It's quite the hype, and for 99% of my use, it is dumb.

VZAccess also does connection choosing that ThinkVantage does (but ThinkVantage doesn't grok the wireless connection) and Windows already does.  It seems every piece of hardware has its own software value-add that just adds more code bloat.


Windows still isn't for me.  Despite my attempts to make it usable, I'll have to dump it or relegate it to a vmware session.  Ironically, what I have to support for Windows is automated in cygwin already, it just hasn't been ported yet to linux and run through conformance and quality assurance internally.  When that happens my company shouldn't need Windows to do anything.

Seth Woolley's Blog reallife

miniature font updated(0)


swoolley miniature fontsI updated my miniature fonts a while back but need to republish them, so here they are.

Five new versions

original small lowercase version
taller lowercase for readability
a double-size of swoolley2
a double-size of swoolley5
A serif'd version of swoolley2


Install the pcf.gz files into /usr/X11R6/lib/X11/fonts/misc/, run mkfontdir in that directory, then restart X (or run xset fp rehash). For fontconfig (which these sets now support), I had to change them from ascii encoding to iso-8859-1.  Run fc-cache instead of mkfontdir for fontconfig, of course.  For Windows, copy the .fon files into c:\Windows\fonts (or WinNT, depending on platform).

About was used to convert to bdf format, which is now the native format I use.  The pcf.gz files were compiled with 'bdftopcf | gzip -c'.  The fon files were generated with bdf2fnt.exe -c swoolley.bdf swoolley.fon.

The image represents swoolley, swoolley2, and swoolley5, in order, printable characters 21-7E (in hexadecimal), or the full ascii range, not the full iso-8859-1 range.

Seth Woolley's Blog webdevel

anatomy of a typical XSS problem with user logins and cookies(0)


Repeatedly, I see the same stupid login/authentication cross-site scripting mistake, over and over again, so I thought I'd tell everybody about it to try and remind people what not to do.



Check out the pmos help desk, here:

Looks normal.  Only a couple fields to enter data into, right?  Not quite, there's a variable that we don't see right away.

Click on a link in the header that looks like it might require authentication, say, tbe "Browse" link, like this:

The php is so smart it knows you haven't logged in yet.  So what does it do?  It gets smart -- it says, hey, I need you to login.  So I'm going to send you to the login page.  BUT, as an added convenience, I'm going to tell the login page to send you back at the end like this:

Isn't that nifty.  Yes and no.  Yes, it's nifty in that it's a cool design improvement, but no it's not in that it's another form of input into the system, one that isn't so carefully guarded because it'll never hit the SQL system.

An unsanitary problem

Let's download their source code and take a look at how they implemented it.  I just went to: and clicked and opened up login.php.  (Ignore their statement, "Also, please read the GPL license thoroughly. By no means can you use this code (or any of it) in your own product and sell it as your own -- that is completely illegal and will be prosecuted."  -- This is false.  The GPL lets you charge whatever you want for a product so long as you give them credit in the source files/changelog.)

<form action="<?php echo $HD_CURPAGE ?>" method="post">
  <input type="hidden" name="cmd" value="login" />
  <input type="hidden" name="redirect" value="<?php echo ($_GET[redirect] != "" ) ? $_GET[redirect] : $_POST[redirect]; ?>">
  <tr><td><label for="email">Email: </td><td><input type="text" name="email" size="30" value="<?= $_POST[email] ?>" /></label></td></tr>
 <tr><td><label for="password">Password: </td><td><input type="password" name="password" size="30" /></label></td></tr>
 <tr><td><br /><input type="submit" value="Login" /></td></tr>

Ouch!  No sanitation, whatsoever.  They let you do pretty much whatever you want before you login (this is not so dangerous).  But first, let's note the first problem in this code:

(Note that the email input field is also XSSable (but via the POST method).

It just puts that directly into the hidden field for the redirect, without sanitation -- classic XSS, but not so big a deal -- if you're on the login page your cookies probably aren't there to steal yet, if you have well-implemented session-only cookies -- which they don't (they just let them live for a whole month):

setcookie( "iv_helpdesk_login", $_POST[email], time( ) + 2592000 );.


Delivering the payload

If you need to inject code where quotes aren't allowed (magic quotes are enabled, for example!), you can, for example, use the document.referer property and setup your own site to download two different sets of data, one intended for the client, another for the server, so that when the server sees it they get needed payload.

Here's a way that just decodes part of the url for the payload to avoid magic quotes altogether:

(Tricks like this are why javascript should die.)

It gets worse from here

if( trim( $_POST[redirect] ) != "" )
  $redirect = $_POST[redirect];
  $redirect = $HD_URL_BROWSE;

$EXTRA_HEADER = "<meta http-equiv=\"refresh\" content=\"1; URL={$redirect}\" />";
$msg = "<div class=\"successbox\">Login successful.  Redirecting you now.  Click <a href=\"{$redirect}\">here</a> if you aren't automatically forwarded...</div>";

$do_redirect = 1;

Yep, they let you inject code _after_ login has succeeded, so if you want to make sure you get their auth data, just... let them login first before activating your payload (which you could carry over via document.referrer instead of document.location if it's not an encrypted link)!

Note that, magic quotes _must_ be enabled for pmon to work.

Magic quotes and SQL

Futhermore, it's littered with magic-quotes-expecting SQL commands like:

$res = mysql_query( "SELECT * FROM {$pre}user WHERE ( email = '$_POST[email]' && password = '$_POST[password]' )" );



Yeah, stay away from the h2desk pmon code (no idea about their commercial offering though), as it's not a good example of quality, secure code.

Seth Woolley's Blog webdevel security

began work at deCarta(0)


First day at deCarta

Yesterday was my first day at deCarta ( ).  It looks like I'll be enjoying this work much more than my work at Panasas.  The team, at first glance, appears that it knows how to work together rather than against each other.

Commuting via Amtrak

I also bought a one month pass for Amtrak to do the Oakland to San Jose commute.  The big trains are much more enjoyable than the BART, which I've also used for a extended commuting.

New laptop

Moreover, I got a work laptop.  Just in time, as my personal laptop's unreplacable battery finally decided to die completely. :(  I now just have to configure it for dual booting until I can get xen working on it to host the windows install they gave me (I have to automate on both linux and windows).

New folding bicycle

My Dahon Piccolo D3 folding bicycle should be in on Monday.  Today I'm going down to the bike shop to test out folding bicycles to see if everything's how I want it to be.

Seth Woolley's Blog reallife



A couple weeks ago i received an email from the recruiter who saw my resume and invited me to interview at ScanAlert.  I emailed back and called the recruiter the next day to see what the position entailed.  It was for their "ethical hacker / penetration tester" position, which is still posted on their website.  I was curious so I thought I'd see what it's like there, having never worked in a "corporate" security environment, but instead for smaller businesses.  I talked to the Vice President of Engineering, Ben Tyler, and he offered a challenge on a fake website:

In our fictitious web site, one or more of the following
vulnerabilities may exist:

Cross Site Scripting
SQL Injection
Directory Listing
Path Disclosure

They wanted me to send an IP back to open up the url to me for 24 hours, but before I did that I was bothered by their apparent "find all the vulnerabilities and slap a sticker declaring it safe" mentality, so I took a look at their own website and in a few minutes happened upon an interesting XSS vulnerability that let me inject html attributes into a link.'hi');


I replied back with the following:

Hi Ben,

In reaction to your challenge to break into a fictitious website, I
must challenge you to secure your own website:

<XSS exploit url here>

When your recruiter contacted me for a position as a Professional /
Ethical Hacker / Penetration Tester, I was curious about the idea of
being employed by scanalert, however, I have had some doubts when you
said "find the vulnerabilities".  The use of a definite article led me
to believe that there might be a culture of "finding all the
vulnerabilties" in websites, declaring them secure, and then slapping
stickers on them.  There is no question as to the value of security
auditing, but it is just that, an audit, not a guarantee.  Questioning
the efficacy of such a culture, I decided to test its value by checking
your website for basic vulnerabilities.  In a matter of minutes I
discovered the above vulnerability.  The "Hacker Safe" concept should be
thought of as "Hacker Safer".

Now, I do acknowledge that perhaps I read too much into your wording
and that indeed, a culture of progressive security may yet exist at
scanalert, so I'm still interested in pursuing this position, but I need
some reassurance that a culture of asymptotic security thrives at
scanalert, that the Hacker Safe logo really means, internally,
Hacker Safer, and that I too will be able to gain progressive experience
in novel and interesting security techniques while employed at



No reply came back, but five days later, I noticed they fixed it, but poorly.  The following link still worked:'hi');

For a security website, I was disappointed that they couldn't fix the entire vulnerability, so I looked around for a few more vulns and sent them a more detailed report listing more things things they probably wouldn't want their code to be doing, including an information leakage vulnerability and how their login form works well with XSS vulns to promote privileges automatically.

They still haven't completely fixed the vulnerability, despite it being five days later, again, so I'm publishing this blog entry to expose their inability to manage their own security.

Seth Woolley's Blog webdevel reallife security exploitable too(0)


When will they ever learn?


as always if they read their own manual page...

Update: I looked again into this site to try to craft a vulnerability report:


And their isquestionable string is not the same as the one included on the cpan website, yet the modified date is back in '97.  They are using the latest version of man2html though, 3.0.1.

Perhaps man.cgi has been updated and many bad man.cgi copies are still floating around, or the source code was fixed without changing the modified date in the tarball.

This is an odd development.  It seems every site I run into running this code is flawed -- why would there be so many flawed sites created after the last modified date?

Seth Woolley's Blog webdevel security

source mage introduction(0)

Source Mage GNU/Linux

Source Mage is a free and open source project founded on the principle of returning ever-eroding control back to System Administrators.  Our main project, Source Mage GNU/Linux, is an operating system distribution that also provides a complete ports-like system with a unique and powerful package management system based on our philosophies of software freedom and returning choice to the administrator.

It is written almost entirely in bash, the default shell for most GNU/Linux administrators, so it can be easily modified and extended without recompiling. Every package port is intended to be as close as possible to the upstream vendor's vision and is entirely built from source code downloaded from the respective upstream websites.

The distribution is provided with an easy-to-use, minimalist-oriented, disabled-by-default installer from which the system can be rebuilt entirely from source to your platform with a simple set of commands, is FHS-2.2-compliant for easy software porting and use as a developer platform, and has extensive quality-control processes in place for ensuring that the package collection remains advanced, yet reliable.

The package management core automatically (with sane defaults) prompts and resolves for complex dependencies such as optional dependencies, suggestions, triggers, and sub-dependencies, prompts users for alternative and useful configurations settings (compile-or-run-time), maintains system integrity with a "self-healing" system cleanse  tool, and is unparalleled in its simple, modular design and approach to modern package management designed around "tweakers'" use cases, for example that its approach to uninstalling is dependency-aware and (thusly) can even suggest other likely targets for uninstalling.

Package scripts can be created flexibly as the package manager provides a framework for extensible APIs that is script-oriented through-and-through.  Code re-use through rich library support allows script parsimony and ease of maintenance.  Many packages simply require two files, a DEPENDS file and a DETAILS file, if they follow standard gnu autotool build methods.  As many packages need processes that aren't standard at each and different stages, more files can be "created" in the package directory to override the default processes, replacing them completely or even expanding upon them.

The community of developers and users also offers friendly chat rooms, mailing lists, a bugzilla database, and freely viewable and modifiable source code.  All flaws are open and available for review or improvement, and contributions are accepted and guided through peer review and compliance with our core principles and policies.  For ease-of-learning, the command names are based on a sorcerous metaphor of "cast"ing and "dispel"ling "spells" from a "grimoire".

If you're ready for GNU/Linux so advanced, it may as well be magic, then it's time you tried Source Mage GNU/Linux.

Seth Woolley's Blog sourcemage

miniature font(0)


swoolley miniature font This font I made is demonstrated:


I drew it with: to convert to bdf format from the image I created.


compiled (with bdftopcf | gzip -c):


install into /usr/X11R6/lib/X11/fonts/misc/, run mkfontdir in that directory, then restart X.

Seth Woolley's Blog webdevel

XSS not a security problem?(0)


Slashdot carried a link to an armchair security "institution" (Why make up a corny name for yourself, call it your company blog and expect kudos? Just blog under your own name!) that makes this claim:

"It is *of the utmost importance* to note that a page that has an XSS vulnerablity is no /more dangerous/ than visiting a random result generated by a Google search - something that users do all the time."

This is quite false.  He correctly identifies the first problem: social engineering an XSS url may provide (although why he doesn't consider this "more dangerous" is beyond me), however he misses the second problem, that since the XSS is on the actual host, the javascript can run in a state of elevated privileges for cookie access to that site.  This lets you steal any of their cookies simply.

His article is thus flagrantly ignorant, and it should simply be ignored.  Everybody in the know already agrees that JavaScript is a gaping security hole and people shouldn't be running with it all the time.  While he does credit to those trying to get JavaScript eliminated from the web, he discredits them by misleading the XSS's risk as a twisted argument to elevate the problems with JavaScript.

One might argue that it only strengthens his point that JavaScript sucks because it is the very thing that enables the problem with cookies and XSS.  However, he should have simply argued _that_ and improved his case.  Now his title is simply too false to have a lasting impact, despite the good merits of his goal.

Seth Woolley's Blog webdevel security

mozilla finally fixes security issue(0)


I reported this security issue three years ago:


Looks like they decided it was time to fix it after getting a duplicate report from somebody at Stanford.

Thanks Mozilla!

Seth Woolley's Blog webdevel security

why not gentoo?(0)


Many people have asked me why not use Gentoo instead of Source Mage?

Full-disclosure: I'm a Source Mage developer, but if I thought I could get work done with the larger party, I would have jumped ship a long time ago.  Here are some of the things I can't accept about Gentoo.

  • Gentoo's public freenode channels won't accept questions or suggestions about how things are done in Gentoo.  Compiling this list has been ever difficult becuase of their behavior, and that in itself is a major reason not to use a distro.  Granted, I'm straightforward, but that's no reason to ban somebody.
  • Gentoo's release engineering process isn't.  I have a few problems with it, notably that they publish from a live tree and have zero QA control over it.  A notable Gentoo developer was ejected from the team after bringing up a number of issues with their process that could be improved.  They only listened to some of his suggestions and ignored the most important ones.  When he continued to bring up issues, he wasn't treated well and returned the favor, giving them justification to ostracize him.  Some of the issues are:
    • Gentoo uses a "live tree".  Wow, nobody in their right mind would do this.
    • Gentoo doesn't have a quality control system other than individual package masks.  This is a major problem because intra-version interactions can never be controlled and deployed until after the fact.  Testing is not an atomic process in Gentoo since they work from a live tree.  Either of this or the point above on their own wouldn't be so bad, but the combination is deadly.
    • Gentoo doesn't test packages in a formal way.  Developers are merely supposed to judge this for themselves.  This wouldn't be too bad, except for the fact that, yes, they use a live tree.
    • Gentoo has lots of packages, many of which are stale.  Their package versioning system leads to a larger tree with increased staleness and more testing requirements.  I suggest a way to indicate versions that aren't stale, or that are officially supported and/or tested with the latest bits on the live tree.
    • Gentoo has few policies to control quality on their ebuilds.  Rather than have process bugs lead to policy changes, developers are allowed to run amok on the source tree.  One platform is able to annihilate the quality of another platform (happened with the OS X porting team recently).  This kinda goes back to general release engineering policies, but it applies to other policies as well.
  • Gentoo doesn't rearchitect parts of their system that need rearchitecting for a few reasons: the initial developers are gone and changing their code is risky, especially since it's undocumented; while portage is written in Python, it was a learning project for drobbins, who essentially was clueless on how to leverage object-orientated design-techniques in his code writing; ebuild maintainers are famous quibblers, who hold back needed changes.
  • Gentoo developer relations team is composed of non-techies who take it upon themselves to interfere with technical discussions by eliminating developers who have the wherewithall to understand how to criticize a system.  Eliminating sources of critique leads to ignorant fanboyism -- the fanboyism that gentoo users are utterly famous for.  This was brought to my attention to Gentoo developers themselves, some of whom left the project, others still are there (one even is still in developer relations supporting the status quo as usual).
  • Gentoo doesn't really like to enable choices if that means a fundamental change is needed.  Take for example the constant question: when is the next kernel release going to hit the tree (live trees are great!)?  Gentoo portage tracks the size of each tarball as well as the hash so a developer can't write an ebuild to support arbitrary versions that authenticate source integrity with gnupg keys automatically.  I was banned from freenode's Gentoo channel for suggesting that this was a limitation that was unneeded.  The response was that it was faster -- while it isn't really.  I was banned before I had an opportunity to explain myself -- while an IO-bound operation is happening the overhead to compute a checksum is negligible, and the IO has already been cached in the VM-layer by downloading it, that the time wasted is so small compared to the flexibility, and remember that there's only time saved if there's an error.  Bailing out with an error sooner rather than later isn't much help if there's still a problem -- sooner as in a second or two on average.

That's just my issues with Gentoo behavior and release engineering.  There are other issues I have with the distro of a technical nature that I won't go into for now, since my expertise is really release engineering.  I'm sure others can pitch in where I left off (or check out ).  Everything I mention here as being a problem is not a problem with Source Mage.  We chose to ignore what Gentoo was doing despite their popularity and simply ended up with a better system.

For example, when newbies claim that upgrading Gentoo broke their boxes, they are told to read the docs -- why do they need to read the docs for simple upgrades?  The system shouldn't let itself get HOSED by a simple update.  Sure, break a service or something and that's no big deal, but absolutely HOSE the system due to a g++ ABI change is a simple matter to fix -- well, it might not be so simple if you're using, say, Portage, written in Python that may be optionally linked to g++.  Source Mage lets the package maintainer have so much control that they can actually integrate in almost anything they'd need and override virtually every default action in sorcery to keep an update working while not requiring user intervention, even in the case of the most dangerous updates, like glibc, ncurses, bash, (and Python).

In theory, might be able to replace many of the problems with Portage, but only if the Gentoo developers are willing to accept this drastic a change.  I haven't looked into it too deeply, but it looks as if it's better architected and immune from a number of the existing problems.  Let's hope it doesn't introduce many other problems already solved by Portage.

Seth Woolley's Blog sourcemage

another man viewer dumb(0)


Read the paragraph that reads:

        However,  if  name  contains  a slash (/) then man
interprets it as a file specification, so that you can  do
man ./foo.5 or even man /cd/foo/bar.1.gz.


Looks like there was an attempt to sanitize cgi_section but not cgi_command -- also looks like it was hacked a bit and the sanitation may have been there, but removed later.

Seth Woolley's Blog webdevel security

dns blacklists, spam control, and net neutrality(1)


On four occassions in the past month I've sent email and had it bounce back due to DNS blacklists (most specifically SORBS) since I send email from a cable modem range.  These four instances were:

  • A university in Greece, while sending email to a professor.
  • A university in the Czech Republic, another to a professor.
  • A smaller email service provider to another Source Mage developer.
  • A custom email service provider in Portland.  I re-sent the email from another account, but received no reply as well.

What particularly disturbs me is that these methods have not merely decided to block based on a series of factors, but on an entire class of users.  The whole debate about a neutral net has broken down with the email system.  Users who can administer their own boxes have no way out of the blacklist, even by request, from SORBS.  SORBS, thus, exists only to serve corporate interests who want to Balkanize the web into classes of "pay extra" and "users who shall have no democratizing force".

If a user wants to use a blacklist, that's fine.  But most of these people having their email blacklisted have no idea what is going on.

More thoughts on blacklists can be found here:\


In one case, I was attempting to notify the person of a security vulnerability in some of their code.  Since the IT department of the university is responsible for this blacklisting and they are also directly responsible for the security of said network and I have no way to communicate with them, I will simply publish the results for all to see here:

Read the first paragraph -- how it points out that arguments containing a / are interpreted as files.  My manual page viewer does not have this problem because I knew man had this behavior.

Oddly, no mention is made in the above manual.


So we can do something like the above url -- since he had no idea it did that, despite this package being a rewrite.

I sent the author an email notifying of this, but, SORBS blacklisted my email.  Thanks to SORBS, you all have first-disclosure.

Seth Woolley's Blog politics security

can capitalism save the environment?(0)

Critique has a June 2 article up about capitalism and the environment.  (No link provided because I have a policy of not linking to blogs collecting ad revenue.)  I left this comment there as a critique:

It takes a certain level of ignorance to presume that if we put environmental protection in the hands of an unrestricted monetary system that somebody who wants the land for externalizing destruction and internalizing profits wouldn't pay the highest price for it given the short-term economic gain that can be had in a single lifetime versus the long-term economic gain that would be required for unbridled dollarism to actually value conservation.

Land we would like to preserve will always have some resources that can be privatized, used, and destroyed -- that is until said resource extraction has completed its continuing course of self-destruction.

Not that the limited success highlighted in the article only describes an accidental niche whose time will expire the moment development takes an interest in the other resources on the land.

However, if we actually decided to internalize the cost of lost resources by charging for the extraction of resources at the same rate used to replace the resource, we might actually have a monetary system that would work, but no libertarian would ever support such a system of full-cost accounting.  If they did, they'd be a member of the Green Party who already supports such taxes.  These taxes could eliminate sales and income taxes in most places.  Enforcement could be localized and trade could be allowed based on calculating in the costs of exploiting comparative advantage, as well, with those countries that have no such legal framework.  Natural efficiencies would develop, natural trade routes would open, and people would be paying <em>actual</em> costs, with the help of a market system.

Instead what I hear is that economic progress would come to a halt and even retrograde if we actually internalized ecological costs.  I only see that as a tacit admission that the capitalistic system couldn't cope with sustainability, and it only drives those who care about the environment into socialism.

Can capitalism be reformed to internalize losses to the public welfare?  Perhaps it can, but it won't through the current libertarian ideology of socializing risk and destruction and privatizing profits.  This article completely misses that mark.

Seth Woolley's Blog politics

memorial day update(0)


It's memorial day here, and I'm trying to avoid remembering the current spate of wars of aggression that we're in.

So to distract me, I thought I'd post a picture of the time I got my leg cut up by guitar string ends on a guitar from some punk band in Oakland who decided that moshing crazily outside of the mosh pit (where I wasn't) was cool.

Seth's Cut Up Leg You can download it in three sizes:


Seth Woolley's Blog reallife

rickie has a teaching job(0)


My wife now has an offer from the Oakland Unified School District to teach this fall.  What building she's in is undetermined yet, but I'm hoping for Oakland High School.  It's fairly close.

Oakland has a 58% graduation rate.  There's a city called Piedmont inside the city of Oakland that has a 99.8% graduation rate (1 dropped out), but it also has money and is virtually all white.  That's over a thousand kids a year for Oakland who are left behind.  Consider the state takeover, as well, that's the worse figure since numbers go back to '91.

Check it out for yourself here:

Seth Woolley's Blog reallife

image support to fsweblog added(0)


A Picture of SethI added entry image support for fsweblog.

inside [img][/img] you put:


loc is left/center/right.  center blocks wrapping around it.  left and right wrap text around the image, but of course this is all controlled by CSS, so what wrapping takes place isn't even in the blog code.

Update: added topright to place the image in the topright in the header area (moved farther to the top right) to match the front page.

Seth Woolley's Blog bloginfo

manual page viewer caches now(0)


I added some logic to make the manual page viewer cache now:

I also installed konqueror and the free opera to take a look at their css rendering.  It looks like I'll have to do some finagling to get the CSS in the footers of the man page style to line up correctly.

Seth Woolley's Blog bloginfo

olympic mountains, strait of juan de fuca, and the puget sound(0)


Now that I can inline images in my blog too, I thought I'd show you one of my favorite panoramas I've taken.

A panorama of the olympic peninsula You can download it in four sizes:


Seth Woolley's Blog photography reallife

life at panasas(0)


So I'm finally settling down to life in the Bay Area.  I'm living in Oakland, carpooling with my former boss to Fremont (Will, the one who hired my at my current job).  He got a new job directing QA over at .  Meanwhile, I'm doing his work and then some.  I'd like to thank Andrew for getting me this job, even though he decided to move over to to work on their Linux deployment.  If you know anybody who would like to work at , knows or can learn TCL, and is very logical, let me know and I'll see if their resume's any good and forward it up the chain of command if so.

Seth Woolley's Blog reallife

vexel vs vector(1)


Vexels can look however they want, but they must be done in a raster format/medium somewhere along the way (this means vector art saved for the web doesn't count) .  There's no one specific style in the definition of a vexel.  The term "vector-graphic style" means one has a wide range of latitude.  No one person can define a more narrow definition for vexel than is seen below, and as always, it's a matter of artistic interpretation what comprises most art.


A few years ago I grew tired of people doing vector-like graphics in Photoshop and calling them "vectors".  Vector-style, yes, but not actual vectors.  So I suggested the term "Vexel" for rasters done in the vector-style (from vector/pixel) so people could refer to the style and be completely specific as to what they meant.  The term caught on much to my surprise.

I never really intended to be the authority on vexels.  Honestly, I'd rather other people debate it and settle it themselves, but it appears there's been an impasse in the debate and events turned toward me.

I was approached by a couple people from my distant past ;) to clarify what exactly I meant when I came up with the term vexel.  What follows is the most terse definition:

vexel. v.,v.i.
The act of creating a vexel. (vexelling, vexelled, vexeller, vexellation, vexels)
vexel. n.
A form of digital raster art done to appear as vector-graphic style with raster-medium-specific features.

The medium is "raster", the style is "vector".  If you are using a vector medium, you aren't using a raster medium.  Watercolor might look like oil when you take a picture to all but a discriminating eye, but the mode of creation is still watercolor or oil.  By the same token, you can create all the line art you want as long as you are using the raster medium for manipulation (creation is even better) some of the time.

A vector image, for those who don't know, is an infinitely resizable representation of line segments and polygones with graphical attributes (color, width, bezier splines, etc.).  See Scalable Vector Graphics or Adobe Illustrator for archetypical examples.  When you view it on the monitor or printer it is converted to a raster image (an image composed of a grid/matrix of pixels) at some point.  All printers rasterize, mostly very late in the process inside the print processor.  Monitors generally do the rasterizing accelerated in hardware.  In 3D graphics, the rasterization is called "rendering", mostly because the algorithms for creating 3D graphics are a lot more complex and thus gain the term "render", which connotes some creative process.  For 2D rasters from 2D vectors, there's typically very little creativity involved, otherwise the term render could be used.

When the term vexel was originally created, the community was using raster graphic programs like Photoshop and Paint Shop Pro to draw the vectors by hand.  Apparently there's some discussion around the conversion of vector graphics to rasters and calling them vexels.  Artistically, I consider them vector images unless they've been touched-up with raster-specific manipulation that makes it lose its ability to be represented in a vector-style descriptive space.  The raster-specific features are a sine qua non (Latin, literally: without which, not) of vexels, otherwise it's just a vector-style art.  All vector-style art gets rasterized at some point in time to be represented, so that's a given.  I'd rather not confound the word vector with vexel and vice versa.  I intended it to be a different word for a totally new style being developed in the digital age.


If you have any comments to give, my current email is down as I complete my move, so use my work email at swoolley-at-panasas*dot*com and include the term "vexel" in the subject line so I can properly sort it out.

Seth Woolley's Blog vexels

new job(0)


I've taken a position with Panasas, Inc. in Fremont, California (Southeast SF Bay Area) as a Software Engineer.  I'll be flying in on Jan 2.

Most of my time lately has been planning for the move and finding and training my replacement at Broadway Medical Clinic, so I haven't done much around Source Mage as I would have liked.  When I get settled in, things should start to pick up again.

I'm looking for places to stay permanently around Piedmont.  I'll be renting out my house when Rickie finishes her ESOL program for an additional endorsement to her teaching license in the coming months, probably around April, so if you're interested in renting a home in Portland, Oregon's inner NE, let me know.

Seth Woolley's Blog reallife

sourcemage conversion of md5 to sha512 95% complete(0)


I've spent the last few days mangling the entire grimoire over to the new unpack_file API for validating sources using high bit hashes:

A few sed and perl scripts and waiting for the SCM to resolve changes between integrates and now it's mostly done.  I have a few leftover spells that I don't have source files for that I wasn't able to regenerate the proper SHA512 for it.

In other news, now I'm third place in the grimoire bullet rankings:

Seth Woolley's Blog sourcemage security

hashsum patched for 64-bit(0)


In addition to some other 64-bit porting I've done, I've just finished porting hashsum over to 64-bit so it can be compiled on x86_64 architecture (AMD Opteron and Athlon 64 chips as well as Intel Xeon EM64T chips).\

Seth Woolley's Blog security

AJAX to Balkanize the web(0)


I've written on AJAX previously, so you are aware of my stance on AJAX, but my fears of balkanization are coming to fruition.

Take for example, Gates' recent memos on Web 2.0.  Microsoft is finally deciding that they can not only leverage their use of a web browser throughout their own products on a client workstation install, but they can turn Microsoft Office into a web service.

Why is this significant?  Because before AJAX, there was literally no reason to enable javascript in a browser.  Now software providers are finding more and more ways to make it a requirement.  Instead of thin services relying upon the basic CGI process, we'll have thick (in terms of bandwidth) services that will be ever so uselessly interactive.  Bandwidth requirements go up, computing power needs on the client go up, more Intel Processors ship, the ISPs justify running more and more bandwidth to homes, thick xml-based protocols promulgate, and all the corporations are happy.

Why is this bad for us?

First, it's bad because the developing world is not going to catch up to the system requirements any time soon.  The developing world is thus not able to afford the thick clients and pipes needed for an AJAX-based Web 2.0.

Second, As more and more services are required to be download-based, asymmetry continues to develop in the ISP's motivation to deliver bandwidth to end users.  Upload prices will remain high as they reap large rewards from corporations that desire to be in on the Web 2.0 world that they develop.  Download bandwidth prices drop, but the only parties able to deliver the content will be corporations.

Thus the Web 2.0, far from being the democratic medium it was supposed to be, becomes fractured by ever-growing bandwidth and clock cycle differentiation.  Peer-to-peer systems and other democratic forms of communication become more and more unfeasable as the asymmetry between download and upload speed continues to grow.  Web 2.0 becomes more broadcast-based and less peer-to-peer.  Democracy flounders.

So, how do we combat this?  Well, I have a few ides.  Content providers who care can pursue the following policies:

First, they should continue to provide standards-compliant and accessibility-driven websites that follow core protocols and ignore implementing core utility features in javascript.  The semantic web is not a javascript world.  The W3C, the IETF, nor any working group of the Internet Society did not standardize ECMAscript/javascript.  ECMA did.  ECMA is essentially clueless on policy decisions.

Second, instead of making crazy, proprietary thick-clients that only use part of the standards stack, we should continue to stick to W3C-based protocols such as XHTML, CSS, and XSTL.  I believe the free software community has done a pretty good job with this, especially in regard to open documentation and document formats.

Third, instead of promulgating arbitrary XML schemas, we need to ensure that the XML schemas are well-documented.  Microsoft, for example releases completely undocumented XML schemas.  Some free software projects also have a problem with this, in that they are all documented in implementation, but they have no formal documentation that third party developers can use to develop against while expecting stability.

Fourth, if you have to use AJAX, make sure that it's got a very good reason, that it is accessibility-friendly, and that it's well-documented such that people can easily write accessible interfaces to the XML to present it using ones own scripts.

By following some simple guidelines (more are welcome), we can make sure Web 2.0 doesn't Balkanize the Internet into the content-providers and content-consumers, undemocratically.  Why will we prevail?  Because the very existince of these alternatives allows the continued interconnectedness of under-interconnected populaces.  With an alternative system provided, people will have a choice of participating in either system freely, and once the infrastructure is in place, created by free software and the cooperation of developing countries' governments to fund cheap, mass hardware deployments (hopefully enabled by the rejection of foreign patents) the content classes can create their private networks without risking the destruction of the public commons already created.

That still leaves only one major trick we have to perform: the democratization of ideas through the rejection of software and trivial hardware patents.  Software patents and absurd hardware patent enforcement will eliminate all the rosiness of my outlook and allow the content producers to monopolize, through a government-enforced monopoly, all the technologies that would have allowed the democracy of ideas to flourish.

Seth Woolley's Blog politics webdevel

Portland Business Journal Survey(0)


Business Pulse: Should government expand the use of tax incentives?

As global competition heats up, should government expand the use of tax incentives to entice companies to relocate or expand here?

Should the government expand the use of tax credits? "No."


Absolutely no, let the small businesses have a chance.  Giving our tax incentives to companies to relocate is a bad game theoretic solution.  Giving tax incentives to comanies already here to stay here is also a bad game theoretic solution.  Putting a tax on "profit leaving" (but not exchange money) and "luxury and finished goods entering" (but not purchases intended as components) the governmental jurisdiction are incentives that can help reinvigorate our local economy and increase our production to the point that we can become an economic powerhouse.

In short, we should expand the use of taxes, not tax credits -- our social services are already too underfunded than they need to be, and economic activity in the upper classes is enough to sustain us so long as we tax it (by not eliminating capital gains taxes and shifting taxes away from payroll -- as payroll funds are the main driver of economic sustainability).  Increasing profits that are already acting as enough of an incentive gives a lower marginal utility than increasing the ability of people to actually purchase economic goods.

Businesses that are too unethical and that desire even more profits than they need to be sustainable should simply not be allowed to flourish.  The right is the pursuit of happiness, not consumptive excess.

Seth Woolley's Blog politics

Linux Weekly News Article Published(0)


I got published by Linux Weekly News!

You can read it here:

It's about Source Mage GNU/Linux , for which I am the QA Team Leader.

Seth Woolley's Blog sourcemage

wordpress hashcash broken(0)


As a proof of concept, I wrote a shell script to break hashcash.  It works on the author's own blog:

CPID="$(wget -O - "$SITE$POST" 2>/dev/null |
          grep 'comment_post_ID' | cut -d'"' -f 14)"
MD5="$(wget -O - "$SITE$POST" 2>/dev/null |
          grep '<form onsubmit' | cut -d"'" -f2 |
          tr -d '\n' | md5sum | cut -d' ' -f1)"
for i in 34; do  # here just change 34 to a list of guesses of what
                 # the length of ABSPATH is, 34 in this example
  wget --post-data="author=$AUTHOR&email=$EMAIL&url=$URL&comment=$COMMENT&submit=Submit+Comment&comment_post_ID=$CPID&$MD5=$(($CPID * $i))" $SITE/wp-comments-post.php

He uses javascript "obfuscation" to make it hard for people to find his installs.  Just look for this string, which isn't obfuscated on any install:

(str){var bin=Array();var mask=(1<<8)-1;for(var i=0;i<str.length*8;i+=8)bin[i>>5]|=(str.charCodeAt(i/8)&mask)<<(i%32);return bin;}

or just do this: ;)

Elliot Back thinks people can't code around his obfuscation.  It's rather trivial to defeat -- and this script can spam his site one after another with a little addition or two -- determining the length of ABSPATH for a single site doesn't take that long either, and once you have it, it's the same for all posts.  He appears to does some fancy stuff, too "per-user", but a spammer isn't going to be "a user" or bother to become one.

Of course, you can just "interpret" his javascript, too, like some spammers already can do, but that can be more effort than it's worth.

Seth Woolley's Blog webdevel security

todo part 1(0)


write whitepaper on a more cooperative and secure blogging ecosystem avoiding proprietary buzzwords and using existing technology:

  • scp/ssh instead of xmlrpc to manage blog tool:
    • unix permissions for drafts, publishing, and comment control instead of xmlrpc
    • can also be used for group blogging if need be (think of symlinks too)
    • no stored passwords to give up (contrast with openid and further contrast that with openpgp)
  • http-referer analysis instead of pingback/trackback


  • added more style support to blog posts (done)
  • built-in refer(r)er analysis (done)
  • unique id for comments and url forwarding (beware http response splitting) allows easy comment permalinks (done)
  • possible .plan/fingerd support (done)
  • make more arrays into hashes for easier readability (done)
  • factorize common code in templates and make search results templates (done)
  • possibly remove pointers to raw text files, or change them so title points back into blog (shelved)
  • rss feed should point to blog, instead of raw files, based on toggle (done)
  • 404 PATH_INFO support for comments and blogs in fsweblog (done)
  • 404 template in woolweb (done)

Seth Woolley's Blog bloginfo

dot plan suppot added(0)


I've added .plan support to this blog tool (fsweblog).  It will make a latest blog symlink to a known file that can be symlinked to via the user's .plan file.

Seth Woolley's Blog bloginfo

more web work(0)


I've revamped the style a bit for this website to look even more like unix manuals.  I hope unix users will get a kick out of it.  I planned on implementing a "gnu info" look, too, but I didn't want a bad interface to be made even worse.  Enjoy and feedback is welcome.

Seth Woolley's Blog bloginfo

internet is back(0)


I'm back on the Internet and I've upgraded my net connection to 5mbit download / 1mbit upload, from 1.5mbit download / 1mbit upload.  That should take effect Monday.

A really cool hack would be if nano respected backslash line continuation with the justification command and line wrapping when given a switch on startup.  I've poured over the code and it doesn't look like too difficult a hack, although I must postpone it for lack of time.  Instead, I'll make the blog support line continuation first.

Seth Woolley's Blog reallife

internet outage(0)


As I type this, I am disconnected from the Internet.  A server at Qwest has gone out and my DSL is inactive.

At 10:30 or so this morning the Internet sort of started dying from home, while I was reading my email from work.  Slowly.

At first, I had 60% packet loss, with sporadic total failures.  Then around three or four o'clock, I completely lost access and it wouldn't come back.

So now, with nothing to do or read, I sit here making this entry to memorialize the shamed feeling of disconnectedness, when instant access to the library of information known as the Internet is gone.

Seth Woolley's Blog reallife

AJAX utility and Ruby On Rails(0)


I've been reading a bit about Ruby On Rails ( ), and the hype surrounding it -- and I think for a minimalist such as myself it is intriguing.  First, I've always abhored Javascript because it's like letting an untrusted user run almost arbitrary code in your machine's security context.  Of course sandboxes are an attempt to mitigate that, but the risk of simulating the presentation too well is always at hand.  So while Ruby On Rails seems interesting, I'm not sure how much I'd like it.

Yes, Ruby appears to be a language that's taken a lot of input from the Python and Perl (and LISP and PHP, et cetera) communities and done the Right Thing most steps of the way, and it's the next language I want to spend a lot of time with, but this integrated JavaScript thing -- I'm just left with mixed feelings.  Pehaps if it were done in Python I could keep myself untainted by both ugly concepts, but this is Ruby, and I have to consider it.

That said, I've considered it, and I can see a place for AJAX given such nice apps as, but when I have a text browser up, I really just need to get work done, and the more AJAX, the more I fear the web will Balkanize into AJAX-graphical-manipulation worlds and the rest of the world, where text browsers are useful.  My philosophy thus, as it always has been, is to keep JavaScript out of the required interface elements and into a time-added-interface for those who don't grok text-based interfaces so well.  I always find, instead that text-based interfaces are simply faster than graphical interfaces in most cases.  True, I won't part with my mouse just yet, and it has its place, but I think 99% of the time, I really just want to use my Vulcan Mind Meld into my keyboard for interfacing into my computer.

Seth Woolley's Blog webdevel

fsweblog progress so far(0)


Well, I've made quite some progress on fsweblog.  Here's a short review:

First, I've cleaned up a bit of the code I've wanted to clean up regarding templates, and my next step will probably be to write a plugin architecture for the variable ties to the templates.  If you're not familiar with variable ties in perl, it's kind of like operator overloading, so for example when a variable is accessed, you can have it call a function, and since it uses a filesystem that has built-in modification times, you can easily setup a caching system.

But before I do that, I've been considering how to make the comment metadata a bit more friendly. Instead of using the entire title to store the metadata, I think it will be better to store such data in symlinks in the filesystem.  As most peopel are probably not aware, in unix, symbolic links can simply store any free form text up to MAXPATHLEN (4096 on linux, 1024 on many BSD flavors).  This would be a great place to store the cryptographic hashes, and the author, for example.  One can even make a file that is a symlink to the blog be the reference for how comments are commented to.  This can even allow a nice heirarchy to be stored for displaying threaded comments, if say you are replying to a comment instead of to a plain entry.  And with two directions of links, you can establish a full unidirectional graph that can be traversed with speed as fast as the filesystem file can be searched (which on, for example, reiserfs, is very fast).

Seth Woolley's Blog bloginfo

fsweblog updates and a forest protest(0)


So, I've done some hacking on fsweblog, here, and, so far, I've changed how I refer to the filesystem times so that you can see both status change and file modification times (ctime and mtime), added a regular expression searching system, and did a few tweaks here and there to my blog style to make it work well in IE.

No, I'm not going to make a web front end to posting.  The shell is the way things should be done.  However, I might add a way to auto-update the .plan file for fingerd to respond to.


Secondly, I thought I should mention what I did over the Fourth of July Weekend.  On Friday, I took a biodiesel bus (it's actually a regular bus but filled with biodiesel, as no mods are actually needed if you're using filtered and refined biodiesel) named "COOL" that a couple of my friends bought on credit cards for using on logging protests.  This group known as "Back 2 the WALL" reformed after the original WALL (Witness Against Lawless Logging).  WALL was formed out of the now famous Salvage Rider that Clinton signed in 1996.

After numerous lawsuits challenging salvage legality on particulars and environmental laws, much of the forests were enjoined and protected, and some normalcy came back to the forests after lots of tree sits and civil disobedience delayed logging on national forest lands while the Roadless Areas soon gained some sort of protection as well under Clinton.

Then Bush was selected, and WALL reinvented itself as B2TW ( ).  Bush made cutting down national forests (public land) a priority, and used the Brown and Biscuit fires to showcase his new "forestry management" plan that was guised as a fire management plan.

What most people may not realize is that in Oregon (especially Southern and Eastern), forest fires are quite common and serve to clear underbrush.  In a mature forest, there's a top canopy that prevents fires from burning as intensely and the tree bark is often thick enough to avoid tree death.  Also, they tend to burn in a "mosaic" pattern, getting spots here and there, and not completely devastating the area.

What Bush's forestry plan does is throw out the window all forestry science and declare all burned areas fit for "salvage" because he considers anything uncut as money to the logging industry (his constituents) -- nevermind that this is not land they own, it's land that belongs to all of us and is reserved for public use for all, not private profit for some.

The Bush Administration, through the National Forest Service (which is basically a front for the logging industry as most people hired into it are there for the purpose of selling off national forests), declared the 2002 and 2003 fire salvages in Oregon "an emergency" in seeking to get the logs cut before judicial review could proceed under the claim that "rot" would set in and "damage profits".

However, talk to any student of environmental science and they tell you that the process of dead trees rotting keeps the soil nutrients in the ecosystem.  By taking logs out and using only one kind of tree, they do a number of fatal actions to the ecosystem.  First, as any agricultural scientist knows, they are removing certain nutrients from the soil that other plants can provide, but the natural ecosystem is prevented from providing it.  In agricultural science, chemicals and toxins are used to regulate nutrients.  Forests cannot and should not have this done to them -- for one, since they tend to not be in flat lands, it's very difficult on the soil and nature to use them, and fertilizers are often made out of petroleum products.  A natural ecosystem will have, for example, a complete nitrogen cycle.  In unnatural environments, they tend to complete the nitrogen using shipped-in nitrogen products.

Another one of the worst things that can happen to a forest ecology is erosion.  This is accomplished by the sheer act of cutting, burning slag, and road building.  One of the keys to the forest is existing logging roads.  The Bush Administration loves the idea that they can start logging in a burned mosaic and justify further timber sales outside of the burned area.  In fact, loggers can take "green trees" from a salvage just by felling a brown tree onto it.  The additional damage that roads do is that they prevent wildlife from traveling, as big game tend to keep their distance from large roads.

Well, I should get to the point.  On Friday, see, I went to a logging protest on 8-mile road on highway 199 near Grant's Pass, Oregon.  The Thursday night before we arrived from Stumptown (Portland) and camped out with a bunch of Earth First! activists ( ) at a local State Park.  From there, in the morning, we visited the Forest Service headquarters in Grant's Pass and met up with the 40' tour bus owned by the Oxygen Collective ( ).  After a short protest of the extension of the road closure (to all except logging trucks) covered by the local television media, we tried to get a permit to go witness the logging happening.  After that was denied, we went up to the road closure line in our biodiesel busses.  Since a roadblock was setup, it made it hard to do anything, so the guard was talked into letting some people walk in, however, since the site was so many miles up the hill, it was done symbolically, for a few hundred yards, to protest the constitutionality of the closure (it's being challenged in federal court, currently).

After that, we went a mile down to the Illinois River, went skinny-dipping, and had lunch.

Later that weekend, I went to a Croquet party with a few local Pacific Green Party members, and yesterday talked with Joe Rowe regarding his work on the local Pacific Green Party database and how it can be integrated with the state party database.

Seth Woolley's Blog bloginfo politics

Revamped Website Style(0)


So, I've recently revamped my website style: (or ).

New additions are that I've taken the manual page style and translated it to the rest of the website.  There are some issues with centering in IE because it won't work to spec, and I might fix them later with some IE hacks, but I'd rather not spend my time on it.  Instead, I just redirect IE users to download Mozilla Firefox.  I figure I'm doing them a favor.

So every page should look like the manual page viewer ( ), even the image gallery, although I need to eventually regenerate the html so that the images are small enough to fit inside the white pages.

In other news, I've shelved my plan to revamp the security of wordpress by isolating the 256 SELECT queries (and other sql constructs) into a proper code sandbox and library.  I get everything I want out of my own blog tool, and I figure anybody who is crutched into using wordpress deserves all their exploits and regressions.  I'm particularly still pissed off that they regressed a vulnerability that I reported in October of 2003 after they introduced their "template" coding.  Come on people (not just wordpress developers), get your act together and separate the SQL from the presentational logic.  Learn to do it right _the first time_.

(Notice how on the post below, I represent wrapped urls (and anything else long) backslash-line-continuation style. :) That's just sweet.)

Seth Woolley's Blog bloginfo

TrackBack and PingBack revisited(0)


A short while after TrackBack and PingBack were introduced, I wrote a blog entitled "The Problems with TrackBack and PingBack" where I laid out that both were a completely useless addition to the web and only worked to increase security risks by adding a plethora of complex code additions.

It turns out that I was correct.\

Rather than repeating what I wrote that has since been lost to a harddrive crash, I found a good summary of what to do instead here:

I wish I had a copy of what I wrote, as it predates that entry by six months, but that will have to suffice.

So in summary, please, disable trackback and pingback and use the existing methods we already have.

For clarification, the existing methods are:

  • for comment-aggregation, use a blog that allows comments to be edited by the user.  A "feature" of trackback is the "remote comment".  Post a link to the comment in your blog, or post a link to the remote blog of the link back to your comment.  This prevents unneeded duplication as well.
  • for link-aggregation, use a referrer analyzer that validates the legitimacy of referrers.

Seth Woolley's Blog webdevel security

test blog title(0)


This is a test blog.

Seth Woolley's Blog bloginfo