Voting DApp deployed on testnet

The smart contracts team had been working on a simple SNT-based carbon voting DApp since May. We decided to push for a production quality version on mainnet to support OKR submissions and voting.

A testnet version was deployed at the end of June.

July

Voting DApp deployed on mainnet

After a round of review, we deployed the voting DApp to mainnet on July 4th, and gave our community a heads up on Twitter.

“Want to participate in our upcoming Q3 OKR's at Status? You'll need SNT in your wallet to vote. We'll be using Quadratic Voting, where SNT will not be spent, just used to vote. The more SNT, the more your vote counts. Questions? Stay tuned”

Quadratic voting was used as a good approximation to maximise the impact of SNT ownership on voting, while still being inclusive.

It was also important for users to have SNT in their wallet before voting began, due to a mechanism of the contract designed to prevent vote manipulation.

vote.status.im shared with the world

On July 6th, we publicised the link to the voting DApp and invited the community to add their suggestions to the poll.

We held a community call to answer any questions, and seeded the voting DApp with a few initial ideas to demonstrate the functionality.

Gas prices get us down

After a week, there was just one proposal from the community :(. Although they may not have been the sole reason for low participation, gas prices weren't helping. The cost of Gwei had been so high that a single proposal cost $70-100 to seed.

Prioritisation phase kicks off

Time was of the essence with Q3 underway in mid-July. Concerned that gas prices would discourage voting in the prioritisation round, we initially shared a Google form in #core to begin soliciting rankings.

We then imported the 12 suggestions from discuss.status.im—also largely from core contributors—into the DApp for a cost of ~.5ETH.

We removed two of the pre-seeded examples that had zero votes, and blasted the link to the DApp in place of the Google form.

Results are weighted and ranked

We closed the votes in the last week of July, with only ~30 people having engaged in the voting process.

Oskar took the final step and weighted the votes from both sources—about 20 people voted on the form; 10+ via the DApp—to come up with this final list of Q3 priorities.

OKR Improvements for Q4+

1. Communicate well in advance

This was perhaps our biggest downfall in the process. We worked under pressure to release the DApp on mainnet, but last-minute communications aren't enough to support an important launch. In total, we posted only a few Tweets and Slack/Riot announcements about the voting process.

Being on a strict schedule, we didn't have time for UX testing and iterations. The DApp didn't communicate well for itself. It was truly an MVP. Those who opened it found no explanation of the process, and were also likely to encounter some ugly bugs.

2. Lower barriers to participation

Another factor that may have discouraged participation, particularly in the suggestion phase, was lack of background knowledge outside of the core team.

Without being in the thick of our daily operations, it's difficult for community members to have an opinion on how we do things.

In the future, as part of a communications run-up, we can prime community members with more information about the current state of development and host discussions about the product and our aspirations for it much earlier on.

Left: User with SNT in wallet before poll creation; Right: User locked out

3. Reduce restrictions on voting for SNT holders

The poll was designed to make it difficult to buy more tokens for the sake of influencing the vote. In practice, this meant that users could only vote for an objective if they had SNT in their wallet when the poll was created.

This in turn led to people being locked out of the prioritisation phase.

Furthermore, users with SNT in a hardware wallet weren't able to vote, regardless of how long they'd held their tokens. Support for externally-owned accounts should be another future requirement.

4. Consider other voting mechanisms

One potential solution for item #3 is to use a different model entirely.

Ricardo's idea for a full liquid democracy offers several advantages over this simplistic early version of the voting DApp.

First steps towards a DAO is ranked as a P1 priority for us this quarter. This is only the beginning of our move to open the organisation to all SNT holders, and to allow our community complete ownership of our roadmap.