 So I'd like to start off this presentation today with a quote. Any sufficiently advanced technology is indistinguishable from magic. That's a fact. And it's something that we take for granted because as web developers we work with technology every day and it starts to become routine and we forget. You know if you were to go out onto the street here in Atlanta and you were to ask somebody how does the internet work, they would tell you the truth which is that it is magic. The internet is magic and we are god damn wizards. Just look at our beards. We build the internet. We build this thing, this core foundation upon which our very society is built. This thing that our government depends on, that our economy depends on, that our culture depends on. We build it from bits of HTML and CSS and JavaScript and it is magic and we are wizards. And as anyone knows, with great power comes great responsibility. All of you in the room with me today, you have a responsibility. Nay, you have a duty, a civic duty to yourselves and all the muggles out there to use your powers for good rather than for evil. Now some of you I know use your powers simply for your own amusement or to earn a simple living. Well today I hope to inspire you to use your powers to bring lightness and good into the world to take up the quest of civic hacking and make a contribution to our society, to our community. And I hope today not just to inspire you but to warn you of some of the perils that you may face on your journey and that I faced on mine and to equip you with some of the weapons that you may need for your prepper backpack so that as DHH would call it you can be ready. Now I myself started my journey into civic hacking and into Rails magic in general not so long ago. I was a student at the Flatiron School and it was a snowy night in New York City and I was up late on campus in Manhattan downtown in the financial district right by the Wall Street Bowl and it was snowing outside and the icy wind was cutting through the streets and even in the halls of our ivory tower of technology and academia it was cold. You may not know this but New York City is not just its old buildings are not just full of history they're also full of broken boilers and drafty windows old steam pipes with peeling paint running to rusty radiators especially in lower income areas this problem is epidemic and people who live in buildings like this they don't have control over their temperature like many of us do they don't have a thermostat on the wall they depend on their landlord to provide sufficient heat because all they have are these steam pipes and in lower income areas particularly although the problem isn't limited to that a lot of people do not get the heat that they need and this isn't just a problem for New York City it's a problem all across the northern United States it's a problem in Chicago Philadelphia Boston and it's not just a problem in the United States it's a problem all over the world we get the same issues in Canada we get the same things in the UK now it seems every year in New York where this problem is particularly bad there is a new story coming out of the New York Times and the year that Heat Seat got started it was this is actually a really hard story it was the the Ortega family and they lived in old building in Crown Heights in Brooklyn and Christine Ortega had a daughter has a daughter with several palsy she was six years old at the time she requires a lot of medical equipment and they were not getting sufficient heat she called the landlord she called the city she complained nothing was happening so she went out to the store and she bought a space heater when she plugged that space heater in the draw from the heater and from the medical equipment was too much in a blue circuit so she had to choose one or the other the best that she could do was to prop a mattress up against the window to try and keep the draft out and this is not an isolated incident I wish that it were but there are 200,000 heating complaints in New York City alone God knows how many there are across the United States or across the globe one of my teammates made this map we call it the cold map you can see it's broken down by zip code in the colder the more heating complaints there are in that zip code the darker the blue and unsurprisingly this corresponds really tightly with the areas of the Bronx in Brooklyn that how's the most lower income demographic most low mostly lower income demographics so you know it's a big problem right because it's dangerous but it's not just dangerous it's illegal it's actually against the law there are housing codes in place that prohibit this in New York it's it has to be at least 68 degrees during the day and 55 at night there are similar laws in Philadelphia and Chicago with slightly different rules and the issue isn't that people aren't aware it's that they just it's not practical for a city to know the temperature inside of every old building like within its borders like New York City has so many old buildings I mean it's an impossible task it's a limitation of technology and I remember that night at the Flatiron school looking out at the snow and trying to come up with a project to work on for school how hard could it be how hard could it be now granted it was actually really hard I didn't know this at the time I was like really naive and this was the first app that I ever tried to build so I didn't know what I was getting myself into and I certainly didn't even envision what he'd seek would then go on to try to become I didn't envision a network of temperature sensors for temperature sensors all across these neighborhoods I did not envision an app that would analyze and produce reports to give to advocacy groups that would then use that information to bring about justice all I imagined was just a simple graph that connected to a simple wireless thermometer I thought you know how hard could that be how hard could that be now I fell for the hackathon trap so this was the first of five traps that I fell for in my quest into civic hacking if you are the first five that I know of they're actually probably way more than I haven't discovered yet but five that I know of if you've ever been to a hackathon you know what it's like and everybody's sitting there thinking I've got this great idea and if I just focus on this one idea for the next 48 hours to the exclusion of everything else to the exclusion even of bathing which is why hackathon smells bad then maybe maybe it will be cool before I get distracted because it's so easy to get distracted there's so many other cool projects that we could be working on and what happens is what happened to me which is that you burn out you can't you can't possibly come up you get through the 20 the 48 hours and afterwards you have this like kind of okay thing that you really just cannot stand looking at because you just burned out so hard on it and that's what happened to me and the app would have died I think if it hadn't been for a couple of things that we'd done by mistake I'd roped another another student in with me who was also starting to lose focus how do you how do you stay focused well the first thing that we'd done was we had agreed to give a presentation in front of a bunch of students you know at least one of whom is in the audience with me today and we were going to be horribly embarrassed if we didn't have something to produce something that we could demo at this presentation another thing that we did was that we made a promise to a user somebody who actually had an apartment that was too cold and who wanted this technology so he could generate some proof and take it to his landlord or take it to the city and get the problem fixed and I got squirrel keeping you on your toes guys stay focused so put your reputation on the line that's this that's the key to surviving to overcoming the hackathon trap put your reputation on the line maybe thinking but I have an idea you had this bolt of inspiration and you were sitting in you know the Hogwarts of web development of flat iron school you know and I just have an idea why I'm totally exaggerating I didn't have a bolt of inspiration I had a project that I wanted that I needed to come up with and so I went to open data sets if you go and you look at some of the data sets that are just coming online there is so much government data at the city level at the state federal at the federal level coming online that no one has had a chance to dig into yet nobody's dug in yet there's a ton of stuff that you can come up with like they just now have traffic information that shows where collisions are happening in certain cities how cool would it be to map that out and see like what's the most dangerous intersection in America a live update that or better yet don't use other people's technology don't use other people's data get your own data 56% of US adults have smartphones they have geolocation they have microphones they have accelerometers in them you can collect a ton of data and and and use it to affect policy you know people don't want to invest in infrastructure because you know it's expensive and it's not always politically expedient and some of the old infrastructure in the United States is in terrible disrepair and really needs help we have the ability to crowdsource that information we have the ability to make it politically viable to invest in our own infrastructure you know you really want to have an impact automate advocacy don't just take open data and do something cool with it but automate the process of advocating for people who need help because there are the advocates in our society the social workers and the public defenders and the community activists these people they are always underpaid and always overworked there's never enough of them and if you can take just some of the hardest parts of their job and automate it for them you have a huge impact and that's what he'd seek does we don't work directly with tenants we we don't have the time or the staff or the skills for it we empower advocacy groups by automating one of the hardest parts of their job which is to gather evidence so you may be thinking but I don't want to listen to all of your stupid hack like a civic hack ideas I have like a way cooler civic hacking idea and I bet not only do you have cooler ideas than me but some of those ideas are actually already better implemented than mine but I also bet that the majority of those ideas are languishing unloved at the bottom of your github repo why is that I think I think it's because of the field of dreams fallacy so it's the second track that we fell for we thought if you build it they will come right and so we built an MVP and we had it working we had it connected to temperature sensors we had it collecting readings we had a user in the field who was actually showing violations and then you know it started to get boring and we started to lose interest because nobody really cared except for like this one guy and you know the reason is because well nobody knew that we didn't tell anybody if you build it they won't come if you tell them about it they will come you need to tell people about it hype it up whatever you're working on hype it up that's the cure for the field of dreams fallacy but be careful with height because it's a double-edged sword that was the the third trap that we fell for was we got drunk on press coverage we went on a publicity bender you know after after we started hyping up our project you know we started we entered in a competition there was a popular vote and we spammed like every man woman and child to get them to vote for us I went through my whole Gmail contact so everybody who I had ever sent an email to or received an email from and spammed them and like you know my own grandparents you know it was embarrassing as it was really it was a low point but the result was that we got a lot of attention and at first it was just blogs but it got to be bigger and bigger names and then it was fast company and it was Reuters and then we see NBC and then our moms were like really excited and it felt like that was the most important thing for us to focus on and so we stopped coding we started writing talking points and you know we ended up concentrating all of our attention on the areas that were most interesting to the reporters rather than the ones that were most important you know reporters are not gonna ask you what's your code coverage like they're gonna ask you what are your uptime metrics or how does your retry logic work they're gonna ask you you know what's your strategy for growth and how many users do you have and like how many buildings or whatever you're gonna be it's all a terrible distraction we got really sucked into it and then it got worse got worse we started pissing off the very people we were trying to help you know one of the things that happens if you hopefully eventually have a civic hacking project that innovates in some area if that area happens to be helping people in a lower income demographic one of the things that's gonna happen is people are gonna tell you oh William you're so noble you're so magnanimous and generous and dedicated your talent and your time to help these poor helpless slabs who live in dumps and it's bullshit I mean it's not true but it's really easy to get sucked into and then you start thinking oh yeah well I am rather magnanimous sometimes well I thank you of course and then the people you're trying to help they hear that and they're like man I really don't need your pretension right now it's already cold I've been dealing with this project let's just say same problem for like years before you came along don't need your help why don't you just like go back to plan World of Warcraft or whatever it is you do and stop kind of save us with your code and you know that's like a valid point and then it wasn't just the tenants it was also the government agencies that we were hoping like the housing department that we were hoping would adopt this technology is another area civic hackers often innovate in and I want you to be aware if you innovate in the public sector at all people are gonna tell you oh thank God that you young smart innovators are gonna come in to this you know old government bureaucracy of terribleness you know where everyone is just like wanton spending and grossly incompetent you guys are gonna come in with your code and you're just gonna disrupt it's gonna be great and it's also again really easy to get sucked into but the truth is that actually those government agencies have been working on these problems for like decades they have a really deep understanding of the issue they are usually doing good and they can foresee like a ton of problems that you're definitely gonna run into but you know I mean if you're gonna be a dick about it then like we'll just you know sit back and watch you guys figure that out on your own we'll maybe laugh at you and that's you know that's bad enough but then it got worse we got inundated with all of these requests for us to pivot you know petitions to pivot I called them can you so they were usually they were ridiculous like can you just use this technology to like help with global warming or could you could you guys maybe just become competitors to nest or when are you guys gonna start monitoring air quality it's like really it's like at that level it's pretty easy to brush off but sometimes they start to sound like plausible feature requests you know like can you it can you expose an API for us that we can consume your data and you know yeah that's actually the same like a great you know I think there's a story on the backlog for making maybe we should just like bump that to the top bang out an API for you they always say it's this is great opportunity anytime anybody tells you this is great opportunity be careful what they're actually saying is I want you to focus on what I want rather than what you're actually doing that's the great opportunity and there's a reason that that API was at the bottom of the backlog and the reason is because we didn't have any data to share yet we need to focus on actually getting data so that an API would be useful that was the challenge we got sucked into all of these distractions and you're probably thinking now okay well William given like what a horrible screw up you are and all of these problems that you've had why am I listening to you we turned around we did help keep the heat on I think you know we had dozens of sensors in the field collecting readings by the end of it we had actual violations detected this is a graph from one of the tenants who's in active litigation right now you can see that we've anonymized it so you can't see the names but those orange dots at the bottom those are readings that were recorded when the temperature was below the legal limit so how do we turn it around what were the secret weapons for your prepper backpack as DHH would say that that brought you through all these trials and tribulations on your quest into civic hacking what were the four there were four secret weapons the first one is non-developers non-developers you know they get a bad rap I think especially in that hackathon culture where you've all been there there's that one business guy on the team who does nothing for like 95% of the competition and at the end he gets up he gives like a bad pitch and then he tries to take credit for vision and he's like no okay devs are act non devs are actually dead weight but in real life though they're awesome because any project whether it's a civic hacking project or any other project of a meaningful length that has longevity is going to need more skills than the developer has developers we are narcissists we think that we can do everything and they were the best person to come up with the long-term strategy and the vision and all of the code and the social media and the marketing and let's just do the books you know but actually if you turn over those responsibilities to people who actually like actually specialize in those areas well all of a sudden you're free to get back to actually coding and that's really powerful the only issue is that you bring on if you're a civic hacking project you bring on all these non dev volunteers and then you just spend all of your time coordinating which brings me to my second weapon managers this one I know is controversial because managers are particularly hated type of non developer you know they'll ask for estimates and they'll use them as deadlines they make you go to a bunch of stupid meetings that don't matter at all but that's actually that's not managers that's bad managers good managers will protect you for meetings good managers are like meeting shields you know somebody tries to make you go to a meeting you just grab the manager and you block it that's what that's what good managers do they keep you focused on what you do best I keep everybody else focused on what they do best and once we got some managers people actually started getting back to work third secret weapon is the day job and this is really important I think I am very fortunate I work at Sun Guard consulting services it's a great dev shop they are super supportive of me and my side and my my civic hacking side projects they paid for me to come to Rails Conflicts that give this talk they always tweet about us when we're doing well and most importantly they give me that regular paychecks that I have to worry about money and that means that I don't have to I don't there's there's no temptation to bastardize the original idea which was about giving something back to the community and instead turn into something profitable you know we talked to investors and investors investors are sharks and their big idea was how about this is great actually have a great technology what if we could read like just change the branding so instead of focusing on poor people we just sold this for like rich people that good idea no like the whole reason that we started this so be careful if you have a day job though you have a good job by day then you know you can fight crime by night like Superman had an awesome day job so the fourth weapon this one's this one's a little bit cheesy but it is honestly the most important weapon in your arsenal as perseverance because perseverance will make up for any number of blunders any number of pitfalls any number of traps that you fall into if you get back up on the horse and you keep going eventually you'll make it through and I'm not talking about individual perseverance I'm not talking about just one person because there will come a day when your confidence will fail you there will come a day when you will be ready to give up and talking about the perseverance of the team because if you have a group of people with you to support you then in those times you have someone to turn to and say why are we doing this and they'll tell you this is why we're doing this is why we started this is where we're going this is why it's worth seeing this through and we as an or as a as a as a project we have an organizational habit we meet every Sunday to tackle these problems together as a team and it's that organizational habit coming back every week time and time again that has kept us going for you know it's been a year over a year now so we Rubyists we're a community also Rails Conf this is another is another organizational habit you may be thinking well okay so I'm prepared now I'm equipped I know that I know the perils that I may face in my quest into civic hacking I see the value of it and I have some tools that you've equipped me with so that I might be better prepared but I've forgotten I forgotten why I was excited at the beginning of this talk to actually do any civic hacking forgotten why this is important well like I said we're a team I'm here to remind you that the internet is magic and we are god damned wizards we have a responsibility nay we have a duty a civic duty to ourselves and all the muggles out there to use that power for good rather than for evil if even 1% of the commits that we put out went to civic hacking projects we would live in paradise so this is your call to action after you leave this conference join your local code for America Brigade fork a civic hacking project on github or start one of your own because the society that we live in it's got issues so fork it let's make a poll request thank you