Project & Problem
BallotBud was born out of the Debug Politics Los Angeles Hackathon. Stemming from frustrations on both sides of the political spectrum, the goal of the Hackathon was to find potential solutions to improve the US political sphere. Our group came together the first night of the event and consisted of a UX Researcher, a UX Designer, two developers, and a project manager. After discussing various issues in the political realm, we decided to work on a product that would increase voter participation in upcoming elections.

My Role
My role within the team was to lead UX Research efforts, and assist with design. I identified our target demographic, administered surveys, performed qualitative interviews with key survey participants, and completed a competitive analysis. I also performed research activities following the release of our live Minimum Viable Product.


We began with a brainstorming session to hear everyone’s ideas on improving the voting process. We weren’t sure which angle to take at this point in the project, but we were certain that too many barriers exist which limit voter turnout. Throughout this discussion we circled around iOS and Android apps, Facebook apps, chatbots, and even text messaging services. Our operating hypothesis was that the dissemination of voter information had not effectively entered the realm of digital engagement.

To test this hypothesis, I began by performing quick surveys with family members and friends of my project partners. Normally, I would not prefer to survey people of close relation to those I’m working with, but I felt the participants were distant enough from me being that I had only recently met my partners. Thirty-eight surveys were administered and from their results, I identified four key participants for qualitative interviews. I quickly developed a script to gain insight on the reason(s) these participants did not vote in the 2016 election, their engagement level with current voter information, and their views on features our team was currently brainstorming.

The results from these interviews supported our initial hypothesis that voter information was not effectively reaching eligible voters. This included responses from participants claiming they wanted to vote in the 2016 presidential election, but did not know the location of their polling place and/or did not feel sufficiently informed to vote on the issues. All persons interviewed also demonstrated a desire to be more active in federal, state, and local elections, but were unaware of upcoming election dates and polling places. Participants also expressed a desire to quickly access voter information, and potentially cast their vote online or through an app. Yet even with this, an unexpected finding showed that participants wanted easier access to Vote by Mail Ballots. Each participant stated they would be much more likely to vote if they could sit down with the ballot, read about the issues, and drop the ballot in a mailbox. From this finding, we decided to incorporate Vote by Mail Ballots into our design.


With the ubiquity of smartphones and research that demonstrated a desire for quick access to information, we knew our solution had to be easily accessible via smart phones. By focusing on mobile devices, we believed we could play a role in eliminating some of the aforementioned voting barriers. We did not, however, want to ignore desktop users.

In order to come up with a unique experience that served both desktop and mobile users, I then performed a competitive analysis to evaluate various platforms focused on voter information. Based on what these platforms lacked, our timeline, and our developers’ expertise, we decided to create a Facebook-based chatbot to address the research findings. By utilizing Facebook’s Messenger service, we were able to target users across devices while also taking advantage of Facebook’s sharing capabilities.

While our team was equally interested in voter education, we decided our Minimum Viable Product would first focus on basic voter information: the registration process, location of polling places, and important dates/deadlines. Ballotbud went live soon after the hackathon, focused on California’s 34th Congressional District Special Election.

Ballotbud greeting after conversation initiation

Lessons Learned

While I believe our team put together a solid product in such a limited amount of time, there are always lessons to be taken away from a project – Ballotbud was no exception. After we went live for the California Special Election, I performed usability tests to identify issues limiting adoption. The first lesson learned from these tests was that we should have fully put ourselves in the users’ shoes at the beginning of the project. These tests revealed multiple pain points that we could have avoided if we walked through the various touchpoints of the chatbot. This led me to create a task flow that identified the various user scenarios during chatbot interactions.

Another important lesson learned were the pros and cons of Facebook-based chatbots. While utilizing Facebook’s Messenger service allowed us to quickly build our product and allow for easy sharing, follow-up usability tests showed that is was limiting adoption. Users expressed a hesitance to share personal voting information with Facebook, largely due to privacy concerns. A recommendation to alter the chatbot to a stand alone app, along with use of the aforementioned task flow, were prepared for the next iteration of the product although work has since ceased.

Ballotbud task flow

All team members have agreed BallotBud will remain nonprofit, nonpartisan, and open source.


Thanks for reading, feel free to check out some of my other projects!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s