Inspiration
The Choice Coin DAO was started at the 2021 MIT Bitcoin Expo Hackathon, where our submission Algorand Autonomous won the top prize in the infrastructure track, the Algorand challenge, and the Sia Skynet challenge. During the 2021 Hackathon, we built the foundation and groundwork for what became the largest operational DAO on the Algorand blockchain, with over 33,000 users and over 100 contributors from all around the world on GitHub. But one way in which our 2021 submission was lacking was that it failed to incorporate or use Bitcoin, so we wanted to change that this year.
At the 2021 MIT Bitcoin Club Expo keynote, Michael Saylor famously asked, can you come up with a better idea than converting all your $BTC into Dollars before you do anything with it? The question cut to the heart of adoption for Bitcoin technology because it challenges us to stop thinking about Bitcoin like an investment and start thinking about it like a key and how to use it. Drawing on this question, we were inspired to come up with a better idea – to allow Bitcoin holders to use their assets for governance.
What it does
Bitcoin Choices is a decentralized application for Bitcoin voting. The software focuses on allowing users to run votes for governance using Bitcoin. To incentivize real use, Bitcoin Choices rewards voters in Choice from a reward pool for their participation.
How we built it
We built Bitcoin Choices using the Algorand blockchain as a scaling solution. The software also leverages goBTC, which is a collateralized Bitcoin asset on Algorand created by AlgoMint. By collateralizing Bitcoin on Algorand, BTC transactions become faster and less expensive.
We then developed a voting infrastructure using React and the Algorand JavaScript-SDK to create a voting interface that allows users to connect their wallets and vote. The votes are then aggregated on the blockchain and recorded in real time on the user interface. After the voting period concludes, we wrote a reward contract that reads all the voting data from the blockchain, calculates the relative reward amount to allocate to each voter, and automatically completes a transaction to each voting address returning any Bitcoin used for voting plus a proportional reward from a pool.
Challenges we ran into
One of the main challenges we ran into was the mathematics for voting and ensuring the software could adequately handle unit measurements in Satoshis, the smallest BTC unit. For reference, one Bitcoin is equal to 100,000,000.00 Satoshis and one Satoshi is equal to 0.00000001 BTC. But, calculating such small numbers to allow for one Satoshi to equal one vote and to coordinate those calculations with the Algorand blockchain was our key challenge in both front-end and back-end development.
Accomplishments that we're proud of
We launched a decentralized web application for voting with Bitcoin: bitcoin-choices.com. We held a global vote using Bitcoin with instant results. During the approximately 30 minute voting time window, we had 11 users vote with over 0.05 Bitcoin or 5,000,000 Satoshis. Based on the result, we contributed 50,000 Choice to Chess in Slums and 100,000 Choice to The Future Hopes International. Finally, we successfully returned all Bitcoin used for voting along with a proportional reward in Choice from a 50,000 Choice reward pool.
What we learned
We learned how to calculate votes for Satoshis on Algorand. We also learned how to run Bitcoin transactions fast on Algorand for less than a penny. Finally, we learned how to simplify voting software on Algorand, such that the front-end and back-end architecture for Bitcoin Choices was hosted on the same Heroku server.
What's next for Choice Coin: Bitcoin Choices
Moving forward, we will continue building voting software for the Choice Coin DAO. We hope to be able to use Bitcoin Choices in the future and offer governance as a service to Bitcoin DAOs.
Log in or sign up for Devpost to join the conversation.