TRC Map View

TRC includes a map view that shows you the voters as pins on a map. This is a standard view similar to what you’d see in any canvassing app. Since it runs directly in the browser, there’s no additional installation step needed.

The map view is exactly the same underlying information as in the List View, so you’re encouraged to use whichever view makes you most productive.  You can make changes in the map view, and then immediately switch to the List View and see them.

A common pattern is to use Geofencing to carve up a large region into smaller neighborhoods, and then you can use the map view to canvass those neighborhoods.

Using the map view

The pins are color coded by party ID. Hollow pins are doors that have already been visited. You can go back and edit answers on visited doors.

trc-map-1

You can touch a pin to see the voters at that household:

trc-map-2

If nobody is home, you can mark “Result Of Contact” for the door and move on. Else, you can select an individual to see their information and record the canvassing results.

Be sure to

  1. fill out the Party ID,
  2. fill out whether they’re a supporter, and
  3. result of contact.
  4. hit the “Save” button

trc-map-3

Getting to the map view

You can get to the map view by touching the “View Map” buttons on the standard walking list.

Offline usage

The map view leverages HTML5 local storage support to provide an offline experience even though it runs in a browser.

This means that you can load the map view while you have an internet connection, and then canvass offline, and then upload the results when you’re done. However, it’s highly encouraged to canvass with a cel connection so that your results are immediately uploaded. Even if you temporarily lose connectivity, your results will be uploaded when you regain a connection.

To verify your results are all uploaded, on the main page, touch “Local Storage” in the upper right corner. That will take you to a page like this:

Hit the refresh button to pull the current status. If you have outstanding changes and running offline, you’ll  see something like this:

trc-map-offline-1

Once you’re back online, hit the “Refresh” button again once online and verify the “Number of Changes not yet uploaded” is 0.

trc-map-offline-2

 

 

How to filter lists

TRC lets you filter your lists.  The filter lets you query for patterns or create  a new share code that lets you then share your filtered view with others  or use your filtered view with other parts of TRC like printing and maps.

Accessing the Filter

You can access filtering via the standard list view.  Click the filter icon in the top-left view:

trc-filter-icon

You can also access Filter from the plugin list.

Common things to filter on are:

  • History –   this is how likely somebody is to actually vote.
  • Party Id  – this is the party affiliation.

Applying filters

There are several views for filtering.  The “basic” tab lets you qickly filter on History, PartyId, and Age.

filter_basic

 

You can also switch to the “Query Builder” tab to create a more complex query. For example, this query is for any women with Party equal to 1 and that live in the specified zipcode or city.

filter_query

Saving the filter

Once you run your query, you can save it:

filter_save

The “Save Query” button will prompt you for a name for this filter. When you hit the back button to go back to the List View, you’ll see it on the sheet list. At this point, the filter acts just like any regular sheet, and you can share it, print it, or use it with any other plugin.

trc-after-filter

Click on “walking list” next to that filter, and you’re now viewing just within the filter.

You can click “share this” to share just this filter with another volunteer.

You can click “view entire walking list” to get back to the full list and possible create new filters.

 

Technical notes

Filtering creates a new “child” sheet that applies a filter-expression to extract a subset of the rows from the original (“parent”) sheet. The filter creates a a view that shares the same sandbox as the original sheet, so all changes in the child are instantly visible in the parent. However, the child sheet still maintains its own history tracking and audit logs.

 

 

 

The TRC Sandbox

The TRC canvassing app is sitting in front of a powerful general-purpose service for sharing tabular data files like CSVs.

This provides:

  1. Integrations – a means to two-way sync that tabular data with external data sources (like NationBuilder, Salesforce, Google sheets, dropbox, etc)
  2. User-management – you can share out a sheet with users, track per-user activity, and revoke permissions.
  3. Source Control – TRC provides both branching and full history tracking. Branching means you can create a “child” sheet that has a subset view of the “parent” sheet. Full history tracking means you can track every change.
  4. A compute engine – TRC has a general compute fabric for process joins, merges, and aggregations on your data.

Sandbox and Isolation

Each campaign gets its own isolated view of the data, which we call a “sandbox”.  This means that two candidates can running against each other for the same position against each other in a primary,

Sandboxes can then be further partitioned among your volunteers.

trc-overview

For example, R1…R5 are individual records.   User U1 is synchronizing the data with some external data source, such as NationBuilder or Salesforce.  S1 refers to U1’s sandbox.

U1 then shares out subsets of the sheet with volunteers on the campaign.  This creates a new sandbox S2 for User U2, which has access to rows R3,R4. And another new sandbox, S3, for users U5,U6,U7 which get access to R1 and R2.  Since U5,U6, U7 are in the same sandbox (S3), they can see each other’s changes.

The system is a distributed hierarchy, so any operation U1 can do in S1; U2 can do in S2. U2 is fully empowered within their sandbox! So U2 can divide their own sandbox and create a new sandbox for U3 and U4 to each edit R4.  Since U3 and U4 each have their own sandbox (in contrast to U5,U6,U7 who all share a sandbox),  U3 and U4 can edit the same record without conflicting with each other.   Their parent (U2) can then resolve any conflict.

This has several benefits:

  1. It allows multiple candidates to run against each other in a primary. They each get their own sandbox.
  2. Within a sandbox, it ensures that your data is never overwritten.
  3. It allows an untrusted people to submit data to your campaign. The data is just quarantined in its own sandbox and not integrated until proven safe.
  4. The full audit log allows purging bad data even after an integration.

TRC ListView

TRC’s default view is the “ListView”, which looks like a digital clipboard. Names are organized by street.   There are also other views, such as the common map view.

See http://bit.ly/1U1sgjJ  for a youtube demo.

The view looks like this:

trc-list-view

In the ListView, each row is a voter. Voters are grouped by address so that you can easily identify all voters at a single household when you’re at the door.  You can collapse voters by streets for easy managing.  The grouping is zebra striped (yellow /  white + grey) for easy-reading. The stripe color is purely ascetic.

When you edit cells, they start off red, and then turn green when they’re uploaded to the server.

trc-list-view-detailed

This provides immediate feedback on upload. Cells are colored red when you edit and green when their result is uploaded to the cloud, so you get immediate piece of mind that your changes are safely saved.

TRC supports collaborative editing: when multiple canvassers are walking the same precinct, other canvasser updates show up on your sheet in realtime.

 

Standard columns:

The default view in TRC includes some standard columns:

  • Voter address, name, age, gender – this is commonly from public Secretary of State Voter Database (VRDB)
  • History – this is a percentage of likeliness to vote in the upcoming election. This is similar to the “how many of the last  4 elections did they vote in”.  It’s computed via a predictive model and measurably more reliable than just a “4 score”.
  • Party – this is a party identification.
  • Supporter – Does the voter support your campaign? This likely correlates with party, but is very important in tracking cross-over voters and non-partisan races.
  • Comments – – this lets a canvasser provide free-form notes.

See Pinned vs. Floating values  for more details on where the data comes from.  

Targeted Voters

TRC will bold the “targeted” voters to help canvassers prioritize who to visit. For example, a precinct may have 500 people but you only have time to talk to 50 voters. The “targeting” helps prioritize which ones to talk to. TRC uses a default targeting algorithm, or you can supply your own targets, or you can coordinate with Voter-Science to use analytics to get a special target list for your campaign.

We continue to show all the voters because if you happen to talk to a non-targeted voter, we want to make it easy to record that information. (Knowing who the opponents are makes it easier to guess who our guys are).

Get-Out-The-Vote

Washington State is vote-by-mail. That means that people are casting their votes 3 weeks before the election. During these ballot chase periods, names will also be crossed off as people have voted.   Voter-Science collects the matchbacks from the county auditors.  See Prepping for the ‘16 General for more details.

Sharing with TRC

When you visit the homepage at https://canvas.voter-science.com, you must first log in, and then you’ll see a list of all sheets that you currently have access to.

You can gain access to a sheet by:

  1. Creating a new sheet yourself.
  2. When somebody shares a sheet with you (see below!)
  3. Entering a secret “canvass code” to grant you access to a sheet. This is a form of sharing.

 

Logging in to TRC 

You can log into TRC with an email address or via Facebook.  Anybody can log into TRC, but you may have an empty account until you gain access to some sheets!

Both the mobile applications and website use the same login mechanism.

Email login

If you log in with your email address,  TRC will email a temporary ‘pin’ to that address to confirm that it’s actually your address. You can enter that pin and complete the login.

Facebook login

Alternatively, you can log in with Facebook.

  1. It’s convenient. Nobody wants to remember yet another password.
  2. Facebook is a secure system and has advanced security features like two-factor-authentication.

 

Secret Links and Canvass Codes 

 

An existing user, such as a campaign manager, may share a secret link with you that has an embedded password (a “canvass code”) that will grant you access to a sheet:

They look like this:

https://canvas.voter-science.com/home/sheet?code=SECRET

Be careful! These secret links grant full permission!

The link will first force you to log in, and then grant the current user permission to the sheet. It will then redirect to the sheet’s url and you are ready to use the sheet.  After this, you’ll see the sheet on the homepage https://canvas.voter-science.com, so you should only need to use the secret link once to gain initial access.

 

Sharing sections of your sheet with new volunteers

Suppose you’re granted a code for an entire city with 10,000 voters.

You can share out individual precincts with volunteers. On the main screen, you’ll see a list of the precincts and a “share this” button:

trc-precinct-list

 

When you hit the “Share this…” button, you can enter an email address and short personal message.

trc-share-dialog

 

And then the volunteer will get an email with their own canvas code (just for their precinct) and their own url link. They can receive the email on their smartphone and open the app directly from there and be ready to go.

This code will be different than your original code. Unique codes let the system identify different users.

FAQ

Who can I share with?

You could share a single precinct with multiple people and each would get their own unique code. This lets you identify each individual.

TRC does not charge per-user, so you are encouraged to share with as many people as you need.

Revoking codes

You can also revoke codes that you’ve shared out. For example, you may do this if you typed in the wrong email address.

Geek stuff

What a code is really doing is giving you access to a sandbox. You can share  a single sandbox with multiple people and use the per-user code to track which user is accessing the sandbox. By default, a legislative district split into precincts means that each precinct is a child sandbox.

Can I share URLs?

Yes, you can share browser URLs with anybody.  These URLs have a long number (a “sheet id”) that uniquely identifies the current sheet. For example:

https://canvas.voter-science.com/sheet/Index/e6f81e03af44436392ceaa909b5890cc

These urls are not secret. In other words, if user pastes this link into their browser, but does not have permission to the sheet, they will not be able to view the page.

In contrast, the secret canvas urls (which look like: https://canvas.voter-science.com/home/sheet?code=SECRET) , will grant permission to the current user, and then redirect (302) to a normal url with the sheet id.

If a secret URL is pasted in the browser, it will immediately do a permission check and then redirect (302) to a non-secret url. That ensures it’s safe to share urls you see in the browser.

 

Analyzing the WA Political Spectrum

It’s no secret that our political system has become increasingly polarized in recent years.  In fact, Pew Research regularly publishes studies on the topic and the situation is perhaps more grim than you might think.  Looking back over the past 60 years, Congress has never been so politically divided, and the result is D.C. gridlock.

So how bad is the situation here in Washington State?

After serving two terms now in the House of Representatives and being elected to caucus leadership, I have my opinions.  There’s certainly evidence to support the assertion that the Legislature is doing much better than Congress, but the partisan divide is alive and well in Olympia.  Rather than rely on anecdotal evidence, I was inspired by what Pew and others have done and set out to quantify the problem.

This slideshow requires JavaScript.

A couple of weeks ago I published my first analysis of the partisan distribution of the Washington State Legislature.  It also included a Partisan Leaderboard, calling out the members who are least and most likely to cross the aisle.

The methodology is simple:  The partisanship score for each floor vote is calculated as the percentage of Republican supporters minus the percentage of Democrat supporters, giving each a range from 100 (exclusively Republican) to -100 (exclusively Democrat) with unanimous votes scoring zero.  The member’s aggregate score is just the average of all the scores of floor votes they supported, minus the scores from those they opposed.

This approach is different than many other studies like the McCarty & Shor (2015) Measuring American Legislatures Project, which use the Political Courage Test (former National Political Awareness Test).  Theirs are based on subjective questionnaires, while our scores are based on recorded floor votes.

Now we’ve taken this analysis to the next level…

Screenshot

If you visit WhipStat.com, you’ll now find an interactive and animated version of our partisan analysis that allows you to filter by policy area, chamber and date range.  Each member is “stacked” in a histogram, allowing you to roll over the chart and see more detailed information in tooltips.  Also, the median Democrat and Republican scores are indicated as vertical lines.  (Technically, the median is more meaningful than the average for these scores, with half the members being above and half below the line.)

And finally, this updated analysis includes floor votes on amendments, so the scores may be slightly different than those previously published.

Capture

If you’d like to do further analysis, feel free to hit the Download button for a tab-delimited table of the charted data.

A few things become apparent when reviewing the results:

  • Democrats are typically over twice as partisan as Republicans, and even more so in years when there was divided control of the House and Senate.
  • The majority party will control the floor agenda, and so will exhibit more “cohesion” and be less likely to allow members to cross the aisle.
  • The Democrat-controlled House was over twice as likely than the Republican-controlled Senate to bring bills to the floor that were rejected by the opposing party.
  • Some members show willingness to regularly cross the aisle for specific policy areas that are important to them or their constituents.  Lobbyists and advocates should take note of these policy areas.

Conclusion

Our goal here is simple:  To provide some transparency into partisan behavior in our state legislature.

There’s nothing inherently wrong with being a partisan voter, and one could argue that a certain degree of caucus cohesion is necessary to be a functioning majority.  However, many constituents elected their representatives with the expectation that they would exercise independent thought and work aggressively across the aisle to get results.  What they may discover looking at this data is that some of their representatives are more loyal to their partisan ideology than they are to a process that involves compromise to find common ground.  Given the example being set in Washington D.C., I also think we should take this moment to recognize those members on both sides of the aisle with the courage to break the partisan gridlock and work in the best interests of our entire state.  If you consider yourself an independent, these members deserve your support.

 

Measuring the Trump Effect (Updated 11/15)

One of the most contentious elections in U.S. history is over and Donald J. Trump will be our next president.    Although Trump’s victory was moderately large in terms of the electoral vote, the closeness of the popular vote will prompt questions for Republicans moving forward, particularly in “blue” states such as Washington.  Just how did Trump do with Independent and soft Democrat voters in Washington state with whom Trump, though a polarizing figure, polled somewhat well since the early this year?

 

The question we wanted to answer was, “What exactly was the impact of Trump on Washington state races?”

 

Voter Science undertook a statistical modeling analysis of the early return data to assess Trump’s effect on local and statewide races.  We used data from ballot returns through Nov. 11th (with the understanding that final certified results will not be available for another several days).  Our statistical modeling utilized regression modeling using the form:

equation

Legislative district race results were modeled using Trump/Pence performance and other factors as predictors.  Performance deltas to Romney/Ryan 2012 were factored in to determine the detriment or improvement a legislative candidate received this cycle, what we’re calling the Trump Effect.

 

In general, we found that the Trump Effect amplified pre-existing voter preferences, giving Republican candidates a lift in predominantly “red” areas while dragging them down in places that would otherwise have been more likely to be closely contested.

Trump’s Impact on State Legislative Races: Tailwind or Drag?

For state legislative candidates, the Trump Effect depended largely on where you were.

The Trump Effect produced a “Trump Tailwind” for Republican legislative candidates in primarily Eastern and Southwest Washington.  The effect was particularly strong in Southwest Washington counties; Republican legislative candidates there received an average 5 to 6-point lift.

However, the Trump Effect was a net negative – “Trump Drag” – in many of Washington’s most populous counties, primarily those touching Interstate 5.  The Trump Drag was most evident in King County where the effect of the presidential ticket was to subtract an average of 5.2% from Republican legislative candidates.

Table 1: Net Impact of Trump Effect on Legislative Races (select counties updated 11/15)

updatedlegresults20161115

 

 

 

Figure 1: Net Impact of Trump Effect on Legislative Races by County

map_impact

The impact on legislative races was stark in some cases:

Table 2: Trump Effect Impact Select Races 

As of 11/10/16, Republicans running in King County have racked up four losses.  Even in the deeply red 5th Legislative District, there was a point at which all three seats were at risk, and although the two state House positions are currently leaning R in terms of returns, and the state Senate race is currently a loss but trending toward a possible late Republican win, our modeling predicted the margin should have been decisive at this point where it not for Trump Drag.

The 30th LD, where the Republican party worked so hard in 2015, has seen two star incumbents removed.  State Senator Steve Litzow in the 41st ran to a tie in the primary but lost by more than five points in the general.  Again, our predictive modeling indicated that Litzow should won handily; Trump Drag pulled roughly 3,800 votes from the R column in that race.

Statewide Races

Statewide Republican candidates suffered because of Trump Drag.  Overall losses to statewide candidates ran between 2 to 3 points and effectively made the races for Lands Commissioner and Auditor uncompetitive.  Were it not for the Trump Effect, both races would have been within 1 percentage points.

Table 3: Trump Effect Impact on Statewide Candidates

table_statewideraces

Depending on the race, the Trump Effect sliced off 50,000 to 70,000 votes from each of our key races.  Only Kim Wyman, the incumbent Secretary of State, fared better than the remaining slate of Republican candidates.

As with state legislative races, statewide candidates took the biggest hit in King County, a particularly rough Trump Effect because the county accounted for approximately two-thirds of the lost votes across all candidates.

Figure 2: Trump/Pence Performance as of Nov 12th

map_trump_results

 

Conclusions

Although many Republicans are celebrating Trump’s presidential victory, it is important to recognize this Trump Effect and what it says about the electorate here in Washington state.  A deep divide persists among Washingtonians that represents a major challenge moving forward.  How do Republicans reconnect with Independent and more conservative Democrats who have at times walked across party lines to vote for Republican candidates.  There is fertile opportunity to engage with these voters outside of the traditional social justice spectrum.  The final part of our challenge is identifying the hot button issues that these voters care about that have alignment with conservative values.