All Programming is Not Created Equal

Daniel Stroik
6 min readDec 9, 2018

--

About 8 months ago, my good friend Connor Leech approached me with a proposition.

“I’m taking this class next semester, and it’s essentially a product development class. The only requirement is you have a working product by the end of the semester, so you can pretty much do whatever you want. I have this idea, totally not fleshed out or anything, but it’s really got potential.”

So, as with every “revolutionary unicorn idea” Connor graces my ears with, I was initially skeptical. You see, Connor is an idea guy. He’s got more ideas than any human could carry out in 4 lifetimes, and can tell you about each one like it’s the next iPhone, but what Connor and I both know, is that talk is cheap, and execution is not. That’s where I come in.

While Connor had been learning about the industry of journalism and what our society needs right now for our first 3 years of school, I was learning the technical skills that we needed for this project, or so I thought. Since my first year, I have slowly been moving away from the mathematics status-quo of academia into the more tangible, application based world of tech entrepreneurship. So, when Connor told me about this opportunity to actually build something that might have the words “data science” and “journalism” in it, I couldn’t pass it up.

After recruiting another good friend and excellent executer in Jeff Kardesch and fellow classmate Ignacio Martinez, the team for what would be CrowdTheRoom.org was born. Our more formal ideation for the class began a question: How could we, a group of four college kids, create a product in one semester that combined media and data science in a way that was actually useful for people in the real world? We brainstormed on everything from a smart film distribution tool to an interactive online political game, but we we’re having a hard time narrowing thing down. That is, until we met with some local Austin politicos that were friends of Professor Christian McDonald, our mentor for the project.

The CrowdTheRoom.org team (Connor Leech, Daniel Stroik, Jeff Kardesch, and Ignacio Martinez) meeting with Austin politicos Jeremy Smith, Glen Maxey, Mark McCulloch. Ideas flow like oil in the Permian Basin.

After discussing what seemed like every flaw in US democracy, we eventually got to the point where we straight up asked them, “What is the most annoying thing you have to deal with regularly?” More quickly than expected, Jeremy answered with, “The process of running for office is terrible.” We didn’t know exactly how it would work, but this seemed perfect. With a lot of research and a clean interface, we had the potential for massive impact.

So here’s the pitch: Running for office is a shimmering cornerstone of democracy, but have you ever tried? The process of trudging your way through government websites and thick bureaucracy is anything but shimmering. Enter CrowdTheRoom.org. An open source, non-partisan website that turns the mess into one clean platform that’s so simple anyone, and we mean anyone, can use it. A government should be representative of its people, so the more crowded the room, the better.

Once we spent ample time fleshing out how our idea would come to life, we got to work. Jeff headed up the research initiative, with all of us lending the occasional hand, and I was tasked with taking lead on our website. Building our own website? Hosting it on our own domain? Putting all the logic for testing someone’s eligibility to run for office in the backend of a wordpress site? Simple stuff, right?

I enjoy being thrust into the middle of things, having to fly by the seat of my pants and get things to work no matter what, but that’s easy to say in hindsight. I thought we had it in the bag. When it came down to it, all we really needed to do with our site was 1) allow a user to enter their information, 2) do a bunch of calculations with it, and 3) give them the appropriate instructions for how to proceed if they would like to run for their specified office. After deciding to use a Wordpress framework hosted on DigitalOcean, it seemed simple enough. Just build a page with an input form, write a script to do the calculations, and conditionally display the results we want. I was sure the fact that we had to do it all in one semester and the most technical person on the team (me) had never done any of this before wouldn’t slow us down at all.

Connor and I took the lead on building the website, him specializing in Javascript and me in well, the rest. I learned PHP, HTML, CSS, Javascript, and not only how to do things “the Wordpress way”, but also why “the Wordpress way” was often not what we needed. I built a form, sent to information to a database, auto populate some fields that we could calculate based on the user’s info such as whether or not they are registered to vote, or what congressional district they live in. Connor then wrote the Javascript to test a person’s eligibility for a given position so we could correctly populate a page with the steps that person had to take to run for office, or how they might become eligible if they were not. When we had the functionality working, I went through and implemented all the designs Jeff had made into the CSS and HTML, giving our site that nice modern blue hue and sleek experience. The website that came of this was not only a great looking one, but one I’m proud to have built so much of.

Click to visit!

The functionally works for a group of positions that represent Travis County at the local, state, and national level, and is honestly really fun to mess around with amongst friends, checking to see how they might run for something one day. Even with these limited positions, it was really awesome to see how this simple site could have such an effect on our government. With a barrier to entry so low, the long ballot of uncontested races suddenly becomes a thing in the past.

The results page. Maybe I should look into running…

So, what do we do now? Will the ephemeral nature of school projects take over and see to it that Connor, Jeff, Ignacio and shall never convene again? I don’t think so. One of my major takeaways from this project was the discovery of my distaste for web programing. I learned so much about websites and web architecture, yet I still call data science my academic home. I would much rather look at things on a larger scale, answering the question of how to organize manipulate, and interpret data about running for public office. So no, not all programming is created equal, but that is why the future of this project excites me.

As I mentioned above, “the Wordpress way” was not the best way to approach the project, but we discovered this fact about a week before the final deadline. Our site certainly shows a proof of concept, but on the backend, it’s not exactly scalable. Moving forward, the CrowdTheRoom.org team envisions a completely modular system, capable of handling any of the 520,000 public offices across the US. One function that can test if a given person is eligible for a given position. One function that returns the complete steps for running for a given office. One function for telling a person what offices they are eligible for. The beauty of this, is that a volunteer can then put a bunch of information into a spreadsheet about a local office in Colorado, we can take a look at it, slightly modify use our existing framework, and handle that position within a matter of minutes. Now 520,000 looks a little less intimidating. We already have a few ideas about how we might go about this might be built from the ground up, and I’m excited to start work on this very soon. The room is about to get a little more crowded.

Thank you so much to all that helped out with the project, specifically Professors Robert Quigley and Christian McDonald, our friends Jeremy Smith, Glen Maxey, Mark McCulloch, and of course the team Connor Leech and Jeff Kardesch.

Daniel Stroik | Mathematics, UT 2019 | danielstroik@utexas.edu

--

--

Daniel Stroik

I’m currently a mathematics student at the University of Texas at Austin, interested in Data Science, music, public good. I’m always excited to collaborate.