Voters Guide Software Product Development

There’s a big problem with voting in the United States. I recently realized, there’s many people making uneducated votes on their city’s ballots because the information is not easily accessible to most people. On top of that, there’s no easy way for people to save and share their political beliefs in a structured manner.

Voters Guide is an app that allows people to see their city’s proposition’s pros/cons easier than ever and share your votes with friends.

Scoping the Product

So we were set on our idea, now we needed to scope the product. With a week and a half until elections, this process involved a lot of important trade offs in our apps functionality and design.

We knew that we wanted people to be able to see the proposition’s pros/cons much easier and also be able to read more into the proposition if they wished. We also wanted to allow users to be able to save and share their votes with friends and use the app to easily see what props they voted on at the ballots. The last feature we wanted to incorporate was users being able to save their own reason for voting a certain way for each prop. These features composed our core concept, and we wanted to implement it for the entire country. Enter our app, enter your zip code, view the propositions for your city, and sign up to save and share your votes.

Once we knew what we wanted to develop, we essentially followed the Kanban development methodology. We were a team of two working in a short deadline to deliver an MVP to real users so we stayed away from wasting time on any task manager app. Instead, we used our GitHub to track what needed to get done and met up every few days to talk about what progress we’ve made and what needed to be done and then would go in our separate directions and work on our tasks when we wanted. After having a development strategy in place we really needed to scope out what of this product we could deliver by election day. Immediately, we searched for an API we could use to retrieve the data easily for every city in the nation. Not coming from a data science background, we couldn’t find an easy API to work with that met our needs so we made the decision not to spend countless hours trying to figure out how to work with some random API. We decided the best place to start is right where we are, so we set out to build our MVP for San Francisco and collect feedback on our design from these coming elections. The initial product we envisioned included all the features we spoke about above so we set out to code it!

Challenges we quickly ran into

What was unique about our vision for Voters Guide is we wanted it to be a mobile first design that was user friendly and not very information heavy. The problem with this is that we were creating an information based app and so there was text everywhere. We knew we wanted the pro’s and con’s next to each other so we thought, what if the pro’s con’s cards bled off the screen and allowed users to scroll left or right to fully read it.

This component required some JavaScript to get it fit on every device and have the cards load centered on the screen next to each other. To do this, we grabbed the window width and threw a container around both cards, grabbed that width and used a built in JavaScript function, scrollLeft to subtract the window width from the container width and divide that by two. This always pushes our cards to the center of the screen no matter what device you’re on.

While I tackled the user interface, Nicolai, my other teammate cranked out the back end using MongoDB, Node and Express. Just before elections, we were able to get the product live and send it out to people to use for elections.

Future Developments?

Nicolai and I are still set on pushing Voters Guide to the entire nation for the next years elections. This week we have a meeting with a data company, We Vote, to discuss a potential collaboration where we use the data they have on a national level that we’ve been looking for!

Stay tuned. #VotersGuide