iVote

A story about group of people who were passionate enough to try and make a change in Israeli elections process.

TL;DR We successfully built a social voting application in few days of work in our spare time. Released it two weeks before recent elections in Israel and got 12,000 people registered and voted in that period. All by using viral Facebook marketing.

It was a crazy idea of Tal Ben-Simon (VP Product of eToro), which he speeches me in the park. An idea to build a simple mobile application which is going to let people connect with their Facebook account, make their vote and see whom their friends has voted. All privately and anonymously of course.

In addition there is a campaigns section where you can write to your friends and try to influence them.

It doesn’t matter which political views you have. We built an application which is completely anonymous and it is not biased by any political movement. The goal of the application is to help you decide which party to give your vote for.

The team

We were few ex eTorians (Tal Ben-Simon, Orel Assia, Avner Sorek, Eyal Weiss, Lior Hakim and myself), who wanted to contribute, but not all of us had the time to do it. In addition Israel Roth (Co-Founder & CTO at Labgoo) and Yosi Konigsberg joined this development effort. Guy Spigelman (CEO Israel at PresenTense) helped with marketing efforts.

Tal was the product manager.
Orel was our UX/UI expert and designer.
Israel was responsible of native mobile integration and applications.
YosiLior and Eyal covered the client side.
Avner helped developing sharing of results page using PhantomJS.
I was responsible of back-end, API, Database and Infrastructure.

Guy who helped with marketing after release.

The plan

We started talking about this project three months before the elections, but couldn’t start building it as there was no clear development plan and the team wasn’t finalized yet. It was the same situation a month before the elections too, when Tal, Israel and myself just agreed and decided that if we don’t start now we won’t make it happen.

And that exactly what we did. Tal and Orel started to work on UI to make sure all materials are available upfront, before development start. I created technical design document, development plan and assigned tasks to team members by the level of their expertise.

We decided to build a hybrid web application and wrap it with mobile native wrapper. The app should work from modern desktop browsers (IE 9+), Android native and iPhone native apps.

Tech stack & Infrastructure

As we were very short on time, the goal was to build application with minimum efforts, iteratively. Try to use SaaS as much as possible and base tech stack on our own skillset.

What was eventually chosen:

Source control — Bitbucket
Cloud hosting — Heroku
Database — PostgreSQL
Back-end — Ruby on Rails
Front-end — AngularJS + ionic framework.
Social feed — Stream
Mobile wrapper — Cordova
Mobile Push notifications — Pushwoosh
Email notifications — Mandrill
Tracking — Google AnalyticsMixpanel
Tasks management — Trello

Architecture diagram

The architecture was very simple:

How we did it

It is important to state, that all of us did this project as side, non profit project, while working full time in other jobs.

So we did few hackathons during weekends and few sleepless nights to make a progress. And two weeks before the elections, when we almost lost our hope to release something, we finally were ready to release our first desktop web application. Followed by Android mobile version few days later. We dropped iOS version as we had no more time to do it and considering the long approval process.

Then Tal wrote his first iVote post in Facebook which got shared 82 times! This is how it became viral. Most of our traffic came from Facebook without spending a dime. We saw and felt that people like it. We got a lot of traffic coming in our first days and got about 5,000 users registered a week after launch.

Now we started to monitor closely our traffic and performance. We had to do some refactoring to be more scalable.

Statistics

And after two weeks, just on elections day we had the following numbers:

- 30,000 unique users visited the website. - 12,000 registered users.
11,500 votes.
200 likes in our Facebook page.
5 articles published in online media.

Google Analytics stats:

Articles published in online media

  1. Walla News and Walla Tech
  2. Globes
  3. Haaretz
  4. Mako
  5. Arutz Sheva

Wrapping up

It was a crazy, both challenging and enjoyable journey. I had the opportunity to work again with people I love and meet new people I never had the chance to work with. Get more information and experience on mobile web and native development.

If you want to see the web app in action, the main website is located here:https://ivote.org.il

And remember that “I have no time” is a lame excuse. If you really want it, you will make a time. Sleep less, do more. ☺

P.S.
* The source code can be found here. If you want to make the same experiment in your country, please contact me. We will try to help.