DevOps In Politics

0 0

I have a feeling I know what some of you are thinking what could DevOps possibly have to do with politics or the reverse what does politics that loaded subject we're told to avoid in polite conversation have to do with DevOps well let's consider the idea that every company is a software company now I wasn't able to find the exact source of this quote but we've all heard it many times it likely sounds very familiar in every modern company today software and technology are deeply embedded and how organizations serve their customers ship their goods and hopefully win portions of their market now just like every modern companies a software company every modern political campaign is also a software company technology for better or worse allows campaigns to engage with voters on a level that is unprecedented even only a decade ago so this means that political campaigns need DevOps principles just as much as businesses in fact they actually need them more because working Tec on a political campaign involves shipping software on the tightest budget in the shortest time frames and with the highest stakes imaginable moreover technology changes and moves on between elections those four years between presidential elections are an eternity in terms of technical technical tools even with shorter election cycles the tools we use on the campaign the previous cycle very likely will be completely out of date by the time that next election rolls around so although I will mention some specific technologies in this project I've used in campaigns this talk is not meant to be an in-depth discussion of them or a prescription for their use this is because even though technology moves on the principles we apply to the use of that technology remain the same that the beauty of DevOps even as technology evolves and changes the principles still remain relevant in particular I love this quote from effective DevOps by Jennifer Davis and Catherine Daniels many people think about DevOps as specific tools like chef or docker but tools alone are not DevOps what makes tools DevOps is the manner of their use not fundamental characteristics of the tools themselves and that is the point of this talk again in this day and age for better or worse politics and technology are deeply intertwined our tools are more powerful than they have ever been in human history but when used improperly they can be destructive rather than constructive and DevOps principles help us stay on that constructive side so when I mentioned my work in election campaigns I often hear responses like this I am just not a political person all politicians are the same that was a big one on the internet and then I refused to choose the lesser of two evils now I do want to say this has started to change after the 2016 elections but I still encounter these attitudes a lot in my daily life so holding these attitudes it's certainly someone's right but the truth is politics affects you whether you are involved in it or not American society is governed by our representative democracy that means the result of election will potentially profoundly affect your life and if not your life definitely the life of someone you care about I made the decision to become involved in political campaigns because I wanted to help shape the way our society is governed even in the smallest of ways and with that Who I am is now Cheryl Harrington I'm an engineer at chef I've been a technical volunteer with multiple campaigns if you're looking for me on Twitter you can find me at at nel sham Rell now before I go on I want to mention that I debated quite a bit whether I should name specific campaigns I've worked on in this talk the reason was I was worried that the emotions around those campaigns would overshadow the principles I'm laying out so what I ultimately decided that when it's necessary for context I will name specific campaigns by name that said though this isn't this talk is not meant to be my personal political views if you're curious about them you are more than welcome to come up to me privately and ask me about them but that's not the point of this talk frankly what I'm laying out here can be applied to any campaign or any business regardless of position they hold on certain issues so again just like every modern campaign or company is a software company every political campaign is also a software company now it can be tempting us as engineers know this to immediately jump into technical implementations when we discussed using software to solve problems what technical implementations are useless if we don't understand the problem that we're solving on a high level one of the major differences between a business and a campaign is that the success of a business is a measured in money that's the point of a business that's always been the point of a business even with nonprofits their success as measured by their ability to raise funds and how they use those funds so political campaigns certainly do need and use money but the ultimate success of a campaign is measured in votes that's all that matters in the end those are what determine who wins an election which determines the direction of a city county state country even the world for years and possibly decades to come this is because we don't reset in between terms of offices office when someone is elected to an office they need to build on or in spite of the actions of whoever held that office before so all of the resources all the energy all of the work that goes in campaigns is to win people's votes and I like to think of winning someone's vote as involving three things and the first is the heart in order to cast a vote for someone or something especially if it involves a voter changing their mind they need to make an emotional connection first even if they feel they won't be directly affected by the outcome of that election they probably know someone who will be and this is very similar to Davos transformations and businesses in order to even consider changing the way they think about something or someone someone who's a voter whether they're manager whether they're an IT engineer they need to make that emotional connection first they need to necessarily feel how that change can make their life or the life of someone they care about better next comes the mind when someone has made a connection on an emotional level that's when they can process the intellectual reasons why they might choose to vote a certain way I see a lot of campaigns trying to appeal to the mind first and I think this works if you're trying to keep something the way it is but it doesn't work when you're trying to change something as much as we like to think of ourselves rational human beings I mean I am an engineer and I would love to believe that I make technical decisions based purely on ends electoral reasons the truth is I really don't I become open to change when I can feel how it will make my life better in order to change something and deep societal change that comes from political campaigns you really can't do it on your own that means you need people's hearts first and then you need their minds and then the last thing that makes it a vote is motivation this is because it doesn't matter how much someone emotionally or intellectually campaigns connects with my campaign if they don't have the motivation to get out and turn in their ballots that's why campaigns spend so much money and resources on those get-out-the-vote efforts in the weeks leading up to Election Day now any technical solution we would build on a campaign we had to serve these three things the goal of any technology is to win votes in order to win someone's heart mind and motivation speed is critical and the reason speed matters so much is that when you are first to reach a voter you control the narrative at least this is usually the case it is similar to how a business that goes to market first controls the narrative around that market and is that a major advantage so speed is critical but with that accuracy is also critical when you ship software whether it's for a business or a campaign I wish it was without saying but it needs to work it doesn't matter what it was intended to do or how much time and resources were spent on it if it just doesn't work on a fundamental level in particular when in a campaign once you reach Election Day there are no do-overs there's no 2.0 at least not until the election cycle so in order for that technology to have its intended effect it needs to work right the first time so one of the best ways to help balance speed and accuracy is through automation which is one of the main things we think of when we think of DevOps I want to add a caveat though the right automation an able speed and accuracy automating the wrong things might add speed but it will come at the cost of effectiveness we'll cover what the wrong kind of automation is in just a moment but first let's we're going to look at examples of the right automation in particular automation is very helpful with large volunteer forces you know as much as you hear about very highly paid political consultants the backbone of campaigns is unpaid volunteers success is just impossible without them during the 2016 presidential election I volunteer with an organization called dev progress well we were not directly a part of the Hillary for America campaign we did work with them and created applications that were used by the campaign so the focus of dev progress was on technical volunteers and there were many technical people who are very eager to help with the campaign in order to use their talent and preserve their motivation we need to get them up running and coding as fast as possible so this is one of the projects we created called drive a vote and the idea behind this app is to allow anyone who needs a ride to the polls to request one in the app and be matched up with a volunteer who will drive them and it didn't matter who you were voting we did not ask that the goal was to get as many people to the poles as possible so technical volunteers especially remote volunteers tend to have very different work stations that's one of the problems and open source in order to get new contributors up and running as quick as possible we decided to use virtual work stations so this is the vagrant file we had and drive the vote this would allow someone to quickly spin up a bigger box where they could do their development on drive the vote one with all the required versions of all the required dependencies already set up for them and two in a way that would be unlikely to affect their work station or other projects that they were working on so this meant a contributor can be developing on Linux Mac Windows anything that supports vagrant and by spinning up that beggar boss box and SSH into it instantly by using the same development environment as other contributors embracing an automated virtual workstation where we could get those new contributors up and running in consistent environments very quickly and in election campaign every single second counts so our contributors to get coding really fast but again speed alone is not sufficient we could not sacrifice quality again in an election even before Election Day there are very rarely second chances if an app did not work the way it was supposed to the first time or if it broke there likely would be no time to rewrite it or heavily debug it so we knew going into this campaign that we needed to automate those checks or quality as much as possible both to let us work at that high speed and avoid from diverging too far in the wrong direction so one of the most effective ways we found to do this was through continuous integration so this is another project I worked on called Hillary B&B and this app helped match campaign volunteers with a place to stay when they were traveling out of town so this tool was forged from a tool originally created by Bernie Sanders supporters during the Democratic primary they had open sourced it under a GPL license which meant it was free to be distributed and modified so we force it and added quite bit of functionality before election day and this is an example of a build and Hillary B&B in circle CI we ended up going with circle CI one because it was free for open source projects and two because it was very easy to get small projects set up with it very quickly so every time we committed code we would do a complete build testing all the dependencies and then run the actual automated tests for the application so this meant we were always testing from a fresh build of the software and could instantly see where issues were this was particularly helpful when we were setting up operations for the project because we could find those integration issues first and fix them very early when the application was still at its most flexible so these are examples of what I consider the right automation the right automation and I consider both drive the boat and Hillary B&B the right automation is to foster human connections automation should enable human connection rather than trying to replace them remember this equation getting a vote involves capturing someone someone's heart their mind and ensuring they have that motivation to turn that ballot in and this requires a personal connection with another human being one of my least favorite examples of automation and definitely what I consider the wrong kind of automation is robocalls roll calls do not make personal connections I don't know about you but the only emotion I feel when I get a robo call is massive irritation bordering on rage so again personal connections human being the human being that's what will capture a voters heart mind and motivate them to get that ballot in one of the best examples of this that I have been involved in was the approved 74 campaign in 2012 referendum 74 was about gay marriage if approved gay marriage would be legal in Washington State if rejected it would not be legal now before 2012 no gay marriage law had ever been successful at the ballot box the success of Proposition 8 in California cornea which effectively Reeb and gay marriage there was shocking to gay marriage advocates something was not working for the majority of voters motivated to cast their ballots so in 2010 the Freedom to Marry foundation conducted a study to try and figure out what wasn't working and they found it was actually the messaging gay marriage can seem like a black or white issue but it was not a black or white issue for a critical section of voters this study found that a significant group of them the ones who could actually turn the tide at the ballot box just weren't reached being reached by arguments about the Constitution or legal reasons gay couples want to marry they agreed in theory that gay couples should not be treated unfairly but they just didn't understand why it had to be marriage why that was so important to same-sex couples now it can be tempting at this point to say things like well they should just vote for it because it's right particularly in progressive circles but when it comes to an election being right is irrelevant if you don't have the votes when you work on a political campaign especially one that is changing something some deep-seated societal norm you just don't have the luxury of only appealing to people who already agree with you in a DevOps organization whether it's a traditional business or a political campaign the first step to enacting true and lasting change is to let go of the needs be right that doesn't mean letting go of doing what's right it's letting go a meaning to be right needing to feel superior to other people the approved 74 campaign understood from the beginning that in order to enact real change in order to truly help gay couples achieve full marriage rights they needed to let go that need to be right and meet people where they were remember this cannot be stated enough hearts and minds change through personal connections so what that campaign did was they recruited hundreds of phone bank volunteers including myself to personally call nearly every registered voter in law Canton State and have a personal conversation with them if you are a Washington state registered voter in 2012 you probably got a call from one of us at some point all these conversations were framed around first listening to where the voter was on the subject of gay marriage and why someone is much more likely to listen to you if you listen to them first only after that would the caller bring up the subject of love and commitment that gay couples want to marry for the same reason that different sex couples want to marry in order to be effective these conversations had to happen human to human frankly automation just doesn't work when the subject is love I call this human capital even with our wondrous advances in technology and automation humans are still needed for certain things we don't yet at least make the same emotional connection with machines and again as much as we try to consider ourselves rational human beings voting is a very emotional decision for many people especially when they are changing their position from what they believed before in a business technical and cultural transformations are also very emotional because people have to confront and change deeply held beliefs the need for human to human conversations in these cases cannot be overstated now the purpose of automation is to free up human capital to do what it does best Automation does not make humans less important rather it allows humans to focus on where they are most needed in the case of referendum 74 it was having those personal emotional connections and nuanced conversations with registered voters now even though these conversations ultimately needed to be human driven automation did play a big role in allowing those conversations to happen especially when it came to dialing those numbers so it's beginning we didn't have automatic dialers and we would have a spreadsheet of thousands of numbers to call I used a ruler to keep myself on the correct line and we would have to and dial each of those into prepaid cell phones so this was very error-prone and not efficient so dialing numbers was clearly something that needed to be automated now using those automatic dialer switch would only connect the line when someone actually picked up on it that freed up the human volunteers to focus on the actual conversation now working on campaign is always fast-paced but the last six weeks or so are an all-out Sprint's to Election Day that's when you find out sometimes though not always on the same day whether all that or the outreach all those conversations all of that lead to victory now when you win an election it's sublime there is no greater high and no greater rush than seeing your work pay off and effect people in such a tangible way when the votes were pouring in in 2012 and it became clear that referendum 74 was going to pass it was the most deeply emotional and most glorious triumph I have ever felt but the hard truth is you won't always win losing an election is devastating when Hillary Clinton lost the 2016 election I honestly felt shattered along with all of us who worked on her campaign this is because we had poured so much of our hearts and souls into it and ultimately the election just didn't go the way we wanted it to and that's the hard truth of politics when the votes are finally cast and counted it won't always be in your favor no matter how much work you put into it but a loss does not mean there is no value I guarantee if you are involved in politics for more than a couple of elections you will see a loss of a campaign that you really cared about but that doesn't mean it wasn't worth it if you give up after a failure in politics you are in the wrong business if you give up after failure in DevOps you are in the wrong business the truth of life frankly is that there will always be some successes and some failures you will not see every election turn out the way you want it to and you will not see every business project whether IT or otherwise become a success that is just the reality of the world that we live in now when you pour yourself into a campaign and ultimately it loses especially when it's the first time you've experienced that kind of a loss it can be easy to retreat into cynicism and ambivalence as a way to cope the problem is cynicism and ambivalence breed complacency and that kills the possibility of any sort of transformation if you really want to see change if you really want to make something better whether it's in your business or in society in general resists the urge to descend into cynicism because cynicism and ambivalence are the greatest weapons against any sort of progress whether in politics whether in business or whether in technology if you resign yourself to the belief that something will never change and people often do this so they won't be hurt you don't try to change it and it doesn't change and it becomes a vicious cycle it's far better to take the lessons learned i 100% guarantee you have learned something and carry it forward there will always be another election there will always be another project technical or otherwise that you can build on what you learned back in January I was beyond overjoyed I noticed this on github the code I worked on for the Hillary B&B project was forked and used by the women's march on Washington that is the beauty of open source it's not just me and not just whatever particular campaign I worked on that can build on what I learned but when it's an open source project like Hillary B&B anyone can work on it and build upon it we may not have been able to achieve victory in the 2016 campaign but we put together building blocks upon which others can keep building and also reach for victory and maybe next time they'll even win so going back to this question from the beginning what does DevOps have to do with politics when it comes to using technology to capture hearts minds and votes to driving the elections which determine the direction of our governance and society the answer is simply everything thank you thank you very much now we actually have like two minutes if this if you're okay if you want to have any questions you have about two minutes before the scheduled break click there's one up in the back rather than me running up there do you mind trying to yell or I can run out there the question was I technology played a big role in 20 2008 and 2012 but things weren't open-source as much when that changed this year the question was does that kind of level the playing field and the answer is absolutely yes part of the reason all these tools were open sourced was so that campaigns with less money than other campaigns could get a technical headstart without having to start from scratch and use open-source tools largely for free to use them but they still need to pay for hosting and such so the answer is yes it is meant to level the playing field a little bit [Applause]